Есть ли способ заменить /dev/null реальным файлом?
Есть ли способ заменить /dev/null
устройство с обычным файлом (или устройство, которое добавляет файл, возможно)? Сколько данных записано в него?
(Этот немного странный вопрос частично вдохновлен этим..)
3 ответа
Я настоятельно рекомендую не делать этого... в зависимости от вашей системы полученный файл может очень быстро расти. Тем не менее, довольно легко повеселиться с виртуальной машиной.
Я опишу, как это сделать во время одного сеанса, то есть все должно быть так, как было после перезагрузки.
Очевидно, что это должно быть сделано как root.
Во-первых, вам нужно удалить текущий / dev / null:
rm /dev/null
Затем создайте файл замены с тем же именем и соответствующими правами доступа:
touch /dev/null
chmod 666 /dev/null
Теперь вы можете визуализировать то, что отправлено в / dev / null:
tail -f /dev/null
Наконец, чтобы вернуть / dev / null к его нормальному поведению:
rm /dev/null
mknod /dev/null c 1 3
chmod 666 /dev/null
На OpenBSD:
cd /dev
sudo mv null blah
sudo touch null
sudo chmod a+rwx null
echo foo > /dev/null
Некоторые Linux AFAIK имеют специальные файловые системы устройств - devfs; Удев - это может усложнить эту простую процедуру.
Вы можете удалить /dev/null и коснуться его как root, а затем восстановить его разрешения.
Специальное устройство исчезнет, и вы получите файл.
наслаждаться.