Questo capitolo descrive solo i principi basilari della configurazione del sistema tramite l'interfaccia a carattere. Un prerequisito di questo capitolo è aver letto Suggerimenti per l'installazione di un sistema Debian, Capitolo 3.
Per coloro interessati alla sicurezza, si raccomanda caldamente di leggere il
Securing Debian
Manual
, che si può anche reperire come pacchetto
harden-doc
.
Vedere init, Sezione 2.4.1 per le basi sugli script di inizializzazione Debian.
Debian utilizza il sistema di script sys-V. Nonostante tutti gli script
contenuti in /etc/init.d/*
siano marcati come file di
configurazione (conffiles) e gli amministratori di sistema siano liberi di
modificarli, la personalizzazione degli script tramite la modifica dei files
contenuti in /etc/default/*
è l'approccio preferito.
Per esempio, /etc/init.d/rcS
può essere utilizzato per
personalizzare i defaults al boot per motd
, sulogin
,
etc.
La modalità del log del sistema può essere configurata tramite
/etc/syslog.conf
. Date un'occhiata al pacchetto
colorize
per un programma che assegna colori differenti ai vari
file di log. Vedere anche syslogd(8)
e
syslog.conf(5)
.
Esistono alcune configurazioni hardware la cui ottimizzazione e lasciata da Debian alla cura dell'amministratore di sistema.
hdparm
hdparm(8)
.
setserial
scsitools
memtest86
hwtools
schedutils
taskset
, irqset
, lsrt
, e
rt
.
nice
e renice
(non incluso), permettono un
controllo completo dei parametri di scheduling dei processi.
PAM (Pluggable Authentication Modules) forniscono il controllo sul login.
/etc/pam.d/* # files di controllo PAM control files /etc/pam.d/login # file di controllo PAM per il login /etc/security/* # parametri dei moduli PAM /etc/securetty # controlla il login di root da console (login) /etc/login.defs # controlla i vari comportamenti del login (login)
Se volete dei terminali senza password, ma insicuri, modificate a vostro
rischio e pericolo il contenuto di /etc/pam.d/login
come segue.
#auth required pam_unix.so nullok auth required pam_permit.so
Trucchetti simili possono essere applicati a xdm
,
gdm
, ... , per un accesso senza password alla console X.
Al contrario, se volete applicare una buona politica di password, installate
cracklib2
e modificate /etc/pam.d/passwd
come segue.
password required pam_cracklib.so retry=3 minlen=6 difok=3
Le password utilizzabili solo una volta per l'attivazione degli account possono
anche essere utili. Per fare ciò, usate il comando passwd con l'opzione
-e passwd(1)
.
Il numero massimo di processi può essere impostato con ulimit -u
1000 nella Bash shell oppure tramite
/etc/security/limits.conf
da PAM. Altri parametri, come
core possono essere impostati allo stesso modo. Il valore
iniziale di PATH
può essere impostato tramite
/etc/login.defs
prima che intervenga lo script di inizializzazione
della shell.
La documentazione per PAM è contenuta nel pacchetto libpam-doc
.
La "Linux-PAM System Administrator's Guide" copre gli aspetti della
configurazione di, quali moduli sono disponibili, ecc. La documentazione
comprende, inoltre, la "The Linux-PAM Application Developers' Guide"
e la "The Linux-PAM Module Writers' Guide".
su
does not support the wheel group" (Perchè GNU su
non supporta il gruppo wheel)
Questa è la famosa frase al termine della vecchia pagina di info
su, di Richard M. Stallman. Per non preoccuparsi: l'attuale
su
in Debian usa PAM, così che potete ridurre la capacità di usare
su
a qualsiasi gruppo usando pam_wheel.so
in
/etc/pam.d/su
. Quanto segue imposta il gruppo adm
group di un sistema Debian come equivalente del gruppo wheel di
BSD, permettendo su
senza la password per i suoi membri.
# configurazione anti-RMS in /etc/pam.d/su auth required pam_wheel.so group=adm # I membri del gruppo wheel possono dare su senza la password auth sufficient pam_wheel.so trust group=adm
Alcuni gruppi interessanti:
su
se
pam_wheel.so
è utilizzato senza l'argomento group=.
/usr/src
. può essere usato localmente per fornire ad un utente la
possibilità di modificare il codice sorgente del sistema.
/usr/local
e di creare delle directory in /home
.
Per una lista completa, leggete la sezione "FAQ" del Securing Debian
Manual
, che può anche essere reperita come pacchetto
harden-doc
.
sudo
– un ambiente di lavoro più sicuro
L'uso che faccio di sudo
è fondamentalmente a protezione dalla mia
stessa stupidità. Reputo l'uso di sudo
un'alternativa migliore al
continuo uso del sistema come root.Per voi le cose possono essere diverse.
Installate sudo
ed attivatelo impostando le opzioni in
/etc/sudoers
. Controllate anche le
caratteristiche del gruppo sudo in
/usr/share/doc/sudo/OPTIONS
.
La configurazione di esempio fornisce ai membri del gruppo "staff"
accesso a qualsiasi comando come root tramite sudo
nonchè accesso
ai membri di "src" a comandi selezionati come root, sempre tramite
sudo
.
Il vantaggio di sudo
è che richiede solo la user password, e che
l'attività e monitorizzata. E' un modo carino per dare un minimo di autorità
ad un amministratore alle prime armi. Per esempio:
$ sudo chown -R myself:mygrp .
Ovviamente se conoscete la password di root (come la maggior parte degli utenti casalinghi) qualunque comando può essere eseguito come root da un account utente:
$ su -c "shutdown -h now" Password:
(So che dovrei restringere i privilegi dell'account admin in sudo
.
Dato che è il mio server casalingo, non me ne sono ancora preso la briga.)
Per un programma differente che permetta agli utenti ordinari di eseguire
comandi con privilegi di root, vedere il pacchetto super
.
Il super-server Internet inetd
, viene lanciato al boot da
/etc/rc2.d/S20inetd
(per RUNLEVEL=2), che è un link simbolico a
/etc/init.d/inetd
. In breve, inetd
permette il
lancio di un demone per richiamarne altri, riducendo il carico sul sistema.
Ogni volta che arriva la richiesta di un servizio, il suo protocollo ed il
servizio vengono identificati guardando nel database contenuto in
/etc/protocols
e in /etc/services
.
inetd
cerca, poi, un normale servizio Internet nel database
/etc/inetd.conf
, oppure un servizio basato su Sun-RPC in
/etc/rpc.conf
.
Per la sicurezza del sistema, accertatevi di disabilitare i servizi
inutilizzati in /etc/inetd.conf
. I servizi Sun-RPC devono essere
attivi per il NFS ed altri programmi basati su RPC.
Talvolta inetd
non lancia il server interessato direttamente, ma
lancia il wrapper del demone TCP/IP tcpd
con il nome del server
come argomento in /etc/inetd.conf
. In questo caso
tcpd
lancia il server appropriato dopo aver registrato la
richiesta e fatto alcuni controlli addizionali, utilizzando
/etc/hosts.deny
e /etc/hosts.allow
.
Se avete problemi con l'accesso remoto in un sistema Debian recente, commentate
"ALL: PARANOID" in /etc/hosts.deny
, se esiste.
Per i dettagli, vedere inetd(8)
, inetd.conf(5)
,
protocols(5)
, services(5)
, tcpd(8)
,
hosts_access(5)
, e hosts_options(5)
.
Per maggiori informazioni su Sun-RPC, vedere rpcinfo(8)
,
portmap(8)
, e
/usr/share/doc/portmap/portmapper.txt.gz
.
Riferimenti:
OpenLDAP
openldap-guide
LDAP Linux
HOWTO
LDAP
Implementation HOWTO
OpenLDAP,
extensive use reports
Open LDAP
with Courier IMAP and Postfix
I masterizzatori con interfaccia ATAPI/IDE sono di recente diventati un'opzione
molto popolare. Rappresentano un supporto valido per il backup e
l'archiviazione per l'utente casalingo che ha bisogno di capacità di < 640
MB. Per le informazioni più autorevoli, consultate il LDP CD-Writing-HOWTO
.
Primo, ogni danneggiamento di dati inviati al masterizzatore porterà ad un danno irreparabile del CD. Prendete il masterizzatore con il buffer più grande possibile. Se i soldi non sono un problema, prendetene uno con interfaccia SCSI. Se potete scegliere quale interfaccia IDE connettere, prendete quello su bus PCI (sulla scheda madre), piuttosto che su bus ISA (schede SB16, ecc.). etc.).
Quando il masterizzatore è connesso su IDE, deve essere comandato dal driver IDE-SCSI, non dall'IDE-CD. Deve essere attivato anche il driver generico SCSI. Esistono due approcci per ottenere ciò, per i kernel delle moderne distribuzioni (Marzo 2001).
lilo
Aggiungete la riga seguente a /etc/lilo.conf
se state usando un
kernel Debian standard. Se usate opzioni multiple, separatele da spazi:
append="hdx=ide-scsi ignore=hdx"
Dove la collocazione del masterizzatore, a cui si accede tramite il driver ide-scsi, è indicata da hdx, dove x rappresenta uno dei seguenti:
hda se master sulla prima porta IDE hdb se slave sulla prima porta IDE hdc se master sulla seconda porta IDE hdd se slave sulla seconda porta IDE hde ... hdh per un drive su porta IDE esterna, ATA66/100
Date i comandi seguenti per l'attivazione dopo la configurazione:
# lilo # shutdown -h now
Debian usa make-kpkg
per creare il kernel. Usate il nuovo
--append_to_version con make-kpkg per produrre più kernel. Vedere
Il kernel Linux su Debian, Capitolo 7.
Usate le seguenti impostazioni attraverso make menuconfig:
Il supporto del kernel per il CD-writer può essere attivato al boot con il seguente:
# echo ide-scsi >>/etc/modules # echo sg >>/etc/modules # echo sr >>/etc/modules # cd /dev; ln -sf scd0 cdrom
L'attivazione manuale può essere fatta con:
# modprobe ide-scsi # modprobe sg # modprobe sr
Dopo il reboot, potete controllarne l'installazione con:
$ dmesg|less # apt-get install cdrecord # cdrecord -scanbus
[Da Warren Dodge] Talvolta sorgono conflitti fra ide-scsi e
ide-cd se ci sono sia un lettore che un masterizzatore nel
sistema. Provate ad aggiungere la riga seguente al vostro
/etc/modutils/aliases
, lanciando poi update-modules
,
e facendo il reboot.
pre-install ide-scsi modprobe ide-cd
Ciò determina il caricamento del driver IDE prima di ide-scsi. Il driver IDE ide-cd prende il controllo del CD_ROM ATAPI — di qualsiasi altra cosa che non gli si è stato detto di ignorare. Ciò lascia solo i devices ignorati al controllo di ide-scsi.
Per creare un CD-ROM con files contenuti nella target-directory/
come cd-image.raw
(bootabile, con il formato Joliet TRANS.TBL
abilitato; se non lo volete bootabile, togliete le opzioni -b e
-c), inserite un boot floppy nel drive e,
# dd if=/dev/fd0 target-directory/boot.img # mkisofs -r -V volume_id -b boot.img -c bootcatalog -J -T \ -o cd-image.raw target_directory/
Una trucco divertente è fare dei CD-ROM bootabili in DOS. Se una normale
immagine DOS di un boot floppy è contenuta in boot.img
,
il CD-ROM eseguirà il boot come se nel primo floppy drive (A:) ci fosse un
floppy DOS. Più interessante potrebbe essere farlo con freeDOS.
Il file CD-image può essere ispezionato montandolo sul device loop.
# mount -t iso9660 -o ro,loop cd-image.raw /cdrom # cd /cdrom # mc # umount /cdrom
Primo test con (in caso di velocità 2x)
# nice --10 cdrecord -dummy speed=2 dev=0,0 disk.img
Se tutto va bene, scrivete sul CD-R con
# nice --10 cdrecord -v -eject speed=2 dev=0,0 disk.img
Oppure, sul CD-RW con
# nice --10 cdrecord -v -eject blank=fast speed=2 dev=0,0 disk.img
Alcune periferiche CD-RW funzionano meglio con
# nice --10 cdrecord -v blank=all speed=2 dev=0,0 disk.img
seguito da
# nice --10 cdrecord -v -eject speed=2 dev=0,0 disk.img
Sono necessari due passaggi per prevenire i timeout SCSI durante la fase di
blanking dall'interferire con la fase di masterizzazione. Il valore
dell'argomento di nice
può richiedere qualche aggiustamento.
Alcuni CD-R e CD commerciali hanno dei settori spuri alla fine, cosa che rende
impossibile la copia tramite dd
(il CD di Windows 98 è uno di
questi). Il pacchetto cdrecord
ha il comando readcd
.
Usatelo per copiare qualsiasi CD in un file immagine. Se è un disco di dati,
montatelo ed eseguite mount
per vedere le dimensioni reali.
Dividete il numero ottenuto (in blocchi = 1024 bytes) per 2 per avere il numero
reale di settori del CD (2048 bytes). Lanciate readcd
con le
opzioni ed usate l'immagine risultante per bruciare il CD-R/RW.
# readcd target lun scsibusno # select function 11
Impostate tutti e 3 i parametri a 0 per la maggior parte dei casi. Talvolta il
numero di settori dato da readcd
è eccessivo! Utilizzate il
numero ottenuto da un montaggio reale per i migliori risultati.
Il mio CD-R = +2 settori MS Windows CD = +1 settore, i.e., +2048 bytes
Per le informazioni più aggiornate sui CD Debian visitate il Sito Debian CD
.
Se avete una connessione Internet veloce, potete prendere in considerazione l'installazione via rete usando:
immagini
floppy
.
immagine minima su CD
bootabile
.
Se non avete una connessione veloce, considerate l'acquisto dei CD dai Venditori di CD
.
Non sprecate banda scaricando i CD immagine standard a meno di non essere un tester di CD immagine (anche con il nuovo metodo jigdo).
Un'mmagine degna di nota è KNOPPIX - Live Linux
Filesystem On CD
. Questo CD farà il boot in un sistema Debian
perfettamente funzionante senza installarsi sul disco rigido.
Per copiare i file di configurazione chiave e di dati sul CD-R, usate lo script
di "backup" backup
. Vedete
anche Backup differenziali e
sincronizzazione dei dati, Sezione 8.4.
Non testato da me:
# apt-get install cdrecord cdparanoia # cdparanoia -s -B # cdrecord dev=0,0,0 speed=2 -v -dao -eject defpregap=1 -audio *.wav
oppure,
# apt-get install cdrdao #disk at once # cdrdao read-cd --device /dev/cdrom --paranoia-mode 3 mio_cd # legge il cd # cdrdao write --device /dev/cdrom --speed 8 mio_cd # scrive un nuovo CD
cdrdao
esegue una copia conforme (senza pause, ecc...)
L'ambiente grafico X è fornito da Xfree86
. Due sono le versioni
principali del server X server disponibili sun un sistema Debian: V3.x e V4.x.
Queste definizioni ribaltano il concetto normale di "server" e
"client". Per i principi base fate riferimento a X(7)
,
al LDP XWindow-User-HOWTO
,
e al Remote X
Apps mini-HOWTO
.
Molteplici sono i modi di far accettare al "server X" (lato schermo) connessioni remote da un "client X" (lato applicazione):
xhost
xhost
, Sezione
9.4.7 and xhost(1x)
.
xauth
xhost
).
ssh
-X
.
xauth(1x)
.
xdm
, wdm
, gdm
, kdm
, ...
xauth
).
xdm(1x)
e Xsecurity(7)
per le basi del
controllo degli accessi allo schermo X.
wdm(1x)
, gdm(8)
, e kdm.options(5)
per maggiori informazioni, se sono installati.
xdm
per avere una cosole Linux al boot senza rimuovere il
pacchetto xdm
.
ssh -X
ssh
, Sezione
9.4.8.
Tutti i metodi di connessione remota, tranne ssh
, richiedono
l'abilitazione della connessione TCP/IP sul server X. Vedere Connessione TCP/IP ad X, Sezione 9.4.6.
Per facilitare l'installazione di X esistono alcuni (meta)pacchetti in Woody.
x-window-system-core
xserver-xfree86
, una serie di fonts ed un gruppo di X
clients base e di utilità.
x-window-system
x-window-system-core
, twm
, e xdm
, cioè
non è necessario installare x-window-system-core
se installate
questo.)
xserver-common-v3
xserver-*
xserver-common-v3
.)
Per la maggior parte dei casi il pacchetto da installare è
x-window-system
. (Se volete il login da console, assicuratevi di
diasbilitare xdm
come descritto in "Voglio disabilitare X al boot!",
Sezione 8.1.4.)
Per abilitare il riconoscimento dell' hardware durante la fase di configurazione di X, installate i seguenti pacchetti prima di installare X:
discover
— sistema di identificazione hardware.
mdetect
— Strumento di autoidentificazione del mouse.
read-edid
— strumento per la raccoglta di informazioni
sull'hardware per monitor VESA PnP.
Vedere XFree86(1x)
per informazioni sull' X server.
Invocare l' X server da una console locale:
$ startx -- :<display> vtXX p.es.: $ startx -- :1 vt8 -bpp 16 ... parte su vt8 connesso ao localhost:1 in modalità 16 bpp
Gli argomenti dati dopo -- sono per l' X server.
Notate che, quando si usa uno script ~/.xserverrc
per la
personalizzazione dell'avvio dell' X server, bisogna essere certi di
exec l' X server reale. Non fare ciò può causare rallentamenti
nell'avvio e nell'uscita del server. Per esempio:
#!/bin/sh exec /usr/bin/X11/X -dpi 100 -nolisten tcp
Per (ri-)configurare l' X4 server,
# dpkg-reconfigure --priority=low xserver-common dpkg-reconfigure # --priority=low xserver-xfree86
genererà il file /etc/X11/XF86Config-4
e configurerà X usando lo
script dexconf
.
Per (ri-)configurare l' X3 server,
# dpkg-reconfigure --priority=low xserver-common-v3 dpkg-reconfigure # --priority=low xserver-mach64
genererà il file /etc/X11/XF86Config
e configurerà X usando lo
script xf86config-v3
.
Per aggiungere delle personalizzazioni utente, non modificate il file di configurazione compreso fra il testo (Questo è per X4):
### BEGIN DEBCONF SECTION [snip] ### END DEBCONF SECTION
Invece, aggiungete le personalizzazioni prima del testo. Per esempio, per usare una scheda video personalizzata, aggiungete qualcosa di simile al testo seguente all' inizio del file:
Section "Device" Identifier "Custom Device" Driver "ati" Option "NoAccel" EndSection Section "Screen" Identifier "Custom Screen" Device "Custom Device" Monitor "Generic Monitor" DefaultDepth 24 Subsection "Display" Depth 8 Modes "1280x960" "1152x864" "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 16 Modes "1280x960" "1152x864" "1024x768" "800x600" "640x480" EndSubsection Subsection "Display" Depth 24 Modes "1280x960" "1152x864" "1024x768" "800x600" "640x480" EndSubsection EndSection Section "ServerLayout" Identifier "Custom" Screen "Custom Screen" InputDevice "Generic Keyboard" "CoreKeyboard" InputDevice "Configured Mouse" "CorePointer" EndSection
La maggior parte dei programmi X client possono essere lanciati con un comando tipo questo:
client $ xterm -geometry 80x24+30+200 -fn 6x10 -display hostname:0 &
Dove gli argomenti opzionali vogliono dire:
/tmp/.X11-unix/XD
(in tal modo è raggiungibile
solo da host).
Il displayname di default per il programma X client program (lato applicazione) può essere impostato tramite la variabile d'ambiente DISPLAY. Per esempio, prima di lanciare un programma X client l'esecuzione di uno dei seguenti comandi permette ciò:
$ export DISPLAY=:0 # il default, macchina locale, utilizzando il primo schermo X $ export DISPLAY=hostname.fulldomain.name:0.2 $ export DISPLAY=localhost:0
Il suo lancio può essere personalizzato tramite ~/.xinitrc
. per
esempio:
xrdb -load $HOME/.Xresources xsetroot -solid gray & xclock -g 50x50-0+0 -bw 0 & xload -g 50x50-50+0 -bw 0 & xterm -g 80x24+0+0 & xterm -g 80x24+0-0 & twm
Come descritto in Personalizzare X session, Sezione
9.4.5.1, ciò scavalca ogni normale esecuzione di Xsession, quando lanciato
da startx
. Usate qauesto approccio solo come ultima risorsa.
X session (X server + X client) può essere lanciata da:
startx
: script wrapper per initx
per lanciare l' X
server e client dalla console di Linux. se ~/.xinitrc
non esiste,
/etc/X11/Xsession
viene lanciato tramite
/etc/X11/xinit/xinitrc
.
xdm
, gdm
, kdm
, o wdm
:
demoni di X display manager per lanciare l' X server e client e per controllare
il login da un'interfaccia grafica. /etc/X11/Xsession
viene
eseguito direttamente.
Si può avere l'accesso alla console come da "Voglio disabilitare X al boot!", Sezione 8.1.4.
Lo script di inizializzazione di default, /etc/X11/Xsession
è, in
effetti, una combinazione di
/etc/X11/Xsession.d/50xfree86-common_determine-startup
e di
/etc/X11/Xsession.d/99xfree86-common_start
.
L'esecuzione di /etc/X11/Xsession
viene in qualche modo
influenzata da /etc/X11/Xsession.options
ed è fondamentalmente
l'esecuzione del programma che viene trovato per primo nella seguente lista dal
comando exec
:
~/.xsession
o ~/.Xsession
, se è definito.
/usr/bin/x-session-manager
, se è definito.
/usr/bin/x-window-manager
, se è definito.
/usr/bin/x-terminal-emulator
, se è definito.
L'esatto significato di questi comandi è determinato dal sistema alternativo Debian descritto in Comandi alternativi, Sezione 6.5.3. Per esempio:
# update-alternatives --config x-session-manager ... oppure # update-alternatives --config x-window-manager
Per rendere qualsiasi X window manager il default mentre si mantengono
installati i session manager di GNOME e KDE, sostituite
/etc/X11/Xsession.d/50xfree86-common_determine-startup
con quello
allegato al secondo second bug in http://bugs.debian.org/168347
(Spero che venga presto incluso.) e modificate
/etc/X11/Xsession.options
come segue per disabilitare l' X session
manager:
# /etc/X11/Xsession.options # # configuration options for /etc/X11/Xsession # See Xsession.options(5) for an explanation of the available options. # Default enabled allow-failsafe allow-user-resources allow-user-xsession use-ssh-agent # Default disabled (enable them by uncommenting) do-not-use-x-session-manager #do-not-use-x-window-manager
Senza le summenzionate modifiche al sistema, gnome-session
e
kdebase
sono i pacchetti che contengono questi X session manager.
Rimuovendoli si permette all'X window manager preferito di essere il default.
(Idee migliori?)
Su un sistema in cui /etc/X11/Xsession.options
contiene una riga
allow-user-xsession non preceduta da altri caratteri, qualsiasi
utente che definisse un proprio ~/.xsession
o
~/.Xsession
sarebbe in grado di personalizzare le azioni di
/etc/X11/Xsession
.
L'ultimo comando nel file ~/.xsession
dovrebbe essere sotto forma
di exec some-window/session-manager per lanciare il
vostro X window/session manager preferito.
Un buon esempio del file ~/.xsession
si trova in
/usr/share/doc/xfree86-common/examples/xsession.gz
.
Io lo uso per impostare il window manager, accesso allo schermo e lingua per ciascun utente. Vedere Lanciare un X session/window manager particolare, Sezione 9.4.5.2, Diventare root in X, Sezione 9.4.11, e Esempio per un sistema bilingue (Giapponese EUC ed ISO-8859-1), Sezione 9.7.8.
Risorse addizionali di X specifiche per utente possono essere inserite in
~/.Xresources
, mentre quelle validi per tutto il sistema in
/etc/X11/Xresources/*
. Vedere xrdb(1x)
.
Mappature del mouse e della tastiera specifiche per ciascun utente in X possono
essere definite in ~/.xmodmaprc
. Vedere xmodmap(1x)
.
Seguendo il principio descritto in Personalizzare X
session, Sezione 9.4.5.1, X session/window manager specifici per l'utente
possono essere attivati installando il pacchetto indicato ed impostando il
contenuto all fine del file ~/.xsession
come segue. (Amo blackbox
per lo stile semplice e la velocità.):
gnome-session
kdebase
(oppure kdebase3
per
KDE3)
blackbox
icewm
fvwm
wmaker
enlightenment
Vedere Window Managers per X
.
Per un setup completo degli ambienti KDE/GNOME sono utili i seguenti metapacchetti:
kde
gnome
L'installazione di questi pacchetti con programmi in grado di maneggiare
pacchetti marcati con raccomanda, tipo dselect
ed
aptitude
, fornisce una scelta di software rispetto alla semplice
installazione con apt-get
.
Se volete comunque il login da console, disabilitate gli X display managers,
tipo kdm
, gdm
, e wdm
, che possono essere
richiamati dal gioco delle dipendenze, come descritto in "Voglio disabilitare X al boot!",
Sezione 8.1.4.
Se volete GNOME come sistema di default invece che KDE, configurate
x-session-manager
come descritto in Comandi alternativi, Sezione
6.5.3.
Siccome una connessione remota TCP/IP senza cifratura è vulnerabile ad attacchi
tipo eavesdropping, l'impostazione di default per X nelle versioni Debian più
recenti disabilita il socket TCP/IP. Prendete in considerazione
ssh
per una connessione remota ad X (vedere Connessioni X da remoto: ssh
, Sezione 9.4.8).
Il metodo qui descritto non è consigliato, a meno di essere in un ambiente altamente sicuro, dietro un buon firewall, solo con utenti fidati. Usate il seguente comando per verificare le impostazioni del vostro X server rispetto al socket TCP/IP:
# find /etc/X11 -type f -print0 | xargs -0 grep nolisten /etc/X11/xinit/xserverrc:exec /usr/bin/X11/X -dpi 100 -nolisten tcp
Rimuovete -nolisten per ripristinare l'ascolto TCP/IP sull' X server.
xhost
xhost
permette l'accesso basato sugli hostname. Altamente
insicuro. Quanto segue disabilita il controllo degli host e permette le
connessioni da ovunque se una connessione TCP/IP è permessa (vedere Connessione TCP/IP ad X, Sezione 9.4.6):
$ xhost +
Potete riabilitare il controllo dell'host con:
$ xhost -
xhost
non fa distinzioni fra utenti differenti sull'host remoto.
In più gli hostname (in realtà gli indirizzi) possono essere contraffatti.
Tale metodo va evitato, anche con criteri relativi agli host più restrittivi,
se siete su una rete non fidata (tipo l'accesso dialup con PPP ad Internet).
Vedere xhost(1x)
.
ssh
L'uso di ssh
permette una connessione sicura da un server X locale
ad un application server remoto.
/etc/ssh/sshd_config
sull'host remoto.
xterm
sul'host locale.
ssh
per stabilire una connessione col sito remoto.
localname @ localhost $ ssh -q -X -l loginname remotehost.domain Password: .....
loginname @ remotehost $ gimp &
Questo metodo permette la visione dell'output del client X remoto come fosse connesso localmente attraverso uno UNIX domain socket.
xterm
Per conoscere tutto su xterm
guardate a http://dickey.his.com/xterm/xterm.faq.html
.
Molti programmi per X più vecchi, tipo xterm, usano il cosiddetto "X
resource database" per configurare il loro aspetto. Per immagazzinare le
risorse specifiche per l'utente si usa il file ~/.Xresources
.
Questo file viene fatto confluire automaticamente al login nelle "X
resources" di default.
Ecco alcune impostazioni utili da aggiungere al vostro file
~/.Xresources
:
! Imposta il font ad un più leggibile 9x15 XTerm*font: 9x15 ! Mostra la barra di scorrimento XTerm*scrollBar: true ! Imposta la grandezza del buffer a 1000 linee XTerm*saveLines: 1000
Affinchè queste impostazioni abbianno effetto immediato, fatele confluire nel database con il comando:
xrdb -merge ~/.Xresources
Se un programma con interfaccia grafica richiede l'esecuzione da root, usate le seguenti procedure per visualizzare l'output del programma sull'X server dell'utente. Non tentate mai di lanciare un X server direttamente dal root account per evitare possibili rischi dal punto di vista della sicurezza.
Lanciate l' X server come un utente normale, ed aprite una console
xterm
. Poi:
$ XAUTHORITY=$HOME/.Xauthority $ export XAUTHORITY $ su root Password:***** # printtool &
Quando usate questo trucco con su
verso un utente non root,
assicuratevi che ~/.Xauthority
sia leggibile dal gruppo di detto
utente non root.
Per automatizzare questa sequenza di comandi, create un file
~/.xsession
dall'accout utente che contenga le seguenti righe:
# Questo fa funzionare X quando lancio su verso l'account root. if [ -z "$XAUTHORITY" ]; then XAUTHORITY=$HOME/.Xauthority export XAUTHORITY fi unset XSTARTUP # Se si desidera un window/session manager particolare, decommentate la riga seguente # e modificatela a vostro piacimento. #XSTARTUP=/usr/bin/blackbox # Questo lancia il programma x-window/session-manager if [ -z "$XSTARTUP" ]; then if [ -x /usr/bin/x-session-manager ]; then XSTARTUP=x-session-manager elif [ -x /usr/bin/x-window-manager ]; then XSTARTUP=x-window-manager elif [ -x /usr/bin/x-terminal-emulator ]; then XSTARTUP=x-terminal-emulator fi fi # lancia automaticamente l'X window/session manager selezionato exec $XSTARTUP
Poi lanciate su
(non su -) in una finestra
xterm
dell'utente. I programmi con interfaccia grafica lanciati
da questo xterm
possono visualizzare l'output sulla finestra X
dell'utente mentre girano con i privilegi di root. Il trucco funziona finchè
si usa il file /etc/X11/Xsession
di default. Se un utente fa le
proprie modifiche tramite ~/.xinit
o ~/.xsession
, la
variabile d'ambiente sopra descritta XAUTHORITY dovrà essere
impostata allo stesso modo in questi script.
In alternativa, si può usare, sudo
per automatizzare la sequenza
di comandi:
$ sudo xterm ... oppure $ sudo -H -s
In questo caso /root/.bashrc
dovrà contenere:
if [ $SUDO_USER ]; then sudo -H -u $SUDO_USER xauth extract - $DISPLAY | xauth merge - fi
Questo funziona bene anche se la directory home dell'utente è montata su NFS
mount, poichè root non legge il file .Xauthority
.
Esistono anche parecchi altri pacchetti specializzati all'uopo:
kdesu
, gksu
, gksudo
,
gnome-sudo
, e xsu
. Altri metodi possono essere usati
per raggiungere lo stesso risultato: creare un link simbolico tra
/root/.Xauthority
ed il corrispettivo dell'utente; usare lo script
sux
; or
mettere "xauth merge
~USER_RUNNING_X/.Xauthority" nello script di
inizializzazione di root.
Vedere anche sulla debian-devel
mailing list
.
Lo standard xfs
in XFree86-4 funziona bene con i fonts TrueType.
Se usate XFree86-3 dovete installare un server di terzi, tipo
xfs-xtt
.
Dovete solo assicurarvi che con qualsiasi applicazione vogliate usare, i fonts TrueType siano collegati a libXft o libfreetype (se usate file .deb precompilati non dovete nemmeno preoccuparvi di questo, probabilmente).
Ricordatevi di installare i fonts richiesti e di generare i file
fonts.{scale,dir}
in maniera che i fonts siano indicizzati ed
usati.
Dato che i fonts Liberi talvolta scarseggiano, installarne o condividerne di commerciali è un'opzione possibile per gli utenti Debian. Per facilitare questo processo, sono stati creati apposta alcuni pacchetti:
ttf-commercial
msttcorefonts (>1.1.0)
(Il Pacchetto in Woody non funziona
almeno fino all'agosto 2002 in seguito a dei cambiamenti nel sito Microsoft.)
Così facendo, avrete veramente un'ottima selezione di fonts TT al prezzo di contaminare il vostro sistema Free con fonts non-Free.
In Woody esistono alcuni pacchetti di Web browser con capacità grafiche:
mozilla
Il browser Mozilla (nuovo)
galeon
Browser basato su Mozilla con interfaccia Gnome (nuovo)
konqueror
Browser KDE
dillo
Browser GTK
amaya-gtk
Browser di riferimento W3C
amaya-lesstif
idem come sopra
netscape-...
(molti, vecchio)
communicator-...
(molti, vecchio)
La versione di mozilla
deve corrispondere a quella richiesta da
galeon
. Nonostante differiscano nell'interfaccia, entrambi
condividono il motore di rendering HTML Gecko.
I plug-ins per i browsers tipo mozilla
e galeon
possono essere abilitati installando manualmente "*.so"
nella directory plug-in e riavviando i browsers.
Varie risorse per i plug-in:
http://java.sun.com
.
http://www.macromedia.com/software/flashplayer/
.
freewrl
: Browser VRML e plugin per Netscape
SSH (Secure SHell) è il modo sicuro per connettersi ad internet. Una versione
free di SSH, chiamata OpenSSH è disponibile come pacchetto ssh
in
Debian.
Installate prima il server ed il client OpenSSH.
# apt-get update && apt-get install ssh
E' necessario il riferimento a non-US in /etc/apt/source.list
.
/etc/ssh/sshd_not_to_be_run
non deve essere presente se si vuole
far girare il server OpenSSH.
SSH ha 2 protocolli di autenticazione:
.rhosts
o
/etc/hosts.equiv
combinata con autenticazione dell'host basata su
chiave pubblica del client (disabilitata)
Fate attenzione a queste differenze se state migrando da Woody od usando un sistema non-Debian.
Vedere /usr/share/doc/ssh/README.Debian.gz
, ssh(1)
,
sshd(8)
, ssh-agent(1)
, e ssh-keygen(1)
per i dettagli.
A seguire i file di configurazione chiave:
/etc/ssh/ssh_config
: Il default per il client SSH. Vedere
ssh(1)
. Parametri da notare sono:
/etc/ssh/sshd_config
: Il default per il server SSH. Vedere
sshd(8)
. Parametri da notare sono:
sshd
dovrebbe essere in ascolto. Sono permesse opzioni multiple.
$HOME/.ssh/authorized_keys
: lista delle chiavi pubbliche di
default usate dai client per connettersi ad un dato account sul dato host.
Vedere ssh-keygen(1)
.
$HOME/.ssh/identity
: Vedere ssh-add(1)
e
ssh-agent(1)
.
I seguenti comandi lanciano una connessione ssh
da un client.
$ ssh username@hostname.domain.ext $ ssh -1 username@hostname.domain.ext # Forza la versione 1 di SSH
Per l'utente ssh
funziona da telnet
più sicuro ed
intelligente (non vi bombarda con ^]).
Per stabilire una pipe per connettere la porta 25 del server-remoto
dalla porta 4025 del localhost, e la porta 110 del server-remoto
dalla porta 4110 del localhost attraverso ssh
, eseguite sulla
macchina locale:
# ssh -q -L 4025:server-remoto:25 4110:server-remoto:110 \ username@server-remoto
E' un modo sicuro di eseguire connessioni a server SMTP/POP3 su Internet.
impostate il parametro AllowTcpForwarding a yes in
/etc/ssh/sshd_config
sull'host remoto.
Potete evitare di ricordare una password per ogni sistema remoto usando la RSAAuthentication (protocollo SSH1) o PubkeyAuthentication (protocollo SSH2).
Sul sistema remoto impostate i rispettivi parametri, "RSAAuthentication
yes" o "PubkeyAuthentication yes", in
/etc/ssh/sshd_config
.
Infine, generate le chiavi di autenticazione localmente ed installate la chiave pubblica sul sistema remoto:
$ ssh-keygen # RSAAuthentication: chiave RSA per SSH1 $ cat .ssh/id_rsa.pub | ssh user1@remote \ "cat - >>.ssh/authorized_keys" ... $ ssh-keygen -t rsa # PubkeyAuthentication: chiave RSA per SSH2 $ cat .ssh/id_rsa.pub | ssh user1@remote \ "cat - >>.ssh/authorized_keys" ... $ ssh-keygen -t dsa # PubkeyAuthentication: chiave DSA per SSH2 $ cat .ssh/id_dsa.pub | ssh user1@remote \ "cat - >>.ssh/authorized_keys"
Potrete cambiare la passphrase in seguito con "ssh-keygen -p". Verificate le impostazioni provando la connessione. In caso di problemi, usate "ssh -v".
Potete aggiungere delle opzioni ai parametri in authorized_keys
per limitare gli host e per eseguire comandi specifici. Vedere
sshd(8)
per i dettagli.
Notate che SSH2 ha HostbasedAuthentication. Affinchè funzioni,
dovete aggiustare le impostazioni di HostbasedAuthentication a
yes in both /etc/ssh/sshd_config
on the server
machine and /etc/ssh/ssh_config
o $HOME/.ssh/config
sulla macchina client.
Esistono alcuni client SSH disponibili per piattaforme non Unix e simili.
puTTY
(GPL)
cygwin
(GPL)
macSSH
(GPL) [Notate che Mac
OS X include OpenSSH; usate ssh nell'applicazione Terminal]
Vedere anche SourceForge.net, site
documentation
, "6. CVS Instructions".
Inserite semplicemente la vostra chiave pubblica in
~/.ssh/authorized_keys
, e siete a posto:
$ ssh-agent $ # mette l'output sulla vostra shell $ ssh-add .ssh/identity $ # oppure ssh-add .ssh/id_dsa o qualunque altro sia il nome della vostra chiave privata $ scp remote.host.with.public.key
Per ulteriori informazioni, leggete ssh-agent(1)
e
ssh-add(1)
.
In caso di problemi, controllate i permessi del file di configurazione e
lanciate ssh
con l'opzione "-v".
Usate l'opzione "-P" se siete root ed avete problemi col firewall, per evitare di usare le porte del server 1–1023.
Se le connessioni ssh
ad un sito remoto smettono improvvisamente
di funzionare, ciò può essere dovuto a maneggiamenti dell'amministratore o, più
probabilmente a cambiamenti in host_key
durante la manutenzione
del sistema. Dopo essersi assicurati che è proprio questo il caso e che
nessuno sta tentando di falsificare l'host remoto mediante qualche trucco
geniale, potete riguadagnare la connessione rimuovendo la voce
host_key
da $HOME/.ssh/known_hosts
della macchina
locale.
La configurazione della posta si divide in tre categorie:
exim
procmail
, fetchmail
,
mail
, ...
mutt
Riferimenti:
exim-doc
e exim-doc-html
http://www.exim.org/
Usare exim
come MTA. Configurazione:
/etc/exim/exim.conf "eximconfig" per crearlo e modificarlo /etc/inetd.conf decommentate smtp per lanciare exim come demone /etc/email-addresses Aggiungete una lista di indirizzi email fasulli verificare il filtro usando exim -brw, -bf, -bF, -bV, ... ecc.
In /etc/exim/exim.conf
(Woody e seguenti, aggiungete nella sezione
DIRECTORS alla fine, (dopo localuser: director) un indirizzatore (director) che
raccolga tutti gli indirizzi che i directors precedenti non hanno potuto
risolvere (Secondo Miquel van Smoorenburg):
catchall: driver = smartuser new_address = webmaster@mydomain.com
Se si desidera avere una ricetta più dettagliata per ogni dominio virtuale,
ecc., aggiungete la seguente riga alla fine di /etc/exim/exim.conf
(secondo me, non ben testato):
*@yourdomain.com ${lookup{$1}lsearch*{/etc/email-addresses} \ {$value}fail} T
Aggiungete, poi una "*" in /etc/email-addresses
.
La riscrittura selettiva dell'indirizzo per la posta in uscita per avere un
giusto header "From:" può essere fatta con exim
configurando verso la parte finale /etc/exim/exim.conf
:
*@host1.something.dyndns.org \ "${if eq {${lookup{$1}lsearch{/etc/passwd}{1}{0}}} {1} \ {$0}{$1@somethig.dyndns.org}}" frFs
Ciò riscrive tutti gli indirizzi che coincidono con *@host1.something.dyndns.org.
/etc/password
per vedere se la parte locale ($1) è un
utente locale o no.
fetchmail
viene eseguito in modalità demone per raccogliere la
posta dagli account POP3 del vostro provider smistandoli nel sistema locale di
posta. Configurazione:
/etc/init.d/fetchmail /etc/rc?.d/???fetchmail lancia update-rc.d fetchmail default priority 30 /etc/fetchmailrc file di configurazione (chown 600, posseduto da fetchmail)
Le informazioni su come lanciare fetchmail come demone dallo script
init.d
in Potato sono confuse (in Woody è stato risolto). Vedere
i file di esempio /etc/init.d/fetchmail
e
/etc/fetchmailrc
negli scripts di
esempio
.
Se i vostri header di posta sono infestati da ^M per colpa del mailer del
vostro provider, aggiungete "stripcr" alle vostre opzioni in
$HOME/.fetchmailrc
:
options fetchall no keep stripcr
procmail
è il sistema locale di consegna/filtro della posta. Per
ogni account che lo usa si deve creare un file $HOME/.procmailrc
.
Per esempio: _procmailrc
Usate mutt
come MUA in combinazione con vim
.
Personalizzatelo tramite ~/.muttrc
; per esempio:
# usa il modo visuale e "gq" per riformattare le citazioni set editor="vim -c 'set tw=72 et ft=mail'" # # impostazione degli header, presa direttamente dal manuale ("Sven's Draconian header weeding") # ignore * unignore from: date subject to cc unignore user-agent x-mailer hdr_order from subject to cc date user-agent x-mailer auto_view application/msword ....
Aggiungete quanto segue a /etc/mailcap
o a
$HOME/.mailcap
per visualizzare messaggi in HTML ed allegati MS
Word:
text/html; lynx -force_html %s; needsterminal; application/msword; /usr/bin/antiword '%s'; copiousoutput; description="Microsoft Word Text"; nametemplate=%s.doc
Debian è internazionalizzato, offrendo supporto per un numero crescente di lingue e convenzioni locali. La sottosezione seguente elenca alcune delle diversità che Debian attualmente supporta, mentre la successiva tratta della localizzazione, ovvero il processo di personalizzare il vostro ambiente di lavoro per permettere il giusto input ed output del(i) linguaggio(i) scelto(i) e le convenzioni per date, formati numerici e monetari e per tutti gli aspetti che caratterizzano una data regione.
Ci sono alcuni aspetti da considerare per la personalizzazione, la localizzazione ed il supporto della propria lingua nazionale.
Debian è distribuito con le keymap per quasi due dozzine di tastiere. In Woody, riconfigurate la tastiera con:
La gran parte dei pacchetti software Debian supporta il trattamento dei dati formati da caratteri non-US-ASCII attraverso la variabile d'ambiente LC_CTYPE offerta dalla tecnologia locale in glibc
X è in grado di mostrare qualsiasi coding, compreso UTF-8 e supporta tutti i font. La lista comprende non solo tutti i font a 8-bit, ma anche quelli a 16-bit, come il Cinese, Giapponese o Coreano. Il metodo di inserimento dei caratteri multi-bite è supportato dal meccanismo XIM. Vedere Esempio per un sistema bilingue (Giapponese EUC ed ISO-8859-1), Sezione 9.7.8.
La visualizzazione del codice Giapponese EUC è anche disponibile nella cosole
grafica (S)VGA, tramite il pacchetto kon2
. Esiste anche un nuovo
display giapponese alternativo, jfbterm
che usa la console
framebuffer. In queste console, il metodo di inserimento dei caratteri
giapponesi deve essere fornito dalla applicazione. Usate il pacchetto
egg
per Emacs ed il pacchetto "giapponesizzato"
jvim
per Vim.
Traduzioni esistono per molti dei messaggi di testo e documenti che vengono visualizzati nel sistema Debian, tipo messaggi di errore, output dei programmi, menu e pagine man. Al momento il supporto per le pagine man in Tedesco, Spagnolo, Finlandese, Francese, Ungherese, Italiano, Giapponese, Coreano, Polacco, Portoghese, Cinese e Russo, viene fornito attraverso i pacchetti manpages-LANG (dove LANG è una lista separata da virgole dei codici nazione ISO (di due lettere). Usate apt-cache search manpages-|less per avere una lista delle pagine man unix disponibili.)
Per accedere ad una pagina man NLS, l'utente deve impostare la variabile
d'ambiente LC_MESSAGES alla stringa appropriata. Per esempio, in caso di
pagine man in Italiano, LC_MESSAGES dovrà essere impostata a it.
Il programma man
cercherà quindi le pagine in Italiano sotto
/usr/share/man/it/
.
Debian supporta la tecnologia locale. Locale è un meccanismo che permette ai programmi di fornire un valido output e funzionalità in accordo con le convenzioni locali, tipo il set di caratteri, il formato per data e ora, il simbolo di valuta, e così via. Usa delle variabili d'ambiente per determinare il comportamento più appropriato. Per esempio, assumendo che abbiate installati i locale per L'Inglese Americano ed il Francese sul vostro sistema, i messaggi di errore di molti programmi potrebbero essere bilingue:
$ LANG="en_US" cat foo cat: foo: No such file or directory $ LANG="fr_FR" cat foo cat: foo: Aucun fichier ou répertoire de ce type
Glibc offre il supporto per locale ai programmi sotto forma di libreria.
Vedere locale(7)
.
Debian non arriva con tutti i locale disponibili precompilati.
Controllate /usr/lib/locale
per vedere quali (oltre a quello di
default, "C") sono compilati sul vostro sistema. Se quello di cui
avete bisogno non è presente, avete due opzioni:
/etc/locale.gen
per aggiungere il locale desiderato,
poi lanciate locale-gen
da root per compilarlo. Vedere
locale-gen(8)
e le pagine man elencate nella sua sezione "SEE
ALSO".
locales
. Oppure, se non è stato ancora installato,
l'installazione di locales
invocherà l'interfaccia debconf per
farvi scegliere il locale richiesti e compilare il database.
Le seguenti variabili d'ambiente vengono valutate in questo ordine per fornire ai programmi particolari valori di locale:
Variabili LC_* sono:
Notate che alcune applicazioni (p.es., Netscape 4) ignorano le impostazioni LC_*.
Il programma locale
può mostrare le impostazioni attive ed i
locale disponibili; vedere locale(1)
. (NOTA: locale
-a elenca tutti i locale che il vostro sistema conosce; questo
non significa che tutti siano compilati! Vedere Attivare le capacità di supporto locale, Sezione
9.7.3.)
Il supporto locale per lo standard internazionale di data
aaaa-mm-gg (formato data ISO 8601) è fornito dal locale chiamato
en_DK, — English in Denmark che è un pò uno
scherzo :-) Sembra funzionare solo in console per ls
.
Aggiungete le righe seguenti in ~/.bash_profile
:
LC_CTYPE=en_US.ISO-8859-1 export LC_CTYPE
Aggiungete le righe seguenti in ~/.bash_profile
:
LANG=it_IT@euro export LANG LC_CTYPE=it_IT@euro export LC_CTYPE
Configurate la tastiera per l'Italiano "QWERTY" come descritto in Tastiera, Sezione 9.7.1.1. ed aggiungete le pagine man
in Italiano installando manpages-it
. Il tasto Right-Alt degli USA
è Alt-Gr in Europa. Premedolo con altri tasti crea molti caratteri speciali.
Per esempio, Alt-Gr+E crea il segno dell'euro.
Molti dei linguaggi dell'Europa occidentale possono essere configurati allo stesso modo.
Vedere Debian Euro
HOWTO
per aggiungere il supporto per l'euro e Utiliser et
configurer Debian pour le français
per maggiori dettagli per il
Francese (no, per l'Italiano non mi risulta un equivalente).
Impostiamo un sistema bilingue: ja_JP.eucJP (Giapponese EUC, tradizionale ambiente Unix Giapponese) in X con messaggi in Inglese, data tipo ISO e en_US.ISO-8859-1 (quasi ASCII con supporto per i caratteri accentati)in console.
canna
— Server locale, oppure
freewnn-jserver
— server estensibile in network (Dominio
Pubblico)
kinput2-canna
— per X, oppure
kinput2-canna-wnn
— per X,e
egg
— lavora direttamente con Emacsen persino in console
(opzionale)
kterm
— X (classico),
mlterm
— X (molto pulito, grandezza dei font variabile) ed
startx
,
xdm
, ...)
~/.xsession
che imposta l'ambiente X specifico per
l'utente:
#!/bin/sh # Questo fa funzionare X quando lancio su verso l'account root. if [ -z "$XAUTHORITY" ]; then XAUTHORITY=$HOME/.Xauthority export XAUTHORITY fi # Locale Giapponese come default, C come backup # export LANG=ja_JP.eucJP # assicurarsi di sovrascrivere en_US.ISO-8859-1 usato in console # export LC_CTYPE=ja_JP.eucJP # Voglio i messaggi di menu in Inglese in ASCII :-) export LC_MESSAGES=C # attiva il metodo di input kinput2 & XMODIFIERS=@im=kinput2 export XMODIFIERS # Che ne dite di blackbox come window manager (leggero) exec /usr/bin/blackbox
~/.bashrc
:
# Change language environment depending on the console program # X-shells only execute .bashrc (They are not login shell) # General environment for X is set by .xsession if [ $TERM = kterm ] || [ $TERM = mlterm ]; then unset LC_ALL export LANG=C #export LANG=ja_JP.eucJP # Per la data in ISO yyyy-mm-dd , più naturale per un Giapponese :-) export LC_TIME=en_DK.ISO-8859-1 export LC_MESSAGES=C export LANGUAGE=ja_JP.eucJP:en_US.ISO-8859-1:C export LC_CTYPE=ja_JP.eucJP else unset LC_ALL export LANG=C export LC_TIME=en_DK.ISO-8859-1 export LANGUAGE=en_US.ISO-8859-1:C export LC_CTYPE=en_US.ISO-8859-1 fi
~/.muttrc
:
# il supporto UTF-8 non è popolare nell'ambiente EMACS Giapponese l'encoding a # 7 bit di iso-2022-jp è più semplice per tutti l'ordine di encoding di # default = us-ascii --> iso-8859-1 --> utf-8 #imposta # send_charset="us-ascii:iso-8859-1:utf-8" #imposta allow_8bit=yes set # send_charset="us-ascii:iso-8859-1:iso-2022-jp" set allow_8bit=no
kinput2
per applicazioni X
~/.Xresources
(sembra che Debian se ne prenda carico
automaticamente, in qualche modo).
mlterm
) permettono anche di impostare
*inputMethod: ed altre informazioni in maniera dinamica all'avvio
(premete Ctrl-MouseButton-3 in mlterm
).
Vedere anche SuSE pages for
CJK
.
Ne avremo bisogno per tutti in futuro. Vedere The Unicode
HOWTO
.
Il supporto UTF-8 sulla console FB è fornito da bterm
usato nel
debian-installer
.
Quando state impostando il sistema per la prima volta per un linguaggio
nazionale, prendete in considerazione l'uso di tasksel
o
di aptitude
per scoprire quali pacchetti vengono selezionati
scegliendo il task corrispondente al linguaggio prescelto. La scelta dei
pacchetti fatta in tal modo è utile persino per un setup multilingua. Se vi
imbattete in qualche conflitto di dipendenze durante l'installazione del vostro
raffinato sistema, evitate di installare i programmi che sono in conflitto col
sistema esistente. Potreste dover utilizzare update-alternative
per riguadagnare lo stato originale per alcuni comandi, dato che quelli puù
recentemente installati potrebbero avere priorità più elevate rispetto a quelli
preesistenti.
I programmi principali più recenti usano glibc 2.2 e sono molto
interbazionalizzati. Quindi, versioni localizzate in maniera particolare, come
jvim
per VIM possono non essere necessarie e la sua funzionalità è
offerta da vim
versione 6.0 in X. In realtà, è ancora da
raffinare. Dato che jvim
ha una versione compilata con il
supporto diretto per il Giapponese IM (canna
) ha il supporto
persino in console ed è indirizzato verso molte altre caratteristiche
giapponesi, ed è maturo, potreste ancora volerlo :-)
I programmi potrebbero avere la necessità di essere configurati oltre la
configurazione locale, per fornire un ambiente di lavoro
confortevole. Il pacchetto language-env
ed il suo comando
set-language-env
facilitano di molto questo processo.
Vedere anche il documento sulla internazionalizzazione, Introduction to
i18n
. E' indirizzato agli sviluppatori, ma è anche utile per gli
amministratori di sistema.
La guida Debian
1.07-1, dom mar 7 15:48:58 UTC 2004osamu@debian.org
dsewell@virginia.edu
mc0315@mclink.it