66 votes

Comment puis-je modifier mon propre code d'utilisateur ?

Il n'y a qu'un seul utilisateur sur mon système. Comment puis-je modifier son ID utilisateur, qui est de 1000 par défaut ?

Si des étapes supplémentaires sont nécessaires pour éviter de rompre le processus de connexion sur une installation de bureau typique, elles doivent être incluses dans la réponse.

60voto

Mark Harrison Points 77152

Vous pouvez le modifier dans /etc/passwd , /etc/group y /etc/shadow ou vous utilisez l'une des possibilités préférées ci-dessus. Mais - le plus important - vous devez changer la propriété de tous les fichiers appartenant à l'utilisateur.

Par exemple, si l'ancien identifiant de l'utilisateur est 1000 et le nouveau est 5000 :

find / -uid 1000 -exec chown -h 5000 {} +

Et de même pour l'identifiant du groupe (si vous le modifiez également).

find / -gid 1000 -exec chgrp -h 5000 {} +

36voto

Eugeniu Torica Points 217

Le problème est que, comme vous l'avez mentionné, vous ne pouvez pas modifier l'UID de votre utilisateur lorsqu'il est connecté en session. Vous devez utiliser un autre compte utilisateur pour procéder.

Mais il n'est pas nécessaire de créer un nouveau compte utilisateur, de le promouvoir en tant qu'administrateur, de se déconnecter, de se connecter au nouveau compte administrateur, de changer l'UID de votre compte principal, de se déconnecter, de se connecter à votre compte principal puis de supprimer le nouvel utilisateur administrateur ;)

Vous pouvez démarrer dans mode de récupération (c'est une option qui s'affiche au démarrage de votre ordinateur, ou maintenez la touche Majuscule enfoncée juste après la fin des messages du BIOS ; Utilisez ESC sur les machines Dell exécutant OEM-Ubuntu). Vous serez alors connecté à une session root. Être connecté en tant que root et non votre compte utilisateur habituel vous pourrez modifier votre UID.

Comme le mode de récupération ne fonctionne que dans l'interface de ligne de commande, une fois connecté dans une session root, vous devrez :

  1. Utilisez Les instructions de BubbaJ pour remonter le système de fichiers racine en mode lecture-écriture : mount -o remount,rw / .

  2. Utilisez Le commandement de Luis Alvarado : usermod -u NEW_UID your_username .

  3. Suivez Instructions de ddeimeke pour mettre à jour les permissions des fichiers.

  4. Ensuite, redémarrez votre ordinateur ( reboot ), afin que vous puissiez démarrer en mode normal.

30voto

l0b0 Points 7560

Solution complète basée sur @AlexandreP. et @ddeimeke + documentation officielle. Pas de redémarrage nécessaire.

La rÃ?gle de Debian/Ubuntu est que s'il y a un utilisateur jim avec l'ID utilisateur 1001 il y a aussi un groupe jim avec l'ID du groupe 1001 . Cette solution met également à jour ces identifiants de groupe.

  1. Activez le compte root :

    sudo passwd root
  2. Si l'utilisateur est connecté, alors déconnexion (également sur les terminaux virtuels)

  3. Allez à VT1 : Ctrl-Alt-F1

  4. Connectez-vous en tant que root et exécutez ceci avec le nom d'utilisateur et l'ancien/nouvel UID fournis :

    # put the information we need in variables
    username=...
    old_uid=`id -u $username`  # looks up current (old) uid
    new_uid=...
    
    # update the user ID and group ID for $username
    usermod -u $new_uid $username
    groupmod -g $new_uid $username
    
    # update the file ownerships
    # NB: you cannot combine the next two chowns, or files where 
    # only the uid xor the gid matches won't be updated  
    chown -Rhc --from=$old_uid $new_uid /    # change the user IDs
    chown -Rhc --from=:$old_uid :$new_uid /  # change the group IDs
  5. Déconnexion

  6. Connectez-vous en tant que $username

  7. Désactiver le compte root :

    sudo passwd -dl root

11voto

Bob Points 940

Si vous allez dans la console et tapez : usermod --help vous obtiendrez un des paramètres disant :

-u, --uid UID nouvel UID pour le compte utilisateur

donc si vous voulez changer l'UID de l'utilisateur cyrex, faites-le :

usermod -u 1000 cyrex

cela changerait l'uid de cyrex de n'importe quelle valeur qu'il avait avant à 1000

Si vous voulez le faire visuellement, alors faites ceci :

Aller à

SYSTÈME --> ADMINISTRATION --> UTILISATEURS ET GROUPES

Sélectionnez vous dans la liste et cliquez sur PARAMÈTRES AVANCÉS

L'UID se trouve à la fin de cette fenêtre.

2voto

Rob Gray Points 1556
  • Goto Système>>Administration>>Utilisateurs et groupes

alt text

  • Cliquez sur Paramètres avancés et goto Avanzado Dans l'onglet en bas, vous verrez votre identifiant d'utilisateur.
  • Changez-le et cliquez sur ok.
    alt text

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X