USB 스틱에 ext4 파일 시스템이 있고 이를 한동안 사용한 후 스틱을 더 오래 사용할 수 있도록 로그를 다른 블록으로 옮기고 싶습니다. 로그는 inode 8로 설명되지만 해당 블록을 다른 위치에 어떻게 재할당할 수 있습니까?
파일 시스템이 생성될 때 이를 수행할 수 있습니까?
답변1
확인하다 man mke2fs
. -J /
위치 섹션과 -E /
Packed_meta_blocks 섹션을 주의 깊게 살펴보세요 .
USB 스틱을 사용하고 있다고 말씀하셨습니다. 아무런 결과 없이 포맷할 수 있다고 가정합니다. 데이터를 백업하셨나요?
- 기본 명령을 사용하여 디스크를 포맷하고 USB 스틱 조립 방법에 대한 데이터를 얻습니다.
- 변경된 명령을 사용하여 디스크를 포맷하고 USB 스틱을 이동한 후 모양에 대한 데이터를 가져옵니다.
- 사용 중인 디스크로 로그를 이동합니다.
데이터를 백업하셨나요?
1부. 참고용 기본 저널
- USB 플래시 드라이브를 삽입합니다.
- 터미널 창에서
sudo
또는 를 사용su
하고 비밀번호를 제공하세요. - 태그를 사용하세요
blkid " to find your " /dev/sdXX
. mke2fs -t ext4 /dev/sdXX
명령의 기본 형식입니다.- 이제 드라이브에 대한 데이터를 추출하십시오.
- 주문하다
tune2fs -l /dev/sdXX
. "Journal inode" 줄을 찾으세요. 이 번호를 적어보세요. 보통 8. 주문하다
debugfs /dev/sdXX
주문하다
stat <8>
. "8"은 "Journal inode" 줄에서 나옵니다. 이 명령은 <,>와 함께 정확하게 입력해야 합니다.무엇이 보이나요? 세 번째 행에는 저널의 크기가 나열됩니다. 이것을 적어보세요. 내 컴퓨터의 크기는 33554432(~32Mb)입니다. 13행에는 로그 사용 범위가 나열되어 있습니다. 이것을 적어보세요. 내 컴퓨터에 들어오는 것은 196608 - 204799입니다. 196608번, 페이지당 4k는 786M과 같습니다.
q
그런 다음 명령을 내리십시오quit
.
- USB 메모리 스틱 제거
파트 2: 이동 로그
- 같은 상기와.
- 같은 상기와.
- 같은 상기와.
- 주문하다
mke2fs -J location=600M /dev/sdXX
. 그러면 기본 로그가 600M 표시에서 시작하는 지점으로 이동해야 합니다. - 위와 같이.
- 위와 같이.
- 위와 같이.
- 저널 크기는 동일해야 합니다. 내 컴퓨터에서 첫 번째 로그 범위가 153600으로 이동되었습니다. 페이지당 153600 x 4k는 약 614M과 같습니다.
- 위와 같이.
- 위와 같이.
3부: 사용 중인 디스크의 로그 이동
- 데이터를 백업하시겠습니까?
- 파티션을 마운트 해제합니다.
umount /dev/sdXX
. - 오래된 일기를 삭제하세요.
tune2fs -O ^has_journal /dev/sdXX
. - 새 로그를 설치합니다.
tune2fs -J location=XX[M,G] /dev/sdXX
. 단위를 지정합니다. 로그는 거대한 기가비트 위치로 이동할 수 있습니다. e2fsck -fv /dev/sdXX
안전을 위해서요.- 기계를 다시 시작하십시오. 백업해두셨죠?
변경 로그 크기 및 위치를 사용할 수 있습니다 mke2fs -J size=XX,location=YY[M,G,P,T] /dev/sdXX
. 크기 표기는 항상 MB 단위입니다.
이것은 어디에서 왔습니까? 하드노크 아카데미의 "시행착오" 강좌입니다.