메뉴 닫기

OS 이미지 파일 수정과 용량 늘리기

안녕하세요.
이번 게시글에서는 OS 이미지 파일을 수정하는 방법과 8GB인 이미지 파일 용량을 10GB까지 늘리는 방법을 설명해드리겠습니다.

 ※ 우분투 공식 사이트

     https://ubuntu.com/

OS 이미지 파일 수정

해당 화면에 보이는 Ubuntu_18_04.img를 디스크 없이 수정해보도록 하겠습니다.

/dev/loop0는 첫 번째 루프백 디바이스를 나타내며, 이는 이 디바이스가 시스템 내에서 사용될 때 해당 장치 파일로 식별됩니다.

Ubuntu_18_04.img는 루프백 디바이스에 연결될 이미지 파일입니다.

즉, 이 명령어는 Ubuntu_18_04.img 파일을 /dev/loop0 루프백 디바이스에 연결하여 해당 이미지 파일에 액세스할 수 있게 합니다.

kpartx는 Linux에서 파티션을 사용하기 위해 루프백 장치에 대한 디바이스 매핑을 만드는 데 사용되는 명령어입니다.

-a 옵션은 디바이스를 추가할 때 사용되며, /dev/loop0에 대한 파티션 매핑을 만들도록 지시합니다.

/dev/mapper/ 경로에 생성된 매핑 블록 장치 파일들을 통해 각 파티션을 마운트하거나 다른 명령을 수행할 수 있습니다.

parted -l 로 확인을 한 결과 /dev/mapper/loop0p1과 /dev/mapper/loop0p2가 매핑되어 있는 모습을 확인할 수 있습니다.

/dev/mapper/loop0p1은 swap 파티션이므로 /dev/mapper/loop0p2를 /mnt로 마운트 하겠습니다.

df -h로 확인해보면 mount가 잘 되어 있는것을 확인 할 수 있고 마운트 되어있는 /mnt 아래 경로에도 파일들이 있는것을 확인할 수 있습니다.

부팅하지 않은 상태이기 때문에 부팅해야하는 작업을 제외하고는 스크립트 파일 수정같은 작업을 할 수 있습니다.

수정이 완료 되었다면,

umount /mnt 로 마운트를 해제하고,

kpartx -d /dev/loop0 로 디바이스를 매핑한 /dev/loop0 을 제거합니다.

마지막으로 losetup -d /dev/loop0을 사용하여 루프백 디바이스에 연결된 이미지 파일을 제거합니다.

제거가 잘 되었는지 losetup -a로 확인을 해줍니다.

제거가 잘 된 경우에는 아무 반응이 없지만,

제거가 잘 되지 않은 경우,

이런 메세지를 출력합니다.

OS 이미지 파일 최대 용량 늘리기

다음은 8GB인 Ubuntu_18_04.img를 10GB용량으로 늘리는 방법을 설명하겠습니다.

디스크가 따로 없는 경우,  가상 디스크를 만들어서 작업해야 합니다.

tgtimg –op new –device-type disk –size=10240 –type=disk –file=/usr/local/src/Ubuntu_18_04_10G.img

저 명령어를 사용하여 10GB인 Ubuntu_18_04_10G.img 가상디스크 파일을 생성합니다.

tgtadm –lld iscsi –op new –mode target –tid 999 -T cloudv

           -> iSCSI target을 생성하는데 사용됩니다. --tid 999는 새로운 target의 ID를 999로 설정하고, -T cloudv는 이 target의 이름을 “cloudv”로 설정합니다.

tgtadm –lld iscsi –op new –mode logicalunit –tid 999 –lun 1 -b /usr/local/src/Ubuntu_18_04_10G.img

           -> --lun 1은 target에 할당할 논리 장치 유닛의 ID를 1로 설정하고, -b /usr/local/src/Ubuntu_18_04_10G.img는 해당 LUN에 할당할 이미지 파일을 지정합니다.

tgtadm –lld iscsi –op bind –mode target –tid 999 -I ALL

           -> 새로운 iSCSI target을 모든 initiator에게 바인딩합니다. -I ALL은 모든 initiator에게 target을 바인딩하라는 옵션입니다. 이 명령을 실행하면, 이제 iSCSI initiator는 해당 target에 액세스할 수 있습니다.

가상디스크 이미지 파일의 연결을 위해 지정된 IP주소와 포트 번호를 사용하여 iSCSI Target을 검색하고, 해당 Target에 로그인해야합니다.

iscsiadm -m discovery -p [검색할 Target의 IP주소:포트] -l

로그인이 정상적으로 된 경우 IET VIRTUAL-DISK 모델의 가상 디스크가 생성되면 정상입니다.

dd if=/usr/local/src/Ubuntu_18_04.img of=/dev/sdc bs=4096 status=progress
이 명령어를 입력하여 가상 10GB디스크에 이미지 파일을 복사해줍니다.

parted -s /dev/sdc resizepart 2 100%를 입력하면 /dev/sdc2의 용량이 7557MB에서 가상 디스크 최대용량인 10.7GB까지 늘어납니다.

용량이 늘어난 것을 확인한 후 로그아웃을 해줍니다.

iscsiadm –logout -m node -T cloudv -p [지정된 Target ip:port] -S 3

이상으로 SSD나 HDD, USB같은 디스크 없이 이미지 파일을 수정하는 방법과 용량 늘리는 방법이였습니다.

감사합니다.

 

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x