На разных профилях разный автологин
orb 31 декабря, 2013 - 21:11
Как можно реализовать такой функционал?
Подробнее нужно так:
- в grub есть 2 профиля, назовем их "gentoo 1" и "gentoo 2", автоматически стартует профиль "gentoo 1" и настроен автологин пользователя "smith"
- если выбрать второй вариант загрузки "gentoo 2", то должен произойти автологин пользователя "Ivan"
»
- Для комментирования войдите или зарегистрируйтесь
Варианта два:1. В init
Варианта два:
1. В init сценарии в initramfs написать код, который будет подменять или изменять файл настроек с автологином вашего DM.
2. Написать скрипт (сценарий запуска), который будет править настройки автологина вашего DM. Скрипт нужно добавить на уровень запуска и указать, что его нужно запускать перед DM или что он нужен для запуска DM.
Естественно вам нужно разобраться где хранятся настройки автологина вашего DM.
В случае кода в initramfs можно как жёстко указать, что в случае одного initramfs изменять настройки под определённого пользователя, в случае другого initramfs под другого определённого пользователя, а можно сделать разбор параметров, переданных ядру.
А в случае сценария запуска можно сделать только отслеживание параметров, переданных ядру.
Параметры ядра можно смотреть через /proc/cmdline:
Дополнение: Когда заходит
Дополнение:
Когда заходит второй пользователь то монтируется truecrypt диск, вот так: slicks.name/linux/integraciya-truecrypt-v-gdm.html
/etc/gdm/Init/Default
if !(echo `mount` | grep -q "/home/пользователь type")
then
truecrypt путь-к-образу-Truecrypt /home/пользователь
fi
Ну значит пишите стартовый
Ну значит пишите стартовый сценарий и код монтирования шифрованного диска выносите так же в него.
Ну и код можно переписать:
А куда подключить мой
А куда подключить мой скрипт?
gdm нету, а XFCE устоена иначе, я не нашел куда мой скрипт подключить.
Это нужен этап до логина пользователя, но что бы была возможность ввода пароля (пароли у пользователя и диска разные)
kostik87 написал(а): Ну
Ещё есть rc.local.
Значит озаботьтесь возможностью не вводить пароль, а использовать, например ключ. Ну либо выполняйте монтирование диска уже после входа в X сессию, но, скажем сделав пользователя судоером, если нужны права root, и дав ему выполнять от root только одну команду.
ключ не имеет никакого
ключ не имеет никакого смысла, если ноутбук сопрут, то ключ тоже сопрут и тогда смысла шифровать вообще нет, поэтому только пароль и обязательно разный с обычным юзером.
куда конктерно можно встроится? Раньше у меня было в /etc/gdm/Init/Default но сейчас стоит не ГНОМ, а fxce
Значит "встраивайтесь" в
Значит "встраивайтесь" в соотетствующий файл используемого вами DM (Desktop Manager`а).
куда конктерно можно
куда конктерно можно встроится?
Вам не ясно из написанного,
Вам не ясно из написанного, что в зависимости от используемого вами DM (Desktop Manager`а) файл будет отличаться?
Что бы посмотреть какие файлы относятся к вашему DM воспользуйтесь утилитой equery из состава пакета gentoolkit для получения списка файлов, которые относятся к пакету с используемым вами DM ну и анализу их содержимого.
Более точный ответ вы можете узнать сами последовав совету выше.
паранойя наступаэ
Для этого придумали смарт-карты с паролями. Надо её не забывать брать хранить отдельно от ноута, ну а если украли - то она заблокируется при переборе. Ну и всякие милые трояны в BIOS'ах, с разным функционалом блокирования.
Чем плохо мое решение? Лично
Чем плохо мое решение?
Лично мне не нравятся карты и другие разблокировки которые можно тоже украсть, или потеря карты, что мне потом делать?
Вообщем в топку всякие ключи и флешки когда есть отличный 100% вариант, да еще и покупать ничего не нужно
Цитата:Чем плохо мое
Тем, что нужно править файлы, которые принадлежат пакету и после его обновления внесённые вами изменения будут затёрты.
Я вам уже написал про rc.local (local), этот сценарий выполняет некоторые скрипты при старте и выключении системы, точнее при своём запуске и выключении.
Более подробно здесь: http://wiki.gentoo.org/wiki/Local.d
Так же как я вам уже сказал можете написать стартовый сценарий с нуля сами, поместить его в /etc/init.d и добавить на уровень запуска посредством rc-update. В этом сценарии пишите тот код, который вам нужен.
orb написал(а): Чем плохо мое
Я просто отвечал на высказывание "сертификат не вариант", без высказывания мнения о твоём решении.
Несомненно
Чуть раскрою тему с
Чуть раскрою тему с local.d
Есть папка /etc/local.d/
В нее можно класть скрипты вида имя_скрипта.start
Они будут запущены после boot/sysinit.
В скрипте можно смотреть с какими параметрами стартовало ядро. Например:
Или, в более общем виде:
Вместо cp можно использовать ln -s или еще что-то по вкусу.
Ну, а LoginUser через grub передается просто как параметр типа:
kernel /boot/kernel-genkernel-xxx-gentoo root=/dev/ram0 real_root=/dev/sda3 LoginUser=smith