Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mkdir is failed in: /var/lib/gdm/.cache/ibus: Permission denied #2177

Closed
crvigh opened this issue Jan 27, 2020 · 7 comments
Closed

mkdir is failed in: /var/lib/gdm/.cache/ibus: Permission denied #2177

crvigh opened this issue Jan 27, 2020 · 7 comments

Comments

@crvigh
Copy link

crvigh commented Jan 27, 2020

Please fill in the following items if you don't know the root cause.

Which distribution and version?:

Fedora release 32 (Rawhide)

Which desktop environment and version?:

GNOME Version 3.35.4

Which session type?:

[crvi@localhost ~]$ ps -aef | grep -i way
crvi        2972    2934  0 21:52 tty2     00:00:00 /usr/libexec/gdm-wayland-session /usr/bin/gnome-session
crvi        3095    3053  0 21:52 ?        00:00:00 /usr/bin/Xwayland :0 -rootless -noreset -accessx -core -auth /run/user/1000/.mutter-Xwaylandauth.8NRYE0 -listen 4 -listen 5 -displayfd 6

Which application and version?:

gdm ??

IBus version?:

IBus 1.5.21

Issue description:

System is full of ibus-daemon coredumps.

[root@localhost coredump]# ls -l /var/lib/systemd/coredump/ | grep ibus-daemon | wc -l
36

Backtrace:

#0  _g_log_abort (breakpoint=1) at ../glib/gmessages.c:554
#1  0x00007f07a8496e69 in g_log_default_handler
    (log_domain=log_domain@entry=0x55610cbb1027 "IBUS", log_level=log_level@entry=6, message=message@entry=0x55610dfdcf90 "mkdir is failed in: /var/lib/gdm/.cache/ibus: Permission denied", unused_data=unused_data@entry=0x0) at ../glib/gmessages.c:3123
#2  0x00007f07a849709b in g_logv (log_domain=0x55610cbb1027 "IBUS", log_level=G_LOG_LEVEL_ERROR, format=<optimized out>, args=args@entry=0x7ffcd9a1fd60)
    at ../glib/gmessages.c:1350
#3  0x00007f07a8497283 in g_log
    (log_domain=log_domain@entry=0x55610cbb1027 "IBUS", log_level=log_level@entry=G_LOG_LEVEL_ERROR, format=format@entry=0x55610cbb78db "mkdir is failed in: %s: %s") at ../glib/gmessages.c:1415
#4  0x000055610cbae023 in bus_server_init () at server.c:282
#5  0x000055610cb995b5 in main (argc=<optimized out>, argv=<optimized out>) at main.c:246

Steps to reproduce:

Not sure.

Can you reproduce your problem when you restart ibus-daemon? (yes / no):

N/A

Do you see any errors when you run ibus-daemon with the verbose option?:

N/A

Can you reproduce your problem with a new user account instead of the current your account? (yes / no):

Not tried

@fujiwarat
Copy link
Member

From your backtrace, gdm user have no permission to mkdir -p /var/lib/gdm/.cache/ibus .

Do you saw your problem in the first boot after the Fedora installation?

Or

Do you saw your problem whenever you reboot your system?

I guess you have '/var/lib/gdm` after the first login and you no longer see the problem.

@opnmind
Copy link

opnmind commented Feb 5, 2020

The issue did not disappear after the first reboot and still exists. I'm on Fedora 31 and still get this error.

I tried to change the ownership and rights but nothing helps.:
chown -R gdm:gdm /var/lib/gdm/
chmod +rw /var/lib/gdm/.cache

  • Kernerl Version: 5.4.15-200.fc31.x86_64

  • ibus-daemon - Version 1.5.21

  • journalctl -b -p err:
    `eb 05 10:25:29 xyz ibus-daemon[2458]: mkdir is failed in: /var/lib/gdm/.cache/ibus: Keine Berechtigung
    Feb 05 10:25:29 xyz systemd-coredump[2461]: Process 2458 (ibus-daemon) of user 42 dumped core.

                                               Stack trace of thread 2458:
                                               #0  0x00007f40d1642755 _g_log_abort (libglib-2.0.so.0)
                                               #1  0x00007f40d16437d9 g_log_default_handler (libglib-2.0.so.0)
                                               #2  0x00007f40d1643a0b g_logv (libglib-2.0.so.0)
                                               #3  0x00007f40d1643bf3 g_log (libglib-2.0.so.0)
                                               #4  0x000055ba5a6cc023 bus_server_init (ibus-daemon)
                                               #5  0x000055ba5a6b75b5 main (ibus-daemon)
                                               #6  0x00007f40d14271a3 __libc_start_main (libc.so.6)
                                               #7  0x000055ba5a6b79fe _start (ibus-daemon)
                                               
                                               Stack trace of thread 2459:
                                               #0  0x00007f40d14f6a6f __poll (libc.so.6)
                                               #1  0x00007f40d163c80e g_main_context_iterate.isra.0 (libglib-2.0.so.0)
                                               #2  0x00007f40d163c943 g_main_context_iteration (libglib-2.0.so.0)
                                               #3  0x00007f40d163c991 glib_worker_main (libglib-2.0.so.0)
                                               #4  0x00007f40d1665fc2 g_thread_proxy (libglib-2.0.so.0)
                                               #5  0x00007f40d15d24e2 start_thread (libpthread.so.0)
                                               #6  0x00007f40d15016d3 __clone (libc.so.6)
    

Feb 05 10:25:29 xyz ibus-daemon[2497]: mkdir is failed in: /var/lib/gdm/.cache/ibus: Keine Berechtigung
Feb 05 10:25:29 xyz systemd-coredump[2500]: Process 2497 (ibus-daemon) of user 42 dumped core.

                                             Stack trace of thread 2497:
                                             #0  0x00007f8593b0c755 _g_log_abort (libglib-2.0.so.0)
                                             #1  0x00007f8593b0d7d9 g_log_default_handler (libglib-2.0.so.0)
                                             #2  0x00007f8593b0da0b g_logv (libglib-2.0.so.0)
                                             #3  0x00007f8593b0dbf3 g_log (libglib-2.0.so.0)
                                             #4  0x000055c6d2b37023 bus_server_init (ibus-daemon)
                                             #5  0x000055c6d2b225b5 main (ibus-daemon)
                                             #6  0x00007f85938f11a3 __libc_start_main (libc.so.6)
                                             #7  0x000055c6d2b229fe _start (ibus-daemon)
                                             
                                             Stack trace of thread 2498:
                                             #0  0x00007f85939c0a6f __poll (libc.so.6)
                                             #1  0x00007f8593b0680e g_main_context_iterate.isra.0 (libglib-2.0.so.0)
                                             #2  0x00007f8593b06943 g_main_context_iteration (libglib-2.0.so.0)
                                             #3  0x00007f8593b06991 glib_worker_main (libglib-2.0.so.0)
                                             #4  0x00007f8593b2ffc2 g_thread_proxy (libglib-2.0.so.0)
                                             #5  0x00007f8593a9c4e2 start_thread (libpthread.so.0)
                                             #6  0x00007f85939cb6d3 __clone (libc.so.6)

Feb 05 10:25:30 xyz abrt-notification[2778]: Process 2312 (ibus-daemon) crashed in bus_server_init()
Feb 05 10:25:30 xyz abrt-notification[2830]: Process 2312 (ibus-daemon) crashed in bus_server_init()
`

@fujiwarat
Copy link
Member

@opnmind

Thank you for the reply and I cannot reproduce this issue in Fedora 31.

Feb 05 10:25:29 xyz ibus-daemon[2458]: mkdir is failed in: /var/lib/gdm/.cache/ibus: Keine Berechtigung

Who is the owner of /var/lib/gdm/.cache ?
You can check with ls -ld /var/lib/gdm/.cache .

Can you find who run ibus-daemon for its homedir is /var/lib/gdm ?

I think you can rename ibus-daemon to check it:

# mv /usr/bin/ibus-daemon /usr/bin/ibus-daemon.orig
# vi /usr/bin/ibus-daemon
# cat /usr/bin/ibus-daemon

#!/bin/sh
echo "Running ibus-daemon by $UID"
${0}.orig $@

# chmod 755 /usr/bin/ibus-daemon

After you reboot the system, journalctl could show the message of "Running ibus-daemon by..." and you can check /etc/passwd to check the UID.

@fujiwarat
Copy link
Member

Any responses?

@dufresnep
Copy link

I have this: mkdir is failed in: /var/lib/gdm/.cache/ibus
message in freshly installed Fedora 31.

And I have:
root@localhost paul]# ls -ld /var/lib/gdm/.cache
d---------. 2 gdm gdm 4096 12 fév 05:35 /var/lib/gdm/.cache
which really seems to be uncorrect permissions.

Care to suggest some sane permissions to use.

It looks like a packaging problem of Fedora, and may not be appropriate here.

@fujiwarat
Copy link
Member

root@localhost paul]# ls -ld /var/lib/gdm/.cache

@dufresnep Thank you. Now I understand your problem and reproduce it. Seems it's not reproduced if ibus-table is installed.
I will investigate it.

fujiwarat added a commit that referenced this issue Feb 13, 2020
If the parent directory (/var/lib/gdm/.cache) is not created,
mkdir childdir (/var/lib/gdm/.cache/ibus) is failed by the parentdir
with mode_t = 0.

BUG=#2177
@fujiwarat
Copy link
Member

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants