Questa guida fa parte di un’altra guida sul mio blog (anche se più recente) che cerca di riassumere tutto ciò che deve sapere un utente (windows principalmente) che si avvicina a Linux 🙂
Una delle più grosse differenze che un nuovo utente Linux incontra è il file-system di Linux; per capire di cosa parlo devo prima spiegare brevemente che cosa sia il filesystem.
Tutti i dati, programmi, immagini, documenti, ecc che avete sul vostro hard disk sono memorizzati in una sequenza di bit (tanti “0” e “1”), ogni bit ha un indirizzo preciso sul disco; immaginatelo come un enorme armadio con molti cassetti.. ogni cassetto contiene un po’ di bit, su ogni cassetto c’è un etichetta, un numero, che è il suo indirizzo, considerate che il vostro disco fisso contiene una quantità spropositata di bit, senza un qualche tipo di indice sarebbe un po’ problematico trovare un particolare documento, inoltre una rappresentazione di quel tipo (tutto mischiato insieme) diventerebbe ingestibile, immaginatevi una cartella contenente TUTTI i file del vostro disco.
Ecco a cosa serve il filesystem: parte del vostro disco (in genere un 10-20%) viene utilizzata per tenere l’indice dei file che ci sono sul vostro disco, dove si trovano, come si chiamano, in quale directory si trovano!
Le directory appunto… sono un’astrazione che aiuta l’utente ad organizzarsi meglio.
Esempi di filesystem: ext2, ext3, Reiser (Linux), hfs (mac), fat32, ntfs (windows), ISO9960, UDF (CD-ROM e DVD), ecc…
Ora che avete una vaga idea di cosa sia un filesystem posso spiegarvi oltre.. In windows ogni partizione (o disco) viene rappresentata da una lettera (chiamata “unità”), questa rappresentazione è solo un modo di mostrarvi il contenuto dei vostri dischi, e non è neppure il modo più efficiente anche se è intuitivo.
Versione corrente: 1.1.0 (24 aprile 2007)
*** LOG AGGIORNAMENTI ***
26/11/2008 – 1.1.1
- Consigliati diversi manuali
24/04/2007 – 1.1.0
- introdotto le versioni
- specificato meglio cosa sono /proc e /sys (filesystem virtuali)
- introdotto il link alla mia guida per chi si avvicina a Linux 🙂 di cui questo articolo fa parte
*************
Su Linux (ma dovrei dire Unix in generale) ogni cosa è un file, proprio qualsiasi cosa, anche il vostro lettore CD è trattato come un file, la stampante ecc.. ecc… non ci sono “lettere di unità” è come se fosse tutto in un unico disco, come se ci fosse solo l’unità “C” su windows, con la differenza che all’interno c’è TUTTO, tutti i dischi che avete, tutte le partizioni, tutte le periferiche, perfino la vostra ram!!!
Come sapete le directory sono rappresentate con una struttura ad “albero”, una struttura a cui vi siete già abituati, dentro ad una directory (o cartella) trovate dei file (foglie), e altre directory (rami) che a loro volta possono contenere altri file e directory…
Su Linux essendoci un solo albero la sua base (la radice) ha un nome… e si chiama appunto “root” oppure “/” (che significa appunto “radice” in inglese).
ATTENZIONE: per ragioni storiche, e scelte infelici, la parola “root” viene utilizzata per indicare la radice del file system E l’utente amministratore (utente root), non sono la stessa cosa e non centrano nulla l’uno con l’altro! In questa piccola guida mi riferirò a “root” come la radice del nostro filesystem salvo dove diversamente specificato.
quando si scrive un “path” (percorso) come “/home/daniele/download/documenti.zip” si intende: partendo dalla root “/”, all’interno della cartella “home”, al cui interno c’è la cartella “daniele” al cui interno c’è la cartella “download” al cui interno c’è il file “documenti.zip”. E’ esattamente la stessa cosa su windows. Se non usate la console (terminale, o su windows prompt di msdos) non ve ne accorgete, cliccate sui file e le directory e non scrivete mai un path direttamente, viene fatto dal vostro sistema in modo trasparente, senza che voi ve ne accorgiate.
Andiamo ad analizzare quali directory troviamo nella root e che significato hanno (per informazioni più dettagliate lanciate da un terminale il comando man hier
):
- bin: cartella contenente gli eseguibili di base del vostro sistema, quelli che vi servono a controllare il sistema operativo insomma, se usate la parte grafica e non conoscete la console li utilizzerete senza saperlo. (gli eseguibili dei programmi che installate in seguito, compresa la parte grafica, si trovano altrove, ad esempio in /usr/bin )
- boot: in questa cartella c’è tutto quello che serve ad avviare la vostra Linux, in particolare il kernel compilato (che è la prima cosa che viene caricata in memoria e mandata in esecuzione) e le impostazioni del vostro bootloader (grub, lilo), cioè quel programma che vi permette all’accensione del computer di scegliere cosa volete avviare (Linux, windows, osx, versione particolare di Linux ecc)
- dev: qui dentro ci sono tutti i file che rappresentano le periferiche collegate al vostro computer, ad esempio /dev/dvd potrebbe essere il vostro lettore dvd, /dev/hda o /dev/sda potrebbe essere il vostro disco fisso, che poi viene “montato” in una directory a piacere, ma questo lo vediamo dopo, /dev/dsp è la vostra scheda audio, e così via….
- etc: qui dentro ci sono tutti i file di configurazione “globale” del vostro sistema operativo e dei programmi installati; cosa intendo con “globale”? ogni utente può crearsi le sue personali configurazioni su diversi aspetti (i più banali ad esempio possono essere lo sfondo o le impostazioni dei vostri temi) ma qui dentro trovate tutte le configurazioni predefinite o che riguardano l’intero sistema e che è meglio l’utente normale non vada a toccare, ecco perché “globali”. Dentro “etc” ci sono tutti file di testo, tutta la configurazione del sistema è descritta da file di testo che quindi potete facilmente guardare e modificare con qualunque editor ( e non è cosa da poco ). Per fare un esempio, i file di configurazione del server X (quel programma che vi permette sui sistemi Unix di avere un interfaccia grafica al vostro sistema) si trovano in /etc/X11/ e il file principale di configurazione in /etc/X11/xorg.conf .
- home: (casa) qui dentro ci sono tutte le cartelle personali degli utenti, se il computer lo utilizzate solo voi ci sarà in genere una sola cartella, con il vostro nome utente… (ad esempio nel mio sistema la cartella /home/daniele/), la vostra cartella personale è il vostro spazio, dove voi avete pieno controllo del contenuto e potete fare quel che vi pare, qui dentro ci sarà il vostro Desktop, le vostre impostazioni personali (di cui parlavo prima), i vostri file, ecc…
- lib e lib64: qui ci sono le librerie di sistema, non entrerò nel dettaglio, comunque qui dentro vanno a posizionarsi anche i driver delle periferiche e quelle parti del sistema che vengono chiamati “moduli del kernel”.
- media: di default questa è una cartella vuota, alcune distribuzioni “montano” in automatico qui dentro i dischi, o le chiavette usb che vengono collegate al sistema
- mnt: altra cartella vuota nata per fornire da contenitore a dischi e quant’altro che si voglia montare, come “media”
- opt: in questa cartella si installano generalmente alcuni programmi “secondari”, è poco utilizzata, io la uso per installare i giochi (vedremo dopo perché è comodo avere una cartella per programmi secondari)
- proc: questa è una cartella piena di file “speciali” che servono a dare (e manipolare in alcuni casi) informazioni in tempo reale sul vostro sistema, ad esempio sulla temperatura del vostro processore, se il vostro monitor è acceso o spento ecc… ecc.. Si tratta di un filesystem “speciale” (o virtuale) chiamato procfs.. esso non occupa nessuno spazio sul disco rigido ma solo un bassissimo utilizzo di RAM 🙂 maggiori informazioni qui
- root: questa cartella (/root/) è la cartella principale dell’utente root (amministratore) che è separata dagli altri utenti (cartella home) per motivi di sicurezza
- sbin: come bin ma con eseguibili “pericolosi” che può eseguire solamente l’amministratore di sistema (l’utente root)
- sys: utilizzo simile a “proc”, il filesystem virtuale stavolta si chiama sysfs, e potete trovare maggiori informazioni (in inglese) qui
- tmp: come dice il nome, cartella temporanea, è utilizzata dal sistema e può essere utilizzata anche dagli utenti, il suo contenuto viene in genere ripulito all’avvio del computer
- usr: qui dentro ci sono quasi tutti i programmi installati sul computer, compresi quelli di base, le loro configurazioni però sono altrove, in /etc/ o nella cartella dell’utente, gli eseguibili (o i collegamenti) per avviarli sono tutti (o quasi) raggruppati in /usr/bin/ o /bin/
- var: questa cartella è una specie di cartella temporanea, serve però a quei programmi che per natura hanno bisogno di uno spazio temporaneo molto variabile, viene ad esempio utilizzata dal gestore dei pacchetti di debian, quel programma che serve ad aggiornare il vostro sistema, i pacchetti scaricati vengono memorizzati qui dentro.
adesso dovreste aver capito dove si trovano le varie parti del sistema.. ancora però non vi ho spiegato una cosa, dove sono i corrispondenti delle lettere C:, D: ecc di windows?
la risposta è… dove decide l’utente (o meglio, l’amministratore)
mi spiego…
esiste un file, /etc/fstab, in cui sono contenute le informazioni su come e dove montare un disco (o una sua partizione), ve ne riporto qui un esempio esclusivamente per chiarezza, non preoccupatevi se non capite il contenuto (se volete più informazioni lanciate da un terminale il comando man fstab
)
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/hda5 / ext3 defaults,errors=remount-ro 0 1
/dev/hda6 /home ext3 defaults 0 2
/dev/hda7 none swap sw 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0/dev/hda1 /media/win-disk vfat rw,uid=1000,gid=1000 0 0
la riga evidenziata dice: monta la partizione 6 del disco “hda“(*) in /home, il filesystem è di tipo “ext3”, usa le opzioni di default e i numeri seguenti definiscono l’ordine con cui effettuare un check del disco durante il montaggio (i dischi su Linux vengono automaticamente analizzati alla ricerca di errori ogni 30 montaggi)
(*) hda = hard disk IDE A, i dischi sono numerati con le lettere hda, hdb, hdc; invece se un disco è SCSI, o un supporto come chiavetta o disco esterno collegato tramite USB, viene chiamato /dev/sda, il secondo connesso /dev/sdb e così via..
questo file viene creato in maniera più o meno automatica quando installate il vostro sistema (e anche creandolo non vi accorgerete della sua esistenza), ma potete ovviamente manipolarlo in seguito, se lo sapete fare..
in poche parole questo file definisce dove “montare” le varie partizioni dei vostri dischi e lettori/masterizzatori cdrom/dvd; questo significa che potete distribuire il sistema su più dischi o partizioni
ad esempio potreste voler montare un disco in /usr/, su quel disco risiederanno tutti i programmi del sistema, su un altro /home/, questo disco conterrà tutti i dati utenti, su un altro ancora (molto piccolo) potreste voler montare /boot/ (per questioni di sicurezza), e così via.. potete montare un disco “dove vi pare”… potreste ad esempio collegare un nuovo disco da 500 GB che vi siete comprati e montarlo in /home/daniele/download/ in questo modo quando metterete (o scaricherete) qualche file nella cartella “download” utilizzerete il disco da 500 GB e non consumerete spazio al resto del sistema.. è chiaro il funzionamento? se non lo è lasciatemi un commento chiedendomi cosa non vi è chiaro.
questa parola “montare“: abbiamo visto prima che /dev/hda è un file che rappresenta un disco fisso, in particolare /dev/hda1 e /dev/hda2 sono file che rappresentano la prima e la seconda partizione del disco hda, questo file non può essere utilizzato come voi siete abituati ad utilizzare un disco, non finché non lo “montate” da qualche parte, ovvero dite ad esempio: per favore montami la partizione /dev/hda1 in un posto che decido io, ad esempio /media/partizione1/, da quel momento in avanti dentro a /media/partizione1/ vedrete il contenuto della prima partizione e potrete modificarlo, non preoccupatevi montaggio (e smontaggio) sono operazioni trasparenti, però ora forse capite cosa significa quando (anche su windows) dovete prima “smontare”, o “scollegare” per utilizzare la terminologia di windows, una chiavetta usb… questo è necessario per evitare di perdere dei dati sulla chiavetta…
L’utilità è grande.. se mettete ad esempio la directory /home/ su un disco separato dal resto del sistema potrete utilizzarla da diverse installazioni di Linux, potrete salvarvi quel solo disco per avere il backup dei propri dati e di tutte le configurazioni. Non è finita, potete anche utilizzare questo meccanismo di astrazione per “montare” partizioni di rete, ovvero partizioni condivise da altri computer che avete collegati in rete, questo significa che, con qualche piccola perdita di velocità nei trasferimenti, potete installare i programmi su un solo hard disk di tutti i computer che avete in rete ed utilizzarli anche da tutti gli altri computer in modo trasparente… 🙂 oppure potete avere un computer (server) centrale in cui ci sono le cartelle utenti di tante persone e, a prescindere da quale computer utilizzate, vi ritroverete il vostro personale sistema, personalizzato da voi e con tutti i vostri file… Insomma.. è molto comodo!
I Nomi dei file
su Linux/Unix potete usare qualunque carattere per i nomi dei file.. potete addirittura chiamare un file ” ” (spazio)
maiuscole e minuscole sono diverse: pippo è diverso da PIPPO che è diverso da Pippo che è diverso da piPPo e così via..
creare un file che si chiama “miçro$oft f@` {§chiFò}” è possibile e perfettamente permesso oltre che essere una frase stupida ma che può essere dimostrata in molti modi!
ai filesystem windows questo non piace quindi occhio quando passate dei file con questi nomi su macchine con filesystem windows… non so cosa succeda ma nella migliore delle ipotesi non potranno visualizzarli
I permessi di un file system Unix / Linux
Si parla delle autorizzazioni di accesso ad un file o una directory che ogni utente del sistema possiede, i permessi ci sono anche su windows, sono solo diversi. Ad esempio se su windows (senza essere amministratori) provate a cambiare qualcosa in C:/windows/ vi verrà dato “accesso negato”.
Su Linux (o Unix in generale) ogni file e ogni directory hanno dei permessi ed un utente che “possiede” il file/directory, quest’utente è chiamato owner (il possessore) secondo lo standard POSIX per chi vuole approfondire.
Ad esempio se l’utente “daniele” possiede il file “pippo.txt” potrà fare di questo file quel che desidera, anche cambiarne i permessi.
ma vediamoli questi permessi (se volete approfondire lanciate da un terminale il comandi man chmod
, per i permessi)
- lettura: possibilità di leggere il contenuto di un file (read / r) – per directory significa la possibilità di leggerne il contenuto
- scrittura: possibilità di scrivere in un file o di cancellarlo (write / w) – per directory significa la possibilità di creare all’interno altri file e directory
- esecuzione: possibilità di eseguire un file, questo è radicalmente diverso da windows, su windows ogni file può essere eseguito, basta che abbia estensione .exe o .com (o altre che non elenco). Su Linux l’estensione non conta, un file può essere eseguito sono se ha il permesso di esecuzione, ed in particolare un utente può eseguire quel file solo se quell’utente ha il permesso di eseguirlo. (eXecute / x) – per le directory significa la possibilità di potervi “entrare” (leggere il contenuto ed entrare in una directory sono cose differenti)
questa terna di permessi viene descritta 3 volte:
- permessi dell’utente proprietario del file (anche se il proprietario di un file non ha il permesso di leggerlo o scriverlo può comunque cambiare questi permessi, quindi proteggere un proprio file da scrittura serve solo ad evitare di modificarlo accidentalmente)
- permessi del gruppo a cui appartiene il file: ogni utente fa parte di un certo numero di gruppi, ad esempio: il file /dev/dvd sarà di proprietà dell’utente “root” e del gruppo “cdrom”, se l’utente “daniele” non fa parte del gruppo “cdrom” non potrà utilizzare il lettore dvd.
- permessi per tutti gli altri
l’utente root (amministratore) può però cambiare qualunque di questi permessi o anche il proprietario e il gruppo di ogni file, una sorta di “Dio” del filesystem… In genere tutti i file di sistema e configurazione globali sono di proprietà di root e non hanno il permesso di scrittura per tutti gli altri, così l’utente “daniele” non può far casino neanche volendo… ecco perché è pericoloso utilizzare l’utente root se non si sa cosa sta facendo
quindi ricapitolando:
ogni file ha un proprietario (un utente che possiede il file) ed un gruppo di appartenenza, per entrambi e per tutti gli altri si possono definire i permessi come lettura,scrittura,esecuzione; l’utente root può fare quello che vuole. Se l’utente “daniele” non vuole che l’utente “matteo” possa vedere i suoi file nella cartella “personale” gli basterà togliere ad “altri utenti” tutti i permessi, se però “matteo” ha la password di root potrà comunque accedere a quei file se lo desidera.
per mostrarvi questo meccanismo vediamo un comando da terminale:
$ ls -l
totale 8
drwxr-xr-x 2 daniele daniele 4096 2007-03-04 14:08 directory-di-daniele
drwxr-x— 2 root root 4096 2007-03-04 14:11 directory-non-accessibile-dagli-utenti
–rw-r–r– 1 root root 0 2007-03-04 14:10 file-dell-utente-root-che-gli-altri-non-possono-modificare
–rw-r—– 1 root root 0 2007-03-04 14:11 file-dell-utente-root-che-gli-altri-non-possono-osservare
–rw-r–r– 1 daniele daniele 0 2007-03-04 14:08 file-di-daniele
–rw-rw-r– 1 daniele users 0 2007-03-04 14:09 file-di-tutti-gli-utenti-creato-da-daniele
Non spaventatevi, tutti i permessi si possono vedere e modificare anche dall’ambiente grafico con pochi click del mouse.. questo è solo un esempio 🙂 Potrete fare tutto cliccando con il tasto destro su un file e modificando i permessi con qualche click… qui un esempio riferito al file manager Nautilus ( uno dei programmi per gestire i file, equivalente di windows ad esplora risorse, e predefinito di Gnome)
che corrisponde a..
$ ls -l ascia.txt
-rw-r–r– 1 daniele daniele 3152 2007-02-03 20:25 ascia.txt
I file o directory nascoste invece sono determinate dal nome stesso dei file: se iniziano con un punto “.” sono considerati nascosti, nella directory /home/daniele/ per esempio tutti i file di configurazione sono preceduti da un “.” e creati in modo automatico quando eseguite per la prima volta un programma dal vostro utente.. nella cartella .mozilla-thunderbird/ ci sarà ad esempio tutta la vostra posta e le impostazioni se state utilizzando Thunderbird come client di posta, in .mozilla/ ci saranno quelle di Firefox, in .gnome/ quelle di gnome e via così…
NOTA: alcuni desktop manager considerano “nascosti” anche i file che terminano con una tilde “~”, questi file sono file di Backup, e non esattamente “file nascosti”. Ad esempio tutte le volte che aprite un file con “gedit”, l’editor di testo predefinito di gnome (in windows c’è notepad, ma non è lontanamente potente quanto gedit in gnome) , il programma crea una copia di backup del file aggiungendo una tilde alla fine del nome, se ad esempio il file che state aprendo si chiama esempio.txt creerà una copia che si chiama esempio.txt~ .
I link
Parto di nuovo da windows, perché presumo che questa guida possa servire principalmente ad un utente che arriva da windows..
I link in windows sono decisamente meno potenti di quanto non lo siano su Linux… su windows quando create e cliccate un link il sistema non farà altro che sostituire la posizione (path, percorso) “vera” della cartella o del file al link e quindi voi aprirete quel file o quella cartella nella posizione originale.
Su Linux (Unix) la cosa è differente grazie al modo in cui sono organizzati i file nel filesystem e per farvelo capire vi farò un piccolo esempio:
supponiamo di inserire sempre un disco esterno usb che in automatico viene montato in /media/disco-esterno/, e supponiamo che questo disco venga utilizzato come disco su cui noi scarichiamo i file.. possiamo creare un link a /media/disco-esterno/ in /home/daniele/download/ ed utilizzarlo in tutto e per tutto come se la sua posizione fosse effettivamente quella definita dal nostro link, questo vuol dire che potremo impostare un programma perché scarichi automaticamente in /home/daniele/download/canzoni/ per esempio, su windows questo non lo potete fare sfruttando i link. E’ come se il link fosse la directory stessa. Si comprende pienamente solo provandolo.
Per essere più precisi esistono 2 tipi di link nei filesystem Unix, i soft link e gli hard link, con entrambi è possibile fare quanto appena descritto:
- soft link: collegamenti soffici letteralmente ma più correttamente collegamenti simbolici, il link è come se fosse il file o la directory stessa, ma se cancello il file originale il link resterà “rotto” non punterà più ad una posizione valida e sarà inutile
- hard link: collegamento duro letteralmente, il link è a tutti gli effetti un secondo (o terzo, quarto…) nome del file/directory, è il file stesso! Mi spiego.. se create un hard link del file pippo e chiamate questo hard link pluto, cancellando a quel punto “pippo” non cancellerete il file, cancellerete solo uno dei suoi hard link, il file sarà comunque accessibile da “pluto“. Un hard link è a tutti gli effetti un “diverso nome” da dare allo stesso file, e per cancellare un file che ha degli hard link è necessario cancellare TUTTI gli hard link!
Per più informazioni sui link date da terminale il comando man ln
.
Spero che tutta questa guida aiuti qualcuno, non fatevi problemi a dirmi se non è chiara in qualche punto qui nei commenti.
Manuali utili all’approfondimento:
Praticamente tutti i comandi hanno dei manuali, talvolta esistono manuali anche di file di configurazioni o semplicemente di aspetti del sistema. Alcuni, in genere i principali, sono tradotti in più lingue, italiano compreso, altri si trovano solo in lingua inglese. Alcune distribuzioni richiedono di installare i manuali in italiano per poter consultare quelli tradotti nella nostra lingua. (per distribuzioni debian ed ubuntu ad esempio il pacchetto con le traduzioni si chiama: manpages-it
).
Lanciate da terminale i seguenti comandi (q per uscire, le frecce per scorrere):
man hier
— descrizione della gerarichia del filesystemman proc
— [eng] descrizione del pseudo filesystem proc e della sua gerarchiaman fstab
— descrizione del file/etc/fstab
man mount
— descrizione del comandomount
e delle sue opzioniman chmod
— descrizione del comandochmod
per cambiare i permessi ai file con spiegazione di ogni permessoman ln
— descrizione dei link Unix e come crearliman ls
— descrizione del comandols
per elencare i file in una cartella (comando utilizzato in questa guida)
Articoli Simili
Sunto dell’organizzazione delle directory su sistemi Unix- su Illusionblog
14 giugno, 2008 at 13:07
@matteo
ah si? 🙂
spero sia andato bene il corso 🙂
ha avuto affluenza? c’era interesse?
felice che ti sia stato utile qualcosa che ho scritto
14 giugno, 2008 at 11:48
Ho usato parte della tua guida per scrivere le dispense del corso intermedio di Linux svoltosi a Lucca. Ovviamente ti ho citato nelle fonti, Complimenti
20 Maggio, 2008 at 7:58
@poe84it
esattamente
20 Maggio, 2008 at 7:26
Quali sarebbero i motivi “etici” che ti portano a sconsigliare Suse o OpenSuse? Sono curioso! Centra per caso quell’accordo Microsoft-Novell?
3 marzo, 2008 at 2:01
[…] comprendere il filesystem GNU/Linux (e Unix) […]
3 dicembre, 2007 at 23:47
@ritzzy79 / eric
eheh
grazie!
speriamo di risolverlo… 🙂 e se si risolve non mancherò di parlarne sul mio blog
3 dicembre, 2007 at 23:23
Ho letto la tua guida e mi è piaciuta molto, anche se avevo già dato un occhiata all’argomento sul sito di ubuntu. Spero che il nostro amico mauro abbia risolto e che stia usando ubuntu per i nuovi di linux è abbastanza userfriendly. Vado un po offtopic ma ti volevo dire che se riesci a risolvere il probema della pinnacle potresti pubblicare la soluzione qui.
Grande Mastro.
A presto Eric
1 dicembre, 2007 at 20:44
[…] i contenuti del filesystem dove vanno a finire i programmi prova a dare uno sguardo a questo, qui, mi sembra abbastanza esaustivo. […]
20 settembre, 2007 at 14:36
Ottima guida… mi e sembrata molto interessante… e ha risvegliato la voglia latente del pinguino eheheh
27 giugno, 2007 at 20:00
@hugo
grazie
allora..
senza permessi di root non puoi toccare /boot/grub/menu.lst
perché è un impostazione di sistema..
devi usare “sudo”
nota le barre /boot/grub/ non \boot\grub
le barre \ sono usate solo su windows (e non si capisce bene il perché)
per grub ho scritto un’altra guida qui nel mio blog
27 giugno, 2007 at 19:23
Complimente. Ottime tutte le informazioni.
Concretamente senza permessi di root quale sarebbe la sintassi esatta per modificare il file \boot\grub\menu.lst (voglio cambiare il colore della schermata iniziale -nera- del grub con l’aggiunta de qualche SplashImage). Uso Ubuntu 7.04
Grazie
26 giugno, 2007 at 19:58
@Giovanni
hum.. mi sembra più logico rendere proprietario del file l’utente e permetterne la lettura solo a lui…
comunque per le policy di gestione più complessa di file, programmi e quant’altro esiste SElinux..
io qui spiego com’è strutturato un filesystem unix ( e quindi Linux) e qualche proprietà dei filesystem più usati su questi sistemi
arrivederci
26 giugno, 2007 at 10:33
Esempio medio-grande azienda. Un area acquisti vuole dare l’autorizzazione di un suo file a un membro dell’area vendite e non a tutti gli altri (“others”), e solo di quel file e non di tutti i suoi file. La realta’ e’ chiara, ma Linux esce in questo caso dalla realta’ costringendo l’amministratore di sistema a creare un altro gruppo in cui ci sono gli utenti dell’area acquisti e quell’utente della’area vendita, con autorizzazione solo su quel file.
L’AS/400, cosi’ brutto da vedere, ma cosi’ sicuro e affidabile per banche e aziende medio-grandi mi permette di associare a un solo utente esterno (o anche a due o tre, e basta) ad un gruppo, autorizzazioni solo su un oggetto di un gruppo, senza creare nuovi gruppi che nella realta’ e organigramma aziendale non esistono.
Questa e’ una grossa limitazione di Linux.
7 Maggio, 2007 at 14:36
@Mauro
in questo periodo non ho molto tempo
quindi non me la sento di prendermi un impegno che non saprei rispettare con costanza
7 Maggio, 2007 at 12:25
Ciao Mastro. Ricordi? Abbiam parlato di Linux giorni fa e ti sei registrato nel mio forum.
Volevo proporti di curare la sezione dedicata a Linux nel mio forum nella quale potresti anche pubblicizzare questo tuo spazio.
Fammi sapere.
Ciao.
16 aprile, 2007 at 20:24
bella guida mi è tutto più chiaro ora 🙂
16 aprile, 2007 at 20:19
Ancora complimenti e grazie!
gianluca
14 aprile, 2007 at 17:36
@Mauro
ti rispondo via e-mail e vedo di darti una mano
14 aprile, 2007 at 17:18
Faro’ come dici allora, passo a Ubuntu. Per cio’ che riguarda la scheda video non c’e’ il driver che dici, tra l’altro io ho un sintonizzatore Tv su quella scheda e vorrei utlizzarla con un apposito software..
14 aprile, 2007 at 17:07
@Mauro
la fat32 Linux la gestisce benissimo
il driver per la tua scheda video esiste già, ti ho già spiegato che non si chiama “All in wonder” e che il driver si chiama r128 e dovrebbe già essere incluso
per la webcam non c’è nulla da fare, come già ti dissi
lascia perdere SuSe.. prova Ubuntu..
14 aprile, 2007 at 16:55
Continuando a usare Suse Linux 10.0 sto notando che è purtroppo un grosso limite il fatto di non fornire tutti i drivers per i componenti di ogni pc. Nel mio caso mi sembra grave che non ci sia un driver per una scheda video vecchia Ati All in wonder 128 da 32Mb e altrettanto grave che non ci sia un driver per una webcam recente, la trust 360 che ti ho detto l’altra volta sul mio forum.
Tra l’altro mi dicesti che il file system Ntfs Linux non lo comprende quindi ho provato sull’altro hard disk che contiene windows a creare una partizione fat32 con la speranza che si vedesse da Linux……niente! Come posso fare??
12 aprile, 2007 at 17:39
[…] FileSystem: Il filesystem Linux è più efficiente ma concettualmente diverso da quello windows e quindi “spiazzante”, ho già trattato questo argomento. […]
9 aprile, 2007 at 23:51
@Mauro
non c’è la distro “giusta” ognuno la trova provando.. quando si sente a suo agio con una distro allora quella fa per lui..
io ti posso dire che per i neofili le distro che in genere son considerate più semplici sono:
Ubuntu, Mandriva, Fedora e OpenSuse..
ora.. OpenSuse io la sconsiglio per un semplice motivo “etico”, non l’ho provata recentemente e quindi non saprei, se ti ci trovi bene ben venga! la cosa più differente tra ubuntu (debian) e le altre è il modo di installare i pacchetti
se ti trovi bene con opensuse sei liberissimo di usarla
Noterai che esiste una varietà enorme di scelte nel mondo Linux, quindi è molto probabile che (quando ci avrai preso la mano) troverai la configurazione che più ti piace
9 aprile, 2007 at 22:25
Come ti dicevo io l’altro giorno ho installato il Suse 10.0.
Vorrei capire per ora, ci sono tante differenze con Ubuntu? O si avvicinano in molte cose ?
Sennò per ora investo del tempo a iniziare a imparare e poi magari scelgo la versione giusta.
9 aprile, 2007 at 19:17
@Mauro
con ogni distro Linux puoi far tutto quello che fai con le altre perché tutte poggiano sulla stessa base comune
esistono alcune piccole differenze nella struttura delle directory o in alcune scelte ma sono per lo più insiemi di software preconfigurato
le distro di base (cioè quelle che si distinguono sul tipo di struttura, la pacchettizzazione ed altre cose) oggi sono: Debian, Gentoo, Slackware, Red Hat, Suse
da queste poi sono derivate tutte le altre distro
ad esempio Ubuntu è derivata da Debian Unstable da cui aggiorna periodicamente i pacchetti
la scelta di una distro è molto personale, ogni distro è orientata ad una certa utenza, esistono anche quelle create per gli uomini di chiesa o per i musicisti..
esistono distro complesse ma che ti permettono un controllo totale se sai dove metter le mani
e ci sono distro il cui obiettivo è quello di essere semplici da usare, una di queste è Ubuntu, ed è quella che ha avuto più successo in questo senso, altre distro votate alla semplicità sono: Fedora (basata su Red Hat), Mandriva, OpenSuse (che sconsiglio per motivi etici)
ultimamente a chi comincia viene consigliato Ubuntu perché è ben fatta e ha molto supporto in rete
9 aprile, 2007 at 16:17
Bè sicuramente ho le idee confuse….non è facile decidere di distinguersi dalla massa e cercare qualcosa di diverso. E’ come imparare un’altra lingua, la difficoltà prima di imparare a parlare è quella di abituarsi a pensare nella lingua “nuova”.
La questione della scelta della distribuzione da cosa dipende per te ?
Quella che mi hai indicato, la ubuntu è comunque una versione aggiornata ad oggi? E perchè tu la preferisci?
N.B. : Se scrivi sia qui che nel mio sito avvisami lì in quanto mi sono accorto solo ora che mi avevi scritto sia lì che qui.
Ciao e grazie.
6 aprile, 2007 at 16:11
@Mauro
ora non ho molto tempo ma cercherò di risponderti velocemente sul tuo sito (anche perché qui è un po’ Off Topic)
ti rispondo però alla domanda che riguarda l’articolo:
NTFS è un filesystem proprietario di microsoft di cui microsoft non ha mai rilasciato le specifiche, questo significa che il supporto in scrittura su Linux (ma anche su tutti gli altri sistemi operativi, compresi quelli microsoft precedenti ad NT) esso non è disponibile o è sperimentale
esistono 2 progetti che tentano di dare un supporto alla scrittura su NTFS su linux: ntfs-3g e linux-ntfs
io ti consiglio il primo, pare si comporti meglio…
il supporto in scrittura potrebbe comunque avere dei problemi (conta che è stato scritto facendo reverse engineering e andando per tentativi) quindi un backup dei dati è meglio avercelo..
se hai un disco esterno o dello spazio aggiuntivo il mio consiglio è di crearti una partizione FAT32 e utilizzare quella per l’interscambio di dati, o di accontentarti della lettura da NTFS.. se vuoi provare la scrittura procedi con uno dei 2 tool che ti ho indicato
nota: tu mi hai parlato di permessi di un filesystem ntfs, non sono per niente gli stessi permessi che hai su Linux! Impostare su NTFS come proprietario everyone o administrator a Linux non cambia nulla, inoltre su un filesystem NTFS o FAT32 tutta la mia guida non si applica: niente hard / simbolic link e permessi gestiti in maniera totalmente diversa
nota2: permettimi di storcere il naso sulla distribuzione da te scelta Suse.. è più questione di principio che altro, comunque io una prova con ubuntu (o xubuntu se quest’ultimo dovesse risultare troppo lento) la farei.. anche fedora non è male.. (il live cd lo puoi provare senza installazione)
ti rimando ad approfondimenti sul tuo forum quando avrò il tempo
Edit: comunque hai le idee un po’ confuse, come le avevo io quando ho cominciato con Linux. Vedo che cerchi in Linux gli stessi modi di fare che aveva windows (dove aggiungo una periferica? le USB non le riconosce subito come windows?) ti risponderò a questo domande, e magari scriverò un altro articolo per rispondere alle domande “frequenti” dei newbie Linux 🙂
6 aprile, 2007 at 15:56
Se preferisci puoi anche scrivermi nel forum del mio sito dove tra l’altro ho dedicato una sezione a linux che però nessuno ha ancora il coraggio e forse la bravura di affrontare.
Ti aspetto.
Ciao.
6 aprile, 2007 at 15:54
Ciao, la tua è davvero una ottima mini-guida.
Io sono un utente Windows che ha installato circa 10 giorni fa Suse Linux 10.0 e ne sta apprezzando le caratteristiche. Non mancano pero’ i problemi. Ti spiego :
il mio pc è ormai del 2000 ma per quello che faccio io mi sta bene;
linux non riconosce la mia scheda video ati all in wonder 128 (32Mb di ram interna) non dandomi quindi la possibilita’ di riconoscere il sintonizzatore per vedere la tv sul pc;
linux non riconosce la mia webcam trust 360
inoltre vorrei capire per aggiungere delle periferiche come si fa?
le usb non le riconosce subito come in windows?
un altro problema riferito all’argomento “proprietario di file e cartelle” che tu hai trattato è il seguente: dopo aver installato linux, questo riconosce gli altri 2 hard disk che ho, uno dati Ntfs e l’altro di windows Ntfs ma non mi dà il permesso di scriverci dentro nè di modificare i permessi pur entrando come root. Come posso fare? Devo agire da linux o da windows per le modifiche? Premetto che da windows ho controllato e i proprietari di quegli hard disk sono impostati su everyone.
Se puoi rispondimi oltre a qui, anche nella mia casella di posta.
Grazie.
19 marzo, 2007 at 16:26
“domani quando sarò più sano ci darò un occhiata”
In realtà è solo un raccoglitore di cose inutili 🙂
19 marzo, 2007 at 0:37
@demone anche il tuo blog non sermbra male
domani quando sarò più sano ci darò un occhiata
18 marzo, 2007 at 22:10
Ottima guida, veramente interessante. Complimenti.
5 marzo, 2007 at 12:40
[…] Qui una bella introduzione al sistema dei file di Gnu/Linux. […]