Недавно у меня была куча записей в моем журнале btmp [из-за сумасшедшего движения с моей стороны], я решил проблему, но теперь я хотел бы очистить этот журнал, я скопировал его куда-то еще для справки, а затем попытался обнулить файл, но безрезультатно. Затем я проверил разрешения для самого файла, и все выглядит правильно? Просто не знаю, почему он не позволит sudo получить доступ к файлу.
user@localhost:~$ sudo cat /dev/null > /var/log/btmp
-bash: /var/log/btmp: Permission denied
user@localhost:~$ ls -a -l /var/log/btmp
-rw-rw---- 1 root utmp 5502336 Aug 20 18:59 /var/log/btmp
Просто ищу какие-то другие идеи ... Я пытался изменить разрешения, а затем изменить их обратно только потому, что. Я также попробовал несколько других способов удалить текст. Но я хочу выяснить, почему это не просто работает. Спасибо за любую помощь!
Ваша команда не использует sudo для записи в файл журнала - это (излишне) использует sudo для кошки/dev/null. Запись (перенаправление вывода) через >
оператор все еще делается как Ваш обычный пользователь.
можно сделать или следующего
sudo sh -c 'cat /dev/null > /var/log/btmp'
или
cat /dev/null | sudo tee /var/log/btmp
однако существует действительно никакой потребности кошке ничего; можно усечь файл одинаково хорошо просто, ничего не перенаправив к нему
sudo -i
> /var/log/btmp
exit
или при помощи truncate
команда
sudo truncate -s0 /var/log/btmp