Автозагрузка после загрузки на OpenBSD

Я знаю, что могу создать функцию «автоматический вход с пользователем» на рабочем столе OpenBSD (используя FVWM2 по умолчанию в качестве WM):

pkg_add slim ----- start-stop script # vi /etc/slim #!/bin/sh # # /etc/rc.d/slim: start/stop slim # case $1 in start) /usr/local/bin/slim -d ;; stop) kilall /usr/local/bin/slim ;; restart) $0 stop sleep 6 $0 start ;; *) echo "usage: $0 [start|stop|restart]" esac ----- Start at boot & make it executable # echo "/etc/slim start" >> /etc/rc.local # chmod +x /etc/slim ----- Start fvwm after slim is ok # vi /home/user/.xinitrc /usr/X11R6/bin/fvwm ----- Auto-login the UNIX user "user" # vi /etc/slim.conf default_user user auto_login yes 

Вопрос: Но это занимает слишком много места. Существуют ли какие-либо другие варианты использования, кроме как устанавливать менеджер входа?

Самый простой способ сделать это, вероятно, либо:

  1. Добавить su - <user> в /etc/rc.local

или,

  1. Вместо этого замените getty на оболочку.

Во-первых, вы хотите войти с помощью X? Если вы не регистрируетесь на новом (виртуальном) терминале или консоли? Если вы хотите автоматически войти в систему, я не буду участником такого безумия.

Начнем с рассмотрения X. Существуют два основных способа запуска X: диспетчер отображения или сценарий. Большинство (но не все) диспетчеров дисплея имеют опции autolog (подробности см. В документации вашего диспетчера дисплея). Сценарий осложняется xauth и другими деталями, но может быть значительно упрощен с помощью startx или xinit. К сожалению, это предполагает, что вы уже во-первых, это может быть устранено решениями в следующей части ответа с добавлением сценария входа в систему)

Если вы не используете X или просто не запускаете его, вы можете, конечно, нас в сценариях инициализации или т. П., Но это не настраивает все, что необходимо для управления заданиями, и связывает вашу консоль. Поэтому я бы усердно посмотрел на Гетти. Существует большое количество реализаций и заметок getty. я бы посмотрел на ваш случай использования: mgetty для чего-либо, связанного с последовательными линиями или модемами и runtty для всех задач автоматического входа в систему, не связанных с последовательной строкой. mgetty имеет большое количество опций для каждого возможного варианта использования, включающего последовательную линию. runtty – это особый случай getty для тех случаев, когда вы не хотите вызывать логин.

На X возможно с kdm и, вероятно, (никогда не тестировалось) с gdm. Если вы хотите автологин оболочкой, можете сделать

 su - user 

В rc.local

Если вы хотите сохранить, насколько это возможно, вам не нужно использовать диспетчер дисплеев. Вы можете запустить X вручную, используя rc-скрипты.

Сначала отредактируйте /etc/inittab чтобы он автоматически входил в систему с нужным пользователем. Отредактируйте запись для первого tty следующим образом:

 1:2345:respawn:/sbin/getty -8 38400 tty1 --autologin username 

Затем отредактируйте файл ~/.profile который запустит X. Добавьте строку, подобную этой:

 xinit -- -nolisten tcp 

Наконец, нам нужен файл ~/.xinirc который запускает fvwm:

 #!/bin/bash exec ck-launch-session fvwm