UsingBOOTP
|
barmi › UserInterface › UserInterfaceEngineering › UserModeLinux › UserPreferences › UsingBOOTP ½ÃÀÛÇϱâÀü¿¡ ¶ÇÊÀÚ´Â ¼¹ö¿Í ³ÝºÏÀ» ÀÌ¿ëÇϴµ¥ ³ÝºÏ¿¡´Â ODDÀåÄ¡°¡ ¾ø½À´Ï´Ù. ÀÌ °æ¿ì ³ÝºÏ¿¡ OSÇѹø ¼³Ä¡ÇÏ·Á¸é ¸Å¿ì º¹ÀâÇØÁý´Ï´Ù. ¼¹ö´Â ÀÖÀ¸´Ï ¼¹ö·ÎºÎÅÍ ¿ø°Ý ºÎÆÃÀ» ÇÒ¼ö ÀÖÀ¸¸é ÁÁ°Ú´Ù´Â »ý°¢À» ¸¹ÀÌ Çß¾ú´Âµ¥ ±× ÇØ´äÀÌ ÀÖ¾ú½À´Ï´Ù. ¹Ù·Î BOOTP°¡ µÇ°Ú½À´Ï´Ù. ÀÌÁ¦ PXE¸¦ Áö¿øÇÏ´Â BIOS¸¦ °¡Áø ÄÄÇ»ÅÍ´Â ¸ðµÎ ¿ø°ÝºÎÆÃÇÒ¼ö ÀÖ°Ô È¯°æÀ» ±¸ÃàÇØº¸·Á°í ÇÕ´Ï´Ù.
Gentoo Linuxȯ°æ¿¡¼ Gentoo LiveCD¸¦ ÀÌ¿ëÇÑ ¿ø°Ý ºÎÆÃ±¸Ãà ¶¼³¸íÀÇ ÆíÀǸ¦ À§Çؼ ´ÙÀ½°ú °°Àº ȯ°æº¯¼ö¸¦ »ç¿ëÇϰڽÀ´Ï´Ù.
export PATH_LIVECD="/mnt/cdrom" export PATH_TEMP="/tftpboot/tmp" export PATH_TFTPROOT="/tftpboot"
mkdir -p ${PATH_LIVECD}
mkdir -p ${PATH_TEMP}
mkdir -p ${PATH_TEMP}/gentoo.init.dir
mkdir -p ${PATH_TFTPROOT}
mkdir -p ${PATH_TFTPROOT}/netboot
mkdir -p ${PATH_TFTPROOT}/netboot/pxelinux.cfg
mkdir -p ${PATH_TFTPROOT}/netboot/gentoo
emerge net-misc/dhcp
option domain-name "example.com";
option domain-name-servers 168.126.63.1, 168.126.63.2, 210.94.0.7, 164.124.101.2, 203.248.252.2, 210.181.1.24, 203.255.112.34;
default-lease-time 600;
max-lease-time 7200;
# <<< ÀÌ ºÎºÐ Ãß°¡ >>>
allow booting;
allow bootp;
ddns-update-style none;
log-facility local7;
subnet 10.0.0.0 netmask 255.0.0.0 {
option broadcast-address 10.255.255.255;
option routers 10.0.0.1;
# <<< Booting ¿¡ ÀÌ¿ëÇÒ pxelinux.0ÀÇ À§Ä¡ ¹× TFTP server IPÁÖ¼Ò ¼³Á¤ >>>
filename "netboot/pxelinux.0";
next-server 10.0.0.1;
pool {
range 10.0.0.100 10.0.0.200;
allow unknown-clients;
}
# group {
# host bootp_client {
# hardware ethernet XX:XX:XX:XX:XX:XX;
# fixed-address 10.0.0.200;
# }
# }
}
emerge net-ftp/tftp-hpa
emerge sys-boot/syslinux
cp /usr/share/syslinux/pxelinux.0 ${PATH_TFTPROOT}/netboot
cp /usr/share/syslinux/memdisk ${PATH_TFTPROOT}/netboot
mount -o loop install-XX-minimal-XXXXXXXX.iso ${PATH_LIVECD}
cp ${PATH_LIVECD}/isolinux/gentoo ${PATH_TFTPROOT}/netboot/gentoo
cd ${PATH_TEMP}/gentoo.init.dir
gunzip -c ${PATH_LIVECD}/isolinux/gentoo.igz | cpio -idv
mkdir -p ${PATH_TEMP}/gentoo.init.dir/mnt/cdrom
cp ${PATH_LIVECD}/isolinux/image.squashfs ${PATH_TEMP}/gentoo.init.dir/mnt/cdrom
cp ${PATH_TEMP}/gentoo.init.dir/init ${PATH_TEMP}/gentoo.init.dir/init.org
-- if [ "${REAL_ROOT}" != "/dev/nfs" ] && [ "${LOOPTYPE}" != "sgimips" ]
++ if [ "${REAL_ROOT}" != "/dev/nfs" ] && [ "${LOOPTYPE}" != "sgimips" ] && [ "${REAL_ROOT}" != "/" ]
-- elif [ -b "${REAL_ROOT}" ] || [ "${REAL_ROOT}" = "/dev/nfs" ]
++ elif [ -b "${REAL_ROOT}" ] || [ "${REAL_ROOT}" = "/dev/nfs" ] || [ "${REAL_ROOT}" = "/" ]
-- cache_cd_contents
-- mount -t squashfs -o loop,ro ${NEW_ROOT}/mnt/cdrom/${LOOPEXT}${LOOP} ${NEW_ROOT}/mnt/livecd
++ mount -t squashfs -o loop,ro /mnt/cdrom/${LOOPEXT}${LOOP} ${NEW_ROOT}/mnt/livecd
cd ${PATH_TEMP}/gentoo.init.dir
find . -print | cpio -o -H newc |gzip -9 -c - > ${PATH_TFTPROOT}/netboot/gentoo/initrd.gz
default gentoo_x86 prompt 1 timeout 600 label gentoo_x86 kernel gentoo/gentoo append initrd=gentoo/initrd.gz ip=dhcp root=/dev/ram0 init=/linuxrc loop=/image.squashfs looptype=squashfs cdroot=1 real_root=/ vga=normal dokeymap label local LOCALBOOT 0 |
Today is a good day to bribe a high ranking public official. |









