How to reset default permissions for /etc? [duplicate]
By mistake I have made permission changes for /etc
. Now it's giving me the following error message:
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
What I would do :
$ 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
Maybe it's not sufficient, but without any backup, that's a good start.
As a next step after sputnik recommendation, you could do this: On a fresh install of a ubuntu server with the same version as your broken one, run this:
find /etc -type f -executable | awk '{printf("chmod a+x %s\n",$0);}' > setexec.sh
Then import the script setexec.sh (using wget or ftp) and execute it on the broken server. on ubuntu 13.04 this step restored most of the functionalities.