たとえば、次のセッションがあります。
ls -l /usr/share/xsessions/
-rw-r--r-- 1 root root 268 май 20 2017 cinnamon2d.desktop
-rw-r--r-- 1 root root 155 май 20 2017 cinnamon.desktop
-rw-r--r-- 1 root root 86 авг 6 2011 lightdm-xsession.desktop
sudo systemctl set-default multi-user.target
GUIを無効にした後(再起動後)、デスクトップの1つを手動で実行したいと思います。
どうすればいいですか?
PS内のディストリビューション:
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-7-amd64
Architecture: x86-64
答え1
Xorg &
DISPLAY=:0 exec $(awk -F = '/^Exec/{print $2}' /usr/share/xsessions/cinnamon2d.desktop)
または実行可能なbashスクリプトで:
#! /bin/bash
SESSDIR=/usr/share/xsessions
test ! -e "$SESSDIR/$1" && echo "Need a valid session to start, [$SESSDIR/$1] doesn't exist" && exit
pgrep Xorg > /dev/null || Xorg &
DISPLAY=:0 exec $(awk -F = '/^Exec/{print $2}' "$SESSDIR/$1")
Xorg &
Debian 9 では sudoers に変更しsudo Xorg &
、自分を sudoers に追加する必要があります。そうでなければすべての作品予想通り。