Latest web development tutorials

processo de inicialização do sistema Linux

Quando Linux inicia vamos começar a ver um monte de informações.

processo de inicialização do sistema Linux não é tão complicado como imaginávamos, o processo pode ser dividido em cinco etapas:

  • inicialização do kernel.
  • Execute o init.
  • inicialização do sistema.
  • Criação do terminal.
  • sistema de login do usuário.

inicialização do kernel

Quando o computador está ligado a alimentação, antes de BIOS POST, as configurações da BIOS de acordo com o dispositivo de inicialização (geralmente um disco rígido) para iniciar.

Depois que o sistema operacional para assumir o hardware, primeiro leia o diretório do arquivo do kernel / boot.

bg2013081702

Executar o init

processo init é o ponto de partida para todos os processos do sistema, você pode compará-lo com os nossos antepassados ​​todos os processos do sistema, e não o processo, o sistema não será iniciado qualquer processo.

programa init primeiro é a necessidade de ler o arquivo de configuração / etc / inittab.

bg2013081703

Run Nível

Muitos programas exigem start-up. Estes são chamados de "serviço" (serviço) no Windows, no Linux é chamado de "daemon" (daemon).

Um processo init grande tarefa é executar o programa de inicialização.

No entanto, situações diferentes precisam lançar programas diferentes, como quando usado como um servidor, você precisa para começar a Apache, como a área de trabalho não é necessário.

Linux permite diferentes ocasiões, atribuir diferentes programa de arranque, o que é chamado de "nível de execução" (nível de execução). Isto é, quando ativado de acordo com "nível de execução" para determinar qual o programa que você deseja executar.

bg2013081704

sistema Linux tem sete níveis executado (nível de execução):

  • Execute Nível 0: desligamento do sistema, o nível de execução padrão do sistema não pode ser definido como 0, ou não pode iniciar corretamente
  • Execute Nível 1: estado operacional de usuário único, privilégios de root para manutenção do sistema, o acesso remoto é proibida
  • Executar o nível 2: estado multi-usuário (não NFS)
  • Execute Nível 3: estado multi-user completa (com NFS), após o desembarque no modo de linha de comando do console
  • Executar Nível 4: O sistema não utiliza, retenção
  • Execute o nível 5: Console X11, iniciar sessão para o modo GUI gráfica
  • Execute nível 6: um desligamento normal do sistema e reiniciar, o nível de execução padrão 6 não está definido, ou não pode iniciar corretamente

inicialização do sistema

Tal linha no arquivo de configuração de inicialização: si :: sysinit: /etc/rc.d/rc.sysinit ele chama /etc/rc.d/rc.sysinit executado e rc.sysinit é um script shell bash é a conclusão de um número de trabalho de inicialização do sistema, rc.sysinit é importante para executar um script de todos os níveis deve ser executado em primeiro lugar.

É principalmente o trabalho são: ativar a partição swap, verificar o disco, carregar os módulos de hardware e outras tarefas prioritárias.

l5:5:wait:/etc/rc.d/rc 5

Esta linha representa os parâmetros para executar /etc/rc.d/rc,/etc/rc.d/rc 5 é um script Shell que aceita 5 como um parâmetro para executar diretório /etc/rc.d/rc5.d/ Todos os script de inicialização rc no, / etc / rc.d / rc5.d / diretório esses scripts de inicialização são realmente parte do arquivo de conexão, em vez de um script de inicialização verdadeira rc, scripts de inicialização verdadeira rc são, na verdade /etc/rc.d/init.d/ colocado sob o diretório.

Esses scripts de inicialização rc tem uso semelhante, eles são geralmente capaz de aceitar start, stop, restart, status e outros parâmetros.

O script de inicialização /etc/rc.d/rc5.d/ rc geralmente K ou no documento anexo S no início, no fim de iniciar o roteiro, vai começar no início do parâmetro S para executar.

E se encontrarmos o script correspondente existe há K inicia conexão, e tem sido no estado de execução das (arquivo / var / lock / subsys / abaixo como um símbolo), em seguida, a primeira parada é para acabar com estes parâmetros lançou guardian processo e, em seguida, re-run.

Isso é feito para garantir que quando o init altera os níveis, todos os daemons são reiniciados.

Quanto ao que daemon é executado em cada classe, os usuários podem chkconfig ou a configuração em "Serviços do Sistema" no conjunto de linha.

bg2013081705

Estabelecimento do terminal

Rc termina, volte para o init. Em seguida, o ambiente básico do sistema foi configurado, vários daemons já começaram.

inicialização abrirá próximos seis terminais, de modo que o sistema de login do usuário. Inittab nas seis linhas seguintes que definem seis terminais:

1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

Do acima exposto pode ser visto nos níveis de execução 2,3,4,5 são executados programa mingetty vai reaparecer, programa mingetty pode abrir o terminal, o modo de ajuste.

Ao mesmo tempo, ele irá exibir uma tela de login de texto, a interface é o que vemos muitas vezes a tela de login na tela de login solicita que o usuário digite um nome de usuário, e o usuário será digitado pelo usuário como um parâmetro para o programa de login para verificar a identidade do usuário.


sistema de login do usuário

Em geral, de login do usuário de três maneiras:

  • (1) de login linha de comando
  • (2) de login ssh
  • (3) autenticação gráfica
bg2013081706

Para gráfica nível de usuário de execução 5, o logon através de uma tela gráfica de login. Após o login bem-sucedido pode ir diretamente para o KDE, Gnome e outro gerenciador de janelas.

O artigo é principalmente sobre o caso ou o texto login: Quando vemos tela de login mingetty, podemos inserir um nome de utilizador e senha para entrar no sistema.

processo de verificação de conta Linux é de login, login recebe mingetty vieram nome de usuário como o parâmetro nome de usuário.

Então o login nome do usuário serão analisados: Se o nome de usuário não é a raiz, e não há arquivo / etc / nologin, o arquivo de login nologin de saída, em seguida, sair.

Isso impede que usuário não-raiz é normalmente utilizado para a manutenção do sistema. Somente o / etc / securetty registrado no terminal para permitir o login do usuário root, se o arquivo não existir, a raiz pode entrar em qualquer terminal.

Arquivo / etc / usertty para o usuário fazer restrições de acesso adicionais, se o arquivo não existe, não há outras restrições.


Mudar o modo de modo gráfico e em modo texto

Linux fornece seis janela de terminal de comando predefinido Vamos login.

Nossa login padrão é a primeira janela, que é tty1, as seis janelas estavam tty1, tty2 ... tty6, você pode pressionar Ctrl + Alt + F1 ~ F6 para alternar entre elas.

Se você instalar uma interface gráfica, o padrão é para entrar na interface gráfica, então você pode pressionar Ctrl + Alt + F1 ~ F6 para inserir uma das interface de janela comandos.

Quando você entrar na interface de janela de comando e, em seguida, voltar para a interface gráfica, basta pressionar Ctrl + Alt + F7 na parte de trás.

Se você usar a máquina virtual VMware, a tecla de atalho de comando para alternar para a janela Alt + Espaço + ~ F1 F6. Se você pressionar Alt + Shift + F6 chave Ctrl + ~ F1 na interface gráfica para a janela de comando.

bg2013081707

desligamento Linux

No campo de linux usado principalmente em servidores, raramente encontrado operações de desligamento. Afinal de contas, um serviço executado em um servidor são infinitas, exceto sob circunstâncias especiais, será forçado a encerrar.

seqüência de encerramento correta é: sysnc> desligamento> reinicialização> impasse

comando de desligamento é: desligamento, você pode olhar para a documentação homem desligamento ajuda.

Por exemplo, você pode executar o seguinte desligamento comando:

sync 将数据由内存同步到硬盘中。

shutdown 关机指令,你可以man shutdown 来看一下帮助文档。例如你可以运行如下命令关机:

shutdown –h 10 ‘This server will shutdown after 10 mins’ 这个命令告诉大家,计算机将在10分钟后关机,并且会显示在登陆用户的当前屏幕中。

Shutdown –h now 立马关机

Shutdown –h 20:25 系统会在今天20:25关机

Shutdown –h +10 十分钟后关机

Shutdown –r now 系统立马重启

Shutdown –r +10 系统十分钟后重启

reboot 就是重启,等同于 shutdown –r now

halt 关闭系统,等同于shutdown –h now 和 poweroff

Para resumir, se é para reiniciar o sistema ou desligar o sistema, é preciso primeiro executar o comando de sincronização, os dados na memória são gravados no disco.

comando de encerramento tem comando shutdown -h now deter poweroff e init 0, reinicie o sistema tem shutdown -r agora reiniciar init 6.