Por que o Debian define o shell de login da sincronização do usuário como / bin / sync?


14

syncé uma das contas de usuário criadas pelo próprio Debian. Eu estou me perguntando por que o Debian define seu shell de login para em /bin/syncvez de /bin/false. Como o Debian usa essa conta de usuário?

Respostas:


24

Isso está documentado em /usr/share/doc/base-passwd/users-and-groups.txt.gz:

sincronizar

O shell do usuário syncé /bin/sync. Portanto, se sua senha estiver definida como algo fácil de adivinhar (como ""), qualquer pessoa poderá sincronizar o sistema no console, mesmo que não tenha uma conta no sistema.

Este é realmente um artefato histórico, eu não esperaria que um syncusuário fosse configurado dessa maneira hoje em dia. No passado, seria útil ter esse usuário para que pessoas com acesso físico a um console ( por exemplo, em uma sala de servidores ou em um laboratório cheio de estações de trabalho, como você encontraria nas universidades) reduzissem o risco de perda de dados quando encerrar um sistema (para recuperar-se de um processo não autorizado ou simplesmente usar a estação de trabalho, se tivesse sido bloqueada pelo usuário anterior). Os sistemas Unix anteriores ao Debian tendiam a ter um syncusuário e um shutdownusuário com os quais você poderia realmente desligar um sistema corretamente sem saber a rootsenha. (Nas estações Sun SPARC, nós apenas STOPA boot...)

Vale ressaltar, como Peter Cordes mencionou, que outros mecanismos estão disponíveis em muitos sistemas para garantir desligamentos ou reinicializações seguros de um console sem poder se autenticar como root: eventos da ACPI acionados pressionando o botão liga / desliga (que leva a um desligamento limpo), ou CtrlAltDel(o que leva a uma reinicialização limpa). AltSysRqpode ser usado como último recurso para sincronizar, matar, desmontar e reiniciar, mas não é uma reinicialização limpa. Como mencionado pelo JdeBP , ter um syncusuário é uma ideia muito antiga, que remonta pelo menos ao início dos anos 80.


4
Os usuários não devem fazer nada. Os administradores podem configurar o sistema dessa maneira, se quiserem. O contexto histórico é relevante aqui: quando o syncusuário foi adicionado, os combos Alt + SysRq não existiam e era mais provável que um sistema Linux fosse um servidor em algum lugar ou um sistema compartilhado em laboratório, do que um laptop para usuário único ou desktop. Foi útil fornecer uma maneira pelas quais as pessoas com acesso ao console pudessem preparar com segurança um sistema para um desligamento impuro, para que pudessem reiniciar os sistemas sem ter acesso root, reduzindo o risco de perda de dados.
Stephen Kitt

2
Vale ressaltar que, em vez de ter uma shutdownconta, as instalações padrão de algumas (muitas?) Distribuições Linux são configuradas de modo que ctrl + alt + f1 (para acessar um console de texto, caso o VT atual esteja executando uma tela de login gráfica) por ctrl + alt + del aciona um shutdown -r nowou equivalente. Acesso físico = capacidade de acionar uma reinicialização limpa, mesmo sem o SysRQ.
Peter Cordes

1
@ PeterCordes note "Sistemas Unix antes do Debian" - isto é antes de 1993 ;-). Mas sim, nos sistemas atuais, muitas vezes existem outras maneiras de fazer as coisas sem usar syncou shutdownusuários. (Para ser-extra-nit exigente, muitas distros Linux têm o DM em VT1 hoje Alguns nem sequer tem nenhum VTs texto mais.!)
Stephen Kitt

1
quando o syncusuário foi adicionado ... o Linux como uma idéia não existia. Esta convenção remonta ao início dos anos 80, pelo menos.
JdeBP

1
Você deve se lembrar que alguns desses sistemas são de um tempo antes dos computadores "pessoais". Como tal sincronização pode ser para fita ou outra mídia terrivelmente lenta, como token ring, disquetes. Ao mesmo tempo, esses sistemas eram "frágeis" o suficiente para que um ciclo de energia pudesse danificá-los. Portanto, se o seu no-break indicar 5 minutos até a interrupção, você desligará e ignorará a sincronização, para não arruinar uma máquina multimilionária. Esses problemas em grande parte não existem mais.
coteyr
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.