- ابتدا بستههای زیر را نصب نمایید :
|
1 |
# apt install dnsmasq apache2 |
- در مرحلهی بعد از پروندهی dnsmasq.conf یک پشتیبان گرفته و آن را با یک ویرایشگر باز کنید :
|
1 2 |
# mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup # vim /etc/dnsmasq.conf |
- سپس تغییرات زیر را اجرا نمایید :
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
interface=<span style="color: #ff0000;">ens33</span>,lo bind-interfaces domain=mypxe.local dhcp-range=<span style="color: #ff0000;">ens33,192.168.1.230,192.168.1.253,255.255.255.0,1h</span> dhcp-option=3,<span style="color: #ff0000;">192.168.1.1</span> dhcp-option=6,<span style="color: #ff0000;">192.168.1.1</span> dhcp-option=6,<span style="color: #ff0000;">8.8.8.8</span> server=<span style="color: #ff0000;">8.8.4.4</span> dhcp-option=28,<span style="color: #ff0000;">192.168.1.255</span> dhcp-option=42,<span style="color: #ff0000;">0.0.0.0</span> dhcp-boot=pxelinux.0,pxeserver,<span style="color: #ff0000;">192.168.1.14</span> pxe-prompt="<span style="color: #ff0000;">Press F8 for menu.</span>", 2 pxe-service=x86PC, "<span style="color: #ff0000;">Install Ubuntu 16.04 from network server 192.168.1.14</span>", pxelinux enable-tftp tftp-root=/srv/tftp |
- مواردی که به صورت قرمز رنگ مشخص شده است باید تغییر یابند.
- عبارت dhcp-option=3 به منظور آدرس مسیریاب یا Default GW میباشد.
- عبارت dhcp-option=6 به منظور آدرس خادم DNS است. استفادهی چندین مرتبه از این عبارت بدون مشکل است.
- عبارت dhcp-option=28 به منظور آدرس broadcast شبکه میباشد.
- عبارت dhcp-option=42 به منظور آدرس خادم NTP میباشد. در صورتی که مقدار 0.0.0.0 برای این عبارت در نظر گرفته شود، تنظیمات مربوطه به عهدهی سیستمعامل واگذار میشود.
- عبارت dhcp-boot به منظور درج آدرس IP خادم PXE است.
- مقدار عبارات pxe-prompt و pxe-service دلخواه بوده و باید متناسب با خادم تغییر یابند.
- در ادامه :
|
1 2 3 4 5 6 7 |
# mkdir /srv/tftp # systemctl enable dnsmasq.service # systemctl restart dnsmasq.service # systemctl status dnsmasq.service # systemctl enable apache2 # systemctl start apache2 # systemctl status apache2 |
- در مرحلهی بعد پروندهی ISO را در مسیر زیر Mount کنید :
|
1 2 |
# mkdir /mnt/iso/<span style="color: #ff0000;">ubuntu-16.04.6-server-amd64</span>/ -p # mount -o loop <span style="color: #ff0000;">ubuntu-16.04.3-desktop-amd64</span>.iso /mnt/iso/<span style="color: #ff0000;">ubuntu-16.04.6-server-amd64</span>/ |
- در ادامه :
|
1 2 |
# cp -rf /mnt/iso/<span style="color: #ff0000;">ubuntu-16.04.6-server-amd64</span>/install/netboot/* /srv/tftp/ # cp -rf /mnt/iso/<span style="color: #ff0000;">ubuntu-16.04.6-server-amd64</span>/* /var/www/html/ |
- در صورتی که دیوارآتش بر روی خادم فعال است :
|
1 2 3 4 5 6 |
# ufw allow http # ufw allow 53/tcp # ufw allow 53/udp # ufw allow 67/udp # ufw allow 69/udp # ufw allow 4011/udp |
- آدرس مخزن به صورت زیر است :
|
1 |
http://<Your_IP_Address>/ubuntu |
- پروندهی زیر را با یک ویرایشگر باز کنید :
|
1 |
# vim /var/www/html/ubuntu/preseed/local-sources.seed |
- سپس خط زیر را به آن اضافه کنید :
|
1 |
d-i live-installer/net-image string http://<span style="color: #ff0000;">192.168.182.128</span>/ubuntu/install/filesystem.squashfs |
- نکته: توجه نمایید که آدرس 192.168.182.128 فرضی بوده و باید متناسب با خادم تعویض شود.
- خط بالا میشود تا فرآیند نصب از طریق خادم PXE صورت گیرد اما تمام مراحل از کاربر پرسیده میشود. همچنین در ادامهی فرآیند نصب باید آدرس مخزن نیز لحاظ شود که در ادامهی مستند گفته میشود.
- میتوان خطوط زیر را به پروندهی local-sources.seed اضافه کرد تا مرحلهی اضافه کردن آدرس مخزن به صورت دستی توسط کاربر انجام نشود.
|
1 2 3 4 5 6 7 8 |
d-i live-installer/net-image string http://<span style="color: #ff0000;">192.168.182.128</span><span style="color: #0000ff;">/ubuntu</span>/install/filesystem.squashfs d-i mirror/protocol string http d-i mirror/country string manual d-i mirror/http/hostname string <span style="color: #ff0000;">192.168.182.128</span> d-i mirror/http/directory string <span style="color: #0000ff;">/ubuntu</span> d-i mirror/http/proxy string d-i apt-setup/local0/repository string <span style="color: #ff0000;">http://mirror.iranserver.com/ubuntu</span> xenial main restricted universe multiverse |
- در ادامه پروندهی زیر را با یک ویرایشگر باز کنید :
|
1 |
# vim /srv/tftp/ubuntu-installer/amd64/boot-screens/txt.cfg |
- سپس عبارت زیر را در جلوی عبارت append قرار دهید :
|
1 |
auto=true url=http://<span style="color: #ff0000;">192.168.182.128</span>/ubuntu/preseed/local-sources.seed |
- یعنی این پرونده باید به شکل زیر باشد :
|
1 2 3 4 5 6 7 8 9 10 |
default install label install menu label ^Install Ubuntu 16.04 with Local Sources menu default kernel ubuntu-installer/amd64/linux append auto=true url=http://<span style="color: #ff0000;">192.168.182.128</span>/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet label cli menu label ^Command-line install kernel ubuntu-installer/amd64/linux append tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false vga=788 initrd=ubuntu-installer/amd64/initrd.gz --- quiet |
- در ادامه پروندهی زیر را با یک ویرایشگر باز کنید :
|
1 |
# vim /srv/tftp/ubuntu-installer/amd64/boot-screens/rqtxt.cfg |
- سپس عبارت زیر را در جلوی عبارت append قرار دهید :
|
1 |
auto=true url=http://<span style="color: #ff0000;">192.168.182.128</span>/ubuntu/preseed/local-sources.seed |
- یعنی این پرونده باید به شکل زیر باشد :
|
1 2 3 4 |
label rescue menu label ^Rescue mode kernel ubuntu-installer/amd64/linux append auto=true url=http://<span style="color: #ff0000;">192.168.182.128</span>/ubuntu/preseed/local-sources.seed vga=788 initrd=ubuntu-installer/amd64/initrd.gz rescue/enable=true --- quiet |
- در ادامه پروندهی زیر با یک ویرایشگر باز کنید :
|
1 |
# vim /srv/tftp/ubuntu-installer/amd64/boot-screens/menu.cfg |
- سپس عبارات زیر را با استفاده از # به حالت توضیح تبدیل کنید :
|
1 2 3 |
# menu hshift 13 # menu width 49 # menu margin 8 |
- در نهایت کافیست خادم خام را روشن کرده تا مراحل نصب آغاز شود.
- در مرحلهی نصب سیستم عامل Ubuntu در قسمت choose a mirror of the ubuntu archive باید گزینهی enter information manually انتخاب شود.

- در صفحهی باز شده آدرس خادم PXE را به صورت زیر وارد کنید :
|
1 |
http://192.168.182.128 |

- در مرحلهی بعد آدرس پوشهای که سیستمعامل درون آن قرار دارد را وارد کنید.
- این آدرس با توجه به تنظیمات به صورت زیر است :
|
1 |
/ubuntu |

- بعد از به پایان رسیدن فرآیند نصب پیشنهاد میشود آدرس مخزن سیستمعامل به صورت زیر عوض شود.
|
1 |
# sed -i.bak ‘s/<span style="color: #ff0000;">192.168.182.128</span>/archive.ubuntu.com/g’ /etc/apt/sources.list |
- توجه نمایید که آدرس 192.168.182.128 آدرس خادم PXE میباشد.