공간이 이상하게 사라지는 것처럼 보이는 2개의 XFS 파일 시스템이 있습니다.
이 시스템(데비안)은 수년 전에 설치되었습니다(아마 12년 전인 것 같습니다). 당시 2개의 XFS 파일 시스템이 생성되었습니다. 그 이후로 시스템의 소프트웨어와 하드웨어가 업데이트되었으며 두 파일 시스템 모두 여러 번 성장했습니다. 이제 최신 32비트 Debian Jessie와 백포트 아카이브의 64비트 4.9.2-2~bpo8+1 Linux 커널을 실행합니다.
이제 며칠 내에 이러한 파일 시스템에서 사용되는 공간이 파일로 인해 예상보다 훨씬 더 커진 것을 확인했습니다. 확인해 보니 lsof +L1
삭제되었지만 일부 프로세스에 의해 열려 있는 파일과는 아무런 관련이 없습니다. 파일 시스템을 마운트 해제하고 xfs_repair
.
이를 보여주는 성적표는 다음과 같습니다.
~# df -h /home
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-home 2.0G 1.7G 361M 83% /home
~# du -hsx /home
1.5G /home
~# xfs_estimate /home
/home will take about 1491.8 megabytes
~# umount /home
~# xfs_repair /dev/system/home
Phase 1 - find and verify superblock...
Phase 2 - using internal log
- zero log...
- scan filesystem freespace and inode maps...
sb_fdblocks 92272, counted 141424
- found root inode chunk
Phase 3 - for each AG...
- scan and clear agi unlinked lists...
- process known inodes and perform inode discovery...
- agno = 0
- agno = 1
- agno = 2
- agno = 3
- agno = 4
- agno = 5
- agno = 6
- agno = 7
- process newly discovered inodes...
Phase 4 - check for duplicate blocks...
- setting up duplicate extent list...
- check for inodes claiming duplicate blocks...
- agno = 0
- agno = 2
- agno = 1
- agno = 3
- agno = 4
- agno = 5
- agno = 6
- agno = 7
Phase 5 - rebuild AG headers and trees...
- reset superblock...
Phase 6 - check inode connectivity...
- resetting contents of realtime bitmap and summary inodes
- traversing filesystem ...
- traversal finished ...
- moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...
done
~# mount /home
~# df -h /home
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/system-home 2.0G 1.5G 521M 75% /home
~#
이 예에서는 "161MB만" 손실되었지만 너무 오래 기다리면 파일 시스템이 100% 가득 차서 실제 문제가 발생하게 됩니다...
이것이 중요한 경우 두 파일 시스템 모두 LXC 컨테이너에 바인드 마운트됩니다. (내 시스템에는 다른 XFS 파일 시스템이 없습니다.)
왜 이런 일이 발생하는지 또는 어떻게 조사해야 하는지 아는 사람이 있나요?
답변1
xfs_admin -c 1 xxx
게으른 카운터 모드 XFS를 사용합니다.