Modifiche

Da GolemWiki.

Corso Shell Marzo 2009

3 420 byte rimossi, 19:48, 21 set 2015
m
Pagina categorizzata
L'''Introduzione'''interfaccia a linea di comando (in inglese CLI: command line interface), è la modalità di interazione tra utente ed elaboratore che avviene inviando comandi tramite tastiera e ricevendo risposte alle elaborazioni tramite testo scritto. Questo tipo di approccio deriva dalla modalità di interazione con i primi calcolatori che avveniva attraverso [http://it.wikipedia.org/wiki/Terminale_(informatica) terminali] testuali non in grado di compiere alcuna elaborazione e connessi ad un elaboratore centrale.
30 anni arrivava l'MS-DOS, con quel suo strano indimenticabile C:\> che compariva ogni volta che accendevamo il PC.Nel 1992 Windows 3.1 ha portato nelle nostre case il concetto di desktop (scrivania), finestre, icone, etc... dando il via alla genesi di future generazioni di mouse dipendenti.  ''Tratto da Wikipedia'': L'interfaccia a linea di comando (in inglese CLI: command line interface), è la modalità di interazione tra utente ed elaboratore che avviene inviando comandi tramite tastiera e ricevendo risposte alle elaborazioni tramite testo scritto. Questo tipo di approccio deriva dalla modalità di interazione con i primi calcolatori che avveniva attraverso terminali testuali non in grado di compiere alcuna elaborazione e connessi ad un elaboratore centrale. In ambiente Windows NT la CLI è ottenuta tramite il programma "Prompt dei comandi" che richiama nella grafica l'interfaccia del Sistema Operativo MS-DOS.
In Unix, Linux e sistemi analoghi si parla invece di "terminale".
La shell è il programma con interfaccia a linea di comando che viene eseguito all'interno di un terminale testuale per impartire comandi al sistema. Possono esistere ed Esistono e possono essere utilizzate contemporaneamente differenti shell (Bourn Shell, Bash, Korn shell, C shell, Dash, Z shell).L'interfaccia a linea di comando è ancora molto diffusa per il controllo e la configurazione di vari dispositivi specializzati, come (router, switch e , stampanti di rete, ma anche ...) e per connettersi remotamente ad altri elaboratori. In tal caso, vengono impiegati protocolli come telnet o ssh. 
'''Corso Linux primavera 2009'''
'''Iscritti''':
'''Iscritti''':# Hal (hal at linux.it)# Lorexlinux-lover (linuxloverstaff at gmail.com)# HalToposodo (topogigio2000 at supereva.it)# Marino (marinovegni at tim.it )# Alessandro (iz5ilv at hotmail.it)# Fabio (fabio_pa at hotmail.com)# Jacopo Pasquini (jacpas at yahoo.it)# Emiliano (kk50 at email.it)# Giulia (lywashu at email.it) # Fabio (collega di Giulia)# Simone (collega di Giulia)# Andrea (collega di Giulia)# Elisabetta (elisabetta.bosi at unifi.it)# FabioT (amico C.po Officina)# StefanoM (Amico C.Po Officina)# Marco Bandini (m.banda at alice.it)
# ...
# ...
# Lorex (lorenzo.bambi at gmail.com), non può partecipare alle prime lezioni
# <del>Francesco del FLUG</del> (francesco at firenze.linux.it), il mercoledì è impegnato fino alle 22
Per iscriversi basta inviare informazioni mandate un messaggio all'indirizzo [mailto:golem@golem.linux.it '''hackgolem@golem.linux.it''' ]
'''Prezzo''' d'iscrizione: '''0 euro'''.
'''Inizio corso''': metà-fine 18 marzo (indicativamente).
Si terrà di mercoledì, per un numero complessivo di 6 lezioni.
Bozza Gli incontri saranno svolti presso il circolo arci del '''programma del corso'''Pozzale dalle ore 21:30 alle 23.
* '''Principali comandi Unix''':
man, ls (+ cenni echo *), pwd, mv, cp (-R), ln, mkdir, cat, less, chmod, chown, chgrp, adduser (useradd), dmesg, lsmod, modprobe, ps, top, kill, killall, exit, su, pwd, w, whoami, halt shutdown, sleep, fdisk, cfdisk, mkfs.*, fsck.*, dd, mount (-o loop,nodev...), tar, gzip, free, lspci, lsusb, X (-configure), grep, loadkeys, dhcpcd, ifconfig, route. Uso di "&", "|", ";" e ">".
*Bozza del '''Organizzazione programma del File System di Linuxcorso''': [http://www.pathname.com/fhs/pub/fhs-2.3.html FHS]Classificazione dei file
NB: un tempo l'hardware non era a basso costo come oggi, spesso nelle grandi aziende e nelle università venivano impiegati dei potenti mainframe ai quali venivano collegati dei più economici terminali. Non era insolito che i programmi che occupavano più spazio venissero installati solo sul server, ma venissero utilizzati anche dai terminali tramite un network file system (NFS).
* Condivisibili: directory ed eseguibili contenuti in un server, ma potenzialmente utilizzabili anche da altri client (che usano un OS compatibile con quello del server)'''Concetti generali'''
* Non condivisibili: directory che non ha senso o che creerebbero problemi se venissero condiviseTerminali hardware ed emulatori di terminale.
* Statici: file binariIntroduzione storica sugli interpreti di comandi (shell) e dei protocolli di connessione remota (telnet, libreriersh, documentazione, etc… non cambiano a meno che non intervenga l'amministratore di sistema. Spesso si tratta di directory che possono essere condivisessh).
* Variabili: tutti i file che non sono statici (es"When you know Slackware, you know Linux. directory /var).. when you know Red Hat, all you know is Red Hat."
Testo di riferimento del corso: [http://a2.pluto.it/ Appunti di Informatica Libera] (la Bibbia di Linux)
Contenuto del file system nel dettaglio:
*[http://linuxpedia.netsons.org/bin: eseguibili utilizzabili da tutti gli utenti index.php?title=Comandi_shell_Linux '''Principali comandi Unix''']; uso di "&", "|", ";" e sufficienti per permettere al sistema di funzionare anche quando gli altri filesystem non sono montati (es. boot in single user mode)">".
/boot: file statici del boot loader utilizzati prima che il kernel inizi ad eseguire programmi in user-mode.
*'''Organizzazione del File System di Linux''': [http://www.pathname.com/fhs/devpub/fhs-2.3.html FHS]Classificazione dei file: file che rappresentano i dispositivi collegati al sistema.condivisibili / non condivisibili; statici / variabili
/etc: riservata ai Contenuto del file locali di configurazione system nel dettaglio (da et ceterainclusi /dev e /proc), nessun file binario dovrebbe trovarsi in questa directory.
[http:/home/ (opzionale): directory home degli utenti, talvolta è un link simbolico che rimanda ad altre directory esmed.homelinux. org/usr/home (FreeBSD), /usr/export/home (Solaris), spooky/Userswordpress/name (MacOSX, GoboLinux).?p=337 Approfondimenti]
/lib: librerie di cui necessitano i programmi installati in /bin e /sbin
 
/media: punti di montaggio (spesso automatico) per dispositivi rimovibili come CD-ROM, floppy o penne USB (apparso in FHS-2.3).
 
/mnt: punti di montaggio per filesystem montati temporaneamente (floppy, hard disk, file system di rete, sistemi in chroot…). La sua gestione avviene a discrezione dell'amministratore di sistema, ma non dovrebbe interferire con i programmi in esecuzione.
 
/opt: pacchetti software statici e generalmente di grandi dimensioni (es. KDE, java, staroffice, quake, vmware…), è spesso utilizzata come directory predefinita d'installazione per software commerciali o non opensource. Non è sempre presente nei sistemi Unix.
 
/proc (tipica dei sistemi Linux): filesystem virtuale che mostra informazioni sullo stato del kernel, dell'hardware e dei processi attivi.
 
/root (opzionale): directory home dell'utente root.
 
/sbin: eseguibili utilizzati unicamente dall'utente root. Servono solo a montare /usr e a eseguire operazioni di ripristino del sistema. Gli altri comandi per l'amministrazione locale del sistema devono essere inseriti in /usr/sbin e /usr/local/sbin.
 
/srv: dati per i servizi forniti dal sistema (httpd, ftp, rsync, cvs).
Un tempo questi file potevano trovarsi in varie directory a seconda del programma utilizzato, i file html in hosting web potevano trovarsi in /www, /var/www, /usr/local/www/apache**, /home/www/, /home/httpd…
 
/tmp: file temporanei, il suo contenuto è cancellato ad ogni riavvio del sistema.
 
/usr: ''gerarchia secondaria'' per i dati condivisibili; spesso ha una partizione a sé dedicata che è montata in sola lettura. Questa directory è nata per essere condivisa tra gli host e non deve contenere dati specifici.
 
/usr/bin: directory principale d'installazione dei programmi
 
/usr/sbin: eseguibili non indispensabili per la riparazione/ripristino del sistema utilizzabili solo dall'utente root.
 
/usr/share: dati condivisi (shared) indipendenti dall'architettura (manuali, icone, font…).
 
/usr/src (opzionale): codici sorgenti.
 
/usr/X11R6 (opzionale): X Window System, a partire dalla Versione 11 Release 6.
 
/usr/local: ''terza gerarchia'' con struttura simile alla directory /usr. Utilizzata dall'aministratore di sistema quando installa software a livello locale, come pacchetti compilati ed installati a partire dai sorgenti.
Un tempo /usr era un partizione read-only che poteva non risiedere sul client ed essere montata tramite NFS.
Su FreeBSD il sistema di base si trova in /bin, /sbin e /usr mentre il software installato dai ports è tutto in /usr/local.
 
/var: poiché l'FHS richiede che /usr possa essere montata in sola lettura, tutti i programmi che scrivono file di log o necessitano delle directory spool o lock dovrebbero scriverli nella directory /var.
 
/var/tmp: file temporanei preservati anche dopo il reboot.
*'''Principali file di configurazione:'''
/etc/apt/sources.list (solo nelle distribuzioni che usano il package manager apt).
/etc/fstab
/etc/group
/etc/password
/etc/hosts
/etc/X11/xorg.conf
~/.xinitrc
/etc/sudoers
/etc/profile
/etc/rc.local
[http://www.slacky.eu/wikislack/index.php?title=Slackware_Linux_initrd_HOWTO Approfondimenti]
*'''Principali file di configurazione:Installazione Slackware o Archlinux''' /etc/apt/sources.list (solo nelle distribuzioni che usano il package manager apt). /etc/fstab /etc/group<table> /etc/password<tr> /etc/hosts /etc/X11/xorg<td>[[Image:Corso_shell_1.conf ~/.xinitrc /etc/sudoersjpg|300px|thumb|center]]
</td>
<td>[[Image:Corso_shell_2.jpg|300px|thumb|center]]
</td>
<td>[[Image:Corso_shell_3.jpg|300px|thumb|center]]
</td>
</tr>
</table>
*'''Installazione Slackware o Archlinux'''[[Category:Corsi]]

Menu di navigazione