-
-
Notifications
You must be signed in to change notification settings - Fork 110
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
locale-gen segfault #161
Comments
I've given up on using chrome due to the suid root problem, however, the locale problem affects all apps. |
@fsquillace any idea where I should start with this? |
Hey @0atman It seems to be related to the recent update in glibc (2.24). If I attempt to use
It may be possible that there is a missing file in junest. Using |
[root@myarch junest]# pacman -Qo locale-gen
/usr/bin/locale-gen is owned by glibc 2.23-4
[root@myarch junest]# locale-gen
Generating locales...
en_US.UTF-8... done
Generation complete.
[root@myarch junest]# pacman -Sy glibc
:: Synchronizing package databases...
core 122.6 KiB 238K/s 00:01 [###################################################] 100%
extra 1747.9 KiB 2042K/s 00:01 [###################################################] 100%
community 3.7 MiB 2.25M/s 00:02 [###################################################] 100%
resolving dependencies...
looking for conflicting packages...
Packages (2) linux-api-headers-4.7-1 glibc-2.24-2
Total Download Size: 8.92 MiB
Total Installed Size: 39.39 MiB
Net Upgrade Size: 0.22 MiB
:: Proceed with installation? [Y/n]
:: Retrieving packages...
linux-api-headers-4.7-1-x86_64 810.7 KiB 830K/s 00:01 [###################################################] 100%
glibc-2.24-2-x86_64 8.1 MiB 2.11M/s 00:04 [###################################################] 100%
(2/2) checking keys in keyring [###################################################] 100%
(2/2) checking package integrity [###################################################] 100%
(2/2) loading package files [###################################################] 100%
(2/2) checking for file conflicts [###################################################] 100%
(2/2) checking available disk space [###################################################] 100%
:: Processing package changes...
(1/2) upgrading linux-api-headers [###################################################] 100%
(2/2) upgrading glibc [###################################################] 100%
warning: /etc/locale.gen installed as /etc/locale.gen.pacnew
Generating locales...
en_US.UTF-8...
gzip: stdout: Broken pipe
/usr/bin/locale-gen: line 41: 5974 Segmentation fault (core dumped) localedef -i $input -c -f $charset -A /usr/share/locale/locale.alias $loc
ale
:: Running post-transaction hooks...
(1/1) Updating the info directory file... |
I noticed that you should be able to fix it by running junest with [22:07:34 139 feel@myarch {dev} junest $]> JUNEST_HOME=~/.junest-origin sudo junest -r locale-gen
feel@myarch --> root@myarch - Password for feel:
Generating locales...
en_US.UTF-8... done
Generation complete. Although is not the definitive solution it might be a mitigation for your problem. |
Yet another enormous mystery is that running Via GDB: PROOT_NO_SECCOMP=1 gdb --args ~/.junest/opt/proot/proot-x86_64 -S ~/.junest/ /usr/bin/locale-gen
Type "apropos word" to search for commands related to "word"...
Reading symbols from /home/feel/.junest/opt/proot/proot-x86_64...(no debugging symbols found)...done.
(gdb) r
Starting program: /home/feel/.junest/opt/proot/proot-x86_64 -S /home/feel/.junest/ /usr/bin/locale-gen
Generating locales...
en_US.UTF-8... done
Generation complete. Without GDB: PROOT_NO_SECCOMP=1 ~/.junest/opt/proot/proot-x86_64 -S ~/.junest/ /usr/bin/locale-gen
Generating locales...
en_US.UTF-8.../usr/bin/locale-gen: line 41: 16961 Segmentation fault (core dumped) localedef -i $input -c -f $charset -A /usr/share/locale/locale.alias $locale |
I am also affected by this bug. Therefore i cannot use any GUI applications, because the text is unreadable. If i can help to debug this, let me know. I also cannot use your workaround, since i am not root on the machine. |
It seems that the issue is inside The only thing I got so far is that the segfault happen when calling a function in libc (sysmalloc). Maybe >> coredumpctl info 5126
PID: 5126 (localedef)
UID: 1000 (feel)
GID: 100 (users)
Signal: 11 (SEGV)
Timestamp: Mon 2017-01-23 01:00:47 GMT (22h ago)
Command Line: localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
Executable: /tmp/prooted-4980-Jr8Ap0
Control Group: /user.slice/user-1000.slice/session-c1.scope
Unit: session-c1.scope
Slice: user-1000.slice
Session: c1
Owner UID: 1000 (feel)
Boot ID: b523b7201bca4eaeb144b2ea4322a7ed
Machine ID: 70f7e403d8ed41dbbcfe37166c625701
Hostname: myarch
Storage: /var/lib/systemd/coredump/core.localedef.1000.b523b7201bca4eaeb144b2ea4322a7ed.5126.1485133247000000000000.lz4
Message: Process 5126 (localedef) of user 1000 dumped core.
Stack trace of thread 5126:
#0 0x00007f1f925ee87c sysmalloc (/home/feel/.junest-new/usr/lib/libc-2.24.so)
#1 0x00007f1f925ef30d _int_malloc (/home/feel/.junest-new/usr/lib/libc-2.24.so)
#2 0x00007f1f925f0c74 __GI___libc_malloc (/home/feel/.junest-new/usr/lib/libc-2.24.so)
#3 0x0000000000437519 xmalloc (/home/feel/.junest-new/usr/bin/localedef)
#4 0x000000000042d9be get_symname (/home/feel/.junest-new/usr/bin/localedef)
#5 0x0000000000429825 parse_charmap (/home/feel/.junest-new/usr/bin/localedef)
#6 0x000000000042bb1a charmap_read (/home/feel/.junest-new/usr/bin/localedef)
#7 0x0000000000403350 main (/home/feel/.junest-new/usr/bin/localedef)
#8 0x00007f1f92596291 __libc_start_main (/home/feel/.junest-new/usr/lib/libc-2.24.so)
#9 0x00000000004038ca _start (/home/feel/.junest-new/usr/bin/localedef)
To make things more complicated when running proot via gdb, the locale-gen/localedef works just fine. It seems there is a failure when requiring more memory from the system. This, for some reason, is longer true once proot runs inside gdb. |
in |
related to: proot-me/proot#106 |
As a temporary workaround you can invoke host's
This should at least allow programs that requires them (e.g. |
Thanks @PkmX; that seems really to be a good workaround as it generate the >> ll ${JUNEST_HOME}/usr/lib/locale/locale-archive
ls: cannot access '/home/feel/.junest/usr/lib/locale/locale-archive': No such file or directory
>> I18NPATH=${JUNEST_HOME}/usr/share/i18n ${JUNEST_HOME}/usr/bin/localedef -i en_US -c -f UTF-8 -A ${JUNEST_HOME}/usr/share/locale/locale.alias --prefix=${JUNEST_HOME} en_US.UTF-8
>> ll ${JUNEST_HOME}/usr/lib/locale/locale-archive
-rw-r--r-- 1 feel users 1.6M Apr 6 20:39 /home/feel/.junest/usr/lib/locale/locale-archive |
Good! this help me much ! and the error message when run "locale" from |
PkmX's workaround |
The workaround did work for me. @oxinabox did you run it from your host system and modified the paths, if the junest env is not installed to ~/.junest? |
Problem is back/still present, but PkmX workaround is working. Any news? |
Unfortunately the work around doesn't work for me. $ I18NPATH=$HOME/.junest/usr/share/i18n localedef -i en_US -c -f UTF-8 -A $HOME/.junest/usr/share/locale/locale.alias --prefix=$HOME/.junest en_US.UTF-8 $ junest -f [...]# locale [...]# locale -a [...]# emacs (process:31973): Gtk-WARNING **: 15:16:04.693: Locale not supported by C library. |
I've faced the same issue trying just to use proot with Arch Linux on x86_64, so I'm not actually using JuNest. I run |
Thanks a lot @sgtpep !!! |
I also reported this problem. The gunzip approach did not work for me, but @PkmX 's work-around did. |
I believe I ran into a related/similar issue. In my case, the underlying problem was that |
On a fresh install of ubuntu 16.04, and a fresh install of junest, I seem to be in locale hell:
Help!
The text was updated successfully, but these errors were encountered: