MBR ๋ฐฑ์ ์ค์ต
MBR
๋ถํ
์ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ GRUB2๋ ๋ณดํต ํํฐ์
์ ์ฒ์ 512 byte์ ์๋ 1st track & 1st sector์ ์ค์น๋๋๋ฐ ์ด๊ณณ์ MBR์ด๋ผ๊ณ ํ๋ค.
์ด๋ HDD์ ์ ์ฅ๋ ๋ฐ์ดํฐ์ ๋ํ indexing(์์ธ) ์ญํ ์ ํ๊ธฐ ๋๋ฌธ์ FAT(File Allocation Table)๋ผ๊ณ ๋ณผ ์ ์๋ค.
MBR์ ๋ฐฑ์
ํด๋๋ฉด ์์คํ
์ ๋ฌธ์ ๊ฐ ์์ ๋ ๋ณต๊ตฌํ ์ ์๋ค.
๋ณดํต ๋ธ๋ก(์ ์ฅ)์ฅ์น ๋ฐฑ์
์ dd(disk duplicate) ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํด์ ์์
ํ๋๋ฐ MBR ๋ฐฑ์
์๋ ์ฌ์ฉ๋ ์ ์๋ค.
fdisk -l /dev/sda ์์ผ๋ก HDD๋ฅผ ๋ณด์์ ๋ *(asterisk)๊ฐ ๋ถ์ด ์๋ ๊ณณ์ด booting ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ ๊ณณ์ด๋ค.
๋ณดํต ์ฉ๋์ 512byte ์ ๋์ด๋ค.
MBR ๋ฐฑ์
์ dd ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํด์ ์์
ํ๋ค.
fdisk
fdisk๋ ๋ฆฌ๋
์ค์์ ๋์คํฌ ํํฐ์
ํ
์ด๋ธ์ ๋ณด๊ฑฐ๋ ์์ ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ช
๋ น์ค ์ ํธ๋ฆฌํฐ์ด๋ค.
์ด ๋๊ตฌ๋ ์๋ก์ด ํํฐ์
์ ๋ง๋ค๊ฑฐ๋, ๊ธฐ์กด ํํฐ์
์ ์ญ์ ํ๊ฑฐ๋, ํํฐ์
์ ํฌ๊ธฐ๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐ ์ฌ์ฉ๋ ์ ์๋ค.
์ด๋ ๋ช
๋ น์ด์ ๋ํ ์ฌ์ฉ๋ฒ์ man fdisk OR fdisk —help ์์ผ๋ก ํ์ธํ ์ ์๋ค.
man fdisk ์์ผ๋ก ํ์ผ์ ์ด๋ฉด vi๋ผ๋ ํธ์ง๊ธฐ๋ก ํ์ผ์ด ์ด๋ฆฌ๋๋ฐ :q ํ๋ฉด ๋ซํ๋ค.
blkid
์ปดํจํฐ ์์คํ
์ด ์ธ์ํ ์ฅ์น์ ๊ณ ์ ๋ฒํธ(UUID), ํ์ผ ์์คํ
ํ์
์ ๋ณด์ฌ์ค๋ค.
blkid: ์ด ๋ช
๋ น์ด๋ ๋ธ๋ก ์ฅ์น์ ์์ฑ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด ์ ๋ณด์๋ UUID (Universally Unique Identifier), ํ์ผ ์์คํ
ํ์
(์: ext4, NTFS ๋ฑ), ๋ ์ด๋ธ ๋ฑ์ด ํฌํจ๋ ์ ์์ต๋๋ค. ์ด ์ ๋ณด๋ ์ผ๋ฐ์ ์ผ๋ก fstab ํ์ผ์ด๋ ์์คํ
๋ถํ
์คํฌ๋ฆฝํธ์์ ์ฌ์ฉ๋ฉ๋๋ค.
lsblk
์์คํ
์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๋ธ๋ก ์ฅ์น๋ฅผ ๋์ดํ๊ณ , ๊ฐ ์ฅ์น์ ํฌ๊ธฐ, ๋ง์ดํธ ์ง์ , ์ฅ์น ์ด๋ฆ ๋ฑ์ ๋ณด์ฌ์ค๋ค.
lsblk: ์ด ๋ช
๋ น์ด๋ ์์คํ
์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๋ธ๋ก ์ฅ์น๋ฅผ ๋์ดํ๋ฉฐ, ๊ฐ ์ฅ์น์ ํฌ๊ธฐ, ๋ง์ดํธ ์ง์ , ์ฅ์น ์ด๋ฆ ๋ฑ์ ํฌํจํ ์ ๋ณด๋ฅผ ํ ํ์์ผ๋ก ์ ๊ณตํฉ๋๋ค. lsblk๋ ๊ณ์ธต์ ํํ์ ์ ๊ณตํ์ฌ, ๊ฐ ์ฅ์น๊ฐ ์ด๋ป๊ฒ ์ฐ๊ฒฐ๋์ด ์๋์ง ์๊ฐ์ ์ผ๋ก ํ์
ํ๊ธฐ ์ฝ์ต๋๋ค.
dd๋ก MBR ๋ฐฑ์
dd ๋ช
๋ น์ด๋ ๋ธ๋ก์ฅ์น๋ฅผ ์
์ถ๋ ฅํ๊ณ ๋ฐฑ์
ํ ๋ ์ฌ์ฉ๋๋ค.
dd if(inputinterface)=~ of(outputinterface)=~ count=n(๋ณต์ฌ ํ์) bs=512k(๋ณต์ฌ ํฌ๊ธฐ) ; sync
JavaScript
๋ณต์ฌ
dd if=/dev/sda1 of=/tmp/sda1.mbr count=1 bs=512K ; sync
/tmp ํด๋์ ๋ธ๋ก์ฅ์น ๋ฐฑ์
์ ์ถ๋ ฅํ์ผ๋ ls /tmp๋ก ํ์ธํ๋ค.
์ด๋ ํ์ผ์ ~.lst, ~.com, ~.exe ์์ผ๋ก ํ์ผ_๋ช
๋ค์ ๋ถ์ ๊ฒ์ ํ์ฅ์๋ผ๊ณ ํ๋๋ฐ Windows์์๋ .com, .exe, .bat๊ฐ ์คํํ์ผ์ด๊ณ , Linux์์๋ binary๊ฐ ์คํํ์ผ์ด๋ค.
Windows์์๋ ์ฃผ๋ก 3์๋ฆฌ๊น์ง๋ง ์ฌ์ฉํ๊ณ , linux์์๋ ๊ธธ๊ฒ(256์๋ฆฌ) ํด๋ ๋๋ค.
MBR ์ญ์
JavaScript
๋ณต์ฌ
dd if=/dev/zero of=/dev/sda1 count=1 bs=512K
/dev/zero๋ ๋ธ๋ญ์ฅ์น (HDD, USB, DVD, SDcard)์๋ ๋ฐ์ดํฐ๊ฐ 0,1๋ก ๊ตฌ์ฑ๋์ด ์๋๋ฐ ์ด๋ฅผ ๋ชจ๋ 0์ผ๋ก ๋ง๋ค๋ฉด ๋ฐ์ดํฐ๊ฐ ์ญ์ ๋๋ ์
์ด ๋๋ค. ← format๋ ์ด๋ฐ ๊ธฐ๋ฅ์ด๋ค.(์ ๊ธฐ์ ์ถฉ๊ฒฉ)
DVD๋ land์ pit๊ฐ ์๋ค. ์ฌ๊ธฐ์ laser/LED ๋น์ ์๋ค. ๋ฐ์ดํฐ๊ฐ ๋๋ ์ด์ ๋ ์ฌ์ธ๊ณผ ๊ฐ์ ํํ์ ๊ทธ๋ฆฌ๊ณ ์๋ค.
๋๋์ ํผํธ๋ฅผ ๊ฐ์ง๊ณ 1011011001์ ๊ตฌ๋ถํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์๋ค. 8๊ฐ์ฉ 1 byte์ฉ=8bit ์ฉ ์ ์ก์ด ๋๋ค.
์ฌ๊ธฐ์ ์ ๊ธฐ์ ์ถฉ๊ฒฉ์ ์ฃผ๋ฉด ๋ฐ์ดํฐ๊ฐ ์ฌ๋ผ์ง๋ค.
/dev/zero๋ /dev/null
0์ผ๋ก ์ง์ด๋ฃ์ด์ ์ถ๋ ฅ์ ์ฃผ๋ฉด ์ญ์ ๋๋ค.
MBR ๋ณต์
JavaScript
๋ณต์ฌ
dd if=/tmp/sda1.mbr of=/dev/sda1
๋ถํ ๊ณผ ํํฐ์ ๋ฐฑ์
๋ณดํต์ dd์ sfdisk๋ฅผ ์ฌ์ฉํด์ MBR๊ณผ ํํฐ์
์ ํจ๊ป ๋ฐฑ์
ํด๋๊ณ ํ์ํ๋ฉด ๋ณต์ํ๋ค.
๋ถํ
๋ถ๋ถ ๋ฐฑ์
์ dd if=/dev/sda of=/tmp/sda.bak count=1 bs=512K ํด์ฃผ๊ณ ,
ํํฐ์
๋ฐฑ์
์ sfdisk -d /dev/sda > /tmp/sda.part ํด์ฃผ๋ฉด ๋๋ค.
ํํฐ์
๋ณต์ต: HDD๋ฅผ partition(๋ถํ )ํ๋ฉด ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๊ณต๊ฐ์ ํ๋ณดํ๋ ๊ฒ์ด๋ค.
์ด ํํฐ์
(์ค์ )์ ๋ฐฑ์
ํ ์ ์๋ค.
๋ถํ
๋ถ๋ถ ๋ฐฑ์
: dd
JavaScript
๋ณต์ฌ
dd if=/dev/sda1 of=/tmp/sda1.mbr count=1 bs=512K ; sync
ํํฐ์
๋ฐฑ์
: sfdisk
JavaScript
๋ณต์ฌ
sfdisk -d /dev/sda > /tmp/sda.part
parted
parted /dev/sda print
ํํฐ์
๋ณผ๋ฅจ ๋ฒํธ ๋ณผ ๋ ์ฌ์ฉํ๋ค.
sfdisk
sfdisk๋ fdisk์ ๊ฐ์ ์ ํ์ ๋ฆฌ๋
์ค ๋ช
๋ น์ค ์ ํธ๋ฆฌํฐ๋ก, ๋์คํฌ ํํฐ์
ํ
์ด๋ธ์ ๋ณด๊ฑฐ๋ ์์ ํ๋๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
sfdisk์ ์ฃผ์ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
ํํฐ์
ํ
์ด๋ธ์ ๋ฐฑ์
๋ฐ ๋ณต์: sfdisk๋ ๋์คํฌ์ ํํฐ์
ํ
์ด๋ธ์ ํ์ผ๋ก ๋ฐฑ์
ํ๊ณ , ํ์ํ ๊ฒฝ์ฐ์ ์ด๋ฅผ ๋ณต์ํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด ๊ธฐ๋ฅ์ ์์คํ
๋ณต๊ตฌ ์์
์์ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
JavaScript
๋ณต์ฌ
sfdisk -d /dev/sda > /tmp/sda.part
๊ฒฐ๊ณผ๋ฅผ ์ค๋ฅธ์ชฝ์ ์ ์ฅ(>: redirect๊ฐ ๊ทธ ๊ธฐ๋ฅ์ ํ๋ค.)