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, comecei 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:

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:

    sudo fdisk /dev/sdb
    sudo mkfs.vfat -n ARCH_201212 /dev/sdb1
    sudo mount /dev/sdb1 /media/pendrive
    sudo mount archlinux-2012.12.01-dual.iso /media/arch
    sudo cp -r /media/arch/* /media/pendrive/
    sudo syslinux -s /dev/sdb1
    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 (esse é o HD)
  2. USB HDD: SanDisk (este é o pendrive)

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

  • Wi-Fi

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

    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, corrija 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
Engenheiro de Dados

Eu sou um engenheiro de computação apaixonado por ciência, tecnologia, fotografia e idiomas. Atualmente trabalhando como Engenheiro de Dados na Alemanha.

comments powered by Disqus