Actualizar o FreeBSD

Qual­quer sis­tema oper­a­ti­vo deve estar sem­pre actu­al­iza­do para min­i­mizar as hipóte­ses de con­ter prob­le­mas de segu­rança.

Exis­tem várias for­mas de actu­al­iza­ção do FreeB­SD: re-com­pi­lar a par­tir do códi­go fonte, actu­al­iza­ções binárias par­ci­ais (ape­nas disponíveis a par­tir da ver­são 8.0) e re-insta­lação com­ple­ta de uma nova ver­são.

Neste arti­go, con­cen­trar-me-ei em explicar como se actu­al­iza o FreeB­SD a par­tir do códi­go fonte. Esta é a mel­hor opção, ape­sar de ser a que demo­ra mais tem­po, mas ficamos com um sis­tema opti­miza­do para o hard­ware onde será com­pi­la­do.

O primeiro pas­so con­siste em actu­alizar os ficheiros fonte do sis­tema. Numa insta­lação nor­mal do FreeB­SD, estes ficheiros estão todos con­ti­dos no direc­tório /usr/src. Esta actu­al­iza­ção é nor­mal­mente efec­tu­a­da com o coman­do cvsup. No direc­tório /usr/share/examples/cvsup podem-se encon­trar exem­p­los para os vários repositórios CVSup exis­tentes. O ficheiro cor­re­spon­dente ao códi­go fonte do sis­tema é o sta­ble-sup­file. A invo­cação deste coman­do é fei­ta como cvsup -L 2 -g sta­ble-sup­file.

Depois do códi­go fonte insta­l­a­do, bas­ta exe­cu­tar os seguintes coman­dos:

cd /usr/src
make -j4 buildworld
make buildkernel
make installkernel
mergemaster -p
make installworld
mergemaster
shutdown -r now

Caso se dispon­ha de um con­fig­u­ração cus­tomiza­da para o ker­nel, especi­fi­ca-se essa con­fig­u­ração com a opção KERNCONF=<configuração>, nas lin­has ref­er­entes ao ker­nel.

O coman­do merge­mas­ter serve para inte­grar as difer­enças entre os ficheiros de con­fig­u­ração insta­l­a­dos por defeito e quais­quer mod­i­fi­cações feitas pelo admin­istrador do sis­tema.

Depois dis­to, ficare­mos com o sis­tema base actu­al­iza­do. Qual­quer soft­ware insta­l­a­do através do sis­tema de ports ou pack­ages terá que ser actu­al­iza­do à parte.

Esta entrada foi publicada em Administração, FreeBSD. ligação permanente.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *