D'une manière ou d'une autre, j'ai réussi à chmoder et à mettre mon ~ dans l'oubli.
Lorsque j'essaie de me connecter via le shell, j'obtiens
bash: ~/.bashrc : Permission denied
Même après (en tant que root ), j'ai couru
chown -hR nroach44 /home/nroach44
et
chmod -R 666 /home/nroach44
ou ( comme nroach44 )
chmod -R 644 /home/nroach44
Aucune de ces commandes ne renvoie d'erreurs.
Aussi:
ls -la /home/nroach44
Renvoie beaucoup de
drw-rw-rw- 1 nroach44 nroach44 4096 --date-- ti:me foldername
De l'aide?
permissions
chmod
chown
NRoach44
la source
la source
/home
devrait êtredrwxrwxr-x
etroot:root
et/home/user
rw rw -- or r-
selon si vous souhaitez que d'autres utilisateurs lisent vos fichiers utilisateurs. Répertoires et fichiers exécutables avecx
. Le mêmeuser
répertoire intérieur ne sera pas un problème si vous avez le groupe = utilisateur (nroach44: nroach44) comme vous semblez l'avoir (je ne donnerais que 0 (---) autorisations aux autres).Réponses:
ou
Cela rendra tous les fichiers de votre répertoire personnel non exécutables. Ce n'était pas une bonne idée;)
Je ne sais pas comment nettoyer ce gâchis, comme solution rapide, vous pouvez essayer de le faire en tant que root:
Cette commande donnera des autorisations d'exécution à tous les fichiers de votre dossier de départ. Cela devrait résoudre vos problèmes immédiats, mais cela pourrait être un cauchemar pour la sécurité.
La meilleure solution consiste à ouvrir un autre compte utilisateur et à y transférer les fichiers et les paramètres un par un.
la source
Les répertoires doivent avoir le bit d'exécution défini pour vous permettre de descendre dans le répertoire. Plain
666
est tout simplement faux, même si vous exécutez en tant que root. Il donne à chacun des autorisations d'écriture.Pour sécuriser les fichiers, exécutez:
Pour rendre les dossiers à nouveau descendables, exécutez:
Remarque: J'ai choisi pour xx0 car certains fichiers peuvent être sensibles et ne pas être lus par d'autres. Juste pour être sauvegardé, supprimez les autorisations de lecture / écriture / exécution pour le monde.
la source
Comme vous semblez avoir des autorisations suffisantes sur ~, vous devez
/home
avoir une autorisation x pour les autres (sudo chmod +rx /home
) et vérifier si les autorisations sont correctes dans le/home/nroach44/.bashrc
fichier.Un autre point, les répertoires devraient avoir des autorisations x pour autoriser leur entrée afin de les corriger tous, vous devez exécuter
sudo chmod -R +X /home/nroach44
.la source
X
+1X
est très utile et j'ai été très heureux de le découvrir aussi ... après avoir longtemps utilisé find !!En effet, vous avez gâché les autorisations de tous les fichiers de votre dossier HOME. S'il vous plaît soyez très prudent lorsque vous jouez avec les autorisations de fichiers, utilisez chmod et chown très soigneusement ou vous pouvez vous retrouver avec un gâchis.
Je pense que vous avez changé les autorisations de tous les fichiers de votre répertoire personnel, donc l'autorisation de bashrc a également été modifiée.
Les autorisations par défaut du script ~ / .bashrc sont
Pour l'expliquer, vous devez avoir à la fois des autorisations de lecture et d'écriture sur le fichier, les autres utilisateurs du groupe d'utilisateurs doivent pouvoir le lire et tous les autres peuvent également le lire.
Alors maintenant, changez les autorisations du script bashrc en utilisant chmod en 644
si les commandes ci-dessus donnent l'autorisation refusée. ensuite
exécuter chown d'abord en tant que sudo
remplacez user1 par votre nom d'utilisateur et usergrp par votre groupe d'utilisateurs par défaut.
Maintenant encore
maintenant, vous aurez des autorisations pour le script basrc, essayez maintenant de vous connecter et vérifiez si vous obtenez d'autres erreurs :)
la source
Les répertoires nécessitent un ensemble de x bits (pour le répertoire, ce bit est considéré comme un bit de recherche) pour s'ouvrir. J'utilise donc l'arborescence pour ne pouvoir obtenir que l'ensemble de dossiers et éviter le cauchemar d'avoir tous les fichiers définis comme exécutables (l'option pour l'arborescence est
-d List directories only.
):Avertissement!!! vous devriez avoir ceci en considération:
utiliser chmod ou chown récursif sur le
/
répertoire racine ou les répertoires système détruira votre système d'exploitation (en fait, tout ce qui est récursif sur le/
répertoire ou les répertoires système est dangereux)ce n'est pas une bonne pratique de sécurité pour définir le volume des autorisations comme ça
la source