RHCSA Series YUM Gerenciamento de pacotes, automatizando tarefas com Cron e Monitoring System Logs - Parte 10

RHCSA Series YUM Gerenciamento de pacotes, automatizando tarefas com Cron e Monitoring System Logs - Parte 10

Neste artigo, revisaremos como instalar, atualizar e remover pacotes em Red Hat Enterprise Linux 7. Também abordaremos como automatizar tarefas usando Cron, e terminará este guia explicando como localizar e interpretar o sistema registra arquivos com o foco de ensiná -lo por que todas essas são habilidades essenciais para cada administrador do sistema.

RHCSA: Gerenciamento de pacotes YUM, agendamento de empregos Cron e monitoramento de logs - Parte 10

Gerenciando pacotes via yum

Para instalar um pacote junto com todas as suas dependências que ainda não estão instaladas, você usará:

# yum -y install package_name (s) 

Onde package_name (s) Representar pelo menos um nome de pacote real.

Por exemplo, para instalar httpd e mlocate (nessa ordem), digite.

# yum -y instalar httpd mlocate 

Observação: Que a carta y No exemplo acima, ignora as solicitações de confirmação que Yum apresenta antes de executar o download e a instalação reais dos programas solicitados. Você pode deixar de fora se quiser.

Por padrão, yum instalará o pacote com a arquitetura que corresponde à arquitetura do sistema operacional, a menos que seja substituído pela anexação da arquitetura do pacote ao seu nome.

Por exemplo, em um 64 bits sistema, pacote de instalação yum instalará o x86_64 versão do pacote, enquanto que pacote de instalação yum.x86 (se disponível) instalará o 32 bits um.

Haverá momentos em que você deseja instalar um pacote, mas não sei o nome exato. O Pesquise tudo ou procurar As opções podem pesquisar os repositórios atualmente ativados para obter uma determinada palavra -chave no nome do pacote e/ou em sua descrição, respectivamente, respectivamente.

Por exemplo,

# yum pesquisa de pesquisa 

pesquisará os repositórios instalados por pacotes com o Word Log em seus nomes e resumos, enquanto

# yum pesquisa todo log 

procurará a mesma palavra -chave na descrição do pacote e url campos também.

Depois que a pesquisa retornar uma listagem de pacotes, convém exibir mais informações sobre algumas delas antes de instalar. É quando o informações a opção será útil:

# Yum Info LogWatch 
Informações sobre o pacote de pesquisa

Você pode verificar regularmente se há atualizações com o seguinte comando:

# yum check-upate 

O comando acima retornará todos os pacotes instalados para os quais uma atualização está disponível. No exemplo mostrado na imagem abaixo, apenas RHEL-7-SERVER-RPMS tem uma atualização disponível:

Verifique se há atualizações do pacote

Você pode atualizar esse pacote sozinho com,

# yum update rhel-7-server-rpms 

Se houver vários pacotes que podem ser atualizados, Atualização yum vai atualizar todos eles de uma vez.

Agora o que acontece quando você sabe o nome de um executável, como ps2pdf, Mas não sei qual pacote fornece? Você pode descobrir com yum o que fornece “*/[executável]”:

# yum o que fornece “*/ps2pdf” 
Encontre o pacote pertence a qual pacote

Agora, quando se trata de remover um pacote, você pode fazê -lo com YUM Remova o pacote. Fácil, hein? Isso mostra que Yum é um gerente de pacotes completo e poderoso.

# yum remover httpd 

Leia também: 20 comandos yum para gerenciar o gerenciamento de pacotes RHEL 7

Bom e velho rpm simples

RPM (também conhecido como RPM Package Manager, ou originalmente Redhat Package Manager) também pode ser usado para instalar ou atualizar pacotes quando eles vêm em forma de autônomo .RPM pacotes.

É frequentemente utilizado com o -Uvh sinalizadores para indicar que ele deve instalar o pacote se ainda não estiver presente ou tentar atualizá -lo se for instalado (-VOCÊ), produzindo uma saída detalhada (-v) e uma barra de progresso com marcas de hash (-h) Enquanto a operação está sendo realizada. Por exemplo,

# pacote RPM -UVH.RPM 

Outro uso típico de RPM é produzir uma lista de pacotes atualmente instalados com código> rpm -qa (abreviação de consulta tudo):

# rpm -qa 
Consulta todos os pacotes de RPM

Leia também: 20 comandos de rpm para instalar pacotes no RHEL 7

Tarefas de agendamento usando Cron

Linux e outros sistemas operacionais do tipo UNIX incluem uma ferramenta chamada Cron que permite que você agende tarefas (eu.e. comandos ou scripts de shell) para executar em uma base periódica. Cron verifica cada minuto o /var/spool/cron diretório de arquivos que são nomeados após contas em /etc/passwd.

Ao executar comandos, qualquer saída é enviada para o proprietário do Crontab (ou para o usuário especificado no Mailto variável de ambiente no /etc/crontab, se existir).

Arquivos Crontab (que são criados digitando Crontab -e e pressionando Digitar) Tenha o seguinte formato:

Entradas de Crontab

Assim, se queremos atualizar o banco de dados de arquivos local (que é usado por locate para encontrar arquivos por nome ou padrão) a cada segundo dia do mês em 2:15, Precisamos adicionar o seguinte Crontab entrada:

15 02 2 * * /bin /updatedb 

A entrada de Crontab acima diz: “Run /Bin /UpdatedB no segundo dia do mês, todos os meses do ano, independentemente do dia da semana, às 2:15 da manhã”. Como tenho certeza que você já adivinhou, o símbolo de estrela é usado como um personagem curinga.

Depois de adicionar um trabalho de Cron, você pode ver que um arquivo chamado root foi adicionado dentro /var/spool/cron, Como mencionamos anteriormente. Esse arquivo lista todas as tarefas que o Crond Daemon deve ser executado:

# ls -l/var/spool/cron 
Verifique todos os trabalhos de Cron

Na imagem acima, o Crontab do usuário atual pode ser exibido usando o CAT /var/spool/cron/root ou,

# Crontab -l 

Se você precisar executar uma tarefa em uma base mais fina (por exemplo, duas vezes por dia ou três vezes por mês), Cron também pode ajudá-lo a fazer isso.

Por exemplo, para executar /meu script no 1º e 15º de cada mês e envie qualquer saída para /dev/null, você pode adicionar dois Crontab entradas da seguinte forma:

01 00 1 * * /myscript> /dev /null 2> & 1 01 00 15 * * /my /script> /dev /null 2> & 1 

Mas, para que a tarefa seja mais fácil de manter, você pode combinar as duas entradas em uma:

01 00 1,15 * * /my /script> /dev /null 2> & 1 

Seguindo o exemplo anterior, podemos correr /meu/outro/script no 1:30 No primeiro dia do mês a cada três meses:

30 01 1 1,4,7,10 */my/outro/script>/dev/null 2> & 1 

Mas quando você precisa repetir uma certa tarefa a cada "xMinutos, horas, dias ou meses, você pode dividir a posição certa pela frequência desejada. A seguir Crontab A entrada tem exatamente o mesmo significado que o anterior:

30 01 1 */3 */my/outro/script>/dev/null 2> & 1 

Ou talvez você precise executar um determinado trabalho em uma frequência fixa ou depois das botas do sistema, por exemplo. Você pode usar uma das seguintes strings em vez dos cinco campos para indicar o tempo exato em que deseja que seu trabalho seja executado:

@Reboot Run quando o sistema botas. @Yearly Corre uma vez por ano, o mesmo que 00 00 1 1 *. @Monthly roda uma vez por mês, o mesmo que 00 00 1 * *. @Weekly Corre uma vez por semana, o mesmo que 00 00 * * 0. @Daily corre uma vez por dia, o mesmo que 00 00 * * *. @Hourly corre uma vez por hora, o mesmo que 00 * * * * *. 

Leia também: 11 comandos para agendar trabalhos de cron no RHEL 7

Localização e verificação de toras

Os logs do sistema estão localizados (e girados) dentro do /var/log diretório. De acordo com o padrão de hierarquia do sistema de arquivos Linux, este diretório contém diversos arquivos de log, que são gravados ou um subdiretório apropriado (como auditoria, httpd, ou samba na imagem abaixo) pelos daemons correspondentes durante a operação do sistema:

# ls /var /log 
Localização de arquivos de log Linux

Outros logs interessantes são o DMESG (contém todas as mensagens do buffer do anel do kernel), seguro (tentativas de conexão de logs que requerem autenticação do usuário), mensagens (mensagens em todo.

Os registros são muito importantes, pois permitem que você tenha um vislumbre do que está acontecendo o tempo todo no seu sistema e o que aconteceu no passado. Eles representam uma ferramenta inestimável para solucionar problemas e monitorar um servidor Linux e, portanto, são frequentemente usados ​​com o Comando de cauda -f Para exibir eventos, em tempo real, como eles acontecem e são gravados em um log.

Por exemplo, se você quiser exibir relacionado ao kernel Eventos, digite o seguinte comando:

# cauda -f/var/log/dmesg 

O mesmo se você quiser ver o acesso ao seu servidor da Web:

# cauda -f/var/log/httpd/acesso.registro 

Resumo

Se você sabe como gerenciar com eficiência pacotes, agendar tarefas e onde procurar informações sobre a operação atual e passada do seu sistema, você pode garantir que você não terá surpresas com muita frequência. Espero que este artigo tenha ajudado você a aprender ou refrescar seu conhecimento sobre essas habilidades básicas.

Não hesite em nos deixar uma linha usando o formulário de contato abaixo se tiver alguma dúvida ou comentário.