Linux Mint(리눅스 민트)와 Ubuntu(우분투)의 터미널에서 usb 시동 디스크 만들기,usb 로우포맷(low level format),파티션 나누기(partition),포맷하기(format)

오늘은 Linux Mint 와 Ubuntu등의 os 에서 usb를 가지고
터미널에서 부팅 usb만들기를 해보겠습니다.
동시에,함께, 관련이 많은
로우포맷(플래시 드라이브이니  공장 초기화정도로 이해해 주세요)
파티션 나누기
포맷하기( Fat 32)
도 같이 알아 보겠습니다.

Linux 시동 디스크(부팅 usb)만들기는 이글을

http://bagjunggyu.blogspot.kr/2013/10/linux-booting-usb-grub.html

리눅스 설치과정은 이글을 참고하세요 

http://bagjunggyu.blogspot.kr/2012/09/maya_26.html

Debian(데비안) 설치는 이글을 참고하세요
http://bagjunggyu.blogspot.kr/2014/03/debain-7-wheezy-7-windows.html

Gparted를 이용한 파티션 조절과 제거,포맷하기는 이글을

http://bagjunggyu.blogspot.kr/2013/02/linux-mint-ubuntu_20.html

Grub와 부트로더,MBR, 멀티부팅에 관한 이야기는 이글을 참고하세요
http://bagjunggyu.blogspot.kr/2013/02/boot-loader-grub-grub.html

윈도우에서 리눅스 파티션 읽게 해주는 프로그램

http://www.maketecheasier.com/access-linux-ext4-partition-from-windows/

엊그제 Mageia를 설치해 보려고 부팅 usb를 만들었는데
Pendrive, Unetbootin,시동 디스크 생성기(usb-creator-gtk),Linux Live Usb Creator 모두 안되더군요
그런데,Image Writer로 성공을 했었답니다.
그래서 잠시 Mageia를 설치 해보고 바로 지웠습니다.

그런데 ,문제는 usb가 ....이상해 진겁니다.Image Writer로 부팅 usb를 만들고는
Windows에서 확인해 보면 남은 공간이 600Mb 정도 밖에 없는걸로 나오고 
내용물은 아무 것도 안보이더군요,포맷을 해도 파티션 크기가 변하질 않아서 usb를 못쓰게 된 줄 알았답니다.
이러 저러한걸 해보다가 안되서
HDDGuru사의 LLF 프로그램을 이용해서 로우 포맷을 했었답니다.
Windows에서는 이렇게 해야 해결이 됩니다.

그렇다면 우분투나 민트, 루나에서는 어떻게 되었을까요?

usb를 인식하지도 않더군요, 파일 브라우저에서 usb가 연결되었다는 어떤 반응도 없었습니다.
고장난줄 알았습니다.하지만, 해결방법은 의외로 간단했습니다.
시동 디스크 생성기(usb-creator-gtk)로 "지우기"를 해주니 포맷까지 되어서
깔끔하게 마무리 되었습니다. 그런데, 이렇게 시동디스크를 이용하지 않을때는 어떻게 해야할까요?
로우포맷을 하고, 파티션을 만들고, 포맷을 해야합니다.

참고로,
데비안에서도 Gnome의 Nautilus와 CrunchBang의 Thunar도 마찬가지로 인식하지 않았지만, 
데비안에서는 KDE의 Dolphin만 유일하게 읽어 들였습니다.

저는 usb를 포맷할때 시동디스크 생성기를 이용합니다.

시동디스크 생성기의 지우기가 바로 usb에게는 포맷을 해주는 역활을 한답니다.
파티션도 나누면서 동시에 Fat32 로 포맷까지 해준답니다.

오늘은 그 덕분에 ,usb와 관련된 이야기를 해볼까 합니다.

그리고 시동 디스크 생성기로 usb를 포맷하는 방법도 같이 알아 보겠습니다.

Section 1)
* 시동 디스크 생성기(usb-creator-gtk)로 부팅 usb 만들기 - 이전의 내용으로 링크
* 시동 디스크 생성기(usb-creator-gtk)로 usb 포맷하기

Section2)
* 터미널에서 로우포맷하기 - dd if , dcfldd if
* 터미널에서 부팅 usb 만들기 - dd if , dcfldd if ,dd(dcfldd) if |pv| 
* 터미널에서 cfdisk를 이용해서 파티션 나누기
* 터미널에서 usb 포맷하기 - mkfs
* 파티션과 포맷이란 무엇을 말하는 걸까요? 

자 그럼 시작해 보겠습니다.

Section 1)

시동 디스크 생성기로 부팅 usb 만들기는 이글을 참고하세요

시동 디스크 생성기로 usb 포맷하기
우선 이 내용은 Section2)의 로우포맷으로 만들어진 usb를 우선으로 일러드립니다.
평소에 사용하는 usb는 이미 파티션이 만들어 져서 ,포맷까지 되어진 usb들이기 때문에
그냥 지우기만 하면 그대로 포맷을 하는 겁니다.

오늘은 로우 포맷을 한 usb를 포맷하는 일이 얼마나 많은 과정을 필요로 하는지를 알게 됩니다.
포맷의 과정을 잠시 살펴 보면요
로우 포맷(Low Format)  - Partiton 나누기 - 포맷하기(원하는 파일 시스템으로) 입니다.
마지막의 파일 시스템도 FAT32로 할겁니다.
Windows 와 Linux 그리고 자동차에서도 usb로 직접 음악을 듣기도 하는
여러가지 기기에서 함께 이용 할 수 있는 파일시스템이기 때문입니다.

이 과정이 얼마나 많은 단계를 거치는 지는 Section 2)에서 보실 수 있습니다.
그렇지만,시동 디스크 생성기의 지우기는 
로우포맷을 해서 파티션도 나누어지지 않은 usb를 파티션을 만들고 포맷까지,
너무나 쉽고 간단하게 해결합니다.
그럼 그 과정을 함께 보시겠습니다.

시동 디스크 생성기(usb-creator-gtk)를 설치해 주세요


apt install -y usb-creator-gtk

또는, 패키지 관리자(synaptic)에서 설치해 주세요

로우 포맷한 usb를 끼운 상태로,시동 디스크 생성기를 실행해주세요 
메뉴의 검색에서 usb를 입력 하시면 금방 나옵니다.
또는, 메뉴 - 프로그램 - 관리 에 가시면 있습니다.

실행하시면 이렇게 나옵니다.
장치에 보시면 (/dev/sdb)라고 나오죠? 아직 파티션이 나누어 지지 않은 상태의 usb 입니다.
디스크 삭제를 누르세요

누르시면 이렇게 안내문이 나옵니다.예(Y)를 눌러주세요.

시스템의 정책에 의해 이장치의 포맷을 허용하지 않는 답니다.
그래서,포맷을 하려면 관리자의 허락이 있어야 한답니다.
관리자의 비밀번호를 입력합니다.
안내 문에서 보시듯이 포맷을 하는 겁니다.

그러면,포맷을 합니다.포맷도 금방 끝납니다.
참 쉽고 빠르고 간단합니다.
결과를 보실까요?
장치를 보시면 (/dev/sdb1)이라고 나옵니다
/dev/sdb의 1번 파티션에 FAT32 형식의 usb 저장 장치가 만들어진 겁니다.
 FAT32인지 파일 시스템을 확인 하는 방법은요 ,Gparted 나 fdisk -l 을 이용하는 것 입니다.

Gparted를 이용해서 살펴 봤습니다.
보이시 나요? Fat 32 그리고 boot Flag도 함께 설정 되었습니다.

터미널에서는 
sudo fdisk -l 하시면 보실 수 있습니다.
맨 아래에 보이시죠?
Boot 플랙과 W95 FAT32 (LBA) 

그리고,Nemo에서 본 방금 만든 usb 드라이버의 속성입니다.


참 쉽게 되네요,이렇게 아주 간단하게 시동 디스크 생성기를 이용해서 usb 포맷을 했습니다.

그럼 이제,과연 터미널을 이용해서 usb를 포맷하는 과정은 어떤가 함께 보실까요?

Section 2)

터미널에서 로우 포맷 하기 
1) dd if=/dev/zero of=저장장치
로우 포맷은 나중에 부팅 usb로 부팅 하셔서 하드디스크를 로우 포맷 할때도 이렇게 하시면 됩니다.
하드 디스크 로우포맷은요 기본적으로 
dd if=/dev/zero of=/dev/sda - 하드디스크 전체 입니다.

저는 usb 이기에 /dev/sdb가 됩니다.
dd if=/dev/zero of=/dev/sdb - usb 등 두번째 저장장치
그런데 dd if 구문은 로우 포맷이 진행되는 동안 아무것도 알려주지않습니다.
터미널에서 덩그러니 시작 할때 입력한 dd if= ~~ 만 끝날때 까지 나옵니다.
규모가 큰 하드 디스크 같으면...실행 해 놓고 다른 일을 볼겁니다.
4GB usb 저장 장치도 그렇게 7분을 기다렸습니다.

sudo fdisk -l 하셔서 장치를 확인 합니다.
sudo umount /dev/sdb* 하셔서 장치를 unmount 해줍니다.그리고
sudo dd if=/dev/zero of=/dev/sdb 를 해서 로우 포맷을 시작합니다.

2) dcfldd if=/dev/zero of=저장장치
그래서,dcfldd를 이용합니다.
dcfldd는 지금 얼만큼을 포맷했는지를 용량을 표시해서 알려줍니다.
우선 dcfldd를 설치 하겠습니다.

apt install -y dcfldd 

이제 실행 하겠습니다.
sudo fdisk -l 하셔서 장치를 확인 합니다.
sudo umount /dev/sdb*
sudo dcfldd if=/dev/zero of=/dev/sdb

사진 에서 보시듯이 (3824Mb)라고 나오지요?

작업이 진행 되는 동안에는 진행되는 만큼의 숫자가 나옵니다.

Tip) 여기서 잠깐 마운트에 대해서 살펴보겠습니다. 

마운트라는 것은 시스템이 장치를 이용하기 위해 소프트웨어 상으로 연결한다는 말입니다.
언마운트는 장치를 다 썼으니 시스템과의 연결을 소프트웨어 상으로 해제 후 대기한다는 말입니다.
꺼내기와는 다릅니다. 꺼내기는 시스템과 기계적으로 완전히 분리한다는 말입니다. CD 같으면, 실제로 꺼내집니다. 

그림은 elementary so luna의 판테온 파일 입니다.

처음에 컴퓨터에 usb를 연결했을 때 파일 브라우저에서 usb를 보시면 이렇게 되어 있을 겁니다.

이 상태는 기기와는 연결되어 있지만, 시스템이 장치를 이용하지는 못 합니다.

기계적으로 연결은 되어 있지만 사용을 기다리는 대기 상태, 언마운트 상태 인 것입니다.
OS에 따라 연결 하자마자 마운트 하는 경우가 있습니다. 반드시 확인해 주세요

로우포맷은 언마운트 상태에서 하게 됩니다.

하드디스크는 고정된 장치로 fstab, mtab 등에 등록해서 이용하게 됩니다.
언마운트는 umount라고 명령하며, 파티션 별로 해주게 됩니다.

하드디스크를 로우 포맷 해보겠습니다.
그림에서 보시듯이 149.05GB 짜리 입니다. 원래 크기는 160GB 입니다.

sudo fdisk -l 

이 둘을 통해서 용량을 알수 있으니 얼마나 기다리게 되는지는, dcfldd에서는 Mb 를 보면서 기다리면 됩니다.
시작해 볼까요?

sudo dcfldd if=/dev/zero of=/dev/sda

게이지가 약150GB x 1024 = 153600Mb 정도까지 기다리면 됩니다.
736Mb니까 .. 그다지 오래 걸리진 않았습니다.
터미널에서 부팅 usb 만들기
부팅 usb를 만드는 여러가지 도구들이 있고,그런 도구들을 활용하면 참 편합니다.
그리고,오늘은 터미널에서 부팅 usb를 만들어 보겠습니다.

위에서 로우 포맷을 할때 쓰던 명령문을 그대로 활용 하게 됩니다.
dcfldd if=iso 이미지가 있는 위치 of=저장장치 의 형식입니다.

저는 iso 이미지를 여기(/media/Repository/iso)에 보관중입니다.
애석하게도 안되는 iso 이미지들도 있습니다.
이번에 쓰일 iso는 Linux Mint 13 Maya Mate 32-bit 버전입니다.
/media/Repository/iso/Maya/linuxmint-13-mate-dvd-32bit.iso

sudo dcfldd if=/media/Repository/iso/Maya/linuxmint-13-mate-dvd-32bit.iso of=/dev/sdb
그림에서 보시듯이 184Mb를 작성했답니다.
이렇게 dcfldd는 작업 진행을 알 수 있어서 좋습니다.


다 만들어졌습니다.여기서 중요한 Tip입니다.
이방법은 로우 포맷한 상태 그대로 이용하시거나,
이미 파티션이 나누어진 usb를 이용하시더라고,
그대로 /dev/sdb에 부팅 usb로 만들어야만 됩니다.
/dev/sdb의 파티션에 부팅 usb를 만들면 작동하지 않습니다.
파티션을 나누는 방법은 아래에서 따로 설명 드리겠습니다.

이런 식이죠/dev/sdb의 1번 파티션 /dev/sdb1에 부팅 usb를 만들어 보겠습니다.
sudo dcfldd if=/media/Repository/iso/Maya/linuxmint-13-mate-dvd-32bit.iso of=/dev/sdb1


위의 그림 처럼 설치는 성공을 하지만 실제로 부팅이 되질 않습니다.
터미널에서 부팅 usb를 만드실땐 꼭!!!!
로우 포맷한 상태 그대로 이용하시거나, /dev/sdb에 만드세요

Plus Alpha)
아래 그림처럼 중간의 |pv|는 중간과정을 보여주는 바(bar)가 나오게 하는 겁니다
먼저 pv를 설치하시구요  apt install -y pv 
pv를 이용하는 방법입니다. /dev/sdb 의 장치를 로우포맷 하는경우
sudo dcfldd if=/dev/zero | pv | sudo dcfldd of=/dev/sdb

터미널에서 cfdisk를 이용해서 파티션 나누기
이제부터는 usb를 저장장치로 이용하기 위해서 작업을 하겠습니다.
Windows,Linux,자동차 오디오등 모든곳에 두루 쓰기 위해서 FAT32로 포맷하겠습니다.

로우 포맷을 한 usb는 그대로는 포맷을 할 수 없습니다.
파티션이 만들어져야  포맷이 가능합니다.

로우포맷후 이젠 파티션을 나누는 방법을 알아 보겠습니다.
기본으로 설치된 도구가 cfdisk 와 fdisk 입니다.
둘을 적절히 잘 이용해야 합니다.
안되는 경우들도 있거든요,또는 활용하기 쉬운쪽으로 이용하려고도 하는 겁니다.
별도로 gdisk를 이용하실 분은 설치하셔야 합니다.

cfdisk는 파티션을 만들기에는 좋지만,제거하기에서 문제가 생기는 경우가 있었습니다.
그런데.fdisk는 되더군요,파티션 제거하기의 경우에 그런일이 있었습니다.
windows에서 포맷한 usb를 cfdisk가 읽지를 못하는 일이 일어났지만
fdisk를 이용해서 파티션을 제거할 수 있었습니다.

그럼 cfdisk를 이용해서 FAT32로 포맷할 파티션을 나눠 보겠습니다.

sudo cfdisk /dev/sdb


4009.76MB 라는 군요, 새로운 파티션을 만들겠습니다.

New를 선택하고 Enter키를 칩니다.

Primary를 선택하고 Enter


Enter

Bootable 을 선택하고 Enter


Flags에 Bootable 설정이 보이실 겁니다.


Type에서 파일 시스템이 결정 됩니다.선택 하지 않고 그냥 진행 하면 Linux 파일 시스템으로 자동 설정 됩니다.

FAT32를 선택 하려면 Type를 누르고 Enter를 칩니다.

여기에서 저 코드를 잘 외워두세요

저는 W95 FAT32 (LBA)를 선택 했습니다.
LBA는 크기가 528 MB가 넘는 하드디스크에 주소를 지정할 수 있도록 해주는 테크닉이라는 군요
아까,시동 디스크 생성기에서 본대로 하는 것입니다.
0C 를 외워 둡니다.Enter 합니다.

0C를 입력 합니다.


Write를 해줘서 지금까지의 설정을 적용 시킵니다. Enter


디스크에 파티션 테이블을 쓸거냡니다.yes를 입력하시고 Enter 해주세요


드디어 파티션을 만들었습니다.Q를 입력하시거나 또는 Quit를 선택하시고 Enter 하세요



터미널에서 usb 포맷하기 FAT32
드디어 포맷하기 입니다.
포맷은 mkfs (make file system)을 이용합니다.

os마다 요구하는 파일 형식이 조금씩 다르더군요

ext2,ext3,ext4,xfs,vfat(FAT32),ntfs

swap은 mkswap을 이용하며 swapon을 해줍니다.


그럼 저는 vfat 를 하겠습니다.


sudo mkfs.vfat /dev/sdb1


sudo mkfs -t vfat /dev/sdb1


둘다 같은 말입니다.

mkfs -t = 다음의 파일형식(type)으로 포맷합니다.
mkfs. = 다음의 파일형식으로 포맷합니다.

포맷 한것을 확인해 보겠습니다.


sudo fdisk -l 


이렇게 터미널을 이용한 usb 포맷을 마쳤습니다.

로우 포맷부터 포맷까지 터미널로 하려면 이렇게 해야 되는데요
시동디스크 생성기는 아주 간단하고 빠르고 쉽게 할 수 있게 되어있죠
바로~~지우기...참 유용한 기능입니다.

P.S) 

로우포맷부터 포맷까지 한 번에 실행하는 순서를 담았습니다.
usb라는 레이블을 붙이고 fat32 형식으로 만들었습니다.

sudo umount /dev/sdb*

sudo dcfldd if=/dev/zero of=/dev/sdb
sudo cfdisk /dev/sdb
sudo mkfs.vfat -n"usb" /dev/sdb1
sudo blkid /dev/sdb1

파티션과 포맷이란 무엇을 말하는 걸까요?
지금 까지 포맷과 파티션은 어떻게 하는 것인가를 알아 봤는데요
그럼,파티션과 포맷 이란 무엇을 말하는 걸까요? 이렇게 이해하시면 좀더 쉽습니다.

기차가 다닐 철길과,자동차가 다닐 도로를 연상해보세요

기차의 바퀴에 맞추어 놓은 레일, 자동차의 주행에 맞추어 놓은 아스팔트 부분이 파일 시스템(포맷)에 해당하구요
레일을 설치 할수 있는 기반과,아스팔트 아래 아스팔트를 설치할 수 있게 만드는 도로의 지반이 파티션에 해당합니다.

'파티션을 나누다 혹은 파티션 테이블을 만들다'는 파일형식에 맞추어 

도로 혹은 레일에 맞게 지반을 만들듯이 ,파일 시스템을 설치 할 수 있는 자리를 마련 하는 것입니다.

'포맷하다란',파일 형식에 맞게 만들어 놓은 파티션에 

아스팔트와 레일을 설치하듯이, 파일 시스템을 만드는 작업을 말하는 것입니다.


P.S)

cfdisk가 파티션을 제거할때 Windows에서 만들어진 usb를 제대로 읽지를 못하는 경우입니다.
로우포맷한 usb를 Windows7 에서 포맷을 해봤습니다.
그리고 파티션을 살펴보니
이렇더군요

그리고,cfdisk를 이용해서 파티션을 제거하려했더니

이런 일이 벌어 졌습니다.

그런데,fdisk에서는 지워지더군요

마지막의 command 4는 잘못 친겁니다.


cfdisk로 파티션을 만들고,fdisk로 지우면 쉽겠다는 생각이 들게합니다.
그렇지만,cfdisk가 역시 더 편리합니다.이렇게 경우에 따라 적절히 사용해야 겠군요.


이상으로 Linux Mint 나 Ubuntu의 터미널에서 

부팅 usb만들기,로우 포맷하기,파티션 나누기,포맷하기를 마치겠습니다.

댓글

  1. We are a bunch of volunteers and opening a brand new scheme in our community.
    Your site offered us with valuable information to work on.

    You have done a formidable activity and our whole
    neighborhood shall be thankful to you.

    Also visit my weblog: reklama lubin towarowa

    답글삭제
  2. 이건 다음 블로그에도 없는 내용이네요. 유용하게 보았습니다~!! ^^

    답글삭제
    답글
    1. 앗!! 휴~~^^;;
      다음과 네이버에도 같은 내용이 있습니다^^;;;
      http://blog.daum.net/bagjunggyu/91

      삭제
  3. 아래처럼 하니 pv와 함께 사용이 가능하네요^^
    sudo dcfldd if=/dev/zero | pv | sudo dcfldd of=/dev/sdb

    답글삭제
    답글
    1. 오옷!!! 드디어 이 문제가 해결되었군요^__^
      얼른 본문에 넣겠습니다 ^_^

      삭제
    2. 지금 넷북을 로우포맷 하면서 확인해보니, 한줄로 나오는 건 아니네요^^
      약간 아쉽지만, 다이나믹합니다^^;;;;

      삭제

댓글 쓰기

가장 많이 본 글