O Gentoo Linux pode ser considerado uma metadistribuição, já que através de seu arquivo de configuração make.conf com suas USE_FLAGS podemos criar um sistema personalizado que atenda necessidade individuais, por exemplo, se preciso de um desktop com gnome pra que instalar Apache, Bind, Bancos de dados e outras aplicações inerentes a diversas distribuições Linux se nunca utilizaremos? Se meu desktop será Gnome pra que instalar todas as bibliotecas QT (linguagem de desenvolvimento do KDE)? Instalar esse sistema é realmente uma experiência satisfatória, através dela nós vamos escolhendo exatamente o direcionamento que daremos ao nosso sistema, estamos criando nosso próprio sistema...
Um ponto importante desse sistema é que ele é totalmente compilado para o Hardware alvo, isso também é feito através de algumas variáveis no make.conf, isso faz com que todos os programas instalados tenham um código mais enxuto e com um desempenho superior aos binários genéricos de outras distros, portanto ele é um sistema Linux mais veloz que os demais, isso é sensível.
Instalação
Atualmente tenho utilizado o Funtoo como base para minhas instalações do Gentoo, não conheço muito bem a história, mas parece que o fundador do Gentoo saiu da fundação e criou um sistema semelhante com algumas melhorias que ele batizou de Funtoo.
Lembre que o sistema é totalmente baixado da internet, não existe um sistema de instalação pré-configurado e não é simples fazê-lo, temos que dispor de tempo para instalar e manter o sistema, uma conexão a internet de banda larga é fundamental, instalar via linha discada deve ser um tremendo sofrimento, hardware com idade avançada também pode tornar a experiência sofrível pelo tempo que se gasta com as compilações, mas no final podemos ter um sistema totalmente otimizado para esse hardware, que o tornará mais rápido do que se usarmos outra distro (faca de dois gumes).
Baixe e dê boot com system rescue cd, isso é só uma sugestão, você pode usar qualquer live CD para a instalação http://www.sysresccd.org.
Observe as opções que temos no boot, você pode escolher um sistema de 32 ou 64 bits, essa opção deve ser a mesma do sistema que pretende instalar. Aqui explico como instalar usando a tecnologia LVM (Logical Volume Manager), que não vou explicar o que é, mas garanto que é fantástico.
Vamos lá, dê o boot com o Cd com a opção de 32 ou 64 bits que decidiu instalar o sistema;
Após o boot teremos um prompt, podemos escolher entre deixar em modo texto ou abrirmos uma sessão gráfica do servidor X, nesse caso é só digitar
startx
Através da interface gráfica a experiência pode ser mais agradável, pois você pode navegar na internet e tirar as dúvidas durante a instalação, mas no modo texto vai ser mais emocionante.
através do prompt do modo texto ou do terminal da sessão gráfica:
# fdisk /dev/sda
Criando a partição de boot
n
p
1
Pressione Enter para que ela comece no começo do disco.
+50M (esse tamanho é suficiente para acomodarmos alguns kerneis e o grub)
Partiçao Root
n
p
2
Pressione Enter para que ela seja contigua a partição de boot.
+150M (é tamanho suficiente para acomodar todos arquivos de configuração do sistema).
n
p
3
Pressione Enter duas vezes e todas as demais partições irão compartilhar todo o restante do disco, caso queira determinar um tamanho específico faça como nas outras partições.
T (vamos aqui determinar o volume físico do LVM)
3 ( número da partição escolhida para acomodar nosso sistema LVM)
8e ( tipo de partição LVM)
w (vamos escrever as mudanças no disco e gravar essa tabela de partições).
O disco já está particionado;-)
Criar os sistemas de arquivos das partições:
Eu uso ext2 para boot e JFS para todo o resto, considero o JFS o sistema de arquivos mais rápido que existe e ele trabalha muito bem com o lvm, permitindo o redimensionamento de partições "on the fly", mas só pra incremento de tamanho, não dá suporte para redução de tamanho.
# mkfs.ext2 /dev/sda1
# mkfs.jfs /dev/sda2 (esse sistema pede confirmação antes de formatar, diga yes)
agora o LVM
mais informações http://www.gentoo.org/doc/en/lvm2.xml
pvcreate /dev/sda3 (criar o volume físico que o lvm irá utilizar)
vgcreate vg /dev/sda3 (onde o vg é o nome do grupo de volumes, você pode escolher outro nome).
Agora vamos criar as partições para /usr /opt /var /tmp /home e swap, os valores que eu apresento são para minha necessidade, quem segue esse artigo deve especificar suas próprias dimensões, lembrando que você poderá sempre aumentá-las e nunca diminuí-las usando o JFS, com outros sistemas de arquivos isso é possível, mas eu busquei desempenho com essas configurações.
lvcreate -L 2G -n usr vg (criando um volume lógico com tamanho de 2G, novo, denominado usr no grupo de volumes vg ;-)
lvcreate -L 500M -n home vg
lvcreate -L 200M -n opt vg
lvcreate -L 500M -n var vg
lvcreate -L 500M -n tmp vg
lvcreate -L 300M -n swp vg (swap)
Formatar os volumes lógicos:
# mkfs.jfs /dev/vg/usr
# mkfs.jfs /dev/vg/home
# mkfs.jfs /dev/vg/opt
# mkfs.jfs /dev/vg/tmp
# mkfs.jfs /dev/vg/var
# mkswap /dev/vg/swp (swap)
# swapon /dev/vg/swp
Criar os diretórios e montar as respectivas partições:
Se estiver utilizando o system rescue ele já tem o diretório /mnt/gentoo, caso esteja usando outra distro crie esse diretório:
# mkdir /mnt/gentoo
# mount /dev/sda2 /mnt/gentoo
# mkdir /mnt/gentoo/boot
# mkdir /mnt/gentoo/usr
# mkdir /mnt/gentoo/home
# mkdir /mnt/gentoo/opt
# mkdir /mnt/gentoo/tmp
# mkdir /mnt/gentoo/var
# mount /dev/sda1 /mnt/gentoo/boot
# mount /dev/vg/usr /mnt/gentoo/usr
# mount /dev/vg/home /mnt/gentoo/home
# mount /dev/vg/opt /mnt/gentoo/opt
# mount /dev/vg/tmp /mnt/gentoo/tmp
# mount /dev/vg/var /mnt/gentoo/var
Pronto, a máquina está preparada para começarmos a instalar o sistema
Vá até www.funtoo.org e baixe o stage3 de acordo com seu processador, podemos escolher entre a versão estável e a de testes, esta vem denominada ~funtoo.
vou usar o stage para ~x86
Vamos começar a fazer tudo dentro do diretório /mnt/gentoo que será a raiz do nosso sistema:
# cd /mnt/gentoo
Se estiver utilizando o system rescue precisamos ativar a interface de rede:
# net-setup eth0 (o programa irá fazer algumas perguntas, responda).
# wget http://dev.funtoo.org/linux/~funtoo/x86/stage3-x86-current.tar.bz2 (lembrando que o "~" determina que utilizaremos o sistema unstable, com softwares que podem ter bugs, em contra-partida são os mais recentes, como quero performance uso os mais novos, não os mais estáveis).
# tar xvjpf stage3-x86-current.tar.bz2
# cd usr/
# wget http://dev.funtoo.org/linux/~funtoo/snapshots/portage-current.tar.bz2 (snapshot do portage)
# tar xvjpf portage-current.tar.bz2
Agora é o momento de entrarmos no nosso sistema......
Vamos copiar nossas configurações de DNS para o novo sistema:
# cp /etc/resolv.conf /mnt/gentoo/etc
montar proc e dev
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash
Agora já estamos dentro do sistema que estamos instalando
# cd /usr/portage
# git checkout funtoo.org
# emerge --sync
Agora vamos trabalhar o make.conf para que ele atenda nossas necessidades.
Abaixo segue o meu arquivo, você pode digitar man make.conf e ler o manual, ver as USE_FLAGS em http://www.gentoo.org/dyn/use-index.xml e comece a montar seu sistema.
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-Os -march=prescott -mtune=prescott -mssse3 -mmmx -msse -msse2 -msse3 -mcx16 -msahf -mfpmath=sse -fomit-frame-pointer -pipe -ftracer -funroll-loops -maccumulate-outgoing-args -ftracer"
CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden"
CHOST="i686-pc-linux-gnu"
USE_CPU="smp mmx mmxext sse sse2 sse3 ssse3"
USE_SYS="alsa cvs branding hal dbus acpi apm usb subversion git jfs ubuntu-patches nls symlink zlib vim-syntax"
USE_XORG="X xorg xcomposite xscreensaver xulrunner dri opengl cdparanoia dvd dvdr ffmpeg gif gphoto java6 jpeg jpeg2k mime mp3 mpeg gnome mplayer msn nsplugin pdf png xml truetype tiff xpm gtk"
USE_NO="-kde -mysql -debug -doc -emacs -cups -kerberos -qt -qt3 -qt4 -odbc -postgres -sqlite -sqlite3 -msql -mssql -oracle -pcmcia -doc -info -ipv6 -oss -xemacs"
USE="${USE_CPU} ${USE_SYS} ${USE_XORG} ${USE_NO}"
SYNC="rsync://rsync.samerica.gentoo.org/gentoo-portage"
#SYNC="rsync://rsync.gentoo.org/gentoo-portage"
ACCEPT_KEYWORDS="~x86"
LINGUAS="pt_BR"
MAKEOPTS="-j3 -s"
PORTAGE_NICENESS="8"
FEATURES="parallel-fetch collision-protect"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/skel"
INPUT_DEVICES="keyboard mouse evdev"
VIDEO_CARDS="vmware"
ALSA_CARDS="hda-intel"
PORTAGE_ELOG_CLASSES="warn info log"
PORTAGE_ELOG_SYSTEM="save"
#source /usr/local/portage/layman/make.conf
GENTOO_MIRRORS="http://www.las.ic.unicamp.br/pub/gentoo/ ftp://ftp.las.ic.unicamp.br/pub/gentoo/ ftp://mirrors.localhost.net.ar/pub/mirrors/gentoo http://gentoo.localhost.net.ar"
Pode-se notar que eu uso gnome e gtk, não quero nada do kde/qt, portanto tenho flags "positivas" para gnome/gtk e "negativas" para kde/qt.
configurar o kernel, vamos indicar nossa localização:
nano /etc/locale.gen
edite para
pt_BR.UTF-8
rode:
# locale-gen
Timezone:
# ls /usr/share/zoneinfo/Brazil
No meu caso estou no Leste, moro em SP, veja seu fuso por aí
# cp /usr/share/zoneinfo/Brazil/East /etc/localtime
Instalando o sistema base, o kernel:
# emerge gentoo-sources
Nesse ponto temos dois caminhos a seguir, compilar nosso prórprio kernel ou usar a ferramenta genkernel para fazer isso para nós, eu uso o genkernel, se for compilar na unha:
# cd /usr/src/linux
# make menuconfig (Boa sorte) Dê uma olhada no handbook do gentoo http://www.gentoo.org/doc/en/handbook/handbook-x86.xml lá eles dão algumas instruções de o que não se deve esquecer na configuração do kernel.
Para o genkernel temos ainda um passo:
# emerge genkernel
# genkernel --lvm --menuconfig all
Deixe sua configuração para seu processador, no meu caso é um Dual Core, fica como Core2.
É recomendável que você vá a “File System” e set como built-in os sistemas de arquivos que vai utilizar, nesse caso é JFS e Ext2.
Já li em algum lugar que a opção em “Enable Block Layer” IO Schedulers como Deadline, é o mais performático para sistemas de arquivos JFS.
Feito isso é só esperar a compilação do kernel.
O próximo passo é editar o arquivo /etc/fstab de acordo com as partições que criamos e montamos em nosso sistema.
/etc/conf.d/hostname (coloque o nome de sua máquina);
Se sua rede é configurada por dhcp:
# config_eth0=( "dhcp" )
Se é IP Fixo:
# config_eth0=( "192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255" )
# routes_eth0=( "default via 192.168.0.1" )
Lembrem-se que estou usando o Funtoo, aqui umas das principais diferenças do Gentoo, a rede por dhcp é configurada no boot através do comando:
# rc-update add dhcpcd default
Vamos editar o arquivo hosts:
# nano /etc/hosts
(This defines the current system)
127.0.0.1 nome_da_sua_maquina.nome_do_seu_dominio nome_da_sua_maquina localhost
Se quiser achar máquinas por nome sem usar um servidor de DNS coloque os nomes de máquinas de sua rede nesse arquivo com o formato abaixo:
192.168.0.5 jenny.homenetwork jenny
192.168.0.6 benny.homenetwork benny
Senha do root:
# passwd
# /etc/conf.d/hwclock (substitua o UTC por local, para deixar o relógio setado como o da BIOS)
# etc/conf.d/keymaps (meu teclado é abnt, portanto “br-abnt2”)
Instalando programas fundamentais para o sistema funcionar:
# emerge jfsutils
# emerge lvm2
# emerge grub
# grep -v rootfs /proc/mounts > /etc/mtab
# grub-install --no-floppy /dev/das
Antes de terminarmos adicionar lvm e device-mapper ao boot
# rc-update add lvm boot
# rc-update add device-mapper boot
# exit
# reboot
Pronto o sistema já está funcionando na configuração mais básica possível, agora cabe ao dono do sistema achar o direcionamento que dará a essa máquina.
Observação importante: o Servidor X hoje é todo baseado no dbus, portanto em INPUT_DEVICES=”evdev” e outras coisas como keyboard, joystick...... mas não esqueça do evdev, sem ele você corre o risco do seu sistema gráfico não funcionar.
Tem muita documentação na internet sobre o assunto.
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário