Si vous avez créé le compte d'utilisateur avec useradd
, vous avez pour tout mettre en place manuellement. C'est pourquoi, lors de la création de comptes d'utilisateurs à partir de la ligne de commande, il est recommandé d'utiliser adduser
dans Ubuntu (et Debian, et autres systèmes basés sur Debian) à la place. Vous pouvez simplement supprimer l'utilisateur avec userdel
ou deluser
et recréez-le avec adduser
. Sinon ...
Fixer l’emplacement du répertoire personnel
Si vous souhaitez conserver le compte d'utilisateur et résoudre le problème, vous devez consulter:
- le nom du répertoire personnel pour lequel le compte utilisateur est configuré pour
- le nom du répertoire que vous avez réellement créé
Celles-ci doivent être exactement les mêmes. Le message d'erreur que vous obtenez avec su -l penner
vous dit qu'ils ne sont pas les mêmes.
Pour vérifier le répertoire d’accueil pour lequel le compte utilisateur est configuré, exécutez cette commande (voir man 5 passwd
et man grep
pour plus d'informations) :
grep penner /etc/passwd
Vous devriez voir une ligne comme celle-ci:
penner:x:1000:1000:Eliah Kagan,,,:/home/penner:/bin/bash
C'est-à-dire que le sixième champ :
-separated (après le cinquième :
) contient le répertoire de base. Si ce n'est pas /home/penner
, cela devrait être. Si le répertoire que vous avez créé pour l'utilisateur n'est pas /home/penner
, il devrait l'être également. Si les deux répertoires sont identiques mais qu'aucun n'est /home/penner
, alors cela pourrait théoriquement fonctionner, mais vous devriez les rendre tous les deux /home/penner
, car beaucoup de logiciels supposent que tous les répertoires personnels de root
users sont /home/username
.
Vous pouvez modifier le répertoire de base de penner
en /home/penner
en exécutant cette commande:
sudo usermod -d /home/penner penner
S'assurer qu'il s'agit d'un répertoire et que l'utilisateur a accès
Si (ou une fois) les noms sont tous les deux /home/penner
, vous devez également vous assurer que l'utilisateur a accès à son propre répertoire personnel. Exécuter:
ls -ld /home/penner
Vous devriez voir quelque chose qui ressemble à ceci (bien que la date et l’heure soient différentes):
drwxr-xr-x 43 penner penner 4096 2012-07-03 06:41 /home/penner
Si au lieu de drwxr-xr-x
, vous avez quelque chose qui commence par -
plutôt que d
, alors vous avez créé un fichier plutôt qu'un répertoire. Supprimez le fichier et créez un répertoire à la place.
Si au lieu du premier penner
vous avez autre chose, alors l’utilisateur ne possède pas son répertoire personnel, alors faites-le posséder:
sudo chown penner /home/penner
- Pour plus d'informations, consultez
man chown
.
Si au lieu de drwxr-xr-x
, il y a des tirets dans les trois caractères suivants après d
, l'utilisateur n'y a pas pleinement accès. Corrige cela comme suit:
sudo chmod u+rwx /home/penner
- Pour plus d'informations, consultez
man chmod
.
( penner
est capable d'exécuter cette commande s'il possède son répertoire personnel, donc si vous préférez, vous pouvez l'exécuter comme suit: sudo -u penner u+rwx /home/penner
)
S'assurer que les autres utilisateurs ne disposent pas d'un accès en écriture sur les couvertures
Si au lieu de drwxr-xr-x
, il y a w
s au lieu de -
s dans les six dernières lettres, les utilisateurs autres que penner
peuvent avoir accès en écriture au répertoire de base de penner
. C'est dangereux (à moins que vous vraiment sachiez ce que vous faites et que vous le souhaitiez de cette façon et que vous ayez mis les choses en place pour que cela ne pose pas de problème). Pour le réparer:
sudo chmod -R go-w /home/penner
Autres valeurs par défaut
Vous pouvez apporter d’autres modifications. Par défaut dans Ubuntu (c'est-à-dire si vous créez un compte utilisateur avec adduser
ou avec un outil graphique que vous n'avez pas):
-
Les répertoires d’accueil disposent d’autorisations en lecture et en écriture pour tout le monde, pas seulement pour l’utilisateur qui les possède. Les utilisateurs peuvent modifier ceci, soit pour tout le répertoire personnel, soit pour tous les fichiers et sous-répertoires qu'il contient. Mais si vous souhaitez utiliser cette valeur par défaut et que vous n'avez ni le deuxième ni le troisième r
et x
in drwxr-xr-x
, exécutez:
sudo chmod 755 /home/penner
( penner
est capable d'exécuter cette commande s'il possède son répertoire personnel, donc si vous préférez, vous pouvez l'exécuter comme suit: sudo -u penner chmod 755 /home/penner
)
-
Chaque utilisateur a son propre groupe, avec le même nom que l'utilisateur, et il s'agit du groupe principal de l'utilisateur. Leur répertoire personnel appartient à ce groupe. C'est la signification du second penner
en drwxr-xr-x 43 penner penner 4096 2012-07-03 06:41 /home/penner
. C'est OK de rompre avec cette valeur par défaut, si vous savez ce que vous faites .Mais si ce n'est pas votre intention de faire les choses différemment, vous devez vous assurer que penner
est configuré de cette façon, car certaines identités de groupes primaires possibles pour un utilisateur ou des propriétaires de groupes sur le répertoire personnel de l'utilisateur / p>
Exécutez groups penner
. (Voir man groups
pour plus d'informations.) Vous devriez voir quelque chose comme ça :
penner : penner adm dialout cdrom plugdev lpadmin sambashare
Ne vous inquiétez pas si ce n'est pas tout à fait comme ça. J'y arriverai bientôt. Au lieu de cela, regardez le premier mot après le :
. C'est le nom du groupe principal de l'utilisateur. En supposant que vous souhaitiez qu'il soit penner
, assurez-vous que c'est le cas. Si ce n'est pas le cas, changez-le:
sudo usermod -g penner penner
Si vous obtenez une erreur indiquant que le groupe penner
n’existe pas, vous devrez le créer avec cette commande (puis relancer la commande ci-dessus):
sudo addgroup penner
- Pour plus d'informations, consultez
man addgroup
. (Si vous préférez, vous pouvez également utiliser la commande groupadd
pour créer groupes.)
-
Lorsque vous avez exécuté groups penner
, vous avez peut-être obtenu une liste de groupes considérablement plus courte que mon penner : penner adm dialout cdrom plugdev lpadmin sambashare
. Pour les utilisateurs de postes de travail, adm
, dialout
, cdrom
, plugdev
, lpadmin
et sambashare
fournissent des capacités que les utilisateurs de bureau doivent généralement posséder. Par conséquent, sauf si vous avez une raison de faire autrement, penner
devrait être dans ces groupes. Ce sont des groupes principaux pas , donc ils sont définis différemment. En supposant que penner
ne soit dans aucun de ces groupes et que vous souhaitiez que penner
soit présent dans tous ces groupes, exécutez cette commande:
sudo usermod -a -G adm,dialout,plugdev,lpadmin,sambashare penner
Si cela vous intéresse, voici ce que tous ces groupes veulent dire:
(Source: Privilèges , dans le wiki de la documentation Ubuntu.)
Rendre l'utilisateur un administrateur
Si vous ne voulez pas que penner
soit administrateur, vous n'avez probablement pas besoin de faire autre chose. Vous pouvez vérifier si penner
est un administrateur avec groups penner
. Si ni admin
ni sudo
ne sont répertoriés, alors penner
n'est pas un administrateur.
Si vous souhaitez que penner
soit un administrateur, ajoutez penner
à celui de ces groupes. (Vous pouvez aussi ajouter penner
aux deux, s'ils existent tous les deux.) Vous pouvez accomplir cela en exécutant ces deux commandes séparément - si l'un des deux réussit, vous avez fait de penner
un administrateur:
sudo usermod -a -G admin penner
sudo usermod -a -G sudo penner
- La raison pour laquelle il y a deux groupes est que, avant Ubuntu 12.04 LTS, les administrateurs étaient dans le groupe
admin
. Depuis Ubuntu 12.04 LTS, les administrateurs sont dans le groupe sudo
. Mais si votre système 12.04 LTS est mis à niveau depuis une version précédente (et cela devrait s'appliquer aux versions ultérieures d'Ubuntu, telles que 12.10 lors de sa sortie, à partir d'Ubuntu 11.10 ou antérieur), les administrateurs sont membres des deux sudo
et admin
. Généralement, si l'un de ces groupes ne confère pas de capacités administratives, il n'existe tout simplement pas, donc exécuter les deux commandes ci-dessus (séparément, pas comme sudo usermod -a -G admin,sudo penner
) est généralement un moyen sûr et efficace de rendre penner
an administrateur.