Kirjoittaja Aihe: locale problem  (Luettu 3273 kertaa)

Mistofelees

  • Käyttäjä
  • Viestejä: 641
    • Profiili
locale problem
« : 20.10.09 - klo:22.34 »
9.04 serverissä oli ongelmia kieliasetusten kanssa.
Jos pyysin vaikka 'man ls' sain seuraavan vastauksen, enkä välttämättä haluamaani man pagea:

man: can't set the locale; make sure $LC_* and $LANG are correct

Aikani potkittuani kuukkelia sain tälläisen scriptin tapaisen kasaan:
(Saa käyttää ja jaella omalla vastuulla. Fingelskan saa muuttaa tunnetuksi kieleksi)

# Purges languages, which are not needed:
# After installation this program starts the localepurge program:
apt-get install localepurge
# Set the parameters of it. Use your own head while configuring:
dpkg-reconfigure localepurge
# Locales should be installed default. This is paranoid
apt-get install locales
# This is recommended somewhere, but doesn't work, so forget it:
apt-get install localeconf
# Install Finnish (fi) language pack:
apt-get install language-pack-fi
# Now the error messages are not so simple and you can even get the man pages
# on your screen !
# Recommended somewhere. No influence, but make it still:
locale-gen fi_FI.UTF-8
# THIS IS IT ! This changed the sittuation:
export LC_ALL=fi_FI.UTF-8

# It might be that the broblem might have disappeared with that last command. Who knows.
# In any case now I  get automatically rid off those languages which I don't use.

Mistofelees

  • Käyttäjä
  • Viestejä: 641
    • Profiili
Vs: locale problem
« Vastaus #1 : 25.10.09 - klo:02.05 »
9.04 serverissä oli ongelmia kieliasetusten kanssa.

Vika poistui, kun komensin konetta:
export LC_ALL = fi_FI.UTP-8.

Ohjeen mukaan kirjoitin myös /etc/environment -tiedostoon, jotta samaa komentoa ei tarvitsisi käsin kirjoittaa
joka bootin yhteydessä :
LC_ALL=fi_FI.UTP-8

ONGELMA: Nyt esim /var/log/samban lokitiedostoihin kertyy suomenkielisiä ilmoituksia. Koitapa niiden perusteella sitten haeka kansainvälisiltä markkinoilta ohjeita.

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Vs: locale problem
« Vastaus #2 : 25.10.09 - klo:12.06 »
Vika poistui, kun komensin konetta:
export LC_ALL = fi_FI.UTP-8.

varmaan UTF eikä UTP.

Ohjeen mukaan kirjoitin myös /etc/environment -tiedostoon, jotta samaa komentoa ei tarvitsisi käsin kirjoittaa
joka bootin yhteydessä :
LC_ALL=fi_FI.UTP-8

vielä edellisessä versiossa tuo oli oikea paikka, mutta oikeampi taitaa 9.04:ssa ja myöhemmissä olla /etc/default/locale. kyllähän se tuoltakin toimii, mutta...

ONGELMA: Nyt esim /var/log/samban lokitiedostoihin kertyy suomenkielisiä ilmoituksia. Koitapa niiden perusteella sitten haeka kansainvälisiltä markkinoilta ohjeita.

sellaista se on. äkkisetlään en kyllä keksi miten logit saisi jollekin toiselle kielelle, ellei sitten logittava ohjelmaa ajaisi toisella localella kuin itse järjestelmää. en ole kyllä koskaan kokeillut tuollaista, joten en tiedä onnistuisiko se kuinka kätevästi.
Janne

SuperOscar

  • Käyttäjä
  • Viestejä: 4000
  • Ocatarinetabellatsumtsum!
    • Profiili
    • Legisign.org
Vs: locale problem
« Vastaus #3 : 25.10.09 - klo:14.23 »
äkkisetlään en kyllä keksi miten logit saisi jollekin toiselle kielelle, ellei sitten logittava ohjelmaa ajaisi toisella localella kuin itse järjestelmää. en ole kyllä koskaan kokeillut tuollaista, joten en tiedä onnistuisiko se kuinka kätevästi.

Eikös se käy hyvinkin kätevästi? Jos esim. ohjelmaa normaalisti kutsutaan näin:

Koodia: [Valitse]
foo --bar
...muutetaan rivi tällaiseksi:

Koodia: [Valitse]
LANG=C foo --bar
pöytäkone 1, kannettavat 1–3: Debian GNU/Linux 12; pöytäkone 2: openSUSE Tumbleweed; NUC: openSUSE Leap 15.5; RPi 1: FreeBSD 14-RELEASE; RPi 2: LibreELEC 11

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Vs: locale problem
« Vastaus #4 : 25.10.09 - klo:18.13 »
Eikös se käy hyvinkin kätevästi? Jos esim. ohjelmaa normaalisti kutsutaan näin:

Koodia: [Valitse]
foo --bar
...muutetaan rivi tällaiseksi:

Koodia: [Valitse]
LANG=C foo --bar

joo, jos ohjelma suoritetaan itse komentoriviltä. nyt taitaa kuitenkin olla kyse sambasta joka yleensä käynnistetään palveluna ja tuo locale pitäisi ympätä sinne init-scriptii tai vastaavaan. tuota ehdottamaasi olen toki kokeillut, mutta palvelujen twiikkaamista localen osalta en ole koskaan tarvinnut.
Janne

SuperOscar

  • Käyttäjä
  • Viestejä: 4000
  • Ocatarinetabellatsumtsum!
    • Profiili
    • Legisign.org
Vs: locale problem
« Vastaus #5 : 25.10.09 - klo:18.18 »
joo, jos ohjelma suoritetaan itse komentoriviltä. nyt taitaa kuitenkin olla kyse sambasta joka yleensä käynnistetään palveluna ja tuo locale pitäisi ympätä sinne init-scriptii tai vastaavaan.

Samahan se on, mistä sitä kutsutaan, jos kutsua pääsee tuon verran muokkaamaan :)
pöytäkone 1, kannettavat 1–3: Debian GNU/Linux 12; pöytäkone 2: openSUSE Tumbleweed; NUC: openSUSE Leap 15.5; RPi 1: FreeBSD 14-RELEASE; RPi 2: LibreELEC 11

retu

  • Käyttäjä
  • Viestejä: 949
    • Profiili
Vs: locale problem
« Vastaus #6 : 26.10.09 - klo:09.27 »
Mulla on siellä /etc/environment tiedostossa tämmöiset asetukset:
Koodia: [Valitse]
LANG="en_GB.UTF-8"
LC_CTYPE="fi_FI.UTF-8"
LC_COLLATE="fi_FI.UTF-8"
LC_TIME="fi_FI.UTF-8"
LC_NUMERIC="fi_FI.UTF-8"
LC_MONETARY="fi_FI.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="fi_FI.UTF-8"
LC_NAME="fi_FI.UTF-8"
LC_ADDRESS="fi_FI.UTF-8"
LC_TELEPHONE="fi_FI.UTF-8"
LC_MEASUREMENT="fi_FI.UTF-8"
LC_IDENTIFICATION="fi_FI.UTF-8"
LANGUAGE="en_GB:en"
Ideana tuossa siis että localen maa-asetukset olisi suomeksi vaikka muuten englanniksi. Olen alunperin asentanut englanninkielisen version, mutta kyllästyin katselemaan nurinkurisia päiväksiä. Jostain syystä suomenkielinen locale tuki on naitettu kielipaketteihin. Tavallaan tietysti järkevää, mutta myös järjetöntä että maa-asetusten takia pitää asentaa kasa isoja käännöspaketteja.

Siihen alkuperäiseen herjaan liittyen, olisikohan auttanut pelkkä:
Koodia: [Valitse]
sudo dpkg-reconfigure locales?