Lançador Produtos Bitnami Documentaçãoimaxe CLI Blog Contacto
imaxe os sistema v1.0.0

A base do servidor, em ordem

Mantém o sistema operativo atualizado e bem configurado: atualizações (e atualizações desassistidas), idioma, fuso horário, nome da máquina e tempo sincronizado. Tudo com um punhado de comandos claros.

$ imaxe os update --security-only --reboot-if-needed
Versão
v1.0.0
Subcomandos
9
Config
/etc/imaxe/os.yml
Requer root
sim
Arquitetura
linux/amd64

O que faz este módulo #

Sempre que arrancas um servidor tens de deixar a base em ordem: instalar as atualizações pendentes, decidir o idioma em que falam os programas, definir o fuso horário correto, dar um nome à máquina e garantir que o relógio está certo. São tarefas pequenas mas repetitivas, e cada uma tem o seu próprio comando de Linux com a sua própria sintaxe.

O módulo os reúne-as todas atrás de uma interface coerente. Atualiza o sistema (ou apenas a parte de segurança) e diz-te se é preciso reiniciar; ativa as atualizações desassistidas para que as atualizações de segurança se apliquem sozinhas; define o locale, o fuso horário e o hostname de forma idempotente; e gere a sincronização NTP para que a hora nunca se desvie. Cada ação é segura de repetir: se já estiver no estado desejado, não toca em nada.

Antes de começar

Os subcomandos que alteram algo (atualizar, definir locale, fuso horário, hostname ou NTP) escrevem no sistema e precisam de privilégios de root: executa-os com sudo. Os que apenas consultam (status, list, check) não o requerem.

Guia rápidotarefas passo a passo

Tarefas comuns #

Escolhe o que queres fazer. Cada receita traz o comando já escrito — basta trocar os valores de exemplo pelos teus e clicar em Copiar.

1

Ver e aplicar atualizações

Verifica o que está pendente e fica em dia num instante.

Primeiro olha para o estado geral e para as atualizações que aguardam:

terminal
$ imaxe os status
$ imaxe os check

Aplica o que está pendente. Se só quiseres as de segurança e quiseres que reinicie se for preciso, adiciona as flags:

terminal
$ sudo imaxe os update --security-only --reboot-if-needed
O sistema fica agora atualizado. Para saber se ainda está pendente um reinício, usa imaxe os reboot-required (código de saída 0 = sim, é necessário).
2

Pôr as atualizações de segurança em piloto automático

Deixa que as atualizações de segurança se apliquem sozinhas, sem teres de andar a vigiá-las.

Ativa as atualizações desassistidas. Isto gera-te a configuração do unattended-upgrades:

terminal
$ sudo imaxe os autoupdate enable

Confirma que está ativo e quando será a próxima execução:

terminal
$ imaxe os autoupdate status
A partir de agora os patches de segurança instalam-se sozinhos. Queres desativá-lo? sudo imaxe os autoupdate disable.
3

Definir o fuso horário e a hora

Define o teu fuso IANA e garante que o relógio sincroniza por NTP.

Se não te lembras do nome exato do teu fuso, filtra-o primeiro:

terminal
$ imaxe os timezone list Europe

Define o fuso (é idempotente) e ativa a sincronização de tempo:

terminal
$ sudo imaxe os timezone set Europe/Madrid
$ sudo imaxe os timesync enable
A máquina mostra a hora local correta e mantém-na sincronizada. Verifica o NTP com imaxe os timesync status.
4

Definir o idioma do sistema

Define o LANG e gera o locale se ainda não existir.

Define o idioma do sistema. O comando gera o locale e instala o pacote locales se faltar:

terminal
$ sudo imaxe os locale set es_ES.UTF-8

Precisas de mais idiomas disponíveis sem mudar o LANG? Gera-os em separado:

terminal
$ sudo imaxe os locale generate es_ES.UTF-8 en_US.UTF-8
O sistema fala no idioma escolhido. Revê o LANG atual e os gerados com imaxe os locale status.
5

Mudar o nome da máquina

Define um hostname claro e mantém o /etc/hosts consistente.

Atribui o hostname. Só são permitidas letras, números e hífens, até 63 caracteres:

terminal
$ sudo imaxe os hostname set web-01
O nome é aplicado e o /etc/hosts é atualizado para coincidir. Verifica-o com imaxe os hostname status.
Atenção ao hostname na cloud

Se a instância for gerida pelo cloud-init, este pode reescrever o hostname em cada arranque. Por isso o os.yml deixa o campo hostname vazio por omissão: define-o apenas se souberes que o cloud-init não o vai sobrescrever.

Referência CLIcomandos, flags e ficheiros

Sinopse #

uso
imaxe os <subcomando> [<acción>] [<argumento>...] [flags]

Os subcomandos que alteram o sistema (atualizar, atualizações desassistidas, locale, fuso horário, hostname, NTP) requerem privilégios de root (usa sudo). Adiciona --json a qualquer status ou check para obter saída legível por máquina, apta para scripting.

Subcomandos #

SubcomandoO que fazAções / flags
statusResumo do estado de atualização do sistema.--json
updateAplica agora as atualizações pendentes.--security-only, --reboot-if-needed
checkLista as atualizações pendentes sem as aplicar.--json
reboot-requiredIndica se está pendente um reinício (exit 0 = sim, 1 = não).--json
autoupdateGere as atualizações automáticas desassistidas.enable · disable · status
localeGere o locale do sistema (gera e instala o que for preciso).status · list · set · generate
timezoneMostra ou muda o fuso horário do sistema.status · list · set
hostnameMostra ou muda o hostname (consistente com /etc/hosts).status · set
timesyncGere a sincronização de tempo (NTP).status · enable · disable

Argumentos e flags #

Argumento / flagTipoOnde se aplicaDescrição
--jsonboolstatus · checkEmite o resultado como JSON estruturado em stdout, apto para scripting.
--security-onlyboolupdateAplica apenas as atualizações de segurança.
--reboot-if-neededboolupdateReinicia automaticamente se o sistema o exigir após atualizar.
<locale> obr.string…locale set · locale generateLocale no formato es_ES.UTF-8. Em set é um único (o LANG do sistema); em generate, um ou mais para gerar.
<zona> obr.stringtimezone setFuso horário IANA, por exemplo Europe/Madrid.
<filtro>stringtimezone listFiltro opcional para restringir a listagem de fusos (por exemplo Europe).
<nuevo> obr.stringhostname setNovo hostname: minúsculas a-z, dígitos 0-9 e hífens, máximo 63 caracteres.

Ficheiros e caminhos #

CaminhoConteúdo
/etc/imaxe/os.ymlConfiguração do módulo: atualizações desassistidas, política de atualização, locale, fuso horário, hostname e NTP.
/var/log/imaxe/os.logLog estruturado de cada atualização e alteração de configuração do sistema.
/etc/apt/apt.conf.d/20auto-upgradesConfiguração gerada por autoupdate enable que ativa as atualizações desassistidas.
/etc/apt/apt.conf.d/50unattended-upgradesRegras do unattended-upgrades (o que é atualizado, janela de reinício, lista de exclusão).

Exemplo de os.yml:

/etc/imaxe/os.yml
unattended:
  enabled: true
  security_only: true
  automatic_reboot: false
  automatic_reboot_time: "03:00"
  blacklist: []
update:
  default_security_only: false
locale:
  lang: es_ES.UTF-8
  generate: [es_ES.UTF-8, en_US.UTF-8]
timezone: Europe/Madrid
hostname: ""
ntp:
  enabled: true

Os campos vazios ("") significam «não tocar»: o módulo deixa essa definição exatamente como está. Por isso o hostname vem vazio — a instância geralmente gere-o através do cloud-init.

Códigos de saída e logs #

Cada execução devolve um código que podes verificar com echo $? — útil para encadear em scripts:

0OKOperação concluída com sucesso.
1ERRErro genérico não classificado. Revê o log.
2USAGEArgumentos inválidos ou em falta.

reboot-required usa o código de saída como resposta: 0 significa «sim, é necessário um reinício» e 1 significa «não». Assim podes encadeá-lo diretamente num script sem analisar texto.

Segue o log em direto enquanto depuras:

terminal
$ sudo tail -f /var/log/imaxe/os.log

Resolução de problemas #

SintomaCausa provávelSolução
Sai USAGE (código 2)Falta um argumento obrigatório (locale, fuso ou hostname) ou o formato é inválido.Revê a tabela de argumentos: o hostname só admite a-z0-9 e hífens (≤63).
O hostname volta a mudar após reiniciarO cloud-init reescreve o hostname em cada arranque.Desativa a gestão de hostname no cloud-init, ou deixa o campo em os.yml vazio e não o definas à mão.
locale set é lento ou falhaO pacote locales não está presente e tem de ser instalado/gerado.Tenta de novo com o sistema atualizado (imaxe os update); o módulo instala o locales e gera o locale por si só.
A hora continua erradaA sincronização NTP está desativada.Ativa-a com sudo imaxe os timesync enable e verifica com imaxe os timesync status.
As atualizações desassistidas não se aplicamAs atualizações desassistidas nunca foram ativadas nesta máquina.Executa sudo imaxe os autoupdate enable e confirma com imaxe os autoupdate status.

Ficou bloqueado com o módulo Sistema?

Escreva-nos com a saída de «imaxe <module> status --json» e respondemos rapidamente.

Contactar o suporte