I am attempting to configure Kubuntu 12.04 to boot by default in text mode. The power usage and boot delay are slowly becoming unattractive. I've modified my grub.cfg (no, not directly) to the tune of: Code: #GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX_DEFAULT="text" GRUB_TERMINAL=console I've run update-grub2, and am certain these settings have taken effect because the splash screen no longer displays, but it still boots to KDE. I've done some light reading on initscripts/upstart/runlevels, and suspect that these will get me what i'm looking for, but don't really know where to make my changes without potentially crippling the system. I have read a number of threads that report that the grub method was successful, but nothing that dealt with Kubuntu or precise pangolin. These are the only differences i see that might be causing these results. Any help is appreciated. Thanks in advance.
Update: Update: Nearly certain that kubuntu is what is making this difficult. Made the same modifications in grub to ubuntu 10.04, and it booted in text mode. Am now comparing boot sequence differences between 10.04 text mode, 10.04 graphical mode, and kubuntu.
I guess KDE is started by some init script in /etc/init.d/. Can you post the output of Code: ls -l /etc/init.d/ ?
what do you mean to boot in text mode? Do you want to see just text at boot up instead of the start image but then still enter KDE Or do you want to boot up without start X/KDE?
Update: solved jau: The second; disable X and KDE until i manually run "$ startx" or somesuch. Falko: the output of "$ ll /etc/init.d/" Code: total 192 lrwxrwxrwx 1 root root 21 Dec 8 2011 acpid -> /lib/init/upstart-job -rwxr-xr-x 1 root root 652 Jan 4 2010 acpi-support lrwxrwxrwx 1 root root 21 Apr 3 23:12 alsa-restore -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 3 23:12 alsa-store -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Jun 20 2010 anacron -> /lib/init/upstart-job -rwxr-xr-x 1 root root 7621 Feb 6 22:16 apache2 -rwxr-xr-x 1 root root 4596 Apr 12 06:17 apparmor lrwxrwxrwx 1 root root 21 May 22 19:47 apport -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Oct 25 2011 atd -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Dec 17 2011 avahi-daemon -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Nov 25 2011 binfmt-support -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Mar 21 16:05 bluetooth -> /lib/init/upstart-job -rwxr-xr-x 1 root root 2444 Apr 14 04:26 bootlogd -rwxr-xr-x 1 root root 2125 Mar 1 2011 brltty lrwxrwxrwx 1 root root 21 Apr 19 11:18 console-setup -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Jun 19 15:26 cron -> /lib/init/upstart-job -rwxr-xr-x 1 root root 922 Mar 8 14:40 cryptdisks -rwxr-xr-x 1 root root 871 Mar 8 14:40 cryptdisks-early lrwxrwxrwx 1 root root 21 Apr 13 23:03 cryptdisks-enable -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 13 23:03 cryptdisks-udev -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 May 25 01:52 cups -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Feb 22 02:47 dbus -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Mar 30 12:22 dmesg -> /lib/init/upstart-job -rwxr-xr-x 1 root root 1242 Dec 13 2011 dns-clean lrwxrwxrwx 1 root root 21 Mar 14 09:02 friendly-recovery -> /lib/init/upstart-job -rwxr-xr-x 1 root root 3997 Feb 7 07:31 gpsd -rwxr-xr-x 1 root root 1105 Apr 17 12:53 grub-common -rwxr-xr-x 1 root root 1329 Apr 14 04:26 halt lrwxrwxrwx 1 root root 21 May 26 2011 hostname -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Mar 29 23:49 hwclock -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Mar 29 23:49 hwclock-save -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Feb 3 23:33 irqbalance -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Jun 24 16:56 kdm -> /lib/init/upstart-job -rwxr-xr-x 1 root root 1893 Apr 18 17:48 kerneloops -rwxr-xr-x 1 root root 1293 Apr 14 04:26 killprocs lrwxrwxrwx 1 root root 21 Mar 24 07:42 modemmanager -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Nov 20 2011 module-init-tools -> /lib/init/upstart-job -rwxr-xr-x 1 root root 2797 Feb 13 12:19 networking lrwxrwxrwx 1 root root 21 Apr 4 20:22 network-interface -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 4 20:22 network-interface-container -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 4 20:22 network-interface-security -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 May 24 23:01 network-manager -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Jun 8 17:52 nmbd -> /lib/init/upstart-job -rwxr-xr-x 1 root root 882 Apr 14 04:26 ondemand lrwxrwxrwx 1 root root 21 Apr 13 10:35 plymouth -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 13 10:35 plymouth-log -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 13 10:35 plymouth-splash -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 13 10:35 plymouth-stop -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 13 10:35 plymouth-upstart-bridge -> /lib/init/upstart-job -rwxr-xr-x 1 root root 561 Feb 4 2011 pppd-dns lrwxrwxrwx 1 root root 21 Dec 12 2011 procps -> /lib/init/upstart-job -rwxr-xr-x 1 root root 2180 Apr 12 00:16 pulseaudio -rwxr-xr-x 1 root root 8635 Apr 14 04:26 rc -rwxr-xr-x 1 root root 801 Apr 14 04:26 rc.local -rwxr-xr-x 1 root root 117 Apr 14 04:26 rcS -rw-r--r-- 1 root root 2427 Apr 14 04:26 README -rwxr-xr-x 1 root root 639 Apr 14 04:26 reboot lrwxrwxrwx 1 root root 21 May 14 11:42 resolvconf -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Mar 22 16:01 rfkill-restore -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Mar 22 16:01 rfkill-store -> /lib/init/upstart-job -rwxr-xr-x 1 root root 4395 Nov 8 2011 rsync lrwxrwxrwx 1 root root 21 Mar 30 12:22 rsyslog -> /lib/init/upstart-job -rwxr-xr-x 1 root root 2344 Dec 4 2011 saned lrwxrwxrwx 1 root root 21 Jun 6 2011 screen-cleanup -> /lib/init/upstart-job -rwxr-xr-x 1 root root 4321 Apr 14 04:26 sendsigs lrwxrwxrwx 1 root root 21 Apr 19 11:18 setvtrgb -> /lib/init/upstart-job -rwxr-xr-x 1 root root 590 Apr 14 04:26 single -rw-r--r-- 1 root root 4304 Apr 14 04:26 skeleton lrwxrwxrwx 1 root root 21 Jun 8 17:52 smbd -> /lib/init/upstart-job -rwxr-xr-x 1 root root 4371 Apr 2 06:49 ssh -rwxr-xr-x 1 root root 567 Apr 14 04:26 stop-bootlogd -rwxr-xr-x 1 root root 1143 Apr 14 04:26 stop-bootlogd-single -rwxr-xr-x 1 root root 700 Oct 26 2011 sudo -rwxr-xr-x 1 root root 1603 Dec 3 2011 sysstat lrwxrwxrwx 1 root root 21 Apr 5 14:17 udev -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 5 14:17 udev-fallback-graphics -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 5 14:17 udev-finish -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 5 14:17 udevmonitor -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 5 14:17 udevtrigger -> /lib/init/upstart-job lrwxrwxrwx 1 root root 21 Apr 5 13:16 ufw -> /lib/init/upstart-job -rwxr-xr-x 1 root root 2800 Apr 14 04:26 umountfs -rwxr-xr-x 1 root root 2211 Apr 14 04:26 umountnfs.sh -rwxr-xr-x 1 root root 2926 Apr 14 04:26 umountroot -rwxr-xr-x 1 root root 1039 Nov 9 2011 unattended-upgrades -rwxr-xr-x 1 root root 1985 Apr 14 04:26 urandom -rwxr-xr-x 1 root root 6138 Apr 5 05:24 virtualbox -rwxr-xr-x 1 root root 2666 Mar 22 12:35 x11-common So the kdm is an upstart job. I took a look at /etc/init/kdm.conf and did some more googling on GRUB_CMDLINE_LINUX. According to http://askubuntu.com/questions/16371/how-to-disable-x-at-boot-time (because i assume the .conf files would be at least vaguely similar across desktop managers), there ought to be a statement in kdm.conf that checks for the 'text' argument. Here is the original file: Code: # kdm - KDE Display Manager # # The display manager service manages the X servers running on the # system, providing login and auto-login services description "K Display Manager" author "Richard Johnson" start on ((filesystem and runlevel [!06] and started dbus and (drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1 or stopped udev-fallback-graphics)) or runlevel PREVLEVEL=S) stop on runlevel [016] emits login-session-start emits desktop-session-start emits desktop-shutdown env XORGCONFIG=/etc/X11/xorg.conf script if [ -n "$UPSTART_EVENTS" ] then [ ! -f /etc/X11/default-display-manager -o "$(cat /etc/X11/default-display-manager 2>/dev/null)" = "/usr/bin/kdm" ] || { stop; exit 0; } if [ "$RUNLEVEL" = S -o "$RUNLEVEL" = 1 ] then # Single-user mode plymouth quit || : exit 0 fi fi if [ -r /etc/default/locale ]; then . /etc/default/locale export LANG LANGUAGE LC_MESSAGES elif [ -r /etc/environment ]; then . /etc/environment export LANG LANGUAGE LC_MESSAGES fi export XORGCONFIG exec kdm end script post-stop script if [ "$UPSTART_STOP_EVENTS" = runlevel ]; then initctl emit desktop-shutdown fi end script after reviewing the file, i added the following statement between the upstart arguments block and the /etc/default/locale block: Code: # check kernel command-line for inhibitors, unless we are being called # manually for ARG in $(cat /proc/cmdline); do if [ "$ARG" = "text" ]; then plymouth quit || : stop exit 0 fi done This seems to work: i am having some slight issues subsequently restarting kde, and will post any relevant information here. Thank you both for your input. -tboz203