답변1
기본 파일 시스템 구조는 파일 시스템의 시작 부분을 기준으로 주소가 지정되며 이는 블록 장치의 시작 부분과 동일합니다. 파일 시스템은 암시적으로 블록 장치의 첫 번째 블록에서 시작될 것으로 예상하므로오프셋은 허용되지 않습니다.블록 장치의 첫 번째 블록과 파일 시스템의 첫 번째 블록 사이의 모든 시간입니다.
파일 시스템의 끝은 시작점을 기준으로 변경(증가 및 축소)될 수 있지만 첫 번째 블록을 넘어 확장(또는 파일 시스템을 "뒤로" 축소)하는 쉬운 방법은 없습니다.오프셋블록 장치와 해당 장치의 파일 시스템 부팅 사이. 이는 이론상 확실히 가능하지만 현재 도구 세트와 Linux 커널은 이러한 유형의 작업을 수행할 준비가 되어 있지 않습니다.
이 답변에 대한 의견에서 귀하는 파일 시스템을 현재 파티션의 두 번째 절반만 포함하는 새 파티션으로 재배치하는 데에만 관심이 있다고 밝혔습니다.
파일 시스템은 사용하는 블록 장치에 따라 달라지나요? 캔트. 다른 도구를 사용하여 파일 시스템을 재배치하는 것이 dd
가능 합니다.
프로세스는 다음과 같습니다.
- 백업해둬서 나쁠건 없지
- 기존 파일 시스템을 새 파티션 크기(또는 그 이하)로 줄입니다.
- (파티션이 아닌) 디스크에서 파일 시스템의 현재 시작 위치를 계산합니다.
- 디스크를 다시 파티션하세요
- 디스크의 데이터 양을 올바른 위치에 추가합니다(이전 시작, 새 시작 및 길이를 알고 있으므로).
- 파일 시스템 확장(2단계에서 더 작게 만든 경우)
축소된 파일 시스템(포인트 2)과 필요한 새 위치(포인트 4의 새 파티션)가 디스크에서 겹치는 경우 이 절차가 작동하지 않는다는 점을 강조하고 싶습니다.
LVM
이 문제와 기타 여러 문제를 완화하려면 사용을 고려하세요 . 를 사용하려면 LVM
다음을 수행하면 됩니다.
- 파일 시스템 축소
- 논리 볼륨을 축소하고 모든 문제를 LVM에서 처리하도록 하세요.