Topic locked

wrong ownership on runtime directory /tmp, 0 instead of 1000

workoft
Registered Member
Posts
94
Karma
1
Hi,

I'm trying to test out kde-workspaces-5, but I'm running into some trouble. Starting KDE seems to change the permissions of /tmp and then complain about insufficient permissions on /tmp. I'm currently using razorqt and that's also where I'm copying the error messages from, but I think it shouldn't make much of a difference.

Code: Select all
malte@workoft ~ $ startkde
QCoreApplication::arguments: Please instantiate the QApplication object first
QCoreApplication::arguments: Please instantiate the QApplication object first
QCoreApplication::arguments: Please instantiate the QApplication object first
QCoreApplication::arguments: Please instantiate the QApplication object first
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
startkde: Starting up...
2014/05/24 09:06:40 socat[24097] E connect(3, AF=1 "<anon>", 2): Invalid argument
FATAL: The application binary appears to be running setuid, this is a security hole.
kdeinit5: Communication error with launcher. Exiting!
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
kdeinit5_wrapper: Warning: connect(/kdeinit5__0) failed: : No such file or directory
The following installation problem was detected
while trying to start KDE:

    Writing to the temp directory (/tmp) failed with
    the error 'Permission denied'

KDE is unable to start.
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
Failed to create secure directory (/tmp/pulse): Permission denied


Here a before an after of the permisions:
Code: Select all
workoft ~ # ls -dn /tmp
drwxrwxrwx 16 0 0 560 May 24 08:41 /tmp
workoft ~ # ls -dn /tmp
drwx------ 16 0 0 560 May 24 08:42 /tmp


when I start kdeinit5 as a normal user, it crashes with this message
Code: Select all
malte@workoft ~ $ kdeinit5
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
kdeinit5: Aborting. bind() failed: Permission denied
Could not bind to socket '/kdeinit5__0

but when I start it as root, the same change in permissions happens.

I'm using Qt-5.3.0, kde-frameworks-4.99.0 and kde-workspaces-4.96.0 on Gentoo.
User avatar bcooksley
Administrator
Posts
19763
Karma
87
OS
Can you please check the permissions on kdeinit5? It seems to be setuid - which it shouldn't be.
Code: Select all
FATAL: The application binary appears to be running setuid, this is a security hole.
kdeinit5: Communication error with launcher. Exiting!


As for the path, it looks like there may be a bug... have you set any variables such as KDEHOME?
It should be /tmp/kde-socket/kdeinit5__0 rather than /kdeinit5__0.
Code: Select all
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
kdeinit5: Aborting. bind() failed: Permission denied
Could not bind to socket '/kdeinit5__0


KDE Sysadmin
[img]http://forum.kde.org/content/bcooksley_sig.png[/img]
workoft
Registered Member
Posts
94
Karma
1
Thank you for your quick answer!
kdeinit5 looks normal:
Code: Select all
workoft ~ # ls -l /usr/bin/kdeinit5
-rwxr-xr-x 1 root root 60720 May 24 10:04 /usr/bin/kdeinit5


As for KDEHOME, all I could find is that it defaults to ~/.kde? it's not set in my environment, but passing KDEHOME=/tmp/kde-socket/kdeinit5__0 to startkde doesn't change anything.

edit: I can only find kdesu and kwrited having setuid permissions.
User avatar bcooksley
Administrator
Posts
19763
Karma
87
OS
Okay, that should all be fine then. You shouldn't need to set KDEHOME at all.
In ~/.kde do you have socket-$hostname, tmp-$hostname and cache-$hostname directories?
If so, do they point to the appropriate folders in /tmp or /var/tmp/?


KDE Sysadmin
[img]http://forum.kde.org/content/bcooksley_sig.png[/img]
workoft
Registered Member
Posts
94
Karma
1
Sorry, I don't think I've made myself clear. That's what I found out about KDEHOME on the internet. I tried setting it, but even if I set it to .kde, that directory isn't created, if I create it, it stays empty. Am I doing it wrong? I just typed KDEHOME=~/.kde startkde on the command line.
workoft
Registered Member
Posts
94
Karma
1
ok, the binary in question was /usr/lib64/libexec/kf5/start_kdeinit. Now running startkde does not change permissions on /tmp anymore. It still doesn't work, but the console output looks different:

Code: Select all
malte@workoft ~ $ startkde
QCoreApplication::arguments: Please instantiate the QApplication object first
QCoreApplication::arguments: Please instantiate the QApplication object first
QCoreApplication::arguments: Please instantiate the QApplication object first
QCoreApplication::arguments: Please instantiate the QApplication object first
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
startkde: Starting up...
2014/05/25 01:52:35 socat[14150] E connect(3, AF=1 "<anon>", 2): Invalid argument
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
kdeinit5: Aborting. bind() failed: Permission denied
Could not bind to socket '/kdeinit5__0'
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
kdeinit5_wrapper: Warning: connect(/kdeinit5__0) failed: : No such file or directory
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
Qt: Session management error: networkIdsList argument is NULL
Your code needs to be ported in KF5.  See the Ki18n programmers guide.
Configuring Lock Action
XSync seems available and ready
XSync Inited
Supported, init completed
Created alarm 67108865
_IceTransmkdir: ERROR: euid != 0,directory /tmp/.ICE-unix will not be created.
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
"/KSMserver"
KSMServer: cannot open /KSMserver__0: Permission denied
KSMServer: Aborting.
startkde: Shutting down...
QStandardPaths: wrong ownership on runtime directory /tmp, 0 instead of 1000
kdeinit5_wrapper: Warning: connect(/kdeinit5__0) failed: : No such file or directory
Error: Can not contact kdeinit5!
startkde: Running shutdown scripts...
startkde: Done.
User avatar eliasp
Registered Member
Posts
19
Karma
0
OS
This is most likely due to a known upstream bug.

See also: viewtopic.php?f=67&t=119230#p307015
workoft
Registered Member
Posts
94
Karma
1
Thanks. I worked around this problem by adding export XDG_RUNTIME_DIR=/var/run/user/1000 to /usr/bin/startkde. At least it let's me start kde-workspaces-5, although a whole bunch of stuff isn't working yet.

edit: A major issue is that I can't add any widgets:
Code: Select all
Invoking menu for applet QObject(0x0)
qml: Widget Explorer toggled
"org.kde.plasma.kickoff"  is the name of the plugin at "plasma-applet-org.kde.plasma.kickoff.desktop"
"org.kde.plasma.digitalclock"  is the name of the plugin at "plasma-applet-org.kde.plasma.digitalclock.desktop"
"org.kde.plasma.systemtray"  is the name of the plugin at "plasma-applet-org.kde.plasma.systemtray.desktop"
"org.kde.systrayplasmoidtest"  is the name of the plugin at "plasma-applet-org.kde.systrayplasmoidtest.desktop"
"org.kde.plasma.mediacontroller"  is the name of the plugin at "plasma-applet-org.kde.plasma.mediacontroller.desktop"
"org.kde.plasma.devicenotifier"  is the name of the plugin at "plasma-applet-org.kde.plasma.devicenotifier.desktop"
"org.kde.plasma.windowlist"  is the name of the plugin at "plasma-applet-org.kde.plasma.windowlist.desktop"
"org.kde.plasma.battery"  is the name of the plugin at "plasma-applet-org.kde.plasma.battery.desktop"
"org.kde.plasma.activitybar"  is the name of the plugin at "plasma-applet-org.kde.plasma.activitybar.desktop"
"org.kde.plasma.lock_logout"  is the name of the plugin at "plasma-applet-org.kde.plasma.lock_logout.desktop"
"org.kde.plasma.kicker"  is the name of the plugin at "plasma-applet-org.kde.plasma.kicker.desktop"
"org.kde.plasma.pager"  is the name of the plugin at "plasma-applet-org.kde.plasma.pager.desktop"
"org.kde.plasma.taskmanager"  is the name of the plugin at "plasma-applet-org.kde.plasma.taskmanager.desktop"
"org.kde.milou"  is the name of the plugin at "plasma-applet-org.kde.milou.desktop"
"org.kde.plasma.analogclock"  is the name of the plugin at "plasma-applet-org.kde.plasma.analogclock.desktop"
"org.kde.plasma.trash"  is the name of the plugin at "plasma-applet-org.kde.plasma.trash.desktop"
"org.kde.plasma.folder"  is the name of the plugin at "plasma-applet-org.kde.plasma.folder.desktop"
"org.kde.panel"  is the name of the plugin at "plasma-containment-org.kde.panel.desktop"
"org.kde.plasma.showActivityManager"  is the name of the plugin at "plasma-applet-org.kde.plasma.showActivityManager.desktop"
"org.kde.plasma.notifications"  is the name of the plugin at "plasma-applet-org.kde.plasma.notifications.desktop"
"org.kde.plasma.calendar"  is the name of the plugin at "plasma-applet-org.kde.plasma.calendar.desktop"
TODO: port listCategories()
Categories: <<  "application launchers"
Categories: <<  "windows and tasks"
Categories: <<  "multimedia"
Categories: <<  "system information"
Categories: <<  "utilities"
Categories: <<  "date and time"
Categories: <<  "file system"
Categories: <<  "tasks"
extraactions needs reimplementation
Couldn't find node arrow-up. Skipping rendering.
Couldn't find node arrow-down. Skipping rendering.
DIALOG:  hiding dialog.
file:///usr/share/plasma/shells/org.kde.desktop/contents/views/Desktop.qml:90: TypeError: Cannot read property 'preventWindowHide' of null


Is this issue caused by my workaround? or is that a whole new problem?

edit: I just deleted my plasma configuration. It's all working now.
edi2: no, it's not. It just gave me a default configuration with most of the widgets that I need. I still can't add widgets or change activities. Anyway, that's a different topic, I shall open a new thread.

 
Topic locked

Bookmarks



Who is online

Registered users: Baidu [Spider], Bing [Bot], claydoh, davis, Google [Bot], Mamarok, Sogou [Bot], vinnywright