[SOLVED] Moved Topic - 'startx' continual (for years) intermittent failure
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Tried the modification to .xinitrc suggested by Gazl. Then, startx worked first time for several launches; however next day (today) startx is back to the 2-3 step, on at least two machines running Slackware64 14.2 / multilib.
I then modified the system .xinitrc file in /etc/X11/xinit (a link to xinitrc.xfce, which file is the one I modified). Worked once or twice, then back to same behavior.
Darn - had hopes.
So Question - Gazl: When you say 'boot to init 1' are you suggesting runlevel 1? Or using something else?
One constant seems to be Xfce. While the problem has affected you for several years and has affected me for only some weeks and only intermittently, I could have changed something in Xfce that now matches your Xfce configurations.
Quote:
Everyone is a him
Hazel probably would disagree. Pronouns are easy to avoid:
Make a new user. Add the user to the audio and video groups.
Gazl - my apology. It was 'upnort' who suggested that,
[upnort] quote (another user): I notice that a socket exists in /tmp/.ICE-unix
"I configure /tmp to tmpfs, so on my system the socket file is always deleted on reboot/halt. Yet I intermittently see the reported problem on my laptop. Perhaps the OP might want to look at that -- boot to init 1 and delete everything in /tmp if not using tmpfs."
---
upnort:
Have to admit I'm confused about doing this. I'm not sure what 'deleting everything in /tmp' will do to my system.... that's where all the finished SlackBuilds go, before installpkg ..
and what else ... (?)
I've not heard of '/tmpfs', but found a discussion on wikipedia, so will try to learn what all that is..
ok, I find using 'df', three instances of tmpfs...
Here is the related /etc/fstab snippet needed for using tmpfs:
tmpfs /tmp tmpfs defaults,noatime 0 0
Add that to /etc/fstab. Do not yet reboot. Instead drop to runlevel 1 (init 1). Delete all files and subdirectories in /tmp, but keep the parent /tmp.
Reboot.
Because your system boots to runlevel 3, do not immediately start X with startx. Verify /tmp is using tmpfs using mount or df. With each fresh boot notice the time stamps change on all /tmp files and subdirectories, confirming everything goes to the bit bucket on reboot/halt.
Regarding SBO packages, the default in SBo scripts is OUTPUT=${OUTPUT:-/tmp}. If desiring to retain build files then change $OUTPUT environment variable to something other than /tmp. Perhaps /var/tmp. Do this in an appropriate bash startup file (/etc/bashrc, ~/.bashrc, etc.)
If you do not want to use tmpfs and still want to clean /tmp, drop to runlevel 1, delete the files, reboot. Or use a live ISO to clean the directory.
Or throw something like this is rc.local_shutdown:
Code:
# Delete files older than 9 days.
find /tmp -type f -mtime +9 -exec rm -f {} \;
# Delete directories older than 9 days.
find /tmp -type d ! -name lost+found -mtime +9 -exec rm -rf {} \;
Perhaps a clue. I was able to produce the error. Fresh cold boot.
In the user's .xsession-errors log:
Code:
(wrapper-1.0:3796): Gtk-WARNING **: cannot open display: :0.0
(nm-applet:3523): Gdk-WARNING **: nm-applet: Fatal IO error 0 (Success) on X server :0.0.
xfwm4: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
parcellite: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
mate-typing-monitor: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
after 25 requests (25 known processed) with 0 events remaining.
xfce4-panel: Fatal IO error 4 (Interrupted system call) on X server :0.0.
xfce4-session: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.
Thunar: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
The application 'xfsettingsd' lost its connection to the display :0.0;
most likely the X server was shut down or you killed/destroyed
the application.
Of course, running startx immediately after the failure launches X just fine.
As I mentioned previously, if I wait a couple of seconds before logging in and running startx I have yet to duplicate the error. My guess is if I am fast enough during boot, I am able to attempt starting X before some kind of boot or login dependency has launched or terminated.
I'm a bit paranoid sometimes, because I have proved I can break almost any software quickly by screwing around.
So I'm not sure what exactly is meant by 'drop to init 1'. Looking in the 'Slackware Essentials' book, I find that '/etc/rc.d/rc.K' initiates runlevel 1. So am I correct in going to root, then executing 'rc.K' ?
If you want to "drop" down to init 1 (runlevel 1), simply type "init 1" as root. If you want to boot to runlevel 1, append 1 to your kernel command line.
For example, if I'm using Lilo and my Slackware boot entry is titled "Slackware" instead of just hitting enter to boot I'd type
Slackware 1
If using Grub, you'd have to press e to edit command line and simply append a 1 to your kernel line and boot with it.
OK, my /etc/fstab on all Slackware 14.2 machines already has a (last) line for tmpfs:
tmpfs /dev/shm tmpfs defaults 0 0
so do I add a 2nd line below for tmpfs (more) ? Or somehow meld it into this line?
I tried to read the manpage, unsuccessfully.
The reason I get concerned about making mistakes is because I really hate reinstalling the whole system and backups. It takes a good bit of time and effort.
The reason I get concerned about making mistakes is because I really hate reinstalling the whole system and backups. It takes a good bit of time and effort.
Rarely is reinstalling necessary. Even a big fat finger mistake in /etc/fstab that prevents booting is quickly remedied using a live ISO. The Slackware install DVD can be used as a live ISO.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.