Чтобы бороться с прокрастинацией, я редактирую свой /etc/hosts
файл, добавляя веб-сайты, которые тратят время, и указывая на них localhost
. Однако плоть слаба, и я часто обнаруживаю, что отменяю свои изменения.
Я думал о следующем решении, но не знаю, возможно ли это технически.
Я бы попросил близкого друга прийти, создать новую учетную запись с надежным паролем, которого я не знаю, изменить владельца и права доступа к файлу /etc/hosts
так, чтобы только этот новый пользователь мог изменять этот файл, и чтобы яни кореньбольше не имею к нему доступа.
Вариант использования будет таким: я попрошу своего друга прийти до экзаменационного периода, он изменит файл и введет меры по блокировке прокрастинации, и в то время, когда мне нужно учиться, у меня нет возможности редактировать файл самостоятельно. После окончания экзаменационного периода я прошу его «разблокировать» файл, и я снова могу свободно просматривать его.
решение1
Вы можете заблокировать файл, чтобы даже пользователь root не мог его редактировать.
sudo chattr +i /etc/hosts
Прекратите читать этот ответ, пока не сдадите экзамены :)
Затем вы снова разблокируете файл, используя
sudo chattr -i /etc/hosts
решение2
В конечном счете, если доступен root-доступ, нет надежного способа помешать умному пользователю делать то, что он хочет. Я не думаю, что есть способ сделать это, кроме как отказаться от root-доступа.
решение3
Вы можете настроить другую учетную запись пользователя, которая является обычным пользователем рабочего стола, который не может использовать sudo. Затем попросите своего приятеля зайти и войти в систему под вашим именем в вашей существующей учетной записи, отредактировать файл /etc/hosts, затем сбросить пароль, не сообщая вам его, и выйти из системы.
Тогда вам придется использовать новую учетную запись, у которой нет прав на редактирование /etc/hosts.
Однако вам все равно придется проявить силу воли, чтобы не загружать систему с Live CD/USB.
решение4
В качестве альтернативы, в то же время, когда вы создаете свой /etc/hosts
файл, вы также можете редактировать /etc/sudoers
файл или просто удалить своего пользователя из admin
группы. Сменить группу, вероятно, проще.
Вероятно, вам следует создать защиту, чтобы вы могли снова добавить себя в группу. Я предлагаю добавить что-то в /etc/rc.local
или что-то в скрипт пробуждения (быстрее, чем делать полную перезагрузку).
Если произойдет худшее и вы окажетесь заблокированы, вы можете загрузиться в режиме восстановления (в grub) и использовать консоль root, чтобы вручную добавить своего пользователя обратно в admin
группу.