Freebsd construiți propriul kernel, rtfm linux, devops și administrarea sistemului

În primul rând, trebuie să vă asigurați că există coduri sursă ale sistemului:

Directorul este gol - deci trebuie să le obțineți. Opțiunea doi - sau folosind sysinstall. dacă există un disc cu aceeași versiune de FreeBSD și vă aflați în apropierea serverului sau folosind cvsup de pe orice server FreeBSD. Vom roti.







Primul pas este să găsești cel mai rapid server. Cum se face - descris aici >>>.

Găsim cel mai convenabil server cvsup:

# fasttest_cvsup -c ua -Q
cvsup5.ua.freebsd.org

Creați un director pentru supfile:

Să creăm supfile:

Vom introduce următorul conținut:

* default host = cvsup5.ua.FreeBSD.org
* baza de date implicită = / var / db
* prefix implicit = / usr
* versiunea implicită = cvs tag = RELENG_8_2
* implicit șterge use-rel-suffix
* implicit comprimare
src-sys

În linia gazdă implicită, specificați serverul pe care îl vom folosi.

IMPORTANT. linia de lansare implicită vă cere să specificați versiunea curentă a FreeBSD. De exemplu:

Tag-urile svn pentru o versiune particulară pot fi vizualizate aici >>>.

Alte opțiuni supfile

Pentru a actualiza porturile:

* default host = cvsup5.ua.FreeBSD.org
* baza de date implicită = / var / db
* prefix implicit = / usr
* versiunea implicită = cvs tag =.
* implicit șterge use-rel-suffix
* implicit comprimare
Porturile-toate

Pentru a descărca toate codurile sursă ale sistemului (necesare atunci când faceți upgrade la versiunea FreeBSD din codul sursă):

* default host = cvsup5.ua.FreeBSD.org
* baza de date implicită = / var / db
* prefix implicit = / usr
* versiunea implicită = cvs tag = RELENG_8_2
* implicit șterge use-rel-suffix
* implicit comprimare
src-toate

IMPORTANT. dacă aceasta este prima dată când descărcați codul sursă pentru kernel (src-sys), trebuie să descărcați mai întâi toate fișierele (src-all).

Începeți acum încărcarea fișierului:

# csup -g -L 2 / etc / csup / src-sys
Parcurgerea supfilei "/ etc / csup / src-sys"
Conectați-vă la cvsup5.ua.FreeBSD.org
Conectat la 109.106.1.244
...

Închiderea conexiunii la server
S-a terminat cu succes

Să verificăm prezența fișierelor:

# cd / usr / src / sys /
# ls
Makefile compat geom libkern unelte netinet6 nfs4client pci
amd64 conf gnu module netipsec nfsclient powerpc ufs
braț contribuție i386 net netxx nfsserver rpc vm
boot ddb i4b net80211 netnatm nlm securitate x86
bsm dev net64 netatc netncp opencrypto sparc64 xdr
cam fs este netraft netsmb pc98 sun4v
cddl gdb kern netinf nfs pccard sys

Totul, codurile sursă sunt încărcate, puteți începe configurarea propriului kernel.







Mergem la directorul / usr / src / sys / i386 / conf /.

IMPORTANT - directorul depinde de arhitectura sistemului. Pentru i386 (sau x32) acesta va fi directorul / usr / src / sys / i386 / conf /. Dacă x64 este / usr / src / sys / amd64 / conf /.

Creați o copie a configurației implicite (GENERIC) de bază, și numesc numele nostru - acest fișier de configurare și se va întâlni kernel-ul nostru:

# cp GENERIC COREIKARI1

IMPORTANT. setat la linie:

numele kernel-ului.

Parametrii rămași sunt opționali, dar aveți grijă.

De exemplu, trebuie doar să adăugați suport pentru IPFW. pentru aceasta, se vor adăuga următoarele linii:

opțiuni IPFIREWALL
opțiuni IPFIREWALL_VERBOSE
opțiuni IPFIREWALL_VERBOSE_LIMIT = 50
opțiuni IPFIREWALL_DEFAULT_TO_ACCEPT
opțiuni IPFIREWALL_FORWARD
opțiuni IPFIREWALL_NAT
opțiuni LIBALIAS
opțiuni DUMMYNET

Salvați fișierul, accesați directorul / usr / src și începeți să construiți kernel-ul:

# cd / usr / src
# make buildkernel KERNCONF = COREIKARI1

Erorile posibile în construirea unui kernel

Dacă aveți erori la începutul asamblării unui astfel de plan:

/ usr / src / sys / i386 / conf / yourkern: opțiunea necunoscută "STOP_NMI"

Poate ai descărcat codul sursă nu este versiunea dvs., verificați implicit de eliberare șir = tag-ul = cvs RELENG_8_2 în fișierul / etc / csup / src-sys (sau / etc / csup / src-toate, dacă a zguduit toate).

Dacă eroarea este:

# make buildkernel KERNCONF = yourkern
face: nu stiu cum sa fac buildkernel.Stop

asigurați-vă că comanda de kernel încorporată este rulată din directorul / usr / src. Dacă da, verificați conținutul directorului / usr / src pentru a vedea dacă există un Makefile în el.

Dacă nu - toate sursele nu pot fi încărcate - efectuați mai întâi:

# csup -g -L 2 / etc / csup / src-toate

sau instalați-l folosind sysinstall. dacă există un disc și acces la server sau pe serverul FTP FreeBSD:

Configurați> Distribuții> Src>

Baza, Sys> Ok> Ok> Selectați Internet> FTP Main (sau CD / DVD)

și executați instalarea.

Așteptăm finalizarea ansamblului noului kernel. În final, primim mesajul:

Acum este momentul să instalați un nou kernel:

# make kernkonf installKernF = COREIKARI1
---------------------
>>> Instalarea kernel-ului
...
kldxref / boot / kernel

Acum puteți reporni serverul. Este foarte de dorit ca IPKVM să fie deja conectat la acesta. dacă sunteți departe.

După repornire, verificăm:

Aici este, noul nucleu: COREIKARI1 i386.

Dacă încărcarea unui nou kernel nu reușește - puteți încărca nucleul vechi (GENERIC). Pentru aceasta, în meniul de pornire, selectați Boot to loader promt (6). Ne cădem în linia de comandă și descărcăm noul kernel:

Acum încărcați nucleul vechi:

OK încărcați /boot/kernel.old/kernel

Așteptăm până când nucleul este încărcat în memorie și introduceți:

Freebsd construiți propriul kernel, rtfm linux, devops și administrarea sistemului

A început procesul de încărcare a sistemului cu vechiul kernel.

Nucleul GENERIC i386 este nucleul nostru vechi.

Acum, pentru a restabili sarcina cu acest kernel permanent, efectuăm:

Doar în caz - ne salvăm nucleul "nefericit":

# mv kernel kernel.bak

Să înlocuim copia vechiului kernel GENERIC:

# mv kernel.old kernel

Toate, acum sistemul va fi încărcat numai cu el, până când ne dăm seama care este eroarea în noul kernel.







Articole similare

Trimiteți-le prietenilor: