Existe apenas um usuário no meu sistema. Como posso alterar seu ID do usuário do padrão 1000?
Se houver etapas adicionais necessárias para evitar a interrupção do processo de login em uma instalação típica da área de trabalho, elas deverão ser incluídas como parte da resposta.
user-management
ændrük
fonte
fonte
Respostas:
O problema é que, como você mencionou, não é possível alterar o UID do usuário quando ele estiver conectado a uma sessão. Você precisa usar outra conta de usuário para continuar.
Mas você não precisa criar uma nova conta de usuário, promovê-la para administrador, sair, fazer login na nova conta de administrador, alterar o UID da sua conta principal, sair, fazer login na sua conta principal e excluir o novo usuário administrador. apenas mude seu UID. ;)
Você pode inicializar no modo de recuperação (é uma opção que aparece quando você inicia o computador ou mantém a tecla Shift pressionada logo após a conclusão das mensagens do BIOS; use ESCem máquinas Dell que executam o OEM-Ubuntu). Isso registrará você em uma sessão raiz. Sendo logado como root e não na sua conta de usuário habitual , você poderá modificar seu UID.
Como o modo de recuperação funciona apenas na interface da linha de comandos, uma vez logado em uma sessão raiz, você precisará:
Use as instruções do BubbaJ para remontar o sistema de arquivos raiz em modo de leitura e escrita :
mount -o remount,rw /
.Use o comando de Luis Alvarado :
usermod -u NEW_UID your_username
.reboot
), para poder inicializar no modo normal.fonte
usermod -u NEW_UID your_username
efind / -uid 1000 -exec chown -h 5000 '{}' \+
, a reinicialização leva a um login da GUI apenas de sessão de adivinhação./etc/login.defs
e/etc/adduser.conf
se tiver alterado seu uid fora das políticas fornecidas nesses arquivos de configuração. Usuários fora dos limites da política não são exibidos no loop de logon, mas você pode alterar a política. Veja esta respostausermod: user user_name is currently used by process 1118
@Alexandre P.Você pode alterá-la em
/etc/passwd
,/etc/group
e/etc/shadow
ou você usar um dos possibilties preferenciais acima. Mas - o mais importante - você precisa alterar a propriedade de todos os arquivos pertencentes ao usuário.Por exemplo, se o ID do usuário antigo for 1000 e o novo for 5000:
E o mesmo para o ID do grupo (se você também o alterar).
fonte
sudo find / -xdev -uid 1000 -exec chown 5000 '{}' \+
; caso contrário, incluiria dados montados (em/mnt
, o que é possivelmente indesejável) e arquivos com os quais você não deve mexer no/proc
e/dev
. Veja este postSolução completa baseada em @AlexandreP. e @ddeimeke + documentação oficial. Não é necessário reiniciar.
A política Debian / Ubuntu é que, se houver um usuário
jim
com ID de usuário1001
, também haverá um grupojim
com ID de grupo1001
. Essa solução também atualiza os IDs de grupo.Habilite a conta raiz :
Efetue login como root e execute-o com o nome de usuário e o UID antigo / novo fornecido:
$username
Desative a conta raiz :
fonte
sudo setfacl -m "u:<NEWUID>:r-x" /media/<USERNAME> sudo setfacl -x "u:<OLDUID>" /media/<USERNAME>
Se você for para o console e digitar:
usermod --help
você receberá um dos parâmetros dizendo:-u, --uid UID novo UID para a conta de usuário
portanto, se você deseja alterar o UID do usuário cyrex, faça:
usermod -u 1000 cyrex
isso mudaria o uid do cyrex de qualquer valor que tivesse antes para 1000
Se você quiser fazer isso visualmente, faça o seguinte:
Vamos para
Selecione você mesmo na lista e clique em CONFIGURAÇÕES AVANÇADAS
O UID está no final dessa janela.
fonte
fonte
Com o KDE: No menu Alterar configurações avançadas do usuário:
Mudar de outro usuário não funciona para 1000, que é o usuário padrão.
você tem que fazer isso manualmente - minha experiência
fonte
Primeiro, você precisa fazer login como root, pelo menos por um tempo, portanto, tornemos isso possível:
Reinicialize, ctrl + alt + f1 para alternar para o console, faça o login como root e faça o seguinte (a propriedade do diretório home será resolvida automaticamente):
Para seus arquivos em locais diferentes do seu diretório pessoal, faça o seguinte:
Exclua e bloqueie a senha da raiz, se desejar. (Eu tendem a mantê-lo):
fonte
Eu segui as instruções do ddeimeke com as seguintes alterações:
sudo su
/etc/shadow
Eu já vi isso mencionado nas outras respostas que você deve inicializar para recuperação ou fazer login como
root
. O meu era uma instalação nova do Ubuntu 14, então eu estava disposto a testar se funcionaria sem fazer login comoroot
. Também estava fazendo isso em uma instância do EC2 sobre SSH.fonte