Personalizzazione ed uso della shell
Sono all’interno della mia home, su un utente appena creato su questo sistema, non esiste di piu’ che questo apparentemente sul sistema.
Facendo attenzione pero’ e digitando il comando : ls -a per mostrare quindi anche i file nascosti, posso vedere che ci sono diversi file:
.bash_history
.bash_logout
.bashhrc
.profile
Questi sono file di impostazioni, validi per la mia utenza, quindi sono file che contengono gia’ delle impostazioni, ad esempio .bash_logout, contiene degli script di logout e quindi cosa scrivere quando esco dalla mia consolle, mentre .bashhrc e .profile sono script di login e caricamento della shell e comunque questi sono script che vengono richiamati ogni volta per un particolare evento e ha delle impostazioni come ad esempio imèpostare delle variabili, lanciare dei comandi,oppure creare degli alias.
Ogni utenete possiede nella sua home questi file di base, sono detti USER WIDE ovvero valgono per l’utente e solo per lui sono validi.
Ci sono gli stessi file ma validi come SYSTEM WIDE, ovvero validi per tutto il sistema all’interno di /etc
La shell BASH ha delle impostazioni standard generali per tutti gli utenti, ma ogni utente puo’ avere una versione personalizzata della propria shell modificando opportunamente alcuni file di configurazione.
All’interno di questi file sono presenti delle variabili che contengono dei valori predefiniti. Una variabile e’ un’area di memoria alla quale viene assegnato uno specifico valore.
Tale area viene creata al momento del login e viene distrutta al momento del logout. Una variabile puo’ essere paragonata ad una scatola nera che puo’ contenere dei valori.
Ad esempio la variabile USER contiene il nome dell’utente che ha effettuato il login. Quando un utente effettua il login nel sistema, Linux crea una shell di login ed inizializza alcune variabili con dei valori predefiniti.
L’utente puo’ creare delle variabili personali e puo’ modificare alcune di quelle predefinite dal sistema.
Per convenzione le variabili della shell sono definite con nomi costituiti da lettere maiuscole. Ad esempio, la variabile HOME definisce il percorso della directory home dell’utente.
Le variabili vengono inizializzate dal sistema al momento del login da parte di un utente e vengono distrutte al momento del logout, cioe’ quando l’utente si scollega dal sistema.
Per visualizzare il contenuto di una variabile si puo’ eseguire il comando echo, seguito dal carattere $ e dal nome della variabile.
Ad esempio, un ipotetico utente mau, visualizzando la variabile HOME utilizzando il comando:
echo $HOME
produrra’ a video il percorso /home/mau. I file di configurazione della shell BASH sono 5:
/etc/profile
/etc/bashrc
/home/mau/.bash_profile
/home/mau/.bashrc
/home/mau/.bash_logout
le prime 2 sono generali per tutti gli utenti e le altre 3 sono specifiche per ogni utente e se vengono modificate ridefiniscono quelle generali.