Yerel ayar gen segmentasyonu hatası


0

Yereller oluşturmaya çalışıyorum, ancak yerel-gen (localedef?) Segfaults.

# sudo dpkg-reconfigure locales
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = "en_US.UTF-8",
        LC_CTYPE = "UTF-8",
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
Generating locales...
  en_US.ISO-8859-1... /usr/sbin/locale-gen: line 177: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
/usr/sbin/locale-gen: line 243:  3809 Segmentation fault      localedef $no_archive -i $input -c -f $charset $locale_alias $locale
failed
  en_US.UTF-8... /usr/sbin/locale-gen: line 177: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
/usr/sbin/locale-gen: line 243:  3836 Segmentation fault      localedef $no_archive -i $input -c -f $charset $locale_alias $locale
failed
Generation complete.

In topben bkz localedef -i en_US -c -f ISO-8859-1 en_USkaplıyor 8000Gbile olmadan sanal bellek, sonra bazı büyük numarası Gardından segfault soneki ve.

Sistemin 1Gbelleği ve 512MBSWAP'si var, ancak bellek çok az kullanılıyor ( 130MBüretimin en üstünde).

Sistem verisi:

root@docs:~# uname -a
Linux docs 2.6.32-042stab078.28 #1 SMP Mon Jul 8 10:17:22 MSK 2013 x86_64 x86_64 x86_64 GNU/Linux

root@docs:~# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.4 LTS"

root@docs:~# dpkg-query --show glibc*
glibc-2.13-1
glibc-doc

root@docs:~# sudo apt-get update && sudo apt-get upgrade
...skipped...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Yanıtlar:


1

/etc/default/localeDosyanızda şu satırlar varmış gibi görünüyor :

LC_ALL=en_US.UTF-8
LC_CTYPE=UTF-8
LANG=en_US.UTF-8

LC_CTYPE"UTF-8" geçerli bir yerel ismi olmadığından ayarı, yanlıştır. Ayrıca, tüm bu değişkenleri ayarlamak anlamsızdır; Sadece LC_ALLve LC_CTYPEsatırlarını kaldırmanızı tavsiye ederim .

(Geçenlerde benzer bir şey gördüm. İlk LC_CTYPE=UTF-8başta bu ifadenin nasıl ortaya çıktığını bilmek ilginç olurdu .)


Aslında sadece bunlara sahibim: LC_ALL = en_US.UTF-8 LANG = en_US.UTF-8
Slava N

LC_CTYPE = en_US.UTF-8 ve ardından ayarlanması sudo locale-gen en_US.UTF-8, sonra sudo dpkg-reconfigure localesyardımcı oldu! Teşekkürler!
Slava N

Hata! Komutlar yanlış makinede çalışıyordu. LC_CTYPE ayarı açıkça yardımcı olmadı, hala segfault :(
Slava N

Yerel-gen ve dpkg-yeniden yapılandırma ile uğraşmayın. Sorununuz LC_CTYPE’nın yanlış bir yere yerleştirilmesi, görünüşe göre başka bir yere ayarlanması /etc/default/locale. Belki yapılandırma dosyalarınızdan bazıları veya $HOMEgibi yanlış ifadeler içeriyordur . ~/.bashrc~/.profile
Gunnar Hjalmarsson
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.