lezione 1

comandi unix

  • comandi minimi per editor (jmacs)

    • salvare
    • uscire
  • comandi di shell

    • ls
    • cd
    • mkdir
    • less
    • chmod
    • chown
    • grep
    • sort
    • cat
    • apt-get install nome_pacchetto
    • dpkg -l nome_pacchetto

operatori della shell

| pipe
> redirezione output
>> redirezione output (accoda)
< redirezione input

esempio di script per rubrica telefonica

#!/bin/bash

OGG_RICERCA=$1
FILE_RUBRICA="/home/sandro/telefoni /home/comune/telefoni"

grep -i $OGG_RICERCA $FILE_RICERCA |
sort

si noti:

  • la prima riga che informa la shell di quale interprete dei comandi debba essere usato. E` solo un caso che l'interprete più frequente sia la bash
  • $1 ha il significato di "il primo argomento" che verrà dato al comando
  • l'operatore | (pipe) prende lo standard output del comando grep e lo mette come standard input del comando sort

permessi

Il sito in italiano di wikipedia racconta in modo molto efficace i permessi unix. Ricordo solo che esempi sono:

$ chmod +r nome_file
$ chmod 664 nomefile

Il primo utilizza una notazione simbolica per aggiungere permessi di lettura, il secondo usa una maschera di bit per impostare i permessi in scrittura al gruppo ed in sola lettura al "resto del mondo"

riferimenti

file system hierarchy

in un sistema unix i file hanno una posizione ben precisa. la struttura del filesystem è regolata da un documento chiama FHS (filesystem Hierarchi standard). Si rimanda al documento per i dettagli. Mi limito a poche note.

/etc configurazioni

Tutte le configurazioni del sistema stanno sotto /etc, fanno eccezione

  • le configurazioni di alcuni pacchetti installati dall'utente sotto /opt che possono trovarsi in: /opt/paccketto/etc
  • le configurazioni personali degli utenti che stanno nella home directory

Questo rende estremamente facile il salvataggio delle configurazioni del sistema.

Spesso le configurazioni dei programmi web stanno assieme ai dati. Debian mette le configurazioni in /etc e crea link simbolici dalla DocumentRoot ai file in /etc.

/home

E` la sede delle home directory personali degli utenti. Spesso è messa in una partizione apposita.

/var

In /var vengono tenuti dati variabili in modo frequente. Ad esempio database, chache di proxy, posta elettronica, ldap.