IST - Física - Mail
Início
HowTo Google Wikipedia Youtube Gmail

Linux: Administração


Sumário
1. Introdução
2. Ext4: Gestão do sistema de ficheiros
3. fstab: Ficheiro que contém as descrições sobre como montar os 'devices'
4. group: Como criar/apagar um grupo
5. Superuser: Privilégios de sistema
6. systemctl: Controle os serviços do sistemas
7. sysctl: Serve para controlar, em tempo real, parâmetros do kernel
8. Administração de pacotes ".deb" no terminal
9. Utilizadores: criar e apagar utilizadores
10. 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. 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)
  • 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

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

Início

4. 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

5. 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
Início

6. 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
  • Mostra 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)
  • Pára um serviço
    systemctl stop <serviço>(Exemplo: systemctl stop apache2)
  • Rearranca um serviço
    systemctl restart <serviço>(Exemplo: systemctl restart apache2)
  • Rearranca um serviço só no caso de ele 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

7. 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

8. 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

9. 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

10. Links úteis

Início
Footer