Instalação do Arch Linux

Em julho de 2012, uma nova imagem do Arch Linux (201207) foi liberada e, no mesmo dia, eu resolvi baixar e reinstalar meu sistema. Durante todo o processo, eu percebi que houveram várias mudanças tanto na forma de instalação quanto no funcionamento da distribuição:

  • Não existe mais o .iso com o core nem imagens separadas para X86 e X64, a única versão disponível para download é a netinstall dual;
  • O Arch Linux Installation Framework (AIF) deixou de ser utilizado;
  • Iniciaram a migração do SysVinit para o Systemd (usando initscripts).

No dia em que saiu a primeira imagem sem o AIF não existia praticamente nenhuma documentação explicando como realizar a instalação e eu tive que quebrar um pouco a cabeça para conseguir instalar sozinho. Quando finalmente consegui, começei a escrever esse tutorial, porém logo depois fui viajar (FISL13!) e parei de escrever.

Aproveitando o meu pequeno recesso de fim de ano, resolvi reparticionar meu disco, reinstalar o Arch do zero no meu notebook e terminar de documentar o processo de instalação neste blog.

Eu usarei Systemd nativo, sem rc.conf, e também explicarei como criptografar o disco usando LVM on LUKS+dmcrypt.

Obs.: Como explicado no about deste blog, eu escrevi este post para mim mesmo e só expliquei sobre partes que me interessam e são compatíveis com o meu sistema (um Acer Aspire). Não siga este “tutorial” cegamente, algumas coisas que funcionam para mim podem ser diferentes para você.

Disco de boot

Já faz um bom tempo que eu não queimo CDs para instalar SOs. Normalmente eu uso um pendrive como mídia de instalação, especialmente agora que meu notebook novo nem drive de CD tem.

Para gerar esse pendrive bootável, basta baixar o .iso e gravar usando dd:

julio@acer ~> sudo dd if=archlinux.iso of=/dev/sdb

Isso funciona na maioria dos computadores, porém aparentemente a BIOS do meu notebook não reconhece o pendrive gravado dessa forma e faz com que o notebook fique congelado na tela de boot até a remoção do pendrive do USB.

Meio que por tentativa e erro, encontrei duas soluções:

  • Solução 1

    Usar o unetbootin para copiar o conteúdo do .iso e instalar o syslinux como bootloader e depois alterar o label da partição: julio@acer ~> sudo mlabel -i /dev/sdb1 ::ARCH_201212

  • Solução 2

    Copiar os arquivos do .iso para o pendrive e instalar o syslinux manualmente:

      julio@acer ~> sudo fdisk /dev/sdb
      julio@acer ~> sudo mkfs.vfat -n ARCH_201212 /dev/sdb1
      julio@acer ~> sudo mount /dev/sdb1 /media/pendrive
      julio@acer ~> sudo mount archlinux-2012.12.01-dual.iso /media/arch
      julio@acer ~> sudo cp -r /media/arch/* /media/pendrive/
      julio@acer ~> sudo syslinux -s /dev/sdb1
      julio@acer ~> cd /media/pendrive; sudo cp isolinux/isolinux.cfg syslinux.cfg
    

Instalação

Entre no Boot Manager da sua BIOS e dê boot pelo pendrive: 1. IDE 0: TOSHIBA MK5055GSX 2. USB HDD: SanDisk

Irá aparecer um menu de boot. Escolha a opção “Boot Arch Linux (x86_64)” (meu sistema é 64 bits).

Lembram do /arch/setup? Não existe mais. Desde a imagem de julho o Arch deixou de usar o AIF para usar alguns install scripts. Agora você é jogado direto para um shell.

Particionamento

O formato mais recomendado é o GPT. Ele possui algumas vantagens sobre MBR, como permitir HDs com mais de 2TB e permitir mais de 4 partições primárias.

Eu usava GPT na minha última instalação, mas concluí que no meu caso é melhor continuar com a MBR. Só preciso de 4 partições primárias, meus discos têm 2TB ou menos e minha placa mãe usa BIOS e não UEFI. Esse último detalhe é especialmente importante se você quiser fazer dual boot com Windows.

-> Se sua tabela de partições usa GPT:

root@archiso ~ # cgdisk /dev/sda

Obs.: Se sua placa mãe usa BIOS e suas partições usam GPT, você precisará de uma partição de pelo menos 31KiB (recomendado usar 2MB) para caber o core.img do Grub2 (mais info).

-> Se sua tabela de partições usa MBR (meu caso):

root@archiso ~ # cfdisk /dev/sda
  • Estado inicial:

      Disk Drive: /dev/sda
      Size: 500.1 GiB
    
      Part Type: Pri/Log
      FS Type: Free Space
      Size (MB): 500107.87
    
  • Partição de 50GB para outro SO:

      [ New ] -> [Primary] -> Size (in MB): 50G -> [Beginning] -> [ Type ] -> Enter filesystem type: 86
    
  • Partição para o /boot:

      [ New ] -> [Logical] -> Size (in MB): 100 -> [Beginning] -> [ Type ] -> Enter filesystem type: 83
    

    Reservei 100MB, mas uns 50MB já daria.

  • Partição para o LUKS (usarei LVM on LUKS):

      [ New ] -> [Logical] -> Size (in MB): 450007.68 -> [Beginning] -> [ Type ] -> Enter filesystem type: 8E
    

Grave as alterações: [ Write ] -> "yes" -> [ Quit ] e verifique as partições usando fstab -l.

Shreding

Por segurança, preencha a partição LUKS com dados aleatórios:

root@archiso ~ # badblocks -c 10240 -wsvt random /dev/sda3

ou

root@archiso ~ # dd if=/dev/urandom of=/dev/sda3 bs=4096

Obs.: Esses comandos demoram algumas horas.

Criptografia: dm-crypt / LUKS

root@archiso ~ # cryptsetup -c <cipher> -y -s <key size> luksFormat /dev/<partition name>

Usaremos AES no modo XTS com 512 bits. É bastante seguro e não reparei uma perda de desempenho significativa:

# modprobe dm_mod
root@archiso ~ # cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda3

Digite sua senha. O tamanho da senha também é importante para a segurança.

Verifique com cryptsetup luksDump /dev/sda3.

Desbloqueie a partição

root@archiso ~ # cryptsetup luksOpen /dev/sda3 arch-luks
Enter passphrase for /dev/sda3:

Criação de partições LVM

Crie um Physical Volume:

root@archiso ~ # pvcreate /dev/mapper/arch-luks
  Physical volume "/dev/mapper/arch-luks" successfully created
root@archiso ~ # pvdisplay

Crie um Volume Group:

root@archiso ~ # vgcreate vg_arch /dev/mapper/arch-luks
  Volume group "vg_arch" successfully created
root@archiso ~ # vgdisplay

Crie os Logical Volumes

  • Crie um LV para o /:

      root@archiso ~ # lvcreate -L 25G vg_arch -n root
        Logical volume "root" created
    
  • Crie um LV para o /var:

    Não é muito comum, porém pode-se aumentar a performance utilizando um sistema de arquivos bom com arquivos pequenos, como o Reiserfs.

      root@archiso ~ # lvcreate -L 15G vg_arch -n var 
        Logical volume "var" created
    
  • Crie um LV para a swap:

      root@archiso ~ # lvcreate -C y -L 4G vg_arch -n swap
        Logical volume "swap" created 
    
  • Crie um LV para o /home. Deixando um espaço livre (25GB) no final:

      root@archiso ~ # lvcreate -L 350G vg_arch -n home
        Logical volume "home" created
    

    ou, se você souber que posteriormente não vai precisar redimensionar os volumes:

      root@archiso ~ # lvcreate -l +100%FREE vg_arch -n home
        Logical volume "home" created
    
  • Verifique os volumes usando lvdisplay.

Formate as partições

root@archiso ~ # mkfs.ext2 -L boot /dev/sda2
root@archiso ~ # mkfs.btrfs -L root /dev/vg_arch/root
root@archiso ~ # mkfs.ext4 -L var  /dev/vg_arch/var
root@archiso ~ # mkfs.ext4 -L home /dev/vg_arch/home
root@archiso ~ # mkswap -L swap /dev/vg_arch/swap

Para economizar espaço em disco:

root@archiso ~ # tune2fs -m 1.0 /dev/vg_arch/var
root@archiso ~ # tune2fs -m 0.0 /dev/vg_arch/home

Monte as partições

root@archiso ~ # mount /dev/vg_arch/root /mnt
root@archiso ~ # mkdir /mnt/{boot,home,var}
root@archiso ~ # mount /dev/vg_arch/var /mnt/var
root@archiso ~ # mount /dev/vg_arch/home /mnt/home
root@archiso ~ # mount /dev/sda2 /mnt/boot
root@archiso ~ # swapon /dev/vg_arch/swap

Conecte-se à internet

  • Wifi

    Se você não possui uma rede cabeada, conecte-se ao seu wifi:

      root@archiso ~ # wifi-menu wlan0
    
  • Cabo

    O comando para rede a cabo é:

      root@archiso ~ # ip link set eth0 up #(equivalente a ifconfig eth0 up)
      root@archiso ~ # dhcpcd eth0
    

Instale o sistema base

Primeiro verifique se a data do sistema está correta usando o comando date. Essa etapa é importante para não dar problema ao importar as chaves PGP.

Se a data não estiver correta, corriga com o timedatectl. Use UTC. Ex.:

timedatectl set-time "2013-01-30 18:00:00"

Baixe os pacotes com o pacstrap:

root@archiso ~ # pacstrap /mnt base{,-devel}
Total Download Size: 154.83 MiB
Total Installed Size: 579.00 MiB

Instale um bootloader (escolhi grub2):

root@archiso ~ # pacstrap /mnt grub-bios

Obs.: grub-bios é para BIOS, se sua placa mãe usa UEFI baixe o grub-efi-x86_64.

Gere um /etc/fstab:

root@archiso ~ # genfstab -U -p /mnt >> /mnt/etc/fstab

Verifique se o fstab está correto. O -U no comando é para usar UUIDs

Faça um chroot no sistema que acabamos de instalar:

root@archiso ~ # arch-chroot /mnt

Essa é uma boa hora para instalar o vim, pois vamos editar alguns arquivos. Eu vou instalar o gvim, pois ele vem compilado com “+xterm_clipboard”: root@archiso ~ # pacman -S gvim

Systemd vs. SysV

Existe uma polêmica sobre se a mudança para o Systemd é uma boa coisa ou não. Lendo o Hacker News deu para perceber que tem muita gente insatisfeita, mas se tudo funcionar como o Lennart Poettering explicou em uma palestra que assisti e o Systemd possuir todas as vantagens que os desenvolvedores do Arch postaram no fórum, então a transição foi uma coisa boa sim.

De qualquer forma, se os devs estão meio que forçando a mudança, é melhor se acostumar desde já. Portanto farei uma instalação sem um rc.conf, usando somente o Systemd.

Obs.: Crie os arquivos mencionados nas próximas etapas caso ainda não existirem.

Locale

Desmarque en_US.UTF-8 UTF-8 e pt_BR.UTF-8 UTF-8 em /etc/locale.gen e depois execute locale-gen como root.

Crie o arquivo /etc/locale.conf, que define a variável ‘LANG’:

LANG=en_US.UTF-8

Keymap e fonte

Descubra qual dos arquivos da pasta /usr/share/kbd/keymaps/i386/qwerty/ corresponde ao seu keymap e depois teste-o com loadkeys. Ex.:

PT-BR: `loadkeys br-abnt2`
EN-US: `loadkeys us-acentos` 
EN-UK: `loadkeys uk` 

Descubra qual dos arquivos da pasta /usr/share/kbd/consolefonts/ corresponde à fonte que você quer e depois teste-a com setfont. Ex.:

Terminus: `setfont Lat2-Terminus16`
Lat9w: `setfont lat9w-16`

Edite o arquivo /etc/vconsole.conf para tornar a configuração permanente:

KEYMAP=us-acentos
FONT=Lat2-Terminus16

Tem também a opção FONT_MAP, mas ela não é necessária.

Timezone

Descubra qual dos arquivos da pasta /usr/share/zoneinfo/ corresponde à sua região e sub-região. No meu caso o arquivo é /usr/share/zoneinfo/America/Sao_Paulo.

Faça o arquivo /etc/localtime apontar para seu timezone usando um link simbólico:

sh-4.2# ln -s /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime

Q: O que aconteceu com o arquivo /etc/timezone???

Relógio

Gere um /etc/adjtime com o comando hwclock. Recomendo usar UTC.

sh-4.2# hwclock --systohc --utc

Se quiser sincronizar o relógio pela internet, rode ntpd -qg && hwclock -w como root.

Host

Crie o arquivo /etc/hostname contendo apenas o nome do seu host:

sh-4.2# echo "acer" > /etc/hostname

Aparentemente não precisamos mais editar o arquivo /etc/hosts após este passo.

Rede

Se você usa rede wireless, instale os arquivos que te permitem conectar a redes sem fio. Instale também o firmware da sua placa, caso necessário:

sh-4.2# pacman -S wireless_tools wpa_supplicant wpa_actiond dialog

Recomendo também ativar o net-auto-wireless:

sh-4.2# systemctl enable net-auto-wireless.service

Se você costuma se conectar à rede por cabo, recomendo instalar o ifplugd e ativar o net-auto-wired. Dessa forma seu computador se conectará automaticamente ao plugar um cabo de rede:

sh-4.2# systemctl enable net-auto-wired.service

HOOKS (initial ramdisk)

Na linha HOOKS do arquivo /etc/mkinitcpio.conf, adicione encrypt, lvm2 e resume antes de “filesystems” (a ordem importa). resume deve vir depois de lvm2:

HOOKS="base udev autodetect modconf block encrypt lvm2 resume filesystems usbinput fsck"

Execute mkinitcpio -p linux.

Configuração do Grub

sh-4.2# grub-install --target=i386-pc --recheck --debug /dev/sda
sh-4.2# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo

Edite /etc/default/grub:

GRUB_CMDLINE_LINUX="root=/dev/mapper/vg_arch-root cryptdevice=/dev/sda3:arch-luks resume=/dev/mapper/vg_arch-swap"

Crie uma senha para impedir que editem o grub. Aqui estou redirecionando o output para um arquivo, que usaremos mais tarde. Simplesmente digite sua senha duas vezes após o comando:

sh-4.2#  grub-mkpasswd-pbkdf2 > hash

O arquivo hash terá uma string de 256 caracteres parecida com a seguinte: grub.pbkdf2.sha512.10000.FEDCBA987689…EDCBFEDCBA9876543210123

Copie esse hash e adicione o seguinte ao arquivo /etc/grub.d/00_header:

cat << EOF 
 
set superusers="julio" 
password_pbkdf2 julio grub.pbkdf2.sha512.10000.FEDCBA987689...EDCBFEDCBA9876543210123
 
EOF 

Depois rode o seguinte comando:

sh-4.2# grub-mkconfig -o /boot/grub/grub.cfg

Kernel parameters

Eu também gosto de tirar o quiet da linha linux no /boot/grub/grub.cfg para ver se tudo ocorre corretamente durante o boot.

Defina uma senha para o root

sh-4.2# passwd

Reinicie o computador

sh-4.2# exit 
root@archiso# umount /mnt/{boot,var,home,}
root@archiso# reboot

Quando você reiniciar ele irá pedir a senha do Grub2 e a senha para acessar o volume arch-luks.

Pós instalação

Faça login como root usando a senha que você definiu anteriormente.

Conecte-se à internet

  • Rede cabeada:

      [root@acer ~] dhcpcd eth0
    
  • Rede sem fio:

      [root@acer ~] wifi-menu wlan0
    

Pacman

Adicione o repositório [multilib]. Basta descomentar as seguintes linhas em /etc/pacman.conf:

[multilib]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

Adicione também a linha ILoveCandy abaixo de # Misc options só por graça =].

Chaves PGP

[root@acer ~]# rm -r /etc/pacman.d/gnupg
[root@acer ~]# pacman-key --init
[root@acer ~]# pacman-key --populate archlinux

Mirrors

Edite o arquivo /etc/pacman.d/mirrorlist. No vim: :%s/^[^\#]/\#S/. Depois descomente apenas uns 3 repositórios.

Instale alguns programas

Recomendações:

root@acer ~ # pacman -S zsh sudo
alsa-utils pulseaudio pulseaudio-alsa pavucontrol paprefs
xorg-server xorg-xinit xorg-server-utils xf86-video-intel lib32-intel-dri
xf86-input-synaptics xf86-input-wacom libwacom xbindkeys xdotool
awesome vicious wmname
ttf-dejavu terminus-font ttf-inconsolata artwiz-fonts ttf-symbola
feh imagemagick geeqie gimp scrot
mpd ncmpcpp mplayer2 kid3
wget chromium firefox flashplugin
acpid screen htop ntp
python python2 python-pip python2-pip ipython ipython2 bpython bpython2
python2-psycopg2 python2-pygments python2-mechanize python2-imaging
python2-beautifulsoup3 python2-beautifulsoup4 pep8-python2 pep8-python3
python2-lxml
git mercurial svn ack gdb clang clang-analyzer cppcheck
jdk7-openjdk irssi pidgin mutt thunderbird
wicd samba openssh sshfs apache php php-apache postgresql pgadmin3
vidalia
cups hplip gtranslator
qalculate-gtk gnuplot texlive-most xournal
libreoffice-{common,pt-BR,calc,writer,impress} stardict
rsync mktorrent
rxvt-unicode urxvt-perls terminator
unrar zip p7zip
virtualbox yajl
vlock slock xautolock tree wireshark
gparted gptfdisk dosfstools ntfsprogs mtools
cpupower hdparm hddtemp lm_sensors hwinfo
pysolfc 

ttf-symbola
mpdscribble 
icedtea-web-java7
wine 
laptop-mode-tools 

Essa é uma lista com alguns programas que eu sempre instalo no meu notebook. Escolha apenas aqueles que você acha que vai precisar (não instale os drivers de vídeo da intel se sua placa for Nvidia, claro).

Som

O ALSA já vem instalado com o kernel do Arch Linux.

Abra o alsamixer, tire o Master do mudo e aumente o volume. Teste o som com speaker-test -c 2. Se funcionou, salve as configurações do mixer com o seguinte comando (TODO: verificar se precisa mesmo):

[root@acer ~]# alsactl store

Como eu uso mais de uma placa de som e transfiro audio de outro computador pela rede, também gosto de ter o Pulseaudio funcionando (ele foi instalado na etapa anterior).

Vídeo - X11

Descubra qual sua placa usando o seguinte comando:

[root@acer ~]# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)

Já instalei os drivers da Intel (xf86-video-intel e lib32-intel-dri) na etapa anterior.

Aumentar segurança das senhas

Até pouco tempo atrás as senhas dos usuário do Linux eram armazenadas no arquivo /etc/shadow usando o algoritmo MD5 por default.

Eu considero o MD5 muito fraco e fácil de ser quebrado. Felizmente novas versões do shadow usam SHA-512 com 5000 rounds, que é muito melhor que o padrão anterior. Mas se você é paranóico pode alterar o algoritmo ou aumentar o número de rounds.

Meu algoritmo preferido para proteger senhas é o bcrypt, que usa o Blowfish internamente e, apesar de não ser propriamente uma função hash, serve exatamente ao mesmo propósito – a partir de uma senha, gera uma string irreversível que pode ser usada para verificar a senha.

Percebi que o manual do pam não cita o bcrypt. O Blowfish aparece na lista, mas como é um algoritmo de encriptação de cifra simétrica (e não uma função hash) a senha seria reversível.

Então escolhi usar SHA-512 com bem mais rounds que o default, que é tão bom quanto o bcrypt. Para isso, modifique o arquivo /etc/pam.d/passwd para:

password    required    pam_unix.so sha512 rounds=65536 shadow nullok minlen=8 retry=3

Todos os usuários que forem criados daqui para frente precisarão criar senhas com pelo menos 8 caracteres, cujo hash usará SHA-512 com 65536 rounds. Para ter efeito sobre as contas atuais basta recriar as senhas com o passwd:

[root@acer ~] passwd
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully

Da para verificar a mudança pelo arquivo /etc/shadow:

[root@acer ~] cat /etc/shadow | grep root

Adicione um usuário

[root@acer ~]# useradd -m -G wheel -s /bin/zsh julio
[root@acer ~]# chfn julio
[root@acer ~]# passwd julio

Um jeito mais fácil é com o adduser disponível no AUR:

[root@acer ~]# adduser
Login name for new user []: julio
User ID ('UID') [ defaults to next available ]:
Initial group [ users ]:
Additional groups (comma separated) []: audio,lp,optical,storage,video,wheel,games,power,scanner
Home directory [ /home/julio ]:
Shell [ /bin/bash ]: /bin/zsh
Expiry date (YYYY-MM-DD) []:

Sudo

Permita usuários do grupo wheel usarem o comando sudo. Rode visudo e descomente a linha %wheel ALL=(ALL) ALL.

  • Faça login com o usuário criado.

Dotfiles, etc

Oh-my-zsh

acer% git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
  • Copie suas chaves públicas e privadas do backup

  • Clone o meu repositório de dotfiles no Github:

      acer% git clone git@github.com:jbsilva/dotfiles.git
    

Outros dotfiles

Copie ou link cada um dos dotfiles e scripts para suas respectivas pastas:

acer% ln -s /home/julio/dotfiles/home/julio/.vim ~/.vim
acer% ln -s /home/julio/dotfiles/home/julio/.vimrc ~/.vimrc
acer% ln -s /home/julio/dotfiles/home/julio/.zshrc ~/.zshrc
acer% ln -s /home/julio/dotfiles/home/julio/.gitconfig ~/.gitconfig

acer% mkdir ~/.config;
acer% ln -s /home/julio/dotfiles/home/julio/.config/awesome ~/.config
acer% ln -s /home/julio/dotfiles/home/julio/.config/sytemd ~/.config

acer% mkdir .mpd; touch database log pid state sticker.sql
acer% ln -s /home/julio/dotfiles/home/julio/.mpd/mpd.conf ~/.mpd
acer% ln -s /home/julio/dotfiles/home/julio/.mpd/playlists ~/.mpd

acer% mkdir .ncmpcpp 
acer% ln -s /home/julio/dotfiles/home/julio/.ncmpcpp/config ~/.ncmpcpp

acer% ln -s /home/julio/dotfiles/home/julio/.xdefaults ~/.xdefaults
acer% ln -s /home/julio/dotfiles/home/julio/.xdefaults/Xdefaults ~/.Xdefaults
acer% rm .xinitrc; ln -s /home/julio/dotfiles/home/julio/.xinitrc

Pronto! O sistema está configurado e pronto para usar. Inicie a interface gráfica com startx.


AUR e Yaourt/Packer

Instale o Yaourt ou o Packer (escolha um) para facilitar a instalação de pacotes do AUR.

  • Yaourt:

      julio@acer ~> wget https://aur.archlinux.org/packages/pa/package-query/package-query.tar.gz
      julio@acer ~> tar xvfz package-query.tar.gz; cd package-query
      julio@acer ~/package-query> makepkg
      julio@acer ~/package-query> sudo pacman -U package-query-1.0.1-1-x86_64.pkg.tar.xz
    
      julio@acer ~> wget https://aur.archlinux.org/packages/ya/yaourt/yaourt.tar.gz
      julio@acer ~> tar xvfz yaourt.tar.gz; cd yaourt
      julio@acer ~/yaourt> makepkg
      julio@acer ~/yaourt> sudo pacman -U yaourt-1.1-1-any.pkg.tar.xz
    
  • Packer:

Comecei a usar o Packer há pouco tempo, mas parece ser mais rápido e dar menos problemas que o Yaourt.

    julio@acer ~> wget https://aur.archlinux.org/packages/pa/packer/packer.tar.gz
    julio@acer ~> tar xvfz packer.tar.gz; cd packer; makepkg
    julio@acer ~/packer> sudo pacman -U packer-20121228-1-any.pkg.tar.xz

Instale alguns programas do AUR:

julio@acer ~> for p in {tofrodos,dropbox,urxvt-keyboard-select,urxvt-clipboard,rtorrent-pyro-git,otf-ipafont,mod_scgi,django-git,flexget,xtrlock,tor-browser-en}; do packer $p; done

Instale outros programas

  • Instalar rutorrent por svn

Comando pra montar o Volume Group: vgchange -a y vg_arch

Samba

Criar usuários para o Samba

julio@acer ~> sudo useradd guest
julio@acer ~> sudo pdbedit -a -u julio
julio@acer ~> sudo pdbedit -a -u guest

Iniciar o daemon pelo systemctl:

julio@acer ~> sudo systemctl start smbd nmbd

Liste pastas compartilhadas

Em outros computadores da rede, as pastas compartilhadas podem ser listadas usando:

julio@acer ~> sudo smbclient -L 192.168.0.2 -U%

Acesse de outros computadores:

sudo mount -t cifs //192.168.0.2/acer /media/acer -o user=guest,password=senha_guest,workgroup=GRUPO,ip=192.168.0.2

ou melhor, adicione a seguinte linha ao /etc/fstab:

//192.168.0.2/musicas   /media/rede   cifs   noauto,credentials=/etc/samba/smbcred   0 0

Onde o arquivo /etc/samb/smbcred é parecido com o seguinte:

username=guest
password=senha_guest
workgroup=GRUPO
ip=192.168.0.2

Outras recomendações

Proteja sua BIOS com senha para maior segurança.

Salve um backup do LUKS header

Já conheci gente cujo HD teve badblock no início da partição encriptada e acabou sem ter como acessar os arquivos. Se tivesse backup do header provavelmente conseguiria recuperar alguns arquivos.

julio@acer ~> sudo cryptsetup luksHeaderBackup /dev/sda3 --header-backup-file /media/externo/acer-luks_header.img

Cron

julio@acer ~> sudo systemctl enable cronie

Previna fork bombs

Adicione a seguinte linha no final do arquivo /etc/security/limits.conf:

julio           hard    nproc           4000

(troque “julio” pelo nome do seu usuário)


Julio Batista Silva
Julio Batista Silva
Data Engineer

I’m a computer engineer passionate about science, technology, photography, and languages. Currently working as a Data Engineer in Germany.

comments powered by Disqus