Apri il menu principale

GolemWiki β

Modifiche

Corso Shell Marzo 2009

3 229 byte rimossi, 19:48, 21 set 2015
m
Pagina categorizzata
L''Tratto da Wikipedia''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.
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''':# Lorex# Hal(hal at linux.it)# linux-lover(linuxloverstaff at gmail.com)# Toposodo (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 '''golem@golem.linux.it''' ]
'''Prezzo''' d'iscrizione: '''0 euro'''.
'''Inizio corso''': metà-fine 18 marzo (indicativamente).
Molto probabilmente si Si terrà di mercoledì, il per un numero complessivo delle di 6 lezioni è ancora in fase di valutazione.
Gli incontri saranno svolti presso il circolo arci del Pozzale dalle ore 21:30 alle 23.
Bozza del '''programma del corso'''
* '''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 '''programma del corso'''
*'''Organizzazione del File System di Linux''': [http://www.pathname.com/fhs/pub/fhs-2.3.html FHS]
Classificazione dei file
NB: un tempo l*'''Concetti generali'''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 Terminali hardware ed eseguibili contenuti in un server, ma potenzialmente utilizzabili anche da altri client (che usano un OS compatibile con quello del server)emulatori di terminale.
* Non condivisibili: directory che non ha senso o che creerebbero problemi se venissero condiviseIntroduzione storica sugli interpreti di comandi (shell) e dei protocolli di connessione remota (telnet, rsh, ssh).
* Statici: file binari"When you know Slackware, librerieyou know Linux... when you know Red Hat, documentazione, etc… non cambiano a meno che non intervenga l'amministratore di sistema. Spesso si tratta di directory che possono essere condiviseall you know is Red Hat."
* VariabiliTesto di riferimento del corso: tutti i file che non sono statici (es[http://a2.pluto. directory it/varAppunti di Informatica Libera] (la Bibbia di Linux).
Contenuto del file system nel dettaglio*[http://linuxpedia.netsons.org/index.php?title=Comandi_shell_Linux '''Principali comandi Unix''']; uso di "&", "|", ";" e ">".
/bin: eseguibili utilizzabili da tutti gli utenti e sufficienti per permettere al sistema di funzionare anche quando gli altri filesystem non sono montati (es. boot in single user mode).
*'''Organizzazione del File System di Linux''': [http://www.pathname.com/bootfhs/pub/fhs-2.3.html FHS]Classificazione dei file: file condivisibili / non condivisibili; statici del boot loader utilizzati prima che il kernel inizi ad eseguire programmi in user-mode./ variabili
Contenuto del file system nel dettaglio (inclusi /dev: file che rappresentano i dispositivi collegati al sistemae /proc).
[http://etc: riservata ai file locali di configurazione (da et cetera), nessun file binario dovrebbe trovarsi in questa directorymed.homelinux.org/spooky/wordpress/?p=337 Approfondimenti]
/home/ (opzionale): directory home degli utenti, talvolta è un link simbolico che rimanda ad altre directory es. /usr/home (FreeBSD), /usr/export/home (Solaris), /Users/name (MacOSX, GoboLinux).
 
/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]
 
 
*'''Installazione Slackware o Archlinux'''
*'''Principali file di configurazione:'''<table> /etc/apt/sources.list (solo nelle distribuzioni che usano il package manager apt).<tr> /etc/fstab /etc/group /etc/password /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]]