Partition size를 줄이는 방법에 대한 질문 입니다.
기존에 이미 존재하는 Partition의 크기를 줄여보려고 합니다.
일단 google에서 몇 군데를 찾아서 얻은 정보로 다음과 같이 해보았는데,
잘 안되는 것도 있고, 또 이해가 잘안가는 부분도 있어서 질문 드립니다.
일단 사용한 Tool은 parted와 resize2fs 입니다.
Fedora 7이 설치된 PC에 2GB짜리 USB stick을 장착하고 2개의 parition
을 구성했습니다.
이것은 fdisk를 사용해서 만들었고 table은 아래와 같습니다.
첫번째 partition(/dev/sdb1)은 270MB이고
두번째 partition(/dev/sdb2)은 630MB로 구성했습니다.
Device Boot Start End Blocks Id System /dev/sdb1 1 1385 263841 83 Linux /dev/sdb2 1386 4616 615505 83 Linux
해보려고 했던 작업은 첫번째 partition의 크기를 270MB에서 225MB로 변경하는
것입니다.
# parted /dev/sdb1 resize 1 0 225MB
라고 실행을 했고, 보여진 error message는 다음과 같습니다.
Error: File system has an incomplete feature enabled.
Information: Don't forget to update /etc/fstab, if necessary.
뭔가 잘 안되는 것 같은데 이유가 무엇인지를 모르겠네요.
조언을 주시면 감사하겠습니다.
두번째로는 resize2fs를 사용해봤습니다.
# resize2fs /dev/sb1 225M
resizefs 1.39 (29-May-2006)
Resizing the filesystem on /dev/sdb1 to 230400 (1k) blocks
The filesystem on /dev/sdb1 is now 230400 blocks long.
이번에는 Error message가 나타나지 않는게 뭔가 된 것 같다는 느낌이 들었습니다.
그리고 mount를 해보니 실제 size가 줄어든 것으로 보입니다.
# mount -t ext2 /dev/sdb1 /mnt # df -k Filesystem 1K-blocks Used Available Use% Mounted on /dev/sdb1 223075 2062 209493 1% /mnt
그래서 이번에는 다시 /dev/sdb1을 umount한 이후에, fdisk로 /dev/sdb를 열어보았습니다.
fdisk로 확인한 table은 아래와 같고, 이것은 처음 fdisk에서 생성한 그대로 인 것 같아 보입니다.
Device Boot Start End Blocks Id System /dev/sdb1 1 1385 263841 83 Linux /dev/sdb2 1386 4616 615505 83 Linux
하지만 mount하면 줄어든 size로만 mount가 되는데, 그럼 줄어든 영역을 어떻게 사용할 수
있을까요?
270MB-225MB이면 45MB가 사라진 것 같이 보이네요.
무얼 잘못해서 이렇게 된건지, 아니면 원래 이렇게 동작하는건지 모르겠습니다.
혹시 원래 이렇게 동작하는 거라면 partition size를 줄이는 게 의미가 없는 건 아닌가
싶기도 하고요.
줄어든 partition만큼 그 영역을 다른 용도로 사용하려 하는 중인데, 영 해결을 못하고 있습니다.
조언 부탁드리고 싶어 글을 올렸습니다.
그럼 미리 감사드립니다. ^^
정상적으로 파티션
정상적으로 파티션 사이즈 축소에 성공했다면,
빈 공간에 새로운 파티션을 만들어 주셔야죠.
fdisk 에서
이렇게 작업하시면 sdb3 이 생길테니, 이 파티션을 적절히 포맷해서 사용하시면 될겁니다.
-
작성 후 다시 읽어보니,
지금은 기존 크기와 같은 파티션 안에
파일시스템만 작은 사이즈로 만드셨네요...
parted던 파티션매직이던 잘 사용하셔서 파티션 사이즈를 조정하셔야 합니다.
만약 기존 데이터가 다 날아가도 상관 없다면,
fdisk 에서 o 로 파티션 테이블을 초기화한 후 n, p 반복으로 파티션을 처음부터 새로 나누세요.
2GB USB인 만큼 기존 데이터가 있더라도 백업하고 fdisk를 사용하는게 낫지 않을까 싶네요.
아 그렇군요..
Partition size가 줄어든게 아니고, file system이 줄어든 것이었네요.
resize2fs의 용도를 제가 오해했던 것 같습니다.
그런데, 위에 보면, parted를 써서 partition size를 줄이려고 할 때,
error가 있엇는데, 그건 왜 생기는 error일까요?
조언 부탁드립니다. ~ 감사합니다.
혹시나 해서 tune2fs를 사용해봤습니다.
원래 partition 자체가 ext2이기 때문에 굳이 안해도 될 것 같기는 했지만,
혹시 몰라서
tune2fs -O ^has_journal /dev/sdc2 를 실행해보고
다시 parted를 실행했는데, 결국은 똑 같은 error를 다시 보게 되네요.
아래가 error의 내용입니다.
Error: File system has an incompatible feature enabled.
Information: Don't forget to update /etc/fstab, if necessary.
한가지를 더 해봤습니다.
위험한 방법인것 같긴한데,,몇번 해 보는 중에는 문제가 안보여서요.
일단 Ramdisk로 부팅을 하고요.
Harddisk는 mount가 되어 있지 않은 상태로 둡니다.
그런 상태에서 ramdisk에서 fdisk를 수행시켜서
실제 Hard Disk중의 한 partition의 size를 강제로 줄이고
저장했습니다.
물론 그 partition에는 상당한 여유공간이 있었고요.
그리고 다시 정상적으로 부팅을 해보니, 모든 데이타가 그대로 잘 있고,
Size는 원하는 만큼 줄어있고, 동작도 크게 문제가 없어 보이네요.
그래도 너무 찜찜해서 조언을 부탁드려봅니다.
이런 경우는 너무 위험할까요?
에고 이방법은 역시 ~
안되는군요 ^^
지금은 일단 resize2fs로 file size를 줄이고 나서
fdsik로 실제 partition size를 줄여봤는데,
이런 경우는 잘 되는 것처럼 보이네요.
이런 경우도 많이 위험할까요? 조언 주시면 감사하겠습니다 ^^
댓글 달기