2.9.9.11 Создание и настройка собственного default-профиля пользователя при помощи SKEL
Скачать документ Настройка браузера по умолчанию для всех пользователей
Примеры создания default-профиля пользователя
Настройка ярлыков рабочего стола
Создание шаблонов документов
Установка плагинов в браузеры
Настройка профиля skel
Создание профиля Wine
Настройка профиля skel с wine
Для запуска домашнего каталога при первом создании пользователя в РЕД ОС используется каталог /etc/skel/. В нем можно задавать и хранить настройки новых пользователей, в частности для этого используется файл .bashrc. Доступ к файлу осуществляется с правами администратора.
Вы можете подробнее ознакомиться с возможностью создания эталонного пользователя, просмотрев наши обучающие видео:
на RuTube — Создание универсального профиля пользователя;
в Яндекс.Дзен — Создание универсального профиля пользователя;
в VK Видео — Создание универсального профиля пользователя.
На наших каналах вы также сможете найти много другой полезной информации.
В файле .bashrc в секции «# User specific aliases and functions» необходимо прописать функции и настройки, которые будут применяться к каждому новому пользователю.
nano /etc/skel/.bashrc # .bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # User specific environment if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]] then PATH="$HOME/.local/bin:$HOME/bin:$PATH" fi export PATH # Uncomment the following line if you don't like systemctl's auto-paging feature: # export SYSTEMD_PAGER= # User specific aliases and functions alias cls=clear alias diskspace='df -h' alias data
После сохранения внесенных изменений можно создавать нового пользователя (создание новых пользователей осуществляется с правами суперпользователя) следующей командой:
adduser <имя_пользователя>
С помощью данной команды будет создан новый профиль пользователя, параметры для которого будут взяты из папки /etc/skel/.
Каталог /skel определен в файле /etc/default/useradd.
nano /etc/default/useradd # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes
Местоположение SKEL по умолчанию можно установить любое, которое удобно. Также можно изменить и базовый домашний каталог HOME на любой другой.
Настройка браузера по умолчанию для всех пользователей
Добавьте в файл /etc/skel/.bashrc в секцию «# User specific aliases and functions» следующую команду (в зависимости от необходимого вам браузера):
Яндекс.Браузер:
if ! [ $(xdg-settings get default-web-browser | grep yandex) ]; then xdg-settings set default-web-browser yandex-browser-beta.desktop; fi
Opera:
if ! [ $(xdg-settings get default-web-browser | grep opera) ]; then xdg-settings set default-web-browser opera.desktop; fi
Vivaldi:
if ! [ $(xdg-settings get default-web-browser | grep vivaldi) ]; then xdg-settings set default-web-browser vivaldi-stable.desktop; fi
После сохранения внесенных изменений каждый новый созданный пользователь будет использовать указанный вами браузер, как браузер по умолчанию.
Примеры создания default-профиля пользователя
Настройка ярлыков рабочего стола
На Рабочем столе можно создать необходимые пользователям для работы ярлыки. Проще всего создать ярлыки через «Главное меню» – выбрать нужное приложение, нажать ПКМ – «Переместить на Рабочий стол».
Создание шаблонов документов
Можно создать шаблоны, например, макеты договоров, презентаций и отчетов. Для этого в офисном пакете необходимо создать и сохранить частично заполненные документы в папку ~/Шаблоны.
Проверьте, что созданные шаблоны доступны из контекстного меню при нажатии ПКМ по Рабочему столу.
Установка плагинов в браузеры
В качестве примера будет установлен плагин Госуслуг.
Установка стандартная, перейдите по ссылке и нажмите кнопку «Установить».
Настройка профиля skel
Необходимо создать файл, который будет служить для изменения старых путей пользователя на новые.
Обратите внимание на строку WHO="/home/user"
, вместо /home/user – пропишите путь до вашего домашнего каталога.
nano ~/.reconfigure_profile.sh
#!/bin/bash
WHO="/home/user"
NEW_NAME=$(whoami)
grep -rlE "$WHO" ~ > ~/.output_grep
while read line; do
sed -i "s|$WHO|/home/$NEW_NAME|g" "$line";
done < ~/.output_grep
rm -rf ~/.output_grep
Далее необходимо произвести синхронизацию необходимых каталогов домашнего пользователя с /etc/skel, для этого создайте скрипт:
nano ~/sync_path.sh
WHO="/home/user"
mkdir -p /etc/skel/.mozilla/ /etc/skel/.config/
cp -rfu $WHO/.{local,pki,redoswelcome}/ /etc/skel/ 2>/dev/null || :
cp -rfu $WHO/{Видео,Документы,Загрузки,Изображения,Музыка,Общедоступные,Рабочий\ стол,Шаблоны}/ /etc/skel/ 2>/dev/null || :
cp -rfu $WHO/.mozilla/{extensions,plugins}/ /etc/skel/.mozilla/ 2>/dev/null || :
cp -rfu $WHO/.config/{caja,caja-actions,chromium,dconf,mate,mate-session}/ /etc/skel/.config/ 2>/dev/null || :
cp -rfu $WHO/.config/{monitors.xml,user-dirs.dirs} /etc/skel/.config/ 2>/dev/null || :
cp -rfu $WHO/.{reconfigure_profile.sh,bash_logout,bash_profile,bashrc} /etc/skel/ 2>/dev/null || :
Запустите созданный скрипт (с правами администратора):
bash ./sync_path.sh
Отредактируйте файл /etc/skel/.bashrc, чтобы при первом входе нового пользователя произошел вызов вашего скрипта. В конец файла допишите:
if [ -f ~/.reconfigure_profile.sh ]; then
bash ~/.reconfigure_profile.sh
rm -rf ~/.reconfigure_profile.sh
fi
Чем больше будет размер /etc/skel, тем дольше будет происходить создание нового пользователя.
Для проверки работоспособности создайте нового пользователя:
useradd skeleton passwd skeleton
Выйдите из текущей сессии и авторизуйтесь под учетной записью нового пользователя.
Рабочий стол и Домашняя папка успешно созданы.
Проверьте браузер на наличие плагина Госуслуг:
Создание профиля Wine
В данном примере будет произведена базовая инициализация wine на примере notepad.
Перейдите в сеанс пользователя root:
su -
и установите wine и winetricks командой:
dnf install wine winetricks
После установки в Главном меню появится раздел Wine, который включает в себя несколько программ, в том числе notepad.
Настройка профиля skel с wine
Необходимо создать файл, который будет служить для изменения старых путей пользователя на новые.
Обратите внимание на строку WHO="/home/user"
, вместо /home/user – пропишите путь до вашего домашнего каталога.
nano ~/.reconfigure_profile.sh
#!/bin/bash
WHO="/home/user"
NEW_NAME=$(whoami)
grep -rlE "$WHO" ~ > ~/.output_grep
while read line; do
sed -i "s|$WHO|/home/$NEW_NAME|g" "$line";
done < ~/.output_grep
rm -rf ~/.output_grep
NAME=$(sed -e 's|\"||g' <<< $(sed -e 's|.*\"USERNAME\"\=\"||g' <<< $(grep -rnE '"USERNAME"="' ~/.wine)))
grep -rlE '\\{2}'$NAME'\\{2}' ~/.wine | xargs sed -i 's|\\\\'$NAME'\\\\|\\\\'$NEW_NAME'\\\\|g'
grep -rlE '\\{2}'$NAME'\"' ~/.wine | xargs sed -i 's|\\\\'$NAME'\"|\\\\'$NEW_NAME'\"|g'
grep -rlE '"="'$NAME'"' ~/.wine | xargs sed -i 's|\"\=\"'$NAME'\"|\"\=\"'$NEW_NAME'\"|g'
mv ~/.wine/drive_c/users/$NAME ~/.wine/drive_c/users/$NEW_NAME
ln -sf ~/.wine/drive_c/users/$NEW_NAME/Desktop ~/Рабочий\ стол
ln -sf ~/.wine/drive_c/users/$NEW_NAME/Documents ~/Документы
ln -sf ~/.wine/drive_c/users/$NEW_NAME/Downloads ~/Загрузки
ln -sf ~/.wine/drive_c/users/$NEW_NAME/Music ~/Музыка
ln -sf ~/.wine/drive_c/users/$NEW_NAME/Pictures ~/Изображения
ln -sf ~/.wine/drive_c/users/$NEW_NAME/Videos ~/Видео
Далее необходимо произвести синхронизацию необходимых каталогов домашнего пользователя с /etc/skel, для этого создайте скрипт:
nano ~/sync_path.sh
WHO="/home/user"
mkdir -p /etc/skel/.mozilla/ /etc/skel/.config/
cp -rfu $WHO/.{local,pki,redoswelcome,wine}/ /etc/skel/ 2>/dev/null || :
cp -rfu $WHO/{Видео,Документы,Загрузки,Изображения,Музыка,Общедоступные,Рабочий\ стол,Шаблоны}/ /etc/skel/ 2>/dev/null || :
cp -rfu $WHO/.mozilla/{extensions,plugins}/ /etc/skel/.mozilla/ 2>/dev/null || :
cp -rfu $WHO/.config/{caja,caja-actions,chromium,dconf,mate,mate-session}/ /etc/skel/.config/ 2>/dev/null || :
cp -rfu $WHO/.config/{monitors.xml,user-dirs.dirs} /etc/skel/.config/ 2>/dev/null || :
cp -rfu $WHO/.{reconfigure_profile.sh,bash_logout,bash_profile,bashrc} /etc/skel/ 2>/dev/null || :
Запустите созданный скрипт (с правами администратора):
bash ./sync_path.sh
Отредактируйте файл /etc/skel/.bashrc, чтобы при первом входе нового пользователя произошел вызов вашего скрипта. В конец файла допишите:
if [ -f ~/.reconfigure_profile.sh ]; then
bash ~/.reconfigure_profile.sh
rm -rf ~/.reconfigure_profile.sh
fi
Чем больше будет размер /etc/skel, тем дольше будет происходить создание нового пользователя.
Для проверки работоспособности создайте нового пользователя:
useradd skeleton passwd skeleton
Выйдите из текущей сессии и авторизуйтесь под учетной записью нового пользователя.
Рабочий стол и Домашняя папка успешно созданы.
Проверьте браузер на наличие плагина Госуслуг:
Префикс wine также будет скопирован вместе с пунктом notepad в контекстном меню.
Дата последнего изменения: 09.09.2024
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.