web-dev-qa-db-fra.com

Comment réinitialiser les autorisations par défaut pour / etc?

Par erreur, j'ai modifié les permissions pour /etc. Maintenant, cela me donne le message d'erreur suivant:

bash: /etc/bash.bashrc: Permission denied  
I have no name!@chandan-Inspiron-5520:~$ Sudo /etc/init.d/Apache2 restart  
Sudo: unable to stat /etc/sudoers: Permission denied  
Sudo: no valid sudoers sources found, quitting  
Sudo: unable to initialize policy plugin  
5
Satish Prasad

Ce que je ferais:

$ Sudo su
chown -R root:root /etc
find /etc -type f -exec chmod 644 {} +
find /etc -type d -exec chmod 755 {} +
chmod 755 /etc/init.d/* /etc/rc.local /etc/network/* /etc/cron.*/*
chmod 400 /etc/ssh/ssh*key

Peut-être que ce n'est pas suffisant, mais sans aucune sauvegarde, c'est un bon début.

5
Gilles Quenot

Prochaine étape après la recommandation de Sputnik, vous pouvez procéder comme suit: lors de la nouvelle installation d’un serveur Ubuntu avec la même version que votre serveur endommagé, exécutez la procédure suivante:

find /etc -type f -executable | awk '{printf("chmod a+x %s\n",$0);}' > setexec.sh

Puis importez le script setexec.sh (en utilisant wget ou ftp) et exécutez-le sur le serveur défectueux. sur ubuntu 13.04, cette étape a restauré la plupart des fonctionnalités.

4
Vincent Lalieu