IST - Física HowTo - Informática 20:21
2026-11-03
  Sistema Operativos
 
     Linux
 
        Administração
 
        Comandos POSIX
 
        Outros comandos
 
        Shells
 
        Admin. Utilizador
 
        Ubuntu / Debian
 
        Fedora
 
        Mint
 

Linux: Administração

Sumário
1. Introdução
2. Gestão de discos SATA
3. Ext4: Gestão do sistema de ficheiros
4. fstab: Ficheiro que contém as descrições sobre como montar os 'devices'
5. group: Como criar/apagar um grupo
6. Superuser: Privilégios de sistema
7. systemctl: Controle os serviços do sistemas
8. sysctl: Serve para controlar, em tempo real, parâmetros do kernel
9. Administração de pacotes ".deb" no terminal
10. Utilizadores: criar e apagar utilizadores
11. Gestão da memória virtual (swap)
12. Organização e gestão das 'logfiles'
13. Instalação dos drives para 'NVidia'
14. Acesso a PCs remotos em redes de operadores de telecomunicações
15. Links úteis
Início

1. Introdução

Aqui apresentam-se alguns dos comandos mais usuais na administração de sistemas Linux e em especial da sua versão Ubuntu.
Início

2. Gestão de discos SATA

  • Visualizar os discos
    lsblk
    para uma informação mais completa fazer:
    lsblk -f
  • Standby:
    Quando um disco fica em 'standby' ele deixa de rodar e o consumo de energia diminui mas mantém-se ligado pronto para voltar a ser usado.
    Para sair do estado de 'standby' basta montar uma partição ou aceder-lhe de alguma forma.
    Para pôr um disco em 'standby' fazer (exemplo com '/dev/sdg'):
    sudo hdparm -y /dev/sdg
    Não é boa regra pôr em 'standby' e religá-los com muita frequência, pois, o ligar e desligar desgasta o disco. Isto deve antes ser usado em discos de backup ou de dados com acesso pouco frequente.
    Atenção: Antes de pôr o disco em 'standby' devem fechar-se todos os acessos ficheiros nele contidos e desmontarem-se todas as suas partições, sob risco de corrupção de dados. Nunca o fazer com o disco do sistema.
  • Desligar profundo: Nesta situação é quase como se se lhe tivesse sido cortada a energia. Devem ter-se as mesma medidas segurança que no caso do 'standby' (exemplo com '/dev/sdg'):
    sudo hdparm -Y /dev/sdg
  • Testar estado do disco:
    Para testar o estado em que está o disco, fazer (exemplo com '/dev/sdg'):
    sudo hdparm -C /dev/sdg
Início

3. Ext4: Gestão do sistema de ficheiros

O sistema de ficheiro 'ext4' é atualmente a norma para gestão dos ficheiros numa partição. Note-se que a execução destes comandos tem de ser feita em 'super user' pelo que se poderá ter de acrescentar 'sudo' antes do comando.
  • Formatação: Para formatar uma partição usa-se mk
    mkfs.ext4 -F -m (percentagem de espaço reservado para o 'super-user') -L '(Label da partição)' (device)
    note-se que existem muito mais opções. Para ver os detalhe da montagem inspecionar o ficheiro 'mke2fs.conf'.
  • Correção: Para corrigir eventuais erros numa partição:
    e2fsck [-F] [-y] (device)
    em '-F' força a execução e '-y' responde 'sim' a todas as perguntas.
  • Label: Pode acrescentar-se ou apagar-se o label de uma partição:
    e2label (device) (nome do label)
  • UUIC: Para saber o UUID de uma partição:
    sudo blkid -s UUID -o value (device)
  • Alterações: O comando 'tune2fs' permite fazer alterações na configuração do sistema de ficheiros.
    • Para alterar a percentagem de espaço reservada para o 'super user':
      tune2fs -r 0 (device)
      Note-se que para partições que não sejam a 'root' ('/') não parece ser relevante reservar esse espaço, pelo que se pode pôr '-m 0'. Para a 'root' pode deixar-se o default (5%).

  • Visualização: Para visualizar as características de uma partição
    tune2fs -l (device)
  • Montagem: Os comandos 'mount' e 'umount' servem, respectivamente, para montar e desmontar partições de discos. Com 'montar uma partição' quer-se dizer que se associa uma pasta (vazia) a essa partição, assim, o conteúdo dessa partição fica acessível a partir dessa pasta.

    Exemplos (exemplificando com o device '/dev/sdc3' montado na pasta '/c3':

    • Montar uma partição:
      mount /dev/sda3 /c3
      note-se que não foi indicado o sistema de ficheiro usado. O comando 'mount' ver qual é e faz a sua montagem.
    • Desmontar uma partição:
      umount /c3
    • Montar de 'fstab' (Qualificador -a, --all):
      mount -a
    • Montar uma partição só para leitura (Qualificador -r, --read-only ou como opção -o ro):
      mount -r /dev/sda3 /c3
      mount -o ro /dev/sda3 /c3
    • Alterar uma montagem de 'read-only' para 'read-write' (Opções 'rw' e 'remount'):
      mount -o rw,remount /c3
Início

4. fstab: Ficheiro que contém as descrições sobre como montar os 'devices'

Ver HowTo: fstab.
Início

5. group: Como criar/apagar um grupo

Para criar um 'group' usar 'addgroup' (para mais indicações fazer 'man addgroup' ou 'addgroup -help').
É facultativo dar o número do grupo, 'ID'. Caso não seja dado é atribuído automaticamente. '--system' usa-se para criar um 'group' de sistema.
O comando genérico para criação dum grupo ('group') é:

$ addgroup [--system] [--gid ID] GROUP
  • Para criar um 'group', fazer:
    $ addgroup ola
  • Para criar o 'group' 1725, fazer:
    $ addgroup --gid 1725 ola

Para apagar um grupo fazer (para mais indicações fazer 'man delgroup'):

$ delgroup [options] [--only-if-empty] group
Início

6. Superuser: Privilégios de sistema

A atribuição de privilégios temporários a um utilizador pode ser feita usando o comando 'sudo'. A implementação de Linux Ubuntu já o faz de raíz. No entanto, outras implementações não o fazem.

  • Para atribuir a possibilidade de obter privilégios é necessário fazer essa atribuição no ficheiro '/etc/sudoers'. Tal basta executar o seguinte comando:
    visudo
  • Se quiser simplesmente executar um comando com privilégios basta fazer na linha de comandos:
    sudo comando_a_executar
  • Para entrar numa sessão privilegiada pode usar-se a opção '-s' ou '-i'. Para sair fazer dela faz-se 'exit' na linha do terminal:
    sudo -s
  • Se ao tentar abrir uma janela em superuser (por exemplo, do emacs) se obtiver uma do tipo:
    X11 connection rejected because of wrong authentication.
    que se tem a fazer de mais simples é copiar para a "root" o ficheiro "~/.Xauthority":
    sudo cp /Pasta_do_Utilizador/.Xauthority /root/
    sudo chown root /root/.Xauthority
Início

7. systemctl: Controle os serviços do sistemas

'systemctl' é um comando que serve para controlar os serviços do sistemas.
  • Listar todos os serviços
    systemctl -a [ ou --all ]
  • Listar as unidades conhecidas
    systemctl list-unit-files
  • Mostrar o estado dum serviço
    systemctl status <serviço>(Exemplo: systemctl status apache2)
  • Arrancar um serviço se ele não está a correr
    systemctl start <serviço>(Exemplo: systemctl start apache2)
  • Parar um serviço
    systemctl stop <serviço>(Exemplo: systemctl stop apache2)
  • Rearrancar um serviço
    systemctl restart <serviço>(Exemplo: systemctl restart apache2)
  • para só o fazer no caso de ele já estar a correr
    systemctl try-restart <serviço>(Exemplo: systemctl try-restart apache2)
  • Apesar de não ser daqui é útil quando se arranca o 'apache2', pois, testa a sua configuração
    apachectl configtest
Início

8. sysctl: Serve para controlar, em tempo real, parâmetros do kernel

Este comando serve para controlar, em tempo real, parâmetros do kernel.
A sua utilização, para alterar prâmetros, exige privilégios de 'superuser'.
Para saber os valores presentemente em uso, pode usar-se o comando:

$ sysctl -a
Parâmetros que se podem usar:
  • vm.swappiness: Controla da "intensidade" da utilização da memória virtual. Pode tomar valores inteiros no intervalo [0,100], em que "0" é a sua não utilização, "1" é a sua utilização mínima e "100" é a sua utilização mais intensa:
    $ sysctl vm.swappiness=Valor
Para alterar permanentemente valores predefinidos deve fazer-se a sua inserção no no ficheiro "/etc/sysctl.conf".
É ainda possível actualizar os valores dos parâmetros controlados por sysctl através do comando:
$ sysctl --load
Se se quer fazer a atualização, não só de "/etc/sysctl.conf" mas, de todos os ficheiros de configuração do sistema, pode usar o comando:
$ sysctl --system

Listas dos parâmetros geridos por "sysctl":

Início

9. Administração de pacotes ".deb" no terminal

Para administrar os pacotes ".deb", pode usar-se o programa "dpkg" (Debian Package Management System). Por sua vez ele pode ser utilizado pelo "apt-get" ou pelo "aptitude" que por sua vez são utilizados através de aplicações GUI como sejam o "synaptic" ou o "Centro de software do Ubuntu".
  • Para instalar um pacote pelo nome:
    $ sudo dpkg -i {package_name}
    $ sudo apt-get install {package_name}
  • Para instalar um pacote a partir de um ficheiro:
    $ sudo dpkg -i DEB_PACKAGE
    $ sudo apt-get install /path/to/package.deb
  • Para remover um pacote:
    $ sudo dpkg -r PACKAGE_NAME
  • Para reconfigurar um pacote:
    $ sudo dpkg-reconfigure PACKAGE_NAME
  • Para listar todos os pacotes:
    $ sudo dpkg -l
Bibliografia
Início

10. Utilizadores: criar e apagar utilizadores

Existem em quase todas as implementações de Linux aplicações para a criação de utilizadores. No entanto, por vezes, pode dar jeito utilizar os comandos básicos para a sua criação.

  • Para criar um utilizador 'normal' usar 'adduser'; para criar um utilizador de sistema fazer 'adduser --system'.
    Para mais opções e indicações fazer 'man adduser' ou 'adduser -help'.
    O comando genérico para criação dum utilizador é:
    $ adduser [--home DIR] [--shell SHELL] [--uid ID] [--ingroup GROUP | --gid ID] [--disabled-login] USER

    Exemplo:

    $ adduser --home /home/user1 --shell /bin/bash --uid 2001 --gid 2001 user1

    Nota: Os defaults de 'adduser' encontram-se no ficheiro '/etc/adduser.conf'.

  • Para apagar um utilizador user o comando deluser (para mais indicações fazer 'man deluser'):
    $ deluser [--force] [--remove-home] [--remove-all-files] [--backup] [--backup-to DIR] user

    Nota: Os defaults de 'deluser' estão em '/etc/deluser.conf'.

Nota: Caso a pasta do utilizador fique vazia, há necessidade de copiar para lá o conteúdo da pasta '/etc/skel'.

Início

11. Gestão da memória virtual (swap)

A memória virtual é uma extensão da memória física. Esse espaço adicional poderá ser uma partição específica (swap) ou um ficheiro.
Início

12. Organização e gestão das 'logfiles'

A pasta "/var/log" contém os diversos ficheiro que dão informação sobre o funcionamento do sistema.

  • /var/log/syslog:
  • /var/log/journal/: Registo diário

    Para alterar em tempo real os parâmetros de execução usam-se os comandos abaixo, no entanto, eles não ficam registados. Se se quer alterar a configuração de um modo permanentes deve alterar o seu ficheiro de configuração: "/etc/systemd/journald.conf". Vejamos alguns exemplos:

    • Pode limitar-se o tamanho com o comando (exemplo com a limitação de '100M'):
      $ sudo journalctl --vacuum-size=100M
      Para tornar a alteração permanente (/etc/systemd/journald.conf):
      SystemMaxUse=100M
    • Para apagar a história (exemplo em que se preservam os últimos 10 dias):
      $ sudo journalctl --vacuum-time=10d
    • Para tornar a alteração permanente (/etc/systemd/journald.conf):
      MaxRetentionSec=10d
Início

13. Instalação dos drives para 'NVidia'

No caso da NVidia deixar se funcionar devidamente, o mais simples é reinstalar os pacotes (verificar qual o instalado, no exemplo, é o '570'):
sudo apt remove --purge nvidia-driver-570
sudo apt autoremove
sudo apt install nvidia-driver-570
depois reiniciar o computador e... esperar que tudo volte a ficar bem.
Início

14. Acesso a PCs remotos em redes de operadores de telecomunicações

Para aceder a computadores remotos ligados a operadores de telecomunicações em que não se tem acesso a um IP remoto, podem usar-se diversas soluções (soluções proposta pelo Opera AI):
  • Usar um serviço de VPN:
    • Configura-se um servidor VPN num servidor com IP público (como uma VPS na nuvem);
    • O computador remoto (sem IP público) conecta-se à VPN, criando um túnel seguro;
    • O outro computador liga-se também à mesma VPN;
    • Assim, ficam ambos na mesma rede virtual privada, permitindo assim conexão direta via IP privado da VPN.
  • Uso de serviços de túnel reverso (Reverse SSH Tunnel):
    • No computador remoto (sem IP público), inicie uma conexão SSH reversa para um servidor com IP público. Exemplo:
      ssh -R 2222:localhost:22 utilizador@servidor_publico
      Isso cria um túnel no servidor público na porta 2222 que redireciona para o SSH do computador remoto.
    • Depois, liga-se ao servidor público através da porta 2222 para aceder ao computador remoto:
      ssh -p 2222 utilizador@localhost
    • No caso de haver problemas nos acesso, verificar:
      • No ficheiro "/etc/ssh/sshd_config" pôr activa a opção "GatewayPorts yes" e reiniciar o serviço:
        sudo systemctl restart sshd
      • Verificar a firewall do computador com IP fixo:
        sudo ufw allow 2222/tcp
        sudo ufw reload
  • Usar IPv6: Se o operador e o computador suportarem IPv6 com IP público, pode ser possível conectar-se diretamente via IPv6. Para tal, Verificar se o IP IPv6 é acessível externamente.
    • No computador remoto, executar:
      ip -6 addr show
      e Procurar endereços IPv6 global (nota: os endereços locais começam por fe80::).
    • Testes possíveis para saber se o ipv6 é visível do exterior:
      test-ipv6.com
      ping6 endereco_ipv6
      www.yougetsignal.com/pt6
      port.tools/port-checker-ipv6/
      Nota: o teste de 'ping6' pode eventualmente falhar devido ao ping não estar acessível..
    • Para acerder ao computador sem IP fixo fazer:
      ssh user@'ipv6_addr' -X
Início

15. Links úteis

Início