Автологин в CentOS

Abdula аватар

Иногда возникает необходимость осуществить автологин в консольном CentOS без применения дополнительных утилит.
Ниже предлагаются решения для CentOS 6.x.


Обычный беспарольный вход в Gnome:

Дополнить секцию [daemon] конфига /etc/gdm/custom.conf двумя строками:

[daemon]
AutomaticLoginEnable=true
AutomaticLogin=user1


Автологин для с автозапуском приложения в фоне:

1. Сделать копию файла /etc/init/tty.conf под названием autologin.conf и заменить в нем строку:

exec /sbin/mingetty $TTY
 на
exec /sbin/mingetty --autologin abdula $TTY

2. Создать файл с /etc/init/start-ttys.override с таким содержанием:

start on stopped rc RUNLEVEL=[2345]

env ACTIVE_CONSOLES=/dev/tty[1-6]
env X_TTY=/dev/tty1
task
script
        . /etc/sysconfig/init
        for tty in $(echo $ACTIVE_CONSOLES); do
                [ "$RUNLEVEL" = "5" -a "$tty" = "$X_TTY" ] && continue
                if [ "$tty" = "/dev/tty1" -o "$tty" = "/dev/tty2" ]; then
                        initctl start autologin TTY=$tty
                else
                        initctl start tty TTY=$tty
                fi
        done
end script
Между точкой и /etc/sysconfig/init должен быть символ пробела.

3. Добавить в /home/abdula/.bash_profile две строки:

[[ $(tty) = "/dev/tty1" ]] && exec startx -- vt1
[[ $(tty) = "/dev/tty2" ]] && exec screen /bin/bash -c "bash rtorrent"
Между между -- и vt1 должен быть символ пробела.

В результате в консоли-1 запустятся X-ы, а в консоли-2 - приложение rtorrent

RSS-материал