Erinevus lehekülje "Operatsioonisüsteemi uuendamine" redaktsioonide vahel
(→Uue keskkonna moodustamine) |
(→Uue keskkonna moodustamine) |
||
75. rida: | 75. rida: | ||
/etc/spwd.db | /etc/spwd.db | ||
/etc/rndc.key | /etc/rndc.key | ||
+ | /etc/localtime | ||
+ | / | ||
Abiks on võrrelda keskkondi selliselt | Abiks on võrrelda keskkondi selliselt |
Redaktsioon: 6. jaanuar 2008, kell 04:38
Sisukord
Eesmärk
OpenBSD operatsioonisüsteemi saab uuendada mitmel viisil, käesolev variant on ehk suhteliselt ebamugav, aga peaks võimaldama protseduuri läbi viia võimalikult väikese katkestusega süsteemi töös. Kirjeldatud uuendamise käigus võib muuta ka arhitektuuri, nt i386 -> amd64. Sisuliselt tekitatakse kahe OpenBSD eksemplariga dual-boot arvuti, mida saab hõlpsasti vajadusel bootida töötanud olekusse tagasi kui uuendatud süsteem vajab veel kohendamist. Arvuti konsoolile on vajalik ligi pääseda.
Protseduur koosneb järgmistest sammudest
- Aruvit töötab ja on kasutada üks failisüsteem, mis on piisavalt suur ja mis pole parasjagu kastusega koormatud (nt /tmp) ning mis tuleb ühendada lahti ning külge /mnt kataloogi
- Pakkida /mnt kataloogi olulised install set'id (etc42.tgz, base42.tgz jt) ning tuum (bsd)
- öelda /mnt/dev all ./MAKEDEV
- vaadata diff -r /etc /mnt/etc abil erinevused (nii kümmekond nö tundud konfifaili, fstab, motd, hosts, hostname.if jne)
- rebootida vaja süsteem ning kosoolil boot> prompt'ist bootida uue tuumaga uus süsteem
Kui OpenBSD töötab tulemüürina, siis lisaks kaasneb eelis, et arvutis jääb füüsiliste võrguseadmete, MAC ja ip aadresside vastavas samaks erinevate keskkondade vahel liikumisel, erinevalt kahe erineva füüsilise arvuti kasutamisest.
Ettevalmistused
Lähtepunktiks on töötav OpenBSD arvuti, näiteks selliste partitsioonidega
# df -h Filesystem Size Used Avail Capacity Mounted on /dev/sd0a 367M 43.7M 305M 13% / /dev/sd0d 982M 2.0K 933M 0% /tmp /dev/sd0e 490M 149M 317M 32% /home /dev/sd0f 12.2G 2.5G 9.1G 22% /usr /dev/sd0g 51.8G 504M 48.7G 1% /var
Kopeeriga kataloogi /home/install-42 vajalikud install set'id ja tuum, näiteks failid
bsd etc42.tgz base42.tgz comp42.tgz man42.tgz misc42.tgz
Uue keskkonna moodustamine
Ühendage /tmp failisüsteem lahti, ühendage /mnt alla külge ning pakkida kataloogi /mnt arhiivid lahti
# tar -C /mnt -xzphf etc42.tgz # tar -C /mnt -xzphf base42.tgz ....
/etc/fstab failist tuleks seejärel /tmp välja kommenteerida, samas peab veenduma, et allesjäänud /tmp kataloogi loabitid on endised, vajadusel kohendada
# chmod 1777 /tmp
ning et juurfailisüsteemis on mõistlikul hulgal vaba ruumi.
Seejärel tekitada seadmefailid
# cd /mnt/dev # ./MAKEDEV all
Kohendada /mnt/etc kataloogis olulisi faile, tõenäoliselt tuleb tähelepanu pöörata järgmistele failidele
/etc/hosts /etc/hostname.* /etc/mygate /etc/myname /etc/motd /etc/resolv.conf /etc/group /etc/ipsec.conf /etc/master.passwd /etc/rc.conf.local /etc/pf.* /etc/ntpd.conf /etc/ssh/ssh_config /etc/ssh/sshd_config /etc/sysctl.conf /etc/fstab /etc/joe/joerc /etc/pwd.db /etc/spwd.db /etc/rndc.key /etc/localtime /
Abiks on võrrelda keskkondi selliselt
# diff -r /etc /mnt/etc | less
Kui on soov lisada pakettidest või portsudest tarkvara, siis võiks seda teha liikudes chroot abil uude keskkonda
# chroot /mnt
ning toimetada edasi tavapärasel viisil, nt öeldes
# pkg_add pftop
Seejuures peab aga uus keskkond olema sama arhitektuuriga.
Uue keskkonna bootimine
Uue keskkonna bootimiseks peab olema ligipääs konsoolile, vanas keskkonnas öelda reboot ning konsoolil boot promptis öelda
boot> boot hd0d:/bsd -a
Seejärel küsitakse peale tuuma laadimist juurfailisüsteemi ning swap'i asukohta, vaikimisi pakutakse sobivaid väärtusi.
Vana keskkonna asendamine uuega
Kui uus keskkond rahuldab, siis võiks vana keskkonna failisüsteemid puhtaks teha ning kopeerida sinna uue keskkonna failid laiali ning bootida tagasi.
Probleemid
Kui chroot'i tehes saab teate
# chroot /mnt/ /bin/ksh: No controlling tty (open /dev/tty: Device not configured) /bin/ksh: warning: won't have full job control
siis see tähendab tõenäoliselt seda, et /mnt on ühendatud külge ebasobivas rezhiimis (nodev), vaatake mount käsuga järele. Kõige parem oleks kui uues keskkond on ettevalmistamise ajal ühendatud külge ilma mount optioneid kasutamata.