/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
Jeg vil ændre locale...
Fra : Axel Eystein Jensen


Dato : 04-03-01 12:13

Hvordan ændrer jeg på indstillingerne, som vises når jeg udfører
"locale"?
Jeg har nemlig posix hele vejen igennem, men vil gerne have da_DK!
Bruger debian 2.2-r2
--
MVH.
Axel

 
 
Klaus Alexander Seis~ (04-03-2001)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 04-03-01 12:30

Axel Eystein Jensen skrev:

> Hvordan ændrer jeg på indstillingerne, som vises når jeg
> udfører "locale"?
> Jeg har nemlig posix hele vejen igennem, men vil gerne have
> da_DK!
> Bruger debian 2.2-r2

Sæt LC_ALL=da_DK i /etc/environment.


// Klaus

--
><>°

Axel Eystein Jensen (04-03-2001)
Kommentar
Fra : Axel Eystein Jensen


Dato : 04-03-01 14:05

Klaus Alexander Seistrup wrote:
>
> Axel Eystein Jensen skrev:
>
> > Hvordan ændrer jeg på indstillingerne, som vises når jeg
> > udfører "locale"?
> > Jeg har nemlig posix hele vejen igennem, men vil gerne have
> > da_DK!
> > Bruger debian 2.2-r2
>
> Sæt LC_ALL=da_DK i /etc/environment.
....
eystein# cat /etc/environment
LANGUAGE=da_DK
LANG=da_DK
LC_ALL=da_DK
....
Det har jeg gjort, men hvad gør jeg bagefter?
Jeg har prøvet:
"dpkg-reconfigure locales"
"localedef -ci da_DK -f ISO_8859-1:1987 da_DK"
og forsk. varianter af ovenstående, men lige lidt hjælper det.
Noget jeg ikke forstår, er at man jo ikke definerer hvilke LC_* man vil
ændre med ovenstående. Er det her, det går galt?

--
MVH.
Axel

Klaus Alexander Seis~ (04-03-2001)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 04-03-01 14:53

Axel Eystein Jensen skrev:

>> Sæt LC_ALL=da_DK i /etc/environment.
>
> eystein# cat /etc/environment
> LANGUAGE=da_DK
> LANG=da_DK
> LC_ALL=da_DK
>
> Det har jeg gjort, men hvad gør jeg bagefter?

Hvad sker der når du kører "locale"? Viser det noget andet end da_DK?
I så fald, har du sat $LANG/$LC_* andre steder end i /etc/environment?
Fx i /etc/profile, ~/.bashrc el.lign.?

Hvad er det præcist du forsøger at opnå? At kunne skrive danske bog-
staver eller at få programmerne til at snakke dansk? Og er det i tty
eller X (i så fald, hvilken windowmanager?)?

Har du læst Danish-HOWTO'en? Står der noget du kan bruge?

> Jeg har prøvet:
> "dpkg-reconfigure locales"
> "localedef -ci da_DK -f ISO_8859-1:1987 da_DK"
> og forsk. varianter af ovenstående, men lige lidt hjælper det.
> Noget jeg ikke forstår, er at man jo ikke definerer hvilke LC_*
> man vil ændre med ovenstående. Er det her, det går galt?

Næppe. Den der localedef-tingest er en man kører for at compile de
forskellige localefiler, fx når man har installeret et nyt libc -
det er ikke meningen at man selv skal køre den (men /etc/locale.gen
og /etc/locale.alias skal selvfølgelig være sat korrekt op).


// Klaus

--
><>°

Axel Eystein Jensen (04-03-2001)
Kommentar
Fra : Axel Eystein Jensen


Dato : 04-03-01 15:40

Klaus Alexander Seistrup wrote:
....
....
> Hvad sker der når du kører "locale"? Viser det noget andet end da_DK?
....
Den viser stadig posix i alle grupper:
eystein:/# locale
LANG=POSIX
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
> I så fald, har du sat $LANG/$LC_* andre steder end i /etc/environment?
> Fx i /etc/profile, ~/.bashrc el.lign.?
....
Det har du sikkert ret i, men jeg har nu ikke selv gjort noget særligt.
Jeg har kigget i /etc/profile og ~/.bashrc, men der er ikke noget m.
$LANG/$LC_* el.lign. Hvor jeg eller skulle lede, ved jeg ikke!
....
> Hvad er det præcist du forsøger at opnå? At kunne skrive danske bog-
> staver eller at få programmerne til at snakke dansk? Og er det i tty
> eller X (i så fald, hvilken windowmanager?)?
....
Jeg vil primært kunne skrive danske bogstaver i tty, X skriver fint æ,ø
og å.
Det gør tty for så vidt også, når jeg fx. skal logge ind, men ellers
ikke!
....
> Har du læst Danish-HOWTO'en? Står der noget du kan bruge?
....
Jeps, jeg har fået at vide, at den er uddateret, og at jeg skulle sætte
locale-værdierne i stedet, hvilket er hvad jeg prøver nu!
....
> det er ikke meningen at man selv skal køre den (men /etc/locale.gen
> og /etc/locale.alias skal selvfølgelig være sat korrekt op).
....
eystein:/# cat /etc/locale.gen|grep -i da
da_DK ISO-8859-1
....
eystein:/# cat /etc/locale.alias| grep -i dan
danish da_DK.ISO-8859-1
dansk      da_DK.ISO-8859-1
....
Jeg er blank...
--
MVH.
Axel

Axel Eystein Jensen (04-03-2001)
Kommentar
Fra : Axel Eystein Jensen


Dato : 04-03-01 16:00

Surpirsing news
Alt hvad jeg har udført, har jeg udført som root, men nu er locale for
user=axel:
axel@eystein$ locale
LANG=C
LC_CTYPE="da_DK"
LC_NUMERIC="da_DK"
LC_TIME="da_DK"
LC_COLLATE="da_DK"
LC_MONETARY="da_DK"
LC_MESSAGES="da_DK"
LC_PAPER="da_DK"
LC_NAME="da_DK"
LC_ADDRESS="da_DK"
LC_TELEPHONE="da_DK"
LC_MEASUREMENT="da_DK"
LC_IDENTIFICATION="da_DK"
LC_ALL=da_DK
....
Så et eller andet er der sket! Men ikke for root?!? Måske kan man ikke
ændre på det?
Hvad så med LANG=C? Kan det ændres?
--
MVH.
Axel

Adam Sjøgren (04-03-2001)
Kommentar
Fra : Adam Sjøgren


Dato : 04-03-01 16:42

On Sun, 04 Mar 2001 14:59:37 GMT, Axel Eystein Jensen wrote:

> Så et eller andet er der sket! Men ikke for root?!?

Dumt spørgsmål: Har du logget ud og ind igen som root, efter du har
ændret i /etc/environment (/etc/whatever...)?


Mvh.

--
"The incurable weirdness poster child" Adam Sjøgren
asjo@koldfront.dk

Axel Eystein Jensen (04-03-2001)
Kommentar
Fra : Axel Eystein Jensen


Dato : 04-03-01 23:15

"Adam Sjøgren" wrote:
....
> Dumt spørgsmål: Har du logget ud og ind igen som root, efter du har
> ændret i /etc/environment (/etc/whatever...)?
....
Ikke så dumt igen
Jeg har prøvet at logge ud og ind igen på en konsol i X=>ingen effekt
Jeg har prøvet at genstarte
Men, hvis jeg logger ind gennem tty=>perfekt
Hvorfor er der forskel på konsol gennem X og tty?

--
MVH.
Axel

Klaus Alexander Seis~ (05-03-2001)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 05-03-01 01:07

Axel Eystein Jensen skrev:

> Hvorfor er der forskel på konsol gennem X og tty?

X-tingene læser ikke /etc/environment af en eller anden grund (det
har vist noget med PAM at gøre, men jeg har ikke sat mig ind i PAM,
så spørg mig ikke om det). Jeg har klaret det på en lidt klodset
måde:

# /etc/environment
ENVIRONMENT_IS_SOURCED="TRUE"
# ...

# /etc/profile
if [ "$ENVIRONMENT_IS_SOURCED" = "TRUE" ]; then
if [ -f /etc/environment ]; then
source /etc/environment
fi
fi
export LANG LC_ALL
# ...


// Klaus

--
><>°

Klaus Alexander Seis~ (05-03-2001)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 05-03-01 01:10

For lidt siden skrev jeg:

> if [ "$ENVIRONMENT_IS_SOURCED" = "TRUE" ]; then

Der skulle naturligvis have stået:

if [ "$ENVIRONMENT_IS_SOURCED" != "TRUE" ]; then

Beklager...


// Klaus

--
><>°

Klaus Alexander Seis~ (05-03-2001)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 05-03-01 01:36

Axel Eystein Jensen skrev:

> Hvorfor er der forskel på konsol gennem X og tty?

X-tingene læser ikke /etc/environment af en eller anden grund (det
har vist noget med PAM at gøre, men jeg har ikke sat mig ind i PAM,
så spørg mig ikke om det). Jeg har klaret det på en lidt klodset
måde:

# /etc/environment
ENVIRONMENT_IS_SOURCED="TRUE"
# ...

# /etc/profile
if [ "$ENVIRONMENT_IS_SOURCED" != "TRUE" ]; then
if [ -f /etc/environment ]; then
source /etc/environment
fi
fi
export LANG LC_ALL
# ...


// Klaus

--
><>°

frank damgaard (05-03-2001)
Kommentar
Fra : frank damgaard


Dato : 05-03-01 04:31

Klaus Alexander Seistrup <klaus@seistrup.dk> wrote:

....

>> Hvorfor er der forskel på konsol gennem X og tty?

> X-tingene læser ikke /etc/environment af en eller anden grund (det
> har vist noget med PAM at gøre, men jeg har ikke sat mig ind i PAM,
> så spørg mig ikke om det). Jeg har klaret det på en lidt klodset
> måde:

Læs evt. manualen til den aktuelle shell.
Der står hvilke filer der læses og det er ikke /etc/envronment

Men der står også :
When bash is started non-interactively, to run a shell
script, for example, it looks for the variable BASH_ENV in
the environment, expands its value if it appears there,
and uses the expanded value as the name of a file to read
and execute. Bash behaves as if the following command
were executed:
if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi
but the value of the PATH variable is not used to search
for the file name.

Men mere sansynligt er det at et eller andet opstartsscript
henter /etc/environment
Men det gælder sikkert ikke tcsh/csh og andre shells,
spcielt da *csh ikke er kompatibel med bash/sh/zsh/....


Der er også forskel på "login-shells" og almindelige non-login shells:

INVOCATION
A login shell is one whose first character of argument
zero is a -, or one started with the --login option.

An interactive shell is one whose standard input and
output are both connected to terminals (as determined by
isatty(3)), or one started with the -i option. PS1 is set
and $- includes i if bash is interactive, allowing a shell
script or a startup file to test this state.

Hos mig startes windowmanageren fra mit ~/.xsession
og eventuelle enviroment variable kan erklæres i denne
(eller sources fra environment-fil hvis man hellere vil dette)
--
Frank Damgaard


Klaus Alexander Seis~ (05-03-2001)
Kommentar
Fra : Klaus Alexander Seis~


Dato : 05-03-01 09:42

Frank Damgaard skrev:

> Læs evt. manualen til den aktuelle shell.
> Der står hvilke filer der læses og det er ikke /etc/environment

Om /etc/environment bliver læst eller ej styres, som tidligere nævnt,
fra PAM. Her er et udklip af /etc/pam.d/login, som den ser ud på
min maskine:

#v+

# This module parses /etc/environment (the standard for setting
# environ vars) and also allows you to use an extended config
# file /etc/security/pam_env.conf.
# (Replaces the `ENVIRON_FILE' setting from login.defs)
auth required pam_env.so

#v-

Man kan formodentlig få X til at benytte /etc/environment ved at ind-
sætte en lignende linie et passende sted i PAM-filen for éns display-
manager (fx /etc/pam.d/wdm hvis man bruger wdm).

Ellers ku' man måske tage et kig på den der /etc/login.defs, der
nævnes ovenfor.


// Klaus

--
><>°   

Axel Eystein Jensen (05-03-2001)
Kommentar
Fra : Axel Eystein Jensen


Dato : 05-03-01 12:15

Axel Eystein Jensen wrote:
> Ikke så dumt igen
> Jeg har prøvet at logge ud og ind igen på en konsol i X=>ingen effekt
> Jeg har prøvet at genstarte
> Men, hvis jeg logger ind gennem tty=>perfekt
> Hvorfor er der forskel på konsol gennem X og tty?
....
Nu har jeg rodet lidt videre. Jeg tror faktisk ikke, at det har noget
med X og konsol/tty at gøre.

Det er nærmere den måde, hvorpå jeg logger ind som root fra en anden
bruger.
Jeg plejer at bruge enten "su -" eller "su - root", når jeg gør det, så
er alle indstillinger i locale =posix. Hvis jeg logger direkte ind som
root, ja så er der ingen probs.
--
MVH.
Axel

Axel Eystein Jensen (08-03-2001)
Kommentar
Fra : Axel Eystein Jensen


Dato : 08-03-01 22:33

Axel Eystein Jensen wrote:
....
> Nu har jeg rodet lidt videre. Jeg tror faktisk ikke, at det har noget
> med X og konsol/tty at gøre.
>
> Det er nærmere den måde, hvorpå jeg logger ind som root fra en anden
> bruger.
> Jeg plejer at bruge enten "su -" eller "su - root", når jeg gør det, så
> er alle indstillinger i locale =posix. Hvis jeg logger direkte ind som
> root, ja så er der ingen probs.
....
Er der ikke nogen, der kan knytte en kommentar til ovenstående fænomen?
--
MVH.
Axel

Leo Laursen (08-03-2001)
Kommentar
Fra : Leo Laursen


Dato : 08-03-01 23:17

I artikel <3AA7FA5B.D5C43AF6@eystein.dk>, skrev "Axel Eystein Jensen"
<axel@eystein.dk>:

>> Det er nærmere den måde, hvorpå jeg logger ind som root fra en anden
>> bruger. Jeg plejer at bruge enten "su -" eller "su - root", når jeg
>> gør det, så er alle indstillinger i locale =posix. Hvis jeg logger
>> direkte ind som root, ja så er der ingen probs.

Interessant! Jeg prøvede lige at eksperimentere.
su       -> da_DK
su -      -> da
su root      ->da_DK
Alle tre i en gnome-term.
Leo

Leo Laursen (09-03-2001)
Kommentar
Fra : Leo Laursen


Dato : 09-03-01 02:11

"Leo Laursen"
>
>>> Det er nærmere den måde, hvorpå jeg logger ind som root fra en anden
>>> bruger. Jeg plejer at bruge enten "su -" eller "su - root", når jeg
>>> gør det, så er alle indstillinger i locale =posix. Hvis jeg logger
>>> direkte ind som root, ja så er der ingen probs.
>
> Interessant! Jeg prøvede lige at eksperimentere.
> su       -> da_DK
> su -       -> da
>
OK Der var en linie i /root/.bashrc med "export LANG=da"
og da det er den der bliver indlæst for non-login så...
Prøv du at indsætte "export LC_ALL=da_DK" så får du vist
alle locale variabler i et hug.
Leo

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408893
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste