Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: spacekkt 04 Dubna 2010, 01:40:19
-
Zdravim chtel bych udelat diskless masinu do obyvaku. Mam server se slackwarem kde mam dhcp PXE nfs. Z ubuntu jsem stahnul obraz disku mam i jadro s podporou ale nenajede mi to. Jadro se pusti a pak podle mne to zkonci protoze to nemuze pripokit root a swap atd.
1.NFS jede
2.DHCP taky
3.PXE funguje
Probehne jadro a pak
to pise:
Begin: Retrying nbm mount
Error:Connect: Connection refused
Done.
nekolikrat za ssebou a pak to zkonci na prik. (initramfs:)
Nevite nekdo co s tim uz se motam v kruhu dlouho.
-
Jj tak uz jsem to vyřešil. Překvapuje mne ze nikdo nezareagoval.Takže díky :) Nadšení mne jako Linuxáka o to víc narostlo protože to jede. A v obýváku není žádný diskco dělá rachoot. MythTV řeže reklamy z vysílání a nemusim na ně čučet :)
-
Nechceš se podělit o řešení, ať má toto vlákno nějaký smysl? ;)
-
Nechceš se podělit o řešení, ať má toto vlákno nějaký smysl? ;)
+1
-
Reseni urcite dam k dispozici. Jen si nejsem jist mym postupem. Ale ted pracuji na prendani na ostry server a tak dam k dispozici i navod na osatni vychytavky s MythTv jako je napriklad vycitani programu kin Cinestar a pod...
-
Nedalo mi to a v sobotom uprsanom pocasi som sa s tymto trochu hral. Tu je moj vysledok.
A. bootovanie cez siet za ucelom instalacie na disk PC (napr. bez DVD mechaniky alebo bez bootovania z USB)
(zdroj http://www.howtoforge.com/setting-up-a-pxe-install-server-on-ubuntu-9.10-p3 (http://www.howtoforge.com/setting-up-a-pxe-install-server-on-ubuntu-9.10-p3))
1. vypnut DHCP server napr. na routri
2. instalacia Tftp Servera
sudo apt-get install dhcp3-server tftpd-hpa syslinux nfs-kernel-server initramfs-tools openbsd-inetd
sudo gedit /etc/inetd.confvlozit/upravit:
tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /tftpbootpouzite /tftpboot a nie /var/lib/tftpboot
spustenie inetd pri starte:
sudo update-inetd --enable BOOT
restart inetd servera:
sudo /etc/init.d/openbsd-inetd restart
kontrola ci bezi tftpd server:
netstat -lu
vypis by mal obsahovat:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 *:tftp *:*
sudo gedit /etc/default/tftpd-hpazmenit obsah na:
RUN_DAEMON="yes"
OPTIONS="-l -s /tftpboot"
sudo /etc/init.d/tftpd-hpa restart
sudo mkdir /tftpboot
sudo chown nobody /tftpboot
sudo chmod 777 /tftpboot
kontrola ci adreasar /tftpboot je spravne nastaveny
ls -ld /tftpbootpozadovany vypis:
drwxrwxrwx 2 nobody root 4096 2010-01-28 15:04 /tftpboot
3. nastavenie DHCP servera
sudo gedit /etc/default/dhcp3-serverupravte podla vasej sietovky
INTERFACES="eth0"
sudo cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf_orig
sudo gedit /etc/dhcp3/dhcpd.conf
obsah suboru:
default-lease-time 86400;
max-lease-time 604800;
authoritative;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.2 192.168.1.255;
filename "pxelinux.0";
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
}
dynamicky pridelovane IP budu v rozsahu 192.168.1.2 to 192.168.1.255
restart DHCP servera:
sudo /etc/init.d/dhcp3-server restart
4. nastavenie bootovacich suborov
cd /tftpboot
lftp -c "open http://archive.ubuntu.com/ubuntu/dists/karmic/main/installer-i386/current/images/netboot/; mirror"
cp /tftpboot/ubuntu-installer/i386/boot-screens/vesamenu.c32 /tftpboot
lftp -c "get http://www.howtoforge.com/images/pxe_install_server_ubuntu_9.10/howtoforge_pxe.png;"
sudo gedit /tftpboot/pxelinux.cfg/defaultobsah suboru:
default vesamenu.c32
Menu Background howtoforge_pxe.png
Menu Title Boot Menu
label install
menu label ^Install
menu default
kernel ubuntu-installer/i386/linux
append vga=normal initrd=ubuntu-installer/i386/initrd.gz -- quiet
label expert
menu label ^Expert install
kernel ubuntu-installer/i386/linux
append priority=low vga=normal initrd=ubuntu-installer/i386/initrd.gz --
label cli-expert
menu label Command-^line expert install
kernel ubuntu-installer/i386/linux
append tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false priority=low vga=normal
initrd=ubuntu-installer/i386/initrd.gz --
label rescue
menu label ^Rescue mode
kernel ubuntu-installer/i386/linux
append vga=normal initrd=ubuntu-installer/i386/initrd.gz rescue/enable=true -- quiet
label Local_drive
localboot 0
menu label ^Local Drive
prompt 0
timeout 0
5. bootovanie na klientskom pocitaci - v BIOSe zvolit bootovanie cez siet
na mojej doske Asus je to schovane v nastaveniach Southbridge, volba OnBoard LAN Boot ROM
a podla potreby aj nastavit poradie bootovania
malo by nabehnut ponukove menu s instalaciou ubuntu, ak sa zobrazi tak je vsetko funkcne tak ako treba
B. bootovanie cez siet za ucelom spustenia systemu (pocitac bez pevneho disku, nacitavanie a ukladanie vsetkeho na server)
(zdroj https://help.ubuntu.com/community/DisklessUbuntuHowto?action=fullsearch&context=180&value=linkto%3A%22DisklessUbuntuHowto%22 (https://help.ubuntu.com/community/DisklessUbuntuHowto?action=fullsearch&context=180&value=linkto%3A%22DisklessUbuntuHowto%22))
tento postup nadvazuje na bod A (tak to mam otestovane)
1.
sudo gedit /etc/dhcp3/dhcpd.confdoplenie suboru o priradenie IP adresy klientskemu PC:
host pxe_client {
hardware ethernet xx:xx:xx:xx:xx:xx; (sem vlozit MAC adresu sietovky na klientskom PC)
fixed-address 192.168.1.50; (sem vlozit pozadovanu IP adresu klientskeho PC)
}
sudo mkdir -p /tftpboot/pxelinux.cfg
sudo cp /usr/lib/syslinux/pxelinux.0 /tftpboot
sudo gedit /tftpboot/pxelinux.cfg/defaultvlozit, pricom tento subor este neskor upravime:
LABEL linux
KERNEL vmlinuz-2.6.15-23-686
APPEND root=/dev/nfs initrd=initrd.img-2.6.15-23-686 nfsroot=192.168.1.2:/nfsroot ip=dhcp rw192.168.1.2 je adresa servera
sudo chmod -R 777 /tftpboot
sudo /etc/init.d/tftp-hpa restart
sudo mkdir /nfsroot
2. instalacia NFS servera:
sudo apt-get install nfs-kernel-server nfs-common portmap
sudo gedit /etc/exportsvlozit
/nfsroot 192.168.1.50(rw,no_root_squash,async)zadana IP adresa klienta, pristup aj na zapis
sudo exportfs -rv
3. system ktory chceme spustat cez siet by mal byt na klientovi nainstalovany (napriklad aj docasne na nejakom disku). Pomocou
nasledujucich ktorov system nastavime tak aby sa spustil cez siet a nasledne ho cely nakopirujeme na server. Potom odpojime
(docasny) disk a spustime system cez siet.
NASLEDUJUCE KROKY ROBIME NA KLIENTSKOM PC:
vypise verziu kernelu:
sudo uname -r
nakopirujeme kernel do adresara home na klientskom PC:
cp /boot/vmlinuz-`uname -r` ~
sudo gedit /etc/initramfs-tools/initramfs.conf upravit hodnoty na:
BOOT=nfs
MODULES=netboot
vytvorime subor initrd.img-xxxx
sudo mkinitramfs -o /home/<USERNAME>/initrd.img-2.6.20-16-genericnamiesto <USERNAME> je potrebne vlozit pouzivatelske meno, a namiesto 2.6.20-16-generic je potrebne vlozit spravnu verziu kernelu (zistit pomocou sudo uname -r)
skopirujeme cely system z klientskeho PC na server (bude trvat dlhsie):
sudo mount -t nfs -o nolock 192.168.1.2:/nfsroot /mnt
sudo cp -ax /. /mnt/.
sudo cp -ax /dev/. /mnt/dev/.192.168.1.2 je IP adresa servera
sudo gedit /etc/initramfs-tools/initramfs.conf upravit hodnoty naspat na povodne (ak by sme este potrebovali spustit znovu system z disku, aby sa nam vobec spustil):
BOOT=local
MODULES=most (tusim - vyssie v subore initramfs.conf je popis co bola predvolena hodnota)
NASLEDUJUCE KROKY ROBIME NA SERVERI:
cp /nfsroot/home/<USERNAME>/<vmlinuz-xxxx> /tftpboot/
cp /nfsroot/home/<USERNAME>/<initrd.img-xxxx> /tftpboot/namiesto <USERNAME> je potrebne vlozit pouzivatelske meno a namiesto xxxx vlozit verziu kernelu zistenu vyssie
sudo gedit /nfsroot/etc/network/interfaces
doplnime/upravime:
iface eth0 inet manualIP adresa klientskemu pocitacu bola priradena vyssie pomocou identifikacie MAC adresy, takze siet uz bude funkcna i ked v spustenom systeme sa to bude javit
akokeby ziadna sietovka neexistovala (ikonka sieti))
sudo gedit /nfsroot/etc/fstabupravime:
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/nfs / nfs defaults 1 1
none /tmp tmpfs defaults 0 0
none /var/run tmpfs defaults 0 0
none /var/lock tmpfs defaults 0 0
none /var/tmp tmpfs defaults 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
a este znovu upravime:
sudo gedit /tftpboot/pxelinux.cfg/default
LABEL linux
KERNEL vmlinuz-xxxx
APPEND root=/dev/nfs initrd=initrd.img-xxxx nfsroot=192.168.1.2:/nfsroot ip=dhcp rw192.168.1.2 je adresa servera, namiesto xxxx treba dat spravnu verziu kernelu
4. hotovo. Teraz treba skusit spustit PC cez siet
-
Mal by som k tomuto otazku, je mozne mat na linuxackom servri aj windows image a bootovat na klientskej masine win, popripade mat na vyber? Je mozne toto vyuzit na opravu padnuteho systemu tym sposobom ze urobim image zo systemu a ak padne tak nabootujem zo siete a image sa mi automaticky nahraje na lokalny HDD? Nieco ako obnova ghostom, alebo inym klonovacim nastrojom, akurat cez siet.
-
Nahrani partisnu zpet na disk je samozrejme mozny. Resil bych to pomoci nejake live distro rozjete po siti s NFS rootem a pak pomoci linuxovych nastroju
nastavit a nasypat widle z ISO na disk. To by melo jit. Sam chci ted jeste dotvorit trosku menu na tftpbootu a instalit i widle ze site.
Jinak vse tady popsano funguje. Ale ma to hacek jen na Ubuntu a adrudach. Ja jsem vse instalil rucne bez klikatek a pomocniku na Slackware.
Byl to masakr. Brzy bude navod hotov jak na to...
-
Asi sa na to pozriem az bude trochu casu, ak by mal niekto navod hodil by sa :)