A maneira mais simples de adicionar vários usuários no Cygwin?

3

Instalei o Cygwin, mas tenho problemas para operá-lo convenientemente. Eu gostaria da habilidade de, por exemplo, 'su peter', onde peter tem sua própria preferência para o diretório home, e shell. Eu não me importo com segurança. Eu não preciso que essas "contas de usuário" sejam visíveis para os mecanismos do Windows.

Eu tenho me frustrado em meus esforços. Eu não sei como definir "nenhuma senha requerida" em / etc / passwd. 'su' dá o comando não encontrado.

(BTW, eu instalei o Cygwin em uma máquina diferente há vários anos sem problemas. Estou lutando com recentes "melhorias"?)

Deixe-me esclarecer minha pergunta. Os recursos do / etc / passwd são: * designar um diretório inicial. Eu quero george e peter para ter diretórios diferentes. Eu não me importo se george e peter podem modificar os arquivos uns dos outros ou não * Eu quero george para poder usar um shell diferente de peter. Eu não quero que o goerge precise digitar ** tcsh ** cd / home / george ** fonte .cshrc para cada shell que é gerado. Existe uma maneira fácil de conseguir isso? O recurso do Windows ainda tem o conceito de shell Cygwin preferencial?

    
por James Dow Allen 16.02.2016 / 11:56

1 resposta

4

Eu não me importo com segurança.

I do not need these "user accounts" to be visible to Windows' mechanisms.

Todo usuário do Cygwin deve ter um usuário correspondente do Windows.

Como adiciono um novo usuário no Cygwin?

  1. Crie um usuário do Windows

    • Crie o usuário no Windows (Iniciar > Painel de controle > Gerenciar contas de usuário > Adicionar ...)
  2. Crie o usuário correspondente do Cygwin

    • Execute os seguintes comandos:

      mkpasswd -l > /etc/passwd
      mkgroup -l > /etc/group 
      
    • Isso sincronizará os usuários e grupos do Cygwin com a conta de usuário do Windows.

    • Se você estiver em um domínio, use -d em vez de -l

  3. Defina o shell dos usuários

    • Altere o shell padrão do usuário conforme apropriado, modificando /etc/passwd (que é um arquivo de texto simples

    • O formato do arquivo é o seguinte:

      Username:Password:UID:GID:Info:Home:Shell
      
  4. Modifique as permissões do diretório home do usuário conforme apropriado para suas necessidades

Não sei como definir "nenhuma senha obrigatória"

Se você realmente não se importa com segurança e não quer usar senha,

password -p username

Da documentação de passwd :

Synopsis

passwd [OPTION] [USER]

Options

...

-p, --pwd-not-required no password required for USER.

Fonte passwd

Estou lutando com recentes "melhorias"?

Do Cygwin versão 1.7.34 em diante, /etc/passwd não é mais usado por padrão para gerenciar contas de usuário.

  • Se /etc/passwd existir, ele será usado, mas apenas para atender a instalações e situações especiais existentes.

  • Se /etc/passwd não existir, você ainda poderá criá-lo. Veja mkpasswd e mkgroup para mais informações.

Desde a versão 1.7.34, o Cygwin usa o gerenciamento de usuários nativos do Windows.

  • Active Directory, se estiver disponível,
  • SAM de outra forma.

Você deve usar o novo mecanismo para gerenciar contas de usuários em vez de /etc/passwd :

Starting with Cygwin 1.7.34, Cygwin uses an automatic, internal translation from Windows SID to POSIX UID/GID. This mechanism, which is the preferred method for the SID<=>UID/GID mapping, is described in detail in the Mapping Windows accounts to POSIX accounts.

Prior to Cygwin 1.7.34, the last part of the SID, the so called "Relative IDentifier" (RID), was by default used as UID and/or GID when you created the /etc/passwd and /etc/group files using the mkpasswd and mkgroup tools. These tools as well as reading accounts from /etc/passwd and /etc/group files is still present in recent versions of Cygwin, but you should switch to the aforementioned automatic translation, unless you have very specific needs. Again, see Mapping Windows accounts to POSIX accountsfor the details.

contas, permissões e segurança POSIX :

su fornece o comando não encontrado.

Instale sshd e use ssh username@localhost como su de substituição.

Você pode definir um su alias para facilitar isso.

Why doesn't su work?

The su command has been in and out of Cygwin distributions, but it has not been ported to Cygwin and has never worked. It is currently installed as part of the sh-utils, but again, it does not work.

You should rather install sshd and use ssh username@localhost as a su replacement.

For some technical background into why su doesn't work, read About the 'su' command and related mail archive messages.

Fonte Por que o su não funciona?

    
por 16.02.2016 / 12:51

Tags