읽기 전용 루트 파일 시스템

읽기 전용 루트 파일 시스템

어떻게 든 내 데비안은 루트 파일 시스템에서 읽기 전용이 되었습니다. 어떻게 이런 일이 일어났는지 모르겠습니다. 예를 들어, 폴더
에 있을 때 명령을 입력한 다음 키 를 눌러 해당 폴더에 있는 가능한 파일을 나열하면 다음 메시지가 표시됩니다./rootnanoTab

root@debian:~# nano -bash: cannot create temp file for here-document: Read-only file system

cdcd /home경로를 나열하기 위해 입력 하고 키를 누를 때의 명령도 마찬가지입니다 Tab.

root@debian:~# cd /home -bash: cannot create temp file for here-document: Read-only file system

나는 또한 이와 같은 소프트웨어에 문제가 있었습니다 apt. 업데이트를 적절하게 받을 수도 없습니다. 다음과 같은 오류가 많이 있습니다.

Err http ://ftp.de.debian.org wheezy-updates/main Sources
406  Not Acceptable
W: Not using locking for read only lock file /var/lib/apt/lists/lock
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy/Release  rename failed, Read-only file system (/var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release -> /var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_Release).
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/source/Sources  404  Not Found
W: Failed to fetch http ://security.debian.org/dists/wheezy/updates/main/binary-amd64/Packages  404  Not Found
W: Failed to fetch http ://ftp.de.debian.org/debian/dists/wheezy-updates/main/source/Sources  406  Not Acceptable
E: Some index files failed to download. They have been ignored, or old ones used instead.
W: Not using locking for read only lock file /var/lib/dpkg/lock

내 시스템에 많은 문제가 있습니다. 이 문제를 해결할 수 있습니까? 무슨 일이 일어나고 있는지 어떻게 확인할 수 있나요? 로그에서 무엇을 찾아야 합니까?

/etc/fstab나는 이것이 파일의 줄 때문일 수 있다는 것을 알고 있습니다 .

/dev/mapper/debian-root /               ext4    errors=remount-ro 0       1

그런데 문제가 무엇입니까? 아무것도 찾을 수 없거나 어디를 봐야할지 모르겠습니다.

편집하다:

메시지 로그를 검색해 본 결과 다음과 같은 내용만 발견했습니다.

kernel: [    5.709326] EXT4-fs (dm-0): re-mounted. Opts: (null)
kernel: [    5.977131] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro
kernel: [    7.174856] EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null)

다른 데비안 컴퓨터에도 동일한 항목이 있으므로 이것이 맞는 것 같습니다.

dmesg에서 뭔가를 찾았습니다(표준 ext4 항목이 많기 때문에 출력을 약간 줄였습니다)

root@gs3-svn:/# dmesg |grep ext4
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_reserve_inode_write:4507: Journal has aborted
EXT4-fs error (device dm-0) in ext4_dirty_inode:4634: Journal has aborted
EXT4-fs error (device dm-0): ext4_discard_preallocations:3894: comm rsyslogd: Error loading buddy information for 1
EXT4-fs warning (device dm-0): ext4_end_bio:250: I/O error -5 writing to inode 133130 (offset 132726784 size 8192 starting block 159380)
EXT4-fs error (device dm-0): ext4_journal_start_sb:327: Detected aborted journal

오류 5개와 경고 1개. 어떤 아이디어가 있나요? mount -o remount,rw /를 사용해도 안전합니까?

답변1

대부분의 Linux 파일 시스템의 기본 동작은 데이터를 보호하는 것입니다. 커널이 스토리지 하위 시스템에서 오류를 감지하면 (추가) 데이터 손상을 방지하기 위해 파일 시스템을 읽기 전용으로 만듭니다.

errors={continue|remount-ro|panic}시스템 설명서( )에 설명된 설치 옵션을 사용하여 이를 일부 조정할 수 있습니다 man mount.

루트 파일 시스템에서 이러한 오류가 발생하면 로그 파일도 이제 읽기 전용이므로 대부분의 경우 해당 오류는 로그 파일에 기록되지 않습니다. 다행스럽게도 이는 커널 작업이므로 원래 오류 메시지가 먼저 메모리의 커널 링 버퍼에 기록됩니다. 이 명령을 사용하면 링 버퍼가 메모리에서 플러시되지 않은 경우 링 버퍼의 내용을 표시할 수 있습니다 dmesg. .

대부분의 실제 하드 드라이브 지원영리한이를 사용하여 smartctl디스크 상태를 진단할 수 있습니다.

오류 메시지를 기반으로 파일 시스템이 여전히 사용하기에 안전한지 확인하고 읽기 및 쓰기 조건을 반환할 수 있습니다.mount -o remount,rw /

그러나 일반적으로 디스크 오류는 완전한 디스크 오류의 전조입니다. 이제 데이터 백업을 생성하거나 기존 백업의 상태를 확인할 차례입니다.

관련 정보