11.07.2015 Views

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2.1. L’INTERFACCIA A LINEA DI COMANDO. 73letto ed eseguito (all’interno della shell corrente) il contenuto del file /etc/profile, 37 in cuil’amministratore di sistema può inserire una serie di impostazioni comuni per tutti gli utenti.Un esempio di questo file, che può essere considerato una sorta di file di configurazione perla shell, è il seguente (l’esempio è preso dalla versione installata di default su una Debian):# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games"if [ "$BASH" ]; thenPS1=’\u@\h:\w\$ ’elseif [ "‘id -u‘" -eq 0 ]; thenPS1=’# ’elsePS1=’$ ’fifiexport PATH PS1umask 022in questo caso si può notare come prima venga impostato la variabile PATH, poi, se la shell è unabash, il prompt usando un valore di PS1 che sfrutta le funzionalità di tab. 2.1, altrimenti (supponendouna shell generica) vengono usati direttamente i caratteri # e $ a seconda che l’utentesia o meno l’amministratore. Infine viene impostato il valore della umask (vedi sez. 1.4.4).Per permettere agli utenti di personalizzare la loro shell di login, dopo aver letto /etc/profilela bash cerca nella home degli utenti, in quest’ordine, i file .bash_profile, .bash_login e.profile, ed esegue i comandi nel primo che trova (e per il quale ha il permesso di lettura),senza guardare gli altri. Si noti comunque che nessuno di questi file deve essere eseguibile, datoche non viene eseguito come script, per cui è sufficiente il permesso di lettura. Un esempio di.bash_profile è il seguente:# ~/.bash_profile: executed by bash(1) for login shells.# see /usr/share/doc/bash/examples/startup-files for examples.# the files are located in the bash-doc package.umask 027# include .bashrc if it existsif [ -f ~/.bashrc ]; thensource ~/.bashrcfidove sostanzialmente si modifica la umask (vedi sez. 1.4.4) rispetto al valore impostato per ilsistema e si utilizzano le impostazioni personali poste in un altro file, .bashrc.L’uso di .bashrc per le impostazioni è dovuto al fatto che se la shell è interattiva ma nonè di login, (questo vale ad esempio per le shell lanciate dentro un terminale sotto X) al postodei precedenti file viene letto quest’ultimo. È per questo che conviene inserire in esso le propriepersonalizzazioni, ed eseguire un source di questo file all’interno di .bash_profile, in mododa averle disponibile in tutti i casi. Un esempio è:37 questo vale in generale per tutte le shell derivate dalla Bourne shell, quelle derivate dalla C shell usano/etc/csh.login.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!