跳attempt to access beyond end of devi - Linux

Caroline avatar
By Caroline
at 2016-09-27T11:55

Table of Contents

抱歉都吃完隔天早餐了才上來回,以下為試圖理解作業系統在說什麼僅供參考
另外很抱歉的事情是我看錯數字所以也不知道問題是出在哪裡,以下是分析資料

※ 引述《junorn (威廉華勒斯)》之銘言:
: 在/var/log/message裡面紀錄是每五分鐘左右跳一次
: localhost kernel: sda: sda
: localhost kernel: attempt to access beyond end of device
: localhost kernel: sdc1: rw=0, want=3907027088, limit=3907027087
作業系統核心:「/dev/sdc1的地址只有到3907027087,那個叫我讀3907027088地址的程式是在叫三小。」

: 爬Google是有看到說partition有問題,所以用fdisk -l
: sdc部分顯示如下
: Disk /dev/sdc: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
磁碟有3907029168個磁區(定址從0到3907029167)

: Units = sectors of 1 * 512 = 512 bytes
: Sector size (logical/physical): 512 bytes / 4096 bytes
: I/O 大小 (最小/最佳化):4096 位元組 / 4096 位元組
: Disk label type: gpt
: # Start End Size Type Name
: 1 2048 3907029134 1.8T Linux filesyste Linux filesystem
1. (八成是由 libparted 所切出之)第0~2047磁區前1MiB的空間為保護用MBR(Protective MBR)、主GUID分區表表頭(Primary GPT Header)、與磁區對齊(sector alignment)之用
2. 第2048~3907029134磁區為/dev/sdc1分區
* 第2048磁區為/dev/sdc1分區的第0磁區
* 分區最後一磁區為第3907029134-2048+1=3907027087磁區
3. 第3907029135~3907029167磁區為GUID分區表的次GUID分區表表頭(Secondary GPT Header),
* 此區域大小為3907029167-3907029135+1=33個磁區,與次GUID分區表表頭應該要有的大小吻合

原本我以為作業系統核心的訊息是針對/dev/sdc而非/dev/sdc1,而3907029134>3907027088代表磁碟分割表登錄之/dev/sdc1分區的邊界超出/dev/sdc的磁碟有效磁區範圍造成系統在試圖存取/dev/sdc1時觸發錯誤訊息
但是實際上磁區編號是從分區開頭算(要扣掉2048再加一)所以是完全錯誤的推論

個人推測可能造成錯誤訊息的原因:

* 有有權限可直接存取磁碟的程式試圖讀取超過分區有效磁區範圍的磁區
* 解決方式:找到它,幹掉它
* 作業系統核心有程式缺陷造成誤存取錯誤的磁區(範例:https://github.com/stec-inc/EnhanceIO/issues/9
* 解決方式
* 試試看用更新版本的 Linux 作業系統核心啟動看看還會不會觸發相同的問題
* 如果有使用 Linux 作業系統核心來源碼樹外的第三方作業系統核心模組請試著停用看看能不能重現該問題
* /dev/sdc1 檔案系統(的 superblock?)設定有問題讓檔案系統誤以為其範圍有超過分區有效磁區範圍
* 檢查方式:EXT 檔案系統應有工具可以檢查 EXT 檔案系統的詳細狀態


※本文章由 Creative Commons BY-SA 4.0 授權條款或其任意更近期版本釋出供大眾在授權範圍內自由使用

--
Tags: Linux

All Comments

Sierra Rose avatar
By Sierra Rose
at 2016-09-30T21:44
感謝您提供的資料:-),昨天重割磁區之後那訊息是沒有了
William avatar
By William
at 2016-10-01T08:21
但因為您這邊提供的資料所以我去查了一下似乎是有程式在
Damian avatar
By Damian
at 2016-10-02T07:17
存取的樣子沒錯。
Sierra Rose avatar
By Sierra Rose
at 2016-10-06T05:25
用journalctl去看發現那幾個訊息出來前都會有這一行
Irma avatar
By Irma
at 2016-10-11T00:05
CROND[23954]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Daph Bay avatar
By Daph Bay
at 2016-10-12T03:18
爬Google似乎是Sysstat,還不知道這是甚麼研究中冏>
Necoo avatar
By Necoo
at 2016-10-12T20:43
喔喔應該是無關,不是每一次都有而且產生時間也有落差應該
Regina avatar
By Regina
at 2016-10-13T09:12
是兩個不同事件0rz...
Regina avatar
By Regina
at 2016-10-15T06:50
推薦文章與CC授權。

所以Linux就是高手在用的啊!! Mr.Robot!!

Mary avatar
By Mary
at 2016-09-27T00:34
大家有沒有看美國影集 Mr.Robot? Mr.Robot超玄疑!不錯看! 給大家看一個片段... So I see youand#39;re running Gnome https://www.youtube.com/watch?v=FQM5fU7V-MM 看到沒? 高手都用Linux!! 大家 ...

ubuntu 12.04系統換到另一台電腦?

Elvira avatar
By Elvira
at 2016-09-27T00:28
哈囉~各位版上高手大大好~ 小弟Linux 新手~目前在做實驗遇到一些問題想請教各位大大~ 現在情況是我有2台電腦: 1.系統:ubuntu 12.04LTS 顯卡:無 核心:Linux 3.8.1 主機板:AMD 2.系統:ubuntu 14.04LTS 顯卡:GTX780 核心 ...

script 如何處理檔名相同 副檔名不同

Donna avatar
By Donna
at 2016-09-26T20:14
文字檔內容如下 123/456.789 // 想要處理的部份 123/456.abc // 想要處理的部份 456/789.def abc/123.456 想要針對相同目錄裡 有相同檔名 但副檔名相異 的兩行 想留下其中一行 而另一行則刪除 而其它沒有重覆的則是不變動 123/456.789 // 想要 ...

w3m 無法複製網頁?

Gilbert avatar
By Gilbert
at 2016-09-26T08:02
At title 用w3m要節省頻寬 其他都OK 可是在w3m下 卻一直無法複製文字 請問該如何解決? 叨擾 勞煩 甚惱 不吝賜教 感恩 - ...

有輕量的簡報軟體且支援 ppt 格式嗎?

Edward Lewis avatar
By Edward Lewis
at 2016-09-25T21:27
目前知道有支援的都是一整套, 像 libre office 或 koffice , 安裝一個就有一大坨的相依要解。 而我目前已經有 abiword 和 gnu meric , 做試算表和文書處理。 單一的有找到 Magic Point , 但看起來不支援 power point 格式。 主要 ...