Linux,Unix,BSD

[실패기] "fsck" file & directory corrupted 복구

채윤아빠 2019. 2. 10. 13:18
728x90
반응형



문제점 및 증상

시스템을 재부팅한 이후로, 아래와 같이 crontab 및 vi로 파일을 편집하려고 하면 Read-only 오류가 발생하였습니다.

miner@miner03-TB350-BTC:~/bin$ crontab -e
/tmp/crontab.beBvzT: Read-only file system
Creation of temporary crontab file failed - aborting


해결 실패

디스크 용량문제인지 확인해 보니, 용량의 문제는 아니었습니다.

df -h

Filesystem      Size  Used Avail Use% Mounted on
udev            1.9G     0  1.9G   0% /dev
tmpfs           397M  6.1M  391M   2% /run
/dev/sda1       109G   57G   48G  55% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
tmpfs           397M     0  397M   0% /run/user/1000

다음과 같이 디스크 문제 만능 해결사(?) "fsck"를 수행합니다.

sudo fsck

[sudo] password for user: 
fsck from util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
/dev/sda1: recovering journal
/dev/sda1 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Directory inode 3678239, block #0, offset 0: directory corrupted
Salvage<y>? 
Fix<y>? yes
Setting filetype for entry '..' in ??? (3678239) to 2.
Directory inode 3678240, block #0, offset 0: directory corrupted
Salvage<y>? yes
Missing '.' in directory inode 3678240.
Fix<y>? yes
Setting filetype for entry '.' in ??? (3678240) to 2.
Missing '..' in directory inode 3678240.
Fix<y>? yes
Setting filetype for entry '..' in ??? (3678240) to 2.
yPass 3: Checking directory connectivity
'..' in /tmp/gnome-software-T2N4TZ (3678239) is <The NULL inode> (0), should be /tmp (3670017).
Fix<y>? yes
'..' in /tmp/gnome-software-FU9XTZ (3678240) is <The NULL inode> (0), should be /tmp (3670017).
Fix<y>? yes
Pass 4: Checking reference counts
Inode 2 ref count is 23, should be 25.  Fix<y>? yes
Inode 3670017 ref count is 590, should be 588.  Fix<y>? yes
Unattached inode 3670778
Connect to /lost+found<y>? yes
Inode 3670778 ref count is 2, should be 1.  Fix<y>? yes
Unattached inode 3670779
Connect to /lost+found<y>? yes
Inode 3670779 ref count is 2, should be 1.  Fix<y>? yes
Pass 5: Checking group summary information

/dev/sda1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda1: ***** REBOOT LINUX *****
/dev/sda1: 432349/7266304 files (0.1% non-contiguous), 15229668/29054976 blocks

~/bin$ sudo fsck

fsck from util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
/dev/sda1: clean, 432349/7266304 files, 15229668/29054976 blocks

문제는 그 이후로 시스템 부팅이 정상적으로 이루어지지 않습니다. ㅠ.ㅠ


기존 자료들중에 삭제되면 안되는 것들이 있는데 백업도 되어 있지 않았기 때문에, 어쩔 수 없이 기존 파티션은 그대로 두고 우분투 OS만 재설치하도록 하였습니다.


"fsck"도 만능은 아니고, 매우 주의하여 사용하여야 합니다. 역시 백업 및 동기화가 매우 중요합니다.