Автоматический сброс учетной записи пользователя в исходное состояние в Ubuntu 24.04
В этом руководстве показано, как автоматически сбрасывать учетную запись пользователя в Ubuntu после каждой перезагрузки. Все пользовательские файлы, расширения, личные данные приложений, история просмотров будут полностью удалены, и все будет выглядеть так, как было при создании.
Это полезно для компьютеров общественного пользования. Сброс учетной записи пользователя позволяет всегда входить в Ubuntu со всем по умолчанию, без каких-либо остатков от последней загрузки.
Все личные данные приложения, пользовательские файлы и личные настройки хранятся в домашнем каталоге пользователя. Итак, обычно удалите домашний каталог и создайте его заново, чтобы восстановить исходное состояние учетной записи пользователя.
Чтобы сделать это вручную, вы можете просто запустить две приведенные ниже команды одну за другой, используя другую учетную запись администратора (соответственно замените USERNAME):
sudo rm -rf /home/USERNAME
sudo mkhomedir_helper USERNAME
Приведенные ниже шаги расскажут вам, как автоматизировать процесс при каждой загрузке.
ПРИМЕЧАНИЕ. Следующие шаги необходимо выполнить под учетной записью администратора с разрешением sudo!
Шаг 1. Автоматическое удаление каталога пользователей при загрузке
Для Debian, Ubuntu, Fedora и многих Linux, использующих systemd
, существует служба systemd-tmpfiles
, которая может автоматически создавать, удалять и очищать изменчивые и временные файлы и каталоги. .
1. Сначала откройте окно терминала, нажав Ctrl+Alt+T
на клавиатуре в Ubuntu. Когда он откроется, запустите команду, чтобы создать файл конфигурации и отредактировать текстовый редактор Gnome по умолчанию:
sudo gnome-text-editor /etc/tmpfiles.d/remove_guest_home.conf
Замените gnome-text-editor
соответствующим системным текстовым редактором или используйте вместо него nano, который работает в большинстве случаев.
2. Когда файл откроется, добавьте строки ниже и сохраните его (для nano нажмите Ctrl+S для сохранения и Ctrl+X для выхода).
# Path Mode UID GID Age Argument
R /home/guest - - - - -
Замените «гость» на имя пользователя, которое вы хотите сбросить! Если вы его не помните, введите команду ls /home
для просмотра списка.
После этого ваша система будет удалять каталог «/home/guest» при каждой загрузке, чтобы очистить пользовательские данные. Если вы не отключили службы systemd systemd-tmpfiles
(systemd-tmpfiles-setup.service, systemd-tmpfiles-clean.service).
Шаг 2. Создайте сценарий для повторного создания домашнего каталога пользователя.
После этого запустите команду ниже в окне терминала, чтобы создать (и отредактировать) скрипт:
sudo editor /usr/local/sbin/create_guest_home.sh
Затем впишите в него следующие строки:
#!/bin/bash
mkhomedir_helper guest
Замените guest именем пользователя, домашний каталог которого вы хотите воссоздать. Затем нажмите Ctrl+S, чтобы сохранить файл, и Ctrl+X, чтобы выйти.
Наконец, запустите команду, чтобы сделать скрипт исполняемым:
sudo chmod u+x /usr/local/sbin/create_guest_home.sh
Шаг 3. Создайте службу для автоматического запуска сценария.
После создания сценария вы можете создать службу systemd, чтобы сценарий запускался автоматически и заново создавал чистый домашний каталог пользователя.
1. Сначала выполните команду в окне терминала, чтобы создать (и отредактировать) служебный файл:
sudo editor /etc/systemd/system/create-guesthome.service
2. Затем напишите в него следующие строки:
[Unit]
Description=Create home directory for Guest account
After=systemd-tmpfiles-setup.service
After=systemd-tmpfiles-setup-dev.service
After=systemd-tmpfiles-clean.service
[Service]
Type=oneshot
ExecStart=/usr/local/sbin/create_guest_home.sh
[Install]
WantedBy=multi-user.target
3. Затем нажмите Ctrl+S, чтобы сохранить файл службы, и Ctrl+X, чтобы выйти. Наконец, запустите команду, чтобы включить службу.
systemctl enable create-guesthome.service
Теперь вы можете войти в систему с этой учетной записью пользователя (в моем случае guest
), внести некоторые изменения (например, просматривать веб-страницы, создавать/удалять файлы, настраивать макет рабочего стола) и, наконец, перезагрузить компьютер для проверки.
Кроме того,, если вы хотите сбросить учетную запись пользователя, но оставить некоторые файлы постоянными при каждой загрузке, попробуйте создать соответствующие файлы в каталоге /etc/skel
. Все файлы в этом каталоге будут автоматически скопированы в домашний каталог пользователя при создании.
Отменить :
Чтобы отменить все изменения, просто откройте окно терминала.
Затем отключите службу, выполнив команду:
systemctl disable create-guesthome.service
Также удалите служебный файл, если хотите:
sudo rm /etc/systemd/system/create-guesthome.service
И удалите файл конфигурации systemd-tmpfiles
, который автоматически очищает домашний каталог пользователя, а также скрипт для воссоздания чистого домашнего каталога:
sudo rm /etc/tmpfiles.d/remove_guest_home.conf /usr/local/sbin/create_guest_home.sh