View previous topic :: View next topic |
Author |
Message |
Sabaton Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
Joined: 02 Mar 2019 Posts: 190
|
Posted: Mon Apr 19, 2021 10:52 am Post subject: [gelöst] etc-update - Frage zu "etc/init.d/xdm" |
|
|
Hallo liebes Gentoo-Forum,
ich habe ein Problem wo ich nicht weiterkomme und das Gentoo-Gastsystem nicht mehr bootet.
Code: | gentoo /home/peter # etc-update
Scanning Configuration files...
The following is the list of files which need updating, each
configuration file is followed by a list of possible replacement files.
1) /etc/conf.d/display-manager (1)
2) /etc/init.d/xdm (1)
Please select a file to edit by entering the corresponding number.
(don't use -3, -5, -7 or -9 if you're unsure what to do)
(-1 to exit) (-3 to auto merge all files)
(-5 to auto-merge AND not use 'mv -i')
(-7 to discard all updates)
(-9 to discard all updates AND not use 'rm -i'): |
/etc/conf.d/display-manager
Code: | GNU nano 5.3 /etc/conf.d/display-manager
# We always try and start X on a static VT. The various DMs normally default
# to using VT7. If you wish to use the xdm init script, then you should ens>
# that the VT checked is the same VT your DM wants to use. We do this check>
# ensure that you haven't accidentally configured something to run on the VT
# in your /etc/inittab file so that you don't get a dead keyboard.
CHECKVT=7
# What display manager do you use ? [ xdm | gdm | sddm | gpe | lightdm | e>
# NOTE: If this is set in /etc/rc.conf, that setting will override this one.
DISPLAYMANAGER="sddm" |
/etc/init.d/xdm
Code: | #!/sbin/openrc-run
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License, v2
# This is here to serve as a note to myself, and future developers.
#
# Any Display manager (gdm,kdm,xdm) has the following problem: if
# it is started before any getty, and no vt is specified, it will
# usually run on vt2. When the getty on vt2 then starts, and the
# DM is already started, the getty will take control of the keyboard,
# leaving us with a "dead" keyboard.
#
# Resolution: add the following line to /etc/inittab
#
# x:a:once:/etc/X11/startDM.sh
#
# and have /etc/X11/startDM.sh start the DM in daemon mode if
# a lock is present (with the info of what DM should be started),
# else just fall through.
#
# How this basically works, is the "a" runlevel is a additional
# runlevel that you can use to fork processes with init, but the
# runlevel never gets changed to this runlevel. Along with the "a"
# runlevel, the "once" key word means that startDM.sh will only be
# run when we specify it to run, thus eliminating respawning
# startDM.sh when "xdm" is not added to the default runlevel, as was
# done previously.
#
# This script then just calls "telinit a", and init will run
# /etc/X11/startDM.sh after the current runlevel completes (this
# script should only be added to the actual runlevel the user is
# using).
#
# Martin Schlemmer
# aka Azarah
# 04 March 2002
depend() {
need localmount xdm-setup
# this should start as early as possible
# we can't do 'before *' as that breaks it
# (#139824) Start after ypbind and autofs for network authentication
# (#145219 #180163) Could use lirc mouse as input device
# (#70689 comment #92) Start after consolefont to avoid display corruption
# (#291269) Start after quota, since some dm need readable home
# (#390609) gdm-3 will fail when dbus is not running
# (#366753) starting keymaps after X causes problems
after bootmisc consolefont modules netmount
after readahead-list ypbind autofs openvpn gpm lircmd
after quota keymaps
before alsasound
# Start before X
use consolekit dbus xfs
}
setup_dm() {
local MY_XDM
MY_XDM=$(echo "${DISPLAYMANAGER}" | tr '[:upper:]' '[:lower:]')
# Load our root path from profile.env
# Needed for kdm
PATH=${PATH}:$(. /etc/profile.env; echo "${ROOTPATH}")
NAME=
case "${MY_XDM}" in
kdm|kde)
EXE=/usr/bin/kdm
PIDFILE=/run/kdm.pid
;;
entrance*)
EXE=/usr/sbin/entrance
PIDFILE=/run/entrance.pid
;;
gdm|gnome)
# gdm-3 and above has different paths
if [ -f /usr/sbin/gdm ]; then
EXE=/usr/sbin/gdm
PIDFILE=/run/gdm/gdm.pid
START_STOP_ARGS="--background"
AUTOCLEAN_CGROUP="yes"
else
EXE=/usr/bin/gdm
PIDFILE=/run/gdm.pid
fi
[ "${RC_UNAME}" != "Linux" ] && NAME=gdm-binary
;;
wdm)
EXE=/usr/bin/wdm
PIDFILE=
;;
gpe)
EXE=/usr/bin/gpe-dm
PIDFILE=/run/gpe-dm.pid
;;
lxdm)
EXE=/usr/sbin/lxdm-binary
PIDFILE=/run/lxdm.pid
START_STOP_ARGS="--background"
;;
lightdm)
EXE=/usr/sbin/lightdm
PIDFILE=/run/lightdm.pid
START_STOP_ARGS="--background"
;;
sddm)
EXE="/usr/bin/sddm"
START_STOP_ARGS="-m --background"
PIDFILE=/run/sddm.pid
;;
*)
# first find out if there is such executable
EXE="$(command -v ${MY_XDM} 2>/dev/null)"
PIDFILE="/run/${MY_XDM}.pid"
# warn user that he is doing sick things if the exe was not found
if [ -z "${EXE}" ]; then
echo "ERROR: Your XDM value is invalid."
echo " No ${MY_XDM} executable could be found on your system."
fi
;;
esac
if ! [ -x "${EXE}" ]; then
EXE=/usr/bin/xdm
PIDFILE=/run/xdm.pid
if ! [ -x "/usr/bin/xdm" ]; then
echo "ERROR: Please set your DISPLAYMANAGER variable in /etc/conf.d/xdm,"
echo " or install x11-apps/xdm package"
eend 255
fi
fi
}
# Check to see if something is defined on our VT
vtstatic() {
if [ -e /etc/inittab ] ; then
grep -Eq "^[^#]+.*\<tty$1\>" /etc/inittab
elif [ -e /etc/ttys ] ; then
grep -q "^ttyv$(($1 - 1))" /etc/ttys
else
return 1
fi
}
start() {
local EXE NAME PIDFILE AUTOCLEAN_CGROUP
setup_dm
if [ -f /etc/.noxdm ]; then
einfo "Skipping ${EXE##*/}, /etc/.noxdm found or \"nox\" bootparam passed."
rm /etc/.noxdm
return 0
fi
ebegin "Setting up ${EXE##*/}"
# save the prefered DM
save_options "service" "${EXE}"
save_options "name" "${NAME}"
save_options "pidfile" "${PIDFILE}"
save_options "start_stop_args" "${START_STOP_ARGS}"
save_options "autoclean_cgroup" "${AUTOCLEAN_CGROUP:-no}"
if [ -n "${CHECKVT-y}" ] ; then
if vtstatic "${CHECKVT:-7}" ; then
if [ -x /sbin/telinit ] && [ "${SOFTLEVEL}" != "BOOT" ] && [ "${RC_SOFTLEVEL}" != "BOOT" ]; then
ewarn "Something is already defined on VT ${CHECKVT:-7}, will start X later"
telinit a >/dev/null 2>&1
return 0
else
eerror "Something is already defined on VT ${CHECKVT:-7}, not starting"
return 1
fi
fi
fi
/etc/X11/startDM.sh
eend 0
}
stop() {
local curvt retval
retval=0
if [ -t 0 ]; then
if type fgconsole >/dev/null 2>&1; then
curvt=$(fgconsole 2>/dev/null)
else
curvt=$(tty)
case "${curvt}" in
/dev/ttyv[0-9]*) curvt=${curvt#/dev/ttyv} ;;
*) curvt= ;;
esac
fi
fi
local myexe myname mypidfile myservice
myexe=$(get_options "service")
myname=$(get_options "name")
mypidfile=$(get_options "pidfile")
myservice=${myexe##*/}
yesno "${rc_cgroup_cleanup:-no}" || rc_cgroup_cleanup=$(get_options "autoclean_cgroup")
[ -z "${myexe}" ] && return 0
ebegin "Stopping ${myservice}"
if start-stop-daemon --quiet --test --stop --exec "${myexe}" 2>/dev/null; then
start-stop-daemon --stop --exec "${myexe}" --retry TERM/5/TERM/5 \
${mypidfile:+--pidfile} ${mypidfile} \
${myname:+--name} ${myname}
retval=${?}
fi
# switch back to original vt
if [ -n "${curvt}" ]; then
if type chvt >/dev/null 2>&1; then
chvt "${curvt}"
else
vidcontrol -s "$((curvt + 1))"
fi
fi
eend ${retval} "Error stopping ${myservice}"
return ${retval}
}
# vim: set ts=4 :
|
/etc/conf.d/xdm (von Gentoo-Erstinstallation)
Code: | GNU nano 5.3 /etc/conf.d/xdm
# We always try and start X on a static VT. The various DMs normally default
# to using VT7. If you wish to use the xdm init script, then you should ens>
# that the VT checked is the same VT your DM wants to use. We do this check>
# ensure that you haven't accidentally configured something to run on the VT
# in your /etc/inittab file so that you don't get a dead keyboard.
CHECKVT=7
# What display manager do you use ? [ xdm | gdm | sddm | gpe | lightdm | e>
# NOTE: If this is set in /etc/rc.conf, that setting will override this one.
DISPLAYMANAGER="sddm"
|
Wie muss ich die "/etc/init.d/xdm" anpassen dass Gentoo wieder bootet?
Mfg;
Sabaton
Last edited by Sabaton on Mon Apr 19, 2021 11:21 am; edited 1 time in total |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
asturm Developer
![Developer Developer](/images/ranks/rank-dev.gif)
Joined: 05 Apr 2007 Posts: 9334
|
Posted: Mon Apr 19, 2021 10:56 am Post subject: |
|
|
Gar nicht.
https://www.gentoo.org/support/news-items/2021-01-30-display-manager-init.html
Code: | The old 'xdm' init script is no longer supported and henceforth
removed from x11-base/xorg-server-1.20.10-r1, so it is imperative that
you switch from xdm to display-manager service in default runlevel:
# rc-update del xdm default
# rc-update add display-manager default |
|
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
mike155 Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
Joined: 17 Sep 2010 Posts: 4438 Location: Frankfurt, Germany
|
Posted: Mon Apr 19, 2021 11:03 am Post subject: |
|
|
Quote: | Gentoo-Gastsystem nicht mehr bootet. |
Genau deshalb boote ich auch nicht in einen Display Manager, sondern zur TTY Konsole. Dann logge ich mich ein und starte die Desktop-Umgebung mit "startx" oder ähnlichen Scripten. Wenn die Desktop-Umgebung dann mal nicht funktionieren sollte, habe ich aber auf jeden Fall die Shell. Und von der aus kann ich das Problem analysieren und lösen. |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
asturm Developer
![Developer Developer](/images/ranks/rank-dev.gif)
Joined: 05 Apr 2007 Posts: 9334
|
Posted: Mon Apr 19, 2021 11:06 am Post subject: |
|
|
Ein "ncht bootendes" System scheint hier aber nicht das Problem zu sein, sondern lediglich unterschiedliche Begriffsdefinitionen...
"Software x" nicht zu verwenden sorgt natürlich immer dafür "Software x Problem" zu vermeiden. Bei großflächiger Anwendung dieser Logik würden wir aber immer noch mit Papier und Bleistift am Schreibtisch sitzen. |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Sabaton Apprentice
![Apprentice Apprentice](/images/ranks/rank_rect_2.gif)
Joined: 02 Mar 2019 Posts: 190
|
Posted: Mon Apr 19, 2021 11:24 am Post subject: |
|
|
Hallo,
ein
Code: | rc-update del xdm default
rc-update add display-manager default |
hat den Fehler behoben, vielen Dank
Mfg;
Sabaton |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|