男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站

Tutorial de Introdu??o ao Systemd: Parte Prática

< Systemd 入門(mén)教程:命令篇

Tutorial de Introdu??o ao Systemd: Parte Prática

Autor: Ruan Yifeng

Data: 8 de mar?o de 2016

No artigo anterior, eu introduzi o Systemd. Comando principal Hoje vou apresentar como usá-lo para realizar algumas tarefas básicas. bg2016030801

1. Iniciar o sistema

Para os softwares que suportam Systemd, durante a instala??o, eles ser?o automaticamente registrados em /usr/lib/systemd/system Adicione um arquivo de configura??o ao diretório. Se você deseja que o software inicie automaticamente ao ligar o computador, execute o comando abaixo (para httpd.service Por exemplo).

O comando acima é equivalente a em /etc/systemd/system Adicionar um link simbólico ao diretório, apontando para /usr/lib/systemd/system dentro httpd.service Arquivo. Isso acontece porque, ao ligar, Systemd Apenas execute. /etc/systemd/system Os arquivos de configura??o no diretório. Isso também significa que, se o arquivo de configura??o modificado for colocado nesse diretório, será possível sobrescrever a configura??o original.

Dois, iniciar o servi?o

Após configurar a inicializa??o automática, o software n?o será iniciado imediatamente, deve-se aguardar a próxima inicializa??o. Se você deseja executar o software agora, deve executar. systemctl start Comando. Após configurar a inicializa??o automática, o software n?o será iniciado imediatamente, deve-se aguardar a próxima inicializa??o. Se você deseja executar o software agora, deve executar systemctl start Comando.

Após a execu??o do comando acima, pode haver falha ao iniciar, portanto, é necessário usar systemctl status Comando para verificar o status do servi?o.

O significado do resultado acima é o seguinte.

Linha Loaded: Localiza??o do arquivo de configura??o, se deve ser configurado para iniciar com o sistema. Linha Ativa: indica que está em execu??o. Linha do PID principal: ID do processo principal Status: O estado atual do software fornecido pela própria aplica??o (neste caso, httpd). Bloco CGroup: Todos os subprocessos da aplica??o Bloco de logs: Logs da aplica??o

Três, interromper o servi?o.

Para encerrar o servi?o em execu??o, é necessário executar. systemctl stop Comando.

有時(shí)候,該命令可能沒(méi)有響應,服務(wù)停不下來(lái)。這時(shí)候就不得不"殺進(jìn)程"了,向正在運行的進(jìn)程發(fā)出 kill Sinal.

Além disso, é necessário executar a reinicializa??o do servi?o. systemctl restart Comando.

Quatro, compreendendo o arquivo de configura??o.

Como um servi?o é iniciado, depende completamente do seu arquivo de configura??o. Abaixo, vamos ver quais conteúdos est?o presentes no arquivo de configura??o.

Como mencionado anteriormente, o arquivo de configura??o é principalmente colocado em /usr/lib/systemd/system índice, também pode estar em /etc/systemd/system índice. Após encontrar o arquivo de configura??o, basta abri-lo com um editor de texto. systemctl cat O comando pode ser usado para ver o arquivo de configura??o, abaixo como sshd.service O arquivo serve como um exemplo, sua fun??o é iniciar um servidor SSH para que outros usuários possam fazer login via SSH.

Pode-se ver que o arquivo de configura??o é dividido em vários blocos, cada um contendo várias pares de chave-valor.

A seguir, explicarei o conteúdo de cada bloco.

Cinco, [Unidade] Bloco: Ordem de inicializa??o e dependências.

Unit do bloco Description O campo fornece uma descri??o simples do servi?o atual. Documentation O campo fornece a localiza??o do documento. As configura??es seguintes s?o a ordem de inicializa??o e as dependências, o que é bastante importante.

After Campo: indica se network.target ou sshd-keygen.service Precisa ser iniciado, ent?o sshd.service Deve ser iniciado após eles.

Correspondentemente, há um. Before campo, defini??o sshd.service Deve ser iniciado antes de quais servi?os. Note que, After e Before O campo envolve apenas a ordem de inicializa??o, sem rela??o de dependência.

Por exemplo, uma aplica??o web precisa de um banco de dados PostgreSQL para armazenar dados. No arquivo de configura??o, ela apenas define que deve iniciar após o PostgreSQL, mas n?o define a dependência do PostgreSQL. Após a implanta??o, por algum motivo, o PostgreSQL precisa ser reiniciado e, durante o período em que o servi?o está parado, essa aplica??o web n?o conseguirá estabelecer a conex?o com o banco de dados. Para definir a rela??o de dependência, é necessário usar Wants campo e Requires Campo.

Wants Campo: Representa sshd.service com sshd-keygen.service 之間存在"弱依賴(lài)"關(guān)系,即如果"sshd-keygen.service"啟動(dòng)失敗或停止運行,不影響 sshd.service Continuar a execu??o.

Requires 字段則表示"強依賴(lài)"關(guān)系,即如果該服務(wù)啟動(dòng)失敗或異常退出,那么 sshd.service Também deve sair.

Aten??o, Wants campo e Requires Os campos envolvem apenas rela??es de dependência, sem rela??o com a ordem de inicializa??o; por padr?o, eles s?o iniciados simultaneamente.

Seis, [Servi?o] Bloco: Comportamento de Início

Service Como definir um bloco para iniciar o servi?o atual.

6.1 Comando de inicializa??o

Muitos softwares possuem seus próprios arquivos de parametros de ambiente, que podem ser usados para EnvironmentFile Leitura de campo.

EnvironmentFile Campo: Especifica o arquivo de parametros do ambiente atual do servi?o. O conteúdo interno desse arquivo key=value Par de chave-valor, pode ser usado. $key na forma, obter no arquivo de configura??o atual.

No exemplo acima, o arquivo de parametros de ambiente do sshd é /etc/sysconfig/sshd Os campos mais importantes no arquivo de configura??o s?o ExecStart 。

ExecStart Campo: define o comando a ser executado ao iniciar o processo.

No exemplo acima, iniciar. sshd o comando executado é /usr/sbin/sshd -D $OPTIONS entre as variáveis $OPTIONS De onde vem. EnvironmentFile O arquivo de parametros de ambiente especificado pelo campo. Existem também outros campos que têm uma fun??o semelhante.

ExecReload Campo: Comando executado ao reiniciar o servi?o

ExecStop Campo: Comando executado ao parar o servi?o.

ExecStartPre Campo: Comando a ser executado antes de iniciar o servi?o

ExecStartPost Campo: Comando a ser executado após o início do servi?o.

ExecStopPost Campo: Comando a ser executado após a interrup??o do servi?o

Por favor, veja o exemplo abaixo.

O arquivo de configura??o acima, na segunda linha. ExecStart Defina como valor nulo, igual a cancelar a configura??o da primeira linha, o resultado da execu??o é o seguinte.

Antes de todas as configura??es de inicializa??o, pode-se adicionar um hífen. - ),表示"抑制錯誤",即發(fā)生錯誤的時(shí)候,不影響其他命令的執行。比如, EnvironmentFile=-/etc/sysconfig/sshd (Observe o hífen após o sinal de igual), o que indica que mesmo que. /etc/sysconfig/sshd O arquivo n?o existe e n?o lan?ará erro.

6.2 Tipo de inicializa??o

Type Defini??o do campo tipo de inicializa??o. Os valores que podem ser definidos s?o os seguintes.

simples (valor padr?o): ExecStart O processo iniciado pelo campo é o processo principal.

forking: ExecStart O campo será preenchido com fork() O processo será iniciado dessa forma, nesse momento o processo pai será encerrado e o processo filho se tornará o processo principal.

oneshot: semelhante a simple mas executa apenas uma vez, o Systemd aguardará sua conclus?o antes de iniciar outros servi?os.

dbus: semelhante a simple mas irá iniciar após aguardar o sinal D-Bus

notificar: semelhante a simple Após o término da inicializa??o, um sinal de notifica??o será enviado, e ent?o o Systemd iniciará outros servi?os.

ocioso: semelhante a simple No entanto, será necessário esperar até que outras tarefas sejam concluídas antes de iniciar este servi?o. Uma das situa??es de uso é para garantir que a saída deste servi?o n?o se misture com a saída de outros servi?os.

No arquivo de configura??o acima, defina o tipo de inicializa??o como oneshot Isso indica que este servi?o só precisa ser executado uma vez, n?o precisa funcionar a longo prazo. Se for encerrado e você quiser reabri-lo em algum momento no futuro, o arquivo de configura??o deve ser modificado da seguinte forma.

No arquivo de configura??o acima, RemainAfterExit Campo definido como yes , indicando que, após a saída do processo, o servi?o continua em execu??o. Assim, uma vez que se usa systemctl stop Comando para parar o servi?o. ExecStop O comando especificado será executado, reativando o touchpad.

6.3 Comportamento de Reinício

Service O bloco possui alguns campos que definem o comportamento de reinicializa??o.

KillMode Campo: Definir como o Systemd deve parar o servi?o sshd.

No exemplo acima, vamos KillMode Definir como process Isso indica que apenas o processo principal deve ser interrompido, sem parar nenhum subprocesso do sshd, ou seja, as sess?es SSH abertas pelos subprocessos ainda permanecem conectadas. Essa configura??o n?o é muito comum, mas é importante para o sshd; caso contrário, ao parar o servi?o, você também encerraria a sess?o SSH que abriu.

KillMode Os valores que podem ser configurados para o campo s?o os seguintes.

grupo de controle (valor padr?o): todos os subprocessos dentro do grupo de controle atual ser?o encerrados.

processo: matar apenas o processo principal

misturado: O processo principal receberá o sinal SIGTERM, enquanto o subprocesso receberá o sinal SIGKILL.

nenhum: Nenhum processo será encerrado, apenas o comando de parar do servi?o será executado.

A seguir é Restart Campo.

Restart Campo: define a forma como o Systemd reinicia após a saída do sshd.

No exemplo acima, Restart Definir como on-failure Qualquer falha inesperada fará com que o sshd seja reiniciado. Se o sshd parar normalmente (por exemplo, executando systemctl stop Comando), ele n?o reiniciará.

Restart Os valores que podem ser configurados para o campo s?o os seguintes.

n?o (valor padr?o): n?o reinicia após sair

on-success: Somente reiniciará quando a saída for normal (código de saída 0).

on-failure: reiniciará apenas em caso de saída anormal (código de saída diferente de 0), incluindo término por sinal e timeout.

on-abnormal: Somente será reiniciado em caso de término do sinal e timeout.

on-abort: reiniciará apenas quando receber um sinal de término n?o capturado.

on-watchdog: reiniciar somente após tempo limite de saída.

Sempre: N?o importa qual seja a raz?o para sair, sempre reinicie.

Para o daemon, recomenda-se definir como on-failure Para aqueles servi?os que permitem saídas com erros, pode-se definir como on-abnormal 。

Finalmente é RestartSec Campo.

RestartSec Campo: indica o número de segundos que o Systemd deve aguardar antes de reiniciar o servi?o. No exemplo acima, está definido para aguardar 42 segundos.

Sete, bloco [Install]

Install Bloco, defina como instalar este arquivo de configura??o, ou seja, como configurá-lo para iniciar automaticamente ao ligar o computador.

WantedBy Campo: indica o Target onde este servi?o está localizado.

Target O significado é grupo de servi?os, que representa um conjunto de servi?os. WantedBy=multi-user.target refere-se a que o Target onde o sshd está localizado é multi-user.target Essa configura??o é muito importante, pois a execu??o systemctl enable sshd.service Quando se trata de comandos, sshd.service um link simbólico, será colocado em /etc/systemd/system Abaixo do índice. multi-user.target.wants Dentro do subdiretório. O Systemd tem um Target de inicializa??o padr?o.

O resultado acima indica que o Target de inicializa??o padr?o é multi-user.target Todos os servi?os neste grupo ser?o iniciados automaticamente. é por isso que systemctl enable A raz?o pela qual o comando pode configurar o início automático é ao usar o Target. systemctl list-dependencies ordens e systemctl isolate Os comandos também s?o muito úteis.

Em geral, há dois tipos comuns de Target: um é multi-user.target , indica o estado do comando de linha para múltiplos usuários; o outro é graphical.target indica o estado do usuário gráfico, que depende de multi-user.target O documento oficial tem uma imagem muito clara. Gráfico de dependências do Target 。

Oito, o arquivo de configura??o do Target.

O Target também tem seu próprio arquivo de configura??o.

Aten??o, o arquivo de configura??o do Target n?o contém o comando de inicializa??o. Os principais campos no resultado acima têm os seguintes significados.

Requires Campo: Requisitos basic.target Executar juntos.

Conflicts Campo: Campo de conflito. Se rescue.service ou rescue.target Executando, multi-user.target N?o pode ser executado, e vice-versa.

After : indicar multi-user.target em basic.target 、 rescue.service 、 rescue.target Depois de iniciar, se eles tiverem algo para iniciar.

AllowIsolate Permitir o uso systemctl isolate Comando para mudar para multi-user.target 。

Nove, reinicie após modificar o arquivo de configura??o.

Após modificar o arquivo de configura??o, é necessário recarregar o arquivo de configura??o e, em seguida, reiniciar os servi?os relacionados.

(Fim)

Informa??es do documento

Declara??o de direitos autorais: Reprodu??o livre - N?o comercial - N?o derivado - Manter atribui??o ( Licen?a Creative Commons 3.0

Data de publica??o: 8 de mar?o de 2016

Você usou recentemente:

Cole??o Menu QQ
男女疯狂一边摸一边做羞羞视频|啊好深好硬快点用力别停动态图|亚洲一区无码中文字幕|特级无码毛片免费视频播放▽|久久狠狠躁免费观看|国内精品久久久久久网站