Os capítulos Primeiros passos e Manutenção descrevem como começar a usar o Debian Edu e como fazer o trabalho básico de manutenção. As instruções neste capítulo têm algumas dicas e truques mais "avançados".
Usando o etckeeper
, todos os arquivos em
/etc/
são rastreados usando o Git como sistema de controle de
versão.
Isto torna possível ver quando um arquivo é adicionado, alterado ou
removido, assim como o que foi alterado se o arquivo em causa for um arquivo
de texto. O repositório git é guardado em
/etc/.git/
.
A cada hora, quaisquer novas alterações são automaticamente registradas; o histórico de configuração pode ser extraído e consultado.
Para ver o histórico, é usado o comando etckeeper vcs
log
. Para ver as diferenças entre dois momentos no tempo,
pode ser usado um comando como etckeeper vcs diff
.
Para mais informações, ver os resultados de man
etckeeper
.
Lista de comandos úteis:
etckeeper vcs log etckeeper vcs status etckeeper vcs diff etckeeper vcs add . etckeeper vcs commit -a man etckeeper
Num sistema recém-instalado, tentar este comando para ver todas as alterações feitas desde que o sistema foi instalado:
etckeeper vcs log
Para ver que arquivos não são atualmente rastreados e os que não estão atualizados:
etckeeper vcs status
Para submeter manualmente um arquivo, para você não ter que esperar até uma hora:
etckeeper vcs commit -a /etc/resolv.conf
No Debian Edu, todas as partições que não a partição
/boot/
estão em volumes lógicos LVM. Com os
núcleos (kernels) Linux, desde a versão 2.6.10, é possível estender as
partições estando elas montadas. Encolher partições ainda tem de ser feito
com as partições desmontadas.
É uma boa prática evitar a criação de partições muito grandes (mais de,
digamos, 20GiB), devido ao tempo que demora a execução do
fsck
sobre elas ou a restaurá-las a partir
de cópias de segurança, se for necessário. É melhor, se for possível, criar
várias partições menores em vez de uma partição muito grande.
É disponibilizado o script de ajuda
debian-edu-fsautoresize
para facilitar a
extensão de partições cheias. Quando invocado, o script lê a configuração a
partir de
/usr/share/debian-edu-config/fsautoresizetab
,
/site/etc/fsautoresizetab
e
/etc/fsautoresizetab
. Propõe então estender
as partições que tenham muito pouco espaço livre, de acordo com as regras
estabelecidas nestes arquivos. Se executado sem argumentos, mostrará apenas
os comandos necessários à extensão do sistema de arquivos. É necessário o
argumento -n
para que estes comandos para
extensão do sistema de arquivos sejam realmente executados.
O script é executado automaticamente a cada hora em cada cliente listado no
grupo de rede fsautoresize-hosts
.
Quando a partição utilizada pelo intermediário (proxy) Squid é
redimensionada, o valor para o tamanho do cache em
etc/squid/squid.conf
também tem que ser
atualizado. É disponibilizado o script de ajuda
/usr/share/debian-edu-config/tools/squid-update-cachedir
para fazer essa operação automaticamente, verificando o tamanho atual da
partição /var/spool/squid/
e configurando o
Squid para usar 80% desse valor como tamanho de cache.
O Logical Volume Management (LVM), ou gestão de volumes lógicos, permite redimensionar as partições enquanto elas estão montadas e em uso. Mais sobre o LVM em Gerenciamento de volumes lógicos.
Para estender manualmente um volume lógico, basta indicar no comando
lvextend
o tamanho pretendido para esse
volume. Por exemplo, para estender home0 para 30GiB usar os seguintes
comandos:
lvextend -L30G /dev/vg_system/skole+tjener+home0 resize2fs /dev/vg_system/skole+tjener+home0
Para estender home0 em mais 30GiB, inserir um '+' (-L+30G)
O ldapvi é uma ferramenta para editar base de dados LDAP com um editor de texto normal no terminal.
É necessário executar o seguinte:
ldapvi --ldap-conf -ZD '(cn=admin)'
Nota: O ldapvi
usará o editor predefinido,
qualquer que ele seja. Executando export
EDITOR=vim
na linha de comando é possível configurar o
ambiente para obter um clone do vi como editor.
Para adicionar um objeto LDAP usando o ldapvi, usar o número da sequência do
objeto com a linha add
antes do novo objeto
LDAP.
Aviso: O
ldapvi
é uma ferramenta muito
poderosa. É necessário cuidado redobrado para que a base de dados LDAP não
seja corrompida. Este aviso aplica-se também ao JXplorer.
Usar o Kerberos para fazer o NFS montar pastas de usuário é uma funcionalidade de segurança. A partir da versão Bullseye, os clientes LTSP não funcionam sem o Kerberos. São suportados os níveis krb5, krb5i e krb5p (krb5 significa autenticação Kerberos, i significa verificação de integridade e p verificação de privacidade, ou seja, criptografia); a carga, tanto no servidor quanto na estação de trabalho, aumenta com o nível de segurança; o nível krb5i é uma boa opção e foi escolhido como padrão.
Servidor principal
faça login como root
execute ldapvi -ZD '(cn=admin)'
, procure
por sec=krb5i e substitua por
sec=krb5 ou sec=krb5p, conforme
for pretendido.
edite /etc/exports.d/edu.exports
: e ajuste
essas entradas conforme:
/srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check) /srv/nfs4/home0 gss/krb5i(rw,sync,no_subtree_check)
executar exportfs -r
Esta ferramenta permite estabelecer a impressora predefinida, dependendo da
localização, da máquina ou do grupo a que pertença. Para mais informações,
ver
/usr/share/doc/standardskriver/README.md
.
O arquivo de configuração
/etc/standardskriver.cfg
tem de ser
fornecido pelo administrador; ver
/usr/share/doc/standardskriver/examples/standardskriver.cfg
como exemplo.
Para trabalhar com a base de dados LDAP usando uma interface gráfica,
experimentar o pacote jxplorer
, que é
instalado por padrão. Para obter acesso de escrita, conecte-se desta forma:
host: ldap.intern port: 636 Security level: ssl + user + password User dn: cn=admin,ou=ldap-access,dc=skole,dc=skolelinux,dc=no
O ldap-createuser-krb
é uma pequena
ferramenta de linha de comando para criar usuários LDAP e definir as suas
senhas no Kerberos. É muito útil, sobretudo para testes.
Desde 2011, com a versão Squeeze, o Debian passou a incluir na suite stable-updates os pacotes anteriormente mantidos em volatile.debian.org.
Embora seja possível usar a funcionalidade de atualizações estáveis (stable-updates) diretamente, isso não é necessário: estas são enviadas para a suíte estável regularmente quando são feitas as versões pontuais estáveis, o que acontece aproximadamente a cada dois meses.
Quem usa o Debian Edu é porque prefere a estabilidade do Debian, distribuição que funciona muito bem. Mas tem um problema: às vezes o software está um pouco mais desatualizado do que o desejado. É aqui que o backports.debian.org entra em cena.
Pacotes backports são pacotes recompilados do Debian testing (principalmente) e do Debian unstable (em poucos casos apenas – por exemplo, atualizações de segurança), para que funcionem sem novas bibliotecas (sempre que possível) numa distribuição Debian estável como a Debian Edu. Recomenda-se que sejam escolhidos pacotes específicos de acordo com as necessidades, e que não sejam usados todos os pacotes backports disponíveis.
O uso de pacotes backports é simples. Executar:
echo "deb http://deb.debian.org/debian/ bullseye-backports main" >> /etc/apt/sources.list apt-get update
Após o que os pacotes backports são facilmente instaláveis: o seguinte comando irá instalar uma versão backport do tuxtype:
apt install -t bullseye-backports tuxtype
Backports são atualizados automaticamente (se disponíveis), assim como outros pacotes. Como o arquivamento normal, os backports têm três seções: principal (main), contrib e non-free.
Para atualizar de uma versão para outra (por exemplo, de Bullseye 11.1 para 11.2) sem ligação à Internet, apenas com mídias físicas, seguir estes passos:
Inserir o CD / DVD / Disco blu-ray / pendrive USB e executar o comando apt-cdrom:
apt-cdrom add
Para citar a página man do apt-cdrom (8):
O apt-cdrom é usado para adicionar um novo CD-ROM à lista de fontes disponíveis do APT. Identifica a estrutura do disco, pode corrigir vários possíveis erros de gravação e verifica os arquivos de índice.
É necessário usar o apt-cdrom para adicionar CDs ao sistema APT. Esta ação não pode ser executada manualmente. Além disso, quando forem usados conjuntos multi-CD, cada disco tem que ser inserido e verificado separadamente para prevenir possíveis falhas de gravação.
Em seguida, executar estes dois comandos para atualizar o sistema:
apt update apt full-upgrade
O killer
é um script em perl que aniquila
trabalhos em segundo plano. Trabalhos em segundo plano são definidos como
processos pertencentes a usuários que não estão atualmente em sessão na
máquina. É executado por uma tarefa agendada (cron job) uma vez por hora.
O unattended-upgrades
é um pacote
(programa) Debian que instala automaticamente as atualizações de segurança
(e outras). Se instalado, o pacote é pré-configurado para instalar
automaticamente as atualizações de segurança. Os registros de alterações
(logs) estão disponíveis em
/var/log/unattended-upgrades/
; também podem
sempre ser consultados os arquivos
/var/log/dpkg.log
e
/var/log/apt/
.
É possível poupar energia e dinheiro desligando automaticamente as máquinas
clientes à noite e voltando a ligá-las novamente pela manhã. O pacote
(programa) shutdown-at-night
tenta desligar
cada máquina de hora a hora a partir das 16:00, mas não as desligará se
parecerem estar em utilização. Em cada máquina, o programa tenta passar
informação à BIOS para ligar a máquina por volta das 07:00 da manhã e o
servidor principal vai tentar ligar todas as máquinas a partir das 06:30
enviando pacotes wake-on-lan. Estes horários podem ser alterados nos
separadores de agendamento (crontabs) das máquinas individuais.
Algumas considerações a se levar em conta ao estabelecer este procedimento:
Os clientes não devem ser desligados quando alguém os está usando. Isto é
assegurado pela verificação do resultado de
who
e, como caso especial, pela verificação
de que o comando de ligação ssh funciona com os clientes dependentes X2Go.
Para evitar queimar os fusíveis elétricos / disparar os disjuntores, é boa prática garantir que os clientes não iniciem todos ao mesmo tempo.
Há dois métodos diferentes para reativar os clientes. Um usa um recurso da
BIOS e requer um relógio interno funcional e com a hora certa, assim como
uma placa-mãe e uma versão da BIOS compatíveis com o
nvram-wakeup
; o outro requer que os
clientes sejam compatíveis com o wake-on-lan e que o servidor tenha
informação sobre todos os clientes a serem reativados.
Em clientes que devam ser desligados à noite, executar touch
/etc/shutdown-at-night/shutdown-at-night
ou adicionar o
nome do host (ou seja, o resultado de 'uname
-n
' no cliente) ao grupo de rede
"shutdown-at-night-hosts". A adição de host ao grupo de rede no LDAP pode
ser feita usando a ferramenta web GOsa²
. Os
clientes podem precisar de ter o wake-on-lan configurado na BIOS. É
importante também que os comutadores (switches) e encaminhadores (routers)
utilizados entre o servidor wake-on-lan (wol) e os clientes passem os
pacotes WOL para os clientes, mesmo que os clientes estejam
desligados. Alguns comutadores não passam os pacotes aos clientes que faltem
na tabela ARP do comutador, e isso bloqueia os pacotes WOL.
Para ativar o wake-on-lan no servidor, adicionar os clientes a
/etc/shutdown-at-night/clients
, com uma
linha por cliente, primeiro o endereço IP, seguido pelo endereço MAC
(endereço ethernet), separado por um espaço; ou criar um script
/etc/shutdown-at-night/clients-generator
para gerar a lista de clientes em tempo real.
Um exemplo
/etc/shutdown-at-night/clients-generator
para uso com o sitesummary:
#!/bin/sh PATH=/usr/sbin:$PATH export PATH sitesummary-nodes -w
Se o grupo de rede for usado para ativar o desligar à noite nos clientes,
uma alternativa é este script usar a ferramenta netgroup do pacote
ng-utils
:
#!/bin/sh PATH=/usr/sbin:$PATH export PATH netgroup -h shutdown-at-night-hosts
Para acessar a partir da Internet a máquinas protegidas por um firewall,
considerar a instalação do pacote
autossh
. Este pacote pode ser usado para
configurar um túnel SSH para uma máquina ligada à Internet. O servidor por
trás da barreira/firewall fica acessível a partir dessa máquina através do
túnel SSH.
Na instalação predefinida, todos os serviços são executados no servidor principal (tjener). Para simplificar a transferência da execução de alguns serviços para outra máquina, está disponível o perfil de instalação Mínimo. A instalação do sistema com este perfil numa máquina que faça parte da rede Debian Edu, fará com que a máquina fique sem qualquer serviço em execução (até que lhe seja atribuído algum).
Estes são os passos necessários para configurar uma máquina dedicada a alguns serviços:
instalar o perfil mínimo usando a opção de inicialização debian-edu-expert
instalar os pacotes correspondentes ao serviço
configurar o serviço
desativar o serviço no servidor principal
atualizar o DNS (via LDAP/GOsa²) no servidor principal
FIXME: The HowTos from https://wiki.debian.org/DebianEdu/HowTo/ are either user- or developer-specific. Let's move the user-specific HowTos over here (and delete them over there)! (But first ask the authors (see the history of those pages to find them) if they are fine with moving the howto and putting it under the GPL.)