[Решено] Атоматический логин в консоли, AutoLogin(X), (debian)

Автор Grig96, 18 января 2017, 12:24:25

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Grig96

У меня стоит Debian 9 + xfce4 (и/или lxde). Переодически мне нужно воспользоватся виртуальной машиной которая запускается в отдельном Х-сервере командой

grig96@kgrig:~$ cat /usr/local/bin/redxp
#!/bin/sh

startx /usr/bin/VirtualBox --startvm "RedXP" --fullscreen -- :1


Проблема в том что когда я обратно переключаюсь на  xfce4 (и/или lxde), оказывается что все мои програмы вместе с Х сервером остановлены и стартует с нуля Менеджер входа (slim or lightdm) и сесия начинается сначала. Когда я работал с гномом таких проблем не было я мог без проблем переключатся с одного х-сервера на другой.

PS. я пробовал и xfce4 и lxde, менял менеджеры входа slim or lightdm.

Я полностю отключил графический менеджер входа, создал файлик

grig96@kgrig:~$ cat ./.bash_login
# Start X - tty1
# Windows XP - tty2

# exec startx


if test $(tty)  = "/dev/tty1"; then
  exec startx
fi

if test $(tty) = "/dev/tty2"; then
  exec redxp
fi



Теперь если я вхожу на 1 консоли у меня запускаются Х с xfce, на второй винда:


grig96@kgrig:~$ cat /usr/local/bin/redxp
#!/bin/sh

#startx /usr/bin/VirtualBox --startvm "RedXP" --fullscreen -- :1
echo -n "Start Windows XP (VirtualBox)? (Y/n) "

read item
case X"$item" in
    X|Xy|XY) echo "Start Virtual machine"
sleep 1
startx /usr/bin/VirtualBox --startvm "RedXP" --fullscreen -- :1
clear
        ;;
    Xn|XN) echo "Virtual machine isn't running"
clear
        exit 0
        ;;
    X*) echo "Incorect input. For start VirtualBox input 'redxp' "
        ;;
esac



Первый вопрос: Как сделать так чтоб когда выходиш с Х или вводиш нет в скрипте для ХР тебя не выбрасывало назад с приглашением заново залогинится, а просто можно было продолжать работать в консоли?

Grig96

#1
Второй вопрос как сделать автологин в консоли? Как написано в этой https://wiki.debian.org/ru/AutoLoginX статье не получается потому что:

grig96@kgrig:~$ ll /etc/ | grep init
drwxr-xr-x  2 root root   4,0K січ 19 13:06 init/
drwxr-xr-x  2 root root   4,0K січ 18 08:52 init.d/
drwxr-xr-x  5 root root   4,0K січ 16 10:55 initramfs-tools/
grig96@kgrig:~$ ll /etc/init/
загалом 44K
-rw-r--r-- 1 root root  278 гру 28  2014 anacron.conf
-rw-r--r-- 1 root root 2,5K чер  2  2015 networking.conf
-rw-r--r-- 1 root root  933 чер  2  2015 network-interface.conf
-rw-r--r-- 1 root root  530 чер  2  2015 network-interface-container.conf
-rw-r--r-- 1 root root 1,8K чер  2  2015 network-interface-security.conf
-rw-r--r-- 1 root root 1,7K бер 24  2013 slim.conf
-rw-r--r-- 1 root root  641 січ  3 16:41 ssh.conf
-rw-r--r-- 1 root root  337 гру 17 02:54 udev.conf
-rw-r--r-- 1 root root  360 гру 17 02:54 udevmonitor.conf
-rw-r--r-- 1 root root  352 гру 17 02:54 udevtrigger.conf
-rw-r--r-- 1 root root  141 чер 13  2016 usb-modeswitch-upstart.conf
grig96@kgrig:~$



собственно файла /etc/inittab нет и где запускаются эти консоли не могу найти :(

Cообщение объединено 19 января 2017, 16:23:25

Автологин делается так (правда кругом и всегда, буду благодарен за разброс по консолям - тс 1 один , 2 второй пользователь)

nano /lib/systemd/system/getty@.service


находим строку

ExecStart=-/sbin/agetty --noclear %I $TERM

дописываем

ExecStart=-/sbin/agetty --noclear -a youruser %I $TERM

youruser меняем на имя вашего юзера

Буду благодарен за помощь с поконсольном автологином, выбросом с консоли при ctrl+alt+backspace (теперь происходит просто перезагрузка Х по кругу, те я их просто не могу остановить)

Grig96

#2
Автологин в консоли (поконсольно) делается так:

cp /etc/systemd/system/getty.target.wants/getty@tty{1,2}.service

файл cp /etc/systemd/system/getty.target.wants/getty@tty1.service это ссылка на /lib/systemd/system/getty@.service, и мы этой командой копируем эту ссылку на консоль на которой нужен атологин(в даном случае 2),далее меняем в /etc/systemd/system/getty.target.wants/getty@tty2.service
ExecStart=-/sbin/agetty --noclear %I $TERM
на
ExecStart=-/sbin/agetty --noclear -a youruser %I $TERM

youruser это имя вашего юзера. Все
если нужен автологин на 1-ой консоли:

cp /etc/systemd/system/getty.target.wants/getty@tty{1,2}.service
rm /etc/systemd/system/getty.target.wants/getty@tty1.service
mv /etc/systemd/system/getty.target.wants/getty@tty{2,1}.service

ну а дальше изменяем файл как написано выше


Grig96

инфа взята отсюда https://blog.sleeplessbeastie.eu/2016/07/25/how-to-automatically-login-user-at-the-console/, автор ище сделал
systemctl daemon-reload
но у меня и так заработало

qupl

Grig96, если Вас не затруднит, пометьте тему решенной, исправив заголовок первого сообщения. И само название я бы поменял на более подходящее теме вопроса. Заранее спасибо.

Grig96

Цитата: qupl от 23 января 2017, 09:33:29
Grig96, если Вас не затруднит, пометьте тему решенной, исправив заголовок первого сообщения.

Просто дописать в конце "Решено"?

qupl

Цитата: Grig96 от 23 января 2017, 11:18:57
Просто дописать в конце "Решено"?
Там где Вы тему изменили впереди вставить [Решено]