Sziasztok!
Adott egy opensuse 12.3 abszolút minimál text mode install - ami még kell felrakosgattam.
LANG=POSIX
Egyéb installált nyelv nincsen.
LC_* nincs beállítva.
Egyszer csak találtam egy ilyen üzenetet (unicode):
tar: file.name: Cannot stat: Nincs ilyen fájl vagy könyvtár.
Honnan tuja a rendszer, hogy magyar vagyok?
Ellenpróba:
tar cvf tarfile.tar file
tar: file: Cannot stat: No such file or directory
- 5187 megtekintés
Hozzászólások
Ahol magyar üzenetet kaptál, ott sem volt beállítva? RC_ kezdetű változó sem?
Esetleg itt nézz körül: http://doc.opensuse.org/documentation/html/openSUSE/opensuse-reference/…
Egyébként ha lokálisan futó programtól kaptál magyar üzenetet, akkor biztosan fel van telepítve legalább a magyar nyelvű támogatás. ;)
Aki tudja, csinálja, aki nem tudja, tanítja... Hm... igazgatónak talán még jó lennék. :)
- A hozzászóláshoz be kell jelentkezni
Köszi a törődést!
Roppant érdekes a kérdés. Ha beállítom: LANG=hu_HU, akkor jön a magyar üzenet.
Természetesen mielőtt feltettem a kérdést végigellenőriztem mindent:
/etc/sysconfig/language:
RC_LANG="POSIX"
RC_LC_ALL=""
RC_LC_MESSAGES=""
RC_LC_CTYPE=""
RC_LC_COLLATE=""
RC_LC_TIME=""
RC_LC_NUMERIC=""
RC_LC_MONETARY=""
RC_LC_PAPER=""
ROOT_USES_LANG="ctype"
AUTO_DETECT_UTF8="no"
INSTALLED_LANGUAGES=""
Effektíve van még egy user a rendszeren, ami fejlesztő és éles környezet és keten használjuk. Az a bizonyos üzenet a háttérben futó alkalmazáson belüli mentés közben keletkezett. Tehát azt kell mondjam, hogy a LANG hu_HU volt. Az alkalmazás parancssorból meghívva egy ``at'' paranccsal indítja el magát - ekkor öröklődhet a LANG. Az indítások naplózottak, csak én indítottam. - Tegyük fel, hogy a másik fejlesztő állította be a hu_HU-t, akkor is mindegy, mert ő nem indított. Én meg több mint 20 éve nem állítottam LANG-ot másra csak POSIX és ha elszúrták a rendszert, akkor en_US.
Van még egy postgres a rendszerben sql_ascii beállítással, ez sem lehet a forrás.
Leellenőriztem a windows+putty+többféle tunnel és tunnelen keresztül mentést is - az csak egy pipe.
Szóval rejtély!
- A hozzászóláshoz be kell jelentkezni
És az biztos, hogy at-vel indult és nem pl. cron-ból?
Esetleg valami script, amit futtattál, átírta a környezeti változókat?
Saját rendszereken szerettem utánajárni az ilyen rejtélyes viselkedéseknek, mert ez ha nem egy mellényúlás eredménye, akkor később még gondot is okozhat.
Aki tudja, csinálja, aki nem tudja, tanítja... Hm... igazgatónak talán még jó lennék. :)
- A hozzászóláshoz be kell jelentkezni
Konkrétan így:
PutEvent atstartmod $(print /bin/bash -c \'${Program} restart\' |at now+2 minute 2>&1 |awk '/job/ {print $7}')
A .profile meg ezzel indul: . ${HOME}/bin/set_env
Ezzel a futó és fejlesztői környezet azonos env mellet dolgozhat. A set_env csak egy link a programra.
A program mindent csinál, csak a lang állítgatását nem.
Egyes esetekben indulhat cron-ból is. Az meg kb. hasonló: bash -c ${Program} restart - ami env beállítással indul. Az env kb. 60-90k és vannak benne változók meg egy csomó függvény is. Amelyek nem foglalkoznak a LANG piszkálásával. (Ez valami script, fut, de én írtam. NICS benne LANG minta se.)
Megnéztem a cron-os indítást - nincs is LANG változó.
- A hozzászóláshoz be kell jelentkezni
link:http://www.linuxtopia.org/online_books/suse_linux_guides/SLES10/suse_en…
Ennek alapján kellene játszanod.
Van benne egy ajánlás:You should always set the language and country codes together.
Más: http://lists.opensuse.org/opensuse/2006-06/msg00436.html
ez aszál alapprogramok (aa-base és társai) mósodítása esetén fellépő hibát próbál megmagyarázni. Mint Te. (legalábbis el tudom képzelni, hogy ez is belejátszik a problémádba).
Más 5let most nincs, de aktuális sörözésünkkor ejtünk róla pár szót.
- A hozzászóláshoz be kell jelentkezni
további 5let: a hiba előfordulásakor strace -e trace=file locale vizsgálata, illetve a /etc/sysconfig/language átnézése.
- A hozzászóláshoz be kell jelentkezni
Az ott van fent.
Nincs hu a gépen.
- A hozzászóláshoz be kell jelentkezni
postgresből is lehet locale változókat állítani. kilépés után ezek is megmaradhatnak. ezt ellenőrizted?
- A hozzászóláshoz be kell jelentkezni
Igen. Amit állítok az csak az adatbázisra mutat: éles vagy gyakorló.
Shellből csak illyenek mennek: psql -A -t <
Az adatbázis UTF8, collation C.
A programozónak meg kell mondania a programban, ha hu szerint akar indexelni, de erre nem kerül sor. És a shell sem tud erről.
- A hozzászóláshoz be kell jelentkezni
OK.
Az eredeti kérdésed:Honnan tudja a rendszer, hogy magyar vagyok?
Mint erős dohányos a dohányboltok nemzeti jellegén elmélkedhetsz, hisz milyen lehetne még, mint nemzeti egy dohánybolt? nem-nemzeti? Más?
Itt nem erről van szó. Axióma: tökéletes program nincs. Ergo ha egy program létezik, az nem
tökéletes. Azt mondod "hu" nincs fenn a gépeden, tehát "hu" üzeneted sem kaphatsz. Mégis kapsz. Tehát nem a géped nemzeti/magyar/amitakarsz, hanem a beállítások kavarodnak el úgy,
hogy "NEM ANGOL/en_US" üzeneted kapsz (ami ezek szerint mégis fenn van a gépeden!). Ennek viszont KELL, hogy oka legyen.
- A hozzászóláshoz be kell jelentkezni
Nem is vagyok erős.
Az az állítás, hogy rutinom van elég, és biztos vagyok benne, hogy semmi hu-val kapcsolatos dolog nem történt. Nem teszteltem, nem használtam idegen programot, és egyszer megjelent egy olyan - egyébként máskor is előforduló - üzenet, ami hirtelen magyar lett.
Ilyekor az awk stb. - mint tudjuk - hirtelen másképp kezd működni, a rendszer viselkedése eléri az unpredictable minősítést. Megoldás: *copyd belsejében célszerű fixálni a LANG értékét. Ez csak suse rendszerek esetén igaz, hátha nem sikerült kiirtani az elmebeteg shell, vim, env és stb. beállításokat.
Mindezt amellett, hogy a rendszer annyira hiányos, hogy jóformán el sem indul :)
- A hozzászóláshoz be kell jelentkezni
Megoldás lehet, hogy rendesen felteszed a rendszert, nem törölgetsz, hanem az /etc/default alatt és az /etc-ben található *local (bash.bashrc.local,profile.local) illetve a user .bash* és .profile fájljaival hadakozol. Vagy másik rendszert használsz (ubuntu, debian, red hat, opensuse stb.)
Egy biztos, ha magyarul szól hozzád, vannak fenn magyar nyelvi(hu) fájlok, ha akartad őket, ha nem - ez nem rutin kérdése. Tény kérdés. Illetve nem kérdés. Tény.
Ezt az egész mizériát kikerülheted, ha összeállítasz egy saját linux verziót, azt teszel bele amit szeretnél, tesztelve, hogy azt csinálja amire be akarod lőni. Ehhez több disztribúció ad eszközt a kezedbe. Így nem kell az adott csomag összeállítást kritizálni/elfogadni, hanem sajátot készíteni/alkalmazni.
Egy "egyszerű" rendszert nem félig/hiányos telepítéssel, beletörléssel, kell összeállítani, hanem megválasztott csomagokkal/disztribúcióval. A redhatnél úgy tudom, egy gyerek kifejezetten ezzel foglalkozik/foglalkozott néhány éve: egy olyan összeállítás összeszedésével, tesztelésével, ami egy "minimal" linux, karakteres telepítéssel, használattal minden grafikus felhasználás kizárásával. Természetesen a redhatre alapozva.
- A hozzászóláshoz be kell jelentkezni
"Rendesen?"
Menü - kiválaszt - felrak. Ez nem rendes?
A minimal text bundle talán az MTA cseréje miatt szakad meg egy helyen, egyébként az összes dependencia helyén van. A SYSTEMD IS!!!!
A profil kiegészítéseket le kellett törölni, mert hibásan működtek a hibás dependencia miatt.
--> Aki írta soha nem tesztelte a disztribúció által adott környezetben.
A saját disztribúciót nem fizetik meg. A fenti mesterkedéssel elértem, hogy a shell=bash a sok felesleges ostobaság nélkül. Következmény: a bash akár 2 rendszeren is egyformán működik!
A disztribúció őszinte. A "minimal text mode" helyett régen volt valami "network server", ami akkor még anomáliák nélkül működött.
A nyelvi csomagokat meg még keresgélem.
- A hozzászóláshoz be kell jelentkezni