/
, /boot
및 (2개의 1T SATA 디스크가 있는 RAID1) 용 파티션만 있는 오래된 PC 서버(쿼드 Pentium 4)를 상속받았지만 swap
배포판을 업데이트해야 했습니다(CentOS 6.9에서). 포함된 파티션을 /
포맷할 수 있도록 새 파티션을 만들기로 결정했습니다 .
-p
하지만 플래그를 추가하는 것을 잊어버렸고 resize2fs
이제 플래그가 조용히 나를 쳐다보고 있으며 얼마나 더 걸릴지 알 수 없습니다(50시간 이상 사용했습니다). 이제 파일 시스템을 축소하는 방법을 알고 있습니다.시간이 오래 걸릴 수 있다, 하지만 기다릴 수 있는 동안100시간, 같은 것800시간은 말도 안 돼.
현재 제가 생각하는 것은 다음과 같습니다.
Ctrl
+C
&& 를 사용하세요e2fsck
.- 파티션을 마운트하고 아무런 목적도 없는 100G 이상의 데이터를 수동으로 삭제합니다.
- 맨 위에서부터 시작하세요.
resize2fs -p ...
그런데 못 찾았어요의견 일치어떻게위험한에 SIGINT를 보내는 것입니다 resize2fs
.
중요한 정보에 대한 추가 백업이 있지만 파일 시스템을 손상시키지 않고 이 작업을 수행하고 싶습니다. 그리고 네, 배포판을 처음부터 설치하고 백업을 복원하는 것이 더 빠를 수도 있다는 것을 알고 있습니다.
업데이트: 나는 그것을 중단하기로 결정했습니다. 모든 것이 괜찮은 것 같지만 문제는 여전히 남아 있습니다. 나는 아직도 궁금하다.
답변1
확실히 흥미로운 질문이고 결과가 꽤 좋았지만(그리고 제가 바라던 대로 잡기는 SIGINT
정확히 로켓 과학이 아니며 중간에 일시 중지하여 일부 데이터 블록을 재배치하는 것도 어렵지 않은 것 같습니다) 성공하지 못한 사례도 충분합니다. , 예를 들어 10yo Debian 버그와 같습니다.https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574292
하지만 그 버그가 10년이 지났음에도 불구하고 나는 방금 모의를 실행했고 e2fsck
전자 resize2fs
는 및 를 strace
포함한 수많은 신호 처리기를 설치했지만 여전히 설치하지 않았습니다.SIGINT
SIGTERM
resize2fs
따라서 누구든지 이 질문을 발견하면 위의 내용을 일화적인 증거로 삼고 계속 조심하세요. :-) 매뉴얼 페이지에는 실수가 있을 경우 실행 취소 파일을 생성하기 위한 플래그가 언급되어 있습니다.
(그리고 저는 이 크기 조정 작업을 스크린 세션 내에서 실행했으면 좋겠지만... 적어도 그렇습니다 -p
.)
편집하다
e2fsck
잠깐만요, 방금 깨달았습니다. SSH를 사용하여 LVM 스냅샷을 만들고 크기 조정이 계속 실행되는 동안 스냅샷을 만드는 것이 어떨까요 ? "블록 재배치" 단계에서 연속으로 5회 작업을 수행했으며 모든 검사에서 "오류가 있는 파일 시스템이 포함되어 있습니다. 강제로 검사합니다"라는 메시지가 표시되지만 오류는 발견되지 않았습니다. 물론 데이터 무결성에 대해서는 묻지 마세요.
편집하다
BTW에서 tytso@ 자신의 매우 흥미로운 반응https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574292#30