diff --git a/mn_MN.UTF-8/books/handbook/advanced-networking/chapter.sgml b/mn_MN.UTF-8/books/handbook/advanced-networking/chapter.sgml index 033896dd7a..9ca8503cbe 100644 --- a/mn_MN.UTF-8/books/handbook/advanced-networking/chapter.sgml +++ b/mn_MN.UTF-8/books/handbook/advanced-networking/chapter.sgml @@ -1,7 +1,7 @@ @@ -46,6 +46,10 @@ Дискгүй машин дээр сүлжээгээр ачаалахыг хэрхэн тохируулах талаар. + + NFS root файлын систем ашиглан сүлжээгээр PXE ачаалалт хийхийг тохируулах талаар. + + Сүлжээний хаягийн хөрвүүлэлтийг хэрхэн тохируулах талаар. @@ -3976,6 +3980,306 @@ cd /usr/src/etc; make distribution + + + + + Крэйг + Родригэс + +
rodrigc@FreeBSD.org
+
+ Бичсэн +
+
+
+ NFS root файлын систем ашиглан PXE ачаалалт хийх + + &intel;-н Preboot eXecution Environment (PXE) буюу Ачаалалтаас + өмнө ажиллуулах орчин нь үйлдлийн системийг сүлжээгээр ачаалах + боломжийг олгодог. PXE дэмжлэг орчин үеийн + эх хавтангуудын BIOS дээр ихэвчлэн + хийгдсэн байдаг бөгөөд BIOS тохиргоонуудад + үүнийг идэвхжүүлэн сүлжээгээр ачаалах боломжтой болгодог. + Бүрэн хэмжээгээр ажиллах PXE тохиргоотой + байхын тулд зөв тохируулсан DHCP болон + TFTP сервертэй байхыг шаарддаг. + + Хост компьютер ачаалахдаа DHCP-с + TFTP ашиглан эхний ачаалагч дуудагчийг хаанаас авч болох + мэдээллийг авдаг. Энэ мэдээллийг хост компьютер хүлээж + авсныхаа дараа ачаалагч дуудагчийг TFTP-р + татаж аван ажиллуулдаг. Үүнийг + Preboot Execution Environment (PXE)-ийн тодорхойлолт + хаягийн 2.2.1 хэсэг бичсэн байгаа. + &os; дээр PXE процессын явцад хүлээн авсан + ачаалагч дуудагч нь /boot/pxeboot байна. + /boot/pxeboot ажилласны дараа &os;-н + цөм дуудагддаг бөгөөд &os;-н бусад ачаалалт хийгддэг. + &os;-н ачаалах процессын талаар дэлгэрэнгүйг + хэсгээс үзнэ үү. + + + NFS root файлын системд зориулж <command>chroot</command> орчин тохируулах + + + + &os; суулгац байх NFS-р холбож болох санг сонгоно. Жишээ нь + /b/tftpboot/FreeBSD/install гэх мэт санг ашиглаж + болно. + + &prompt.root; export NFSROOTDIR=/b/tftpboot/FreeBSD/install +&prompt.root; mkdir -p ${NFSROOTDIR} + + + + хэсэг дэх + зааврыг даган NFS серверийг идэвхжүүлнэ. + + + + Дараахийг /etc/exports файлд нэмэн + NFS-р санг экспорт хийнэ: + + /b -ro -alldirs + + + + NFS серверийг дахин асаана: + + &prompt.root; /etc/rc.d/nfsd restart + + + + хэсэгт заасан алхмуудын + дагуу &man.inetd.8;-г идэвхжүүлнэ. + + + + /etc/inetd.conf-д + дараах мөрийг нэмнэ: + + tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /b/tftpboot + + + + inetd-г дахин асаана: + + &prompt.root; /etc/rc.d/inetd restart + + + + &os;-н цөм болон хэрэглэгчийн талбарыг дахин бүтээнэ: + + &prompt.root; cd /usr/src +&prompt.root; make buildworld +&prompt.root; make buildkernel + + + + NFS-р холбогдсон санд + &os;-г суулгана: + + +&prompt.root; make installworld DESTDIR=${NFSROOTDIR} +&prompt.root; make installkernel DESTDIR=${NFSROOTDIR} +&prompt.root; make distribution DESTDIR=${NFSROOTDIR} + + + + + TFTP ажиллаж байгааг болон PXE-р дамжин + ачаалагч дуудагчийг татаж авч байгаа эсэхийг шалгана: + + +&prompt.root; tftp localhost +tftp> get FreeBSD/install/boot/pxeboot +Received 264951 bytes in 0.1 seconds + + + + + ${NFSROOTDIR}/etc/fstab-г засварлан root файлын + системийг NFS-р холбох мөрийг үүсгэнэ: + + +# Device Mountpoint FSType Options Dump Pass +myhost.example.com:/b/tftpboot/FreeBSD/install / nfs ro 0 0 + + + myhost.example.com гэдгийг + таны өөрийн NFS серверийн IP хаяг эсвэл + хостын нэрээр солих хэрэгтэй. Энэ жишээн дээр + NFS хэрэглэгчид root файлын системийн + агуулгыг устгачих магадлалаас хамгаалж root файлын системийг + "зөвхөн унших" эрхээр холбосон байгаа. + + + + &man.chroot.8; орчинд root нууц үгийг тохируулна. + &prompt.root; chroot ${NFSROOTDIR} +&prompt.root; passwd + Энэ нь PXE-р ачаалж байгаа хэрэглэгч + машинуудад зориулж root нууц үгийг тохируулах болно. + + + + ${NFSROOTDIR}/etc/ssh/sshd_config файлыг + засварлан PermitRootLogin гэдгийг идэвхжүүлж + PXE-р ачаалж байгаа хэрэглэгч машинуудад + зориулж ssh-р дамжин root хэрэглэгч нэвтрэх боломжийг бүрдүүлнэ. + Үүнийг &man.sshd.config.5;-д тайлбарласан байгаа. + + + + ${NFSROOTDIR} дахь &man.chroot.8; орчинд бусад өөрчлөлтүүдийг + хийнэ. Эдгээр өөрчлөлтүүдэд &man.pkg.add.1; ашиглан + багцууд нэмэх, &man.vipw.8;, ашиглан нууц үгийн файлыг засварлах, + эсвэл автоматаар холбохын тулд &man.amd.conf.5; харгалзааг засварлах + зэрэг орж болно. Жишээ нь: + + +&prompt.root; chroot ${NFSROOTDIR} +&prompt.root; pkg_add -r bash + + + + + + <filename>/etc/rc.initdiskless</filename> ашигладаг Санах Ойн Файлын системийг тохируулах + + Хэрэв та NFS root-с ачаалсан бол /etc/rc нь + NFS-ээр ачаалсныг мэдэж /etc/rc.initdiskless + скриптийг ажиллуулдаг. Юу болж байгааг энэ скрипт доторх тайлбаруудыг + уншиж мэдээрэй. Бид /etc болон + /var гэсэн санах ой дээр тулгуурласан + файлын систем үүсгэх хэрэгтэй, учир нь NFS root сан нь зөвхөн + уншигдах эрхтэй бөгөөд эдгээр сангууд нь бичигдэх боломжтой байх + ёстой. + + +&prompt.root; chroot ${NFSROOTDIR} +&prompt.root; mkdir -p conf/base +&prompt.root; tar -c -v -f conf/base/etc.cpio.gz --format cpio --gzip etc +&prompt.root; tar -c -v -f conf/base/var.cpio.gz --format cpio --gzip var + + Систем ачаалахад /etc болон /var-д + зориулсан санах ойн файлын системүүд үүсч холбогдох бөгөөд + cpio.gz файлуудын агуулга тэдгээр рүү + хуулагдах болно. + + + + DHCP сервер тохируулах + + PXE нь TFTP болон DHCP + сервер тохируулсан байхыг шаарддаг. DHCP сервер нь + TFTP сервер байгаа машин дээр заавал байх + шаардлагагүй бөгөөд таны сүлжээнээс хандаж болох боломжтой байх + ёстой. + + + + заасан зааврын дагуу + DHCP серверийг суулгана. + /etc/rc.conf болон + /usr/local/etc/dhcpd.conf файлуудыг + зөв тохируулсан эсэхийг шалгаарай. + + + + /usr/local/etc/dhcpd.conf файлын + next-server, filename, + болон option root-path тохиргоонуудад + TFTP-н IP хаяг, TFTP + дэх /boot/pxeboot хүрэх зам болон + NFS root файлын системийн замыг зааж өгнө. + Жишээ dhcpd.conf файл ийм байна: + + +subnet 192.168.0.0 netmask 255.255.255.0 { + range 192.168.0.2 192.168.0.3 ; + option subnet-mask 255.255.255.0 ; + option routers 192.168.0.1 ; + option broadcast-address 192.168.0.255 ; + option domain-name-server 192.168.35.35, 192.168.35.36 ; + option domain-name "example.com"; + + # IP address of TFTP server + next-server 192.168.0.1 ; + + # path of boot loader obtained + # via tftp + filename "FreeBSD/install/boot/pxeboot" ; + + # pxeboot boot loader will try to NFS mount this directory for root FS + option root-path "192.168.0.1:/b/tftpboot/FreeBSD/intall/" ; + +} + + + + + + + PXE хэрэглэгчийг тохируулах ба холболтын үеийн асуудлуудад дибаг хийх + + + + Хэрэглэгч машин ачаалахдаа BIOS тохиргооны + цэс рүү орно. Сүлжээнээс ачаалахыг BIOS-д + тохируулна. Хэрэв өмнөх бүх алхмууд зөв бол бүгд "зүгээр л + ажиллах ёстой". + + + + DHCP ба TFTP сүлжээний + трафикийг дибаг хийн асуудлыг хайхын тулд + net/wireshark портыг ашиглаарай. + + + + pxebootTFTP-р + авч болж байгаа эсэхийг шалгаарай. TFTP + сервер дээрээ /var/log/xferlog файлыг + нээж харан pxeboot файл зөв газраас + татагдаж байгаа эсэхийг шалгаарай. Дээрх dhcpd.conf + файлын тохиргоог шалгахын тулд: + + &prompt.root; tftp 192.168.0.1 +tftp> get FreeBSD/install/boot/pxeboot +Received 264951 bytes in 0.1 seconds + + &man.tftpd.8; ба &man.tftp.1; гарын авлагын хуудаснуудыг уншаарай. + TFTP-н зарим нэг хязгаарлалтуудыг + BUGS хэсэгт тайлбарласан байгаа. + + + + root файлын системийг NFS-р холбож болж + байгаа эсэхийг шалгаарай. Дээрх dhcpd.conf + файлын тохиргоог шалгахын тулд: + + &prompt.root; mount -t nfs 192.168.0.1:/b/tftpboot/FreeBSD/install /mnt + + + + boot.nfsroot.server болон + boot.nfsroot.path гэх мэт хувьсагчуудыг + pxeboot дуудагч хэрхэн тохируулдагийг + src/sys/boot/i386/libi386/pxe.c файлын + кодыг уншиж ойлгоорой. Эдгээр хувьсагчууд дараагаар нь + src/sys/nfsclient/nfs_diskless.c файлын + NFS-р дискгүй root холбох кодод ашиглагддаг. + + + + &man.pxeboot.8; болон &man.loader.8; гарын авлагын хуудаснуудыг уншина уу. + + + +
+ ISDN