17

i was trying to run

sudo rm -r ./tmp

but instead typed

sudo rm -r /tmp

Will it be fixed by running?

sudo mkdir /tmp

if i do what permissions should i give it?

ps: i didnt log out of my system yet

3 Answers 3

31

I can't think of a reason why this shouldn't work. On my system, the permissions are set by:

sudo chmod 1777 /tmp

(drwxrwxrwxt)

1
  • I rebooted my system after deleting the /tmp folder and now it is not getting past lightdm.
    – Juzer Ali
    Dec 5, 2012 at 4:49
10

You should run the following commands to restore the tmp folder.

sudo -i
# You now have a root prompt and do not need to continue typing sudo
mkdir /tmp
chmod 1777 /tmp
exit

Then you sould be all good

1
  • 1
    I think that exiting the root prompt after the steps would be worth mentioning.
    – zxcdw
    Aug 22, 2012 at 0:34
4

To add to Alex's answer, you can do both those commands at the same time using the -m or --mode option for mkdir(1), which specifies the mode for the created directory:

-m, --mode=MODE   set file mode (as in chmod), not a=rwx - umask

So the command would be:

sudo mkdir -m 1777 /tmp

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .