76

I deleted my /dev/null. How can I restore it?

4
  • 6
    I once found that /dev/null was replaced with a normal file which only root could write to. I thought for a moment that I would have to reinstall everything but as mentioned below, the recovery is trival if you know the trick. Commented Dec 24, 2011 at 12:15
  • 1
    I managed to remove /dev/null by getting my pipe wrong flipping $ and & around when running an rm command in a script. Ouch! Commented Oct 9, 2015 at 22:28
  • @flickerfly You develop scripts as root? Commented Jan 14, 2020 at 14:02
  • 3
    If the permissions are required, you have to test it eventually. Didn't say it was in production. Commented Jan 14, 2020 at 15:27

3 Answers 3

105
mknod /dev/null c 1 3
chmod 666 /dev/null

Use these command to create /dev/null or use null(4) manpage for further help.

2
  • 5
    For completeness, I'd note that this applies to all linux-based systems; other systems may have different numbers. Commented Dec 21, 2011 at 14:53
  • 14
    mknod -m 0666 /dev/null c 1 3 - same thing but shorter Commented Oct 23, 2017 at 15:06
35

Under many traditional unices, you can recreate devices with their default permissions with the MAKEDEV script. This script is traditionally in /dev but is in /sbin on Ubuntu. Pass it an argument that indicates what devices you want to create; on Ubuntu that's std (you can write MAKEDEV null as well, that creates null as well as a number of other devices).

Under modern Linux systems running udev, you can tell udev to recreate all or some devices based on available drivers and connected hardware, through udevadm trigger:

udevadm trigger --sysname-match=null
3
  • 1
    Is this answer still current? I'm on CentOS 7 and I've just overwritten my /dev/null by mistake, the udevadm trigger --sysname-match=null trick didn't work for me, while mknod -m 0666 /dev/null c 1 3 worked perfectly. Commented Jan 24, 2019 at 10:11
  • @Bozzy I know it worked with the pre-systemd udev. I haven't tried recently, but as far as I know this should still work. If you add --verbose, does it list /sys/devices/virtual/mem/null ? Commented Jan 24, 2019 at 22:49
  • Yes, it lists that. I've tried to overwrite again /dev/null on my dev machine, but strangely enough I'm unable to do it here, so I can't do a more in-depth analysis now... Commented Jan 25, 2019 at 10:18
-1

When I accidentally deleted /dev/null, a simple sudo rebootseemed to restore it. It did cause my desktop icons to go crazy, but no damage seemed to be done If that doesn't the other answers probably will be more help

1
  • Please no. Habitual rebooting is a bad habit; some day it'll bite you. Commented Apr 19 at 3:09

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.