Newsgroup: it.comp.os.linux.sys
Titolo: Quiz

salve, secondo voi quali tra questi filesystem devono essere presenti
necessariamente all'avvio?
/bin
/etc
/var
/usr/local
/home
/root
/bin direi di si per la shell di login
/etc si per dare la possibilità a init di leggere le conf
/var non mi sembra essenziale, quindi direi di no
/usr/local no
/home neanche
/root non so, credo di si per permettere a init di esser lanciato con
privilegi di root
Chiarisco che è una domanda di un corso, non ho intenzione di smontare
fs a caso.
-- 
louanna
------------------------------------------------------------------------
louanna's Profile: 
http://www.linuxforum.it/member.php?userid=1055
View this thread: 
http://www.linuxforum.it/showthread.php?t=100560

 fs a caso.
Allora studia :P
-- 
Vide

 /root
il "/" non serve?

 /etc
Ovviamente '/' e molto probabilmente '/sbin'
Davide
-- 
An Emacs reference mug is what I want.  It would hold ten gallons of coffee.
---- Steve VanDevender

 fs a caso.
Se e` la domanda di un corso, allora sicuramente e` scritta in uno dei
testi che ti hanno dato o che ti hanno detto di usare (nonche` su
Google). A questo punto cosa credi che sia meglio, mettere crocette a
caso in base alle risposte altrui oppure studiare per capire qual e` il
senso di una domanda del genere?
Enrico

 
Certo che studio! Vi sto solo rubando un paio di idee :D
Effettivamente in root non ci vedo qualcosa di molto diverso dalle home
tipiche.
Tra l'altro ho detto una stupidagine. Che c'entra la presenza dell'user
root con la presenza della sua cartella? Grazie per avermelo fatto
notare.



Permettimi, la la tua proposta mi pare fin troppo ovvia. Ti pare che
non ci abbia pensato immediatamente? 
Non mi è possibile consultare il libro di testo consigliato. Purtroppo
al momento ne ho solo un altro il quale non ha risposto alla mia
domanda.
Inoltre prima di postare ho dato un'occhiata ad una documentazione
dettagliata della gerarchia del file system e ad appunti di informatica
libera (oltre a varie ricerche tipo "necessary filesystem on boot" ma
non ci ho trovato niente, però magari non ho cercato bene).
Al posto di rimanere con le mani in mano ho chiesto consiglio qui (non
prima di aver tentato, testato, ossevato sulla mia distribuzione)
ps: mi piace studiare, non cerco mezzucci di sorta


 fs a caso.
Questi che hai nominato - fino a prova contraria - non sono
*filesystem* ma sono TUTTE *directory*. E comunque, anche se alcuni di
questi potrebbero essere dei filesystem, la domanda ha senso riferirla
alle directory.
Bocciato alla grande. E se la domanda è riportata in questo modo,
bocciato anche il tuo tutor.
Per far partire la macchina server un solo filesystem: "/" (nemmeno la
swap).
-- 
echo onailimissaM | awk 'BEGIN { FS = "" }
{ for (i = NF; i >= 1; i-- )
  printf $i }'; echo

 Ovviamente '/' e molto probabilmente '/sbin'
La domanda non è completa.
Si intende far partire un server, che lancia dei demoni, scrive di pid,
logga, legge file di configurazione, oppure si intende lanciare un
kernel per far funzionare una tastiera e un video?


 
Non abbiamo trattati sistemi server quindi la seconda (tastiera e
video), più o meno.
Intendo, però,  un avvio "completo" (scusa la mancanza di terminologia
appropriata).
In pratica voglio un sistema che si avvii e funzioni regolarmente (non,
ad esempio un sistema che avvii soltanto una shell, tipo indicando
esplicitamente ad init di avviare /bin/sh e basta).
Non mi interessa se si avvia X, xen o altre robe, mi basta che funzioni
in maniera basilare.
Probabilmente non mi sono spiegato benissimo, spero si capisca.
Ho dato un'ulteriore occhiata alle directory, direi che un sistema si
avvia normalmente (in pratica scalando i runlevel, se mi permettete
l'espressione) se sono presenti (includo anche directory che non avevo
citato, per completezza)
/
/boot - per il bootloader e per l'immagine vmlinuz (se è presente in
questa dir, alternativamente, secondo gli standard, dovrebbe essere
presente in /)
/bin - vi risiede mount, quindi dovrebbe essere necessaria
/sbin - vi risiede, come minimo init (suppongo che il sistema si avvii
tramite init, ma anche upstart dovrebbe risiedere qui, ad esempio).
Da FHS: "contains binaries essential for booting, restoring, recovering
and/or repairing the system in addition to the binaries in /bin"
/lib - "Essential shared libraries and kernel modules" (preso da
Filesystem Hierarchy Standard)
/etc - vi risiedono i file di conf di init, quindi è necessario per il
boot
Confermate?


 Confermate?
A questo elenco mancano le directories
/dev - essenziale per l'accesso/gestione dei devices.  I moderni 
sistemi la creano dinamicamente ma è essenziale che esista e che sia 
popolata con almeno i devices che servono alle attività di manutenzione.
/root - anche se non è essenziale al funzionamento del sistema è la 
home directory dell'utente root che può installarvi propri programmi 
di manutenzione.  Se non esiste viene automaticamente loggato in '/'.
/mnt - anche questa non è essenziale al funzionamento (e generalmente 
è una directory vuota) ma può servire per montare device essenziali 
alla manutenzione.
/proc e /sys - le recenti versioni di linux fanno affidamento su 
queste due directories.  Non conosco l'evoluzione di altri sistemi 
perché da molti anni non ho più occasione di occuparmene (sono solo un 
utente) ma dove esistono potrebbero essere necessari per la manutenzione.
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   < 
http://giovanni.homelinux.net/
 >

 *filesystem* ma sono TUTTE *directory*.
Stavo per fare la stessa obiezione!
Quella domanda non ha senso, infatti.
-- 
Massimo Bacilieri AKA Crononauta


Forse il senso della domanda è: quali directory devono essere accessibili al 
boot e quali possono essere montate successivamente (es su nfs o altro)?
-- 
Roberto Tagliaferri-Linux user #30785 <-> r.tagliaferri@(forse)
tosnet.it
Fashion is a form of ugliness so intolerable that we have to alter it
every six months.
		-- Oscar Wilde

 
Grazie mille per le descrizioni e per gli aneddoti, molto esauriente.
Mi è sorta una curiosità in parte riguardante il boot, in parte no.
Quali directory (tra quelle che solitamente troviamo in /, elencate da
Giovanni) posso montare in sola lettura all'avvio senza compromettere
l'uso del sistema (chiaro che mancherà qualcosa) durante il suo
utilizzo?
/bin, /sbin direi che possono tranquillamente essere montati in Read
Only
/var non avrebbe senso in RO
/home, /root/, /usr possono essere RO (anche se le azioni che posso
fare in questo modo sono limitate, dovrebbe funzionare il sistema)
/tmp no
/dev non saprei sinceramente
/lib eventualemente può essere montato RO
/etc RO
/mnt no, altrimenti non potrei montarci nulla
Suppongo che sia il caso in cui ho definito diverse partizioni per
ognuna di queste cartelle (o mount point, credo sia il termine esatto) e
posso scegliere come montarle.
Spero sia posta almeno decentemente la domanda.
Grazie ancora a tutti per le risposte e le correzioni.


 Spero sia posta almeno decentemente la domanda.
No!


 necessariamente all'avvio?
/bin e /etc. tant'è che sono sempre directory della root, gli altri 
vengono montati dopo.

 
/ è mount-point e cartella, se ho solo / e dentro c'è /bin,
quest'ultimo non è un mount-point.
Se ho tre dischi e nel primo ci metto / (senza /bin e /sbin), nel
secondo ci metto solo /sbin e nel terzo solo /bin, questi 3 sono
mountpoint, oltre a essere cartelle.
Ho capito ora?
Ti sto facendo tirare di matto! Scusami, spero di esserci arrivato
finalmente


 appropriata).
Complico la domanda, o meglio la estendo:
stiamo parlando di un sistema che ci autocostruiamo, di un sistema
unix ben definito, e in caso parliamo di un sistema preciso, di che
sistema stiamo parlando?
HP-UX ha gli init in /sbin/init.d/ e certi eseguigili in /etc. Ad
esempio in HP-UX tu avrai: /etc/ping
Adesso mi sfugge se in /etc possono esserci eseguibili importanti, per
cui necessiteremo per forza di /etc
Fra l'alro alcuni file relativi agli init sono in /etc (qualcosa tipo
"rcblabla" dove si specifica la modalità di avvio).
Sempre tornando ad HP-UX, le ultime versioni - in modalità trusted -
necessitano della directory /tcb, contenente il database degli utenti,
altrimenti non fai login nemmeno come root.
Come vedi non c'è niente di assoluto.
E in fin dei conti (a voler esagerare), le directory esistono solo per
nostra comodità, e potrebbero benissimo non esistere.
Noi mettiamo su /sbin una cosa e su /etc un'altra solo per comodità, ma
se io mi autocostruisco un sistema, nulla mia vieta di non avere
nessuna directory e di mettere *TUTTO* in /blabla/
Dirai tu: è un casino.
Ti rispondo: certo che è un casino, ma per funzionare, funziona.
Secondo me, queste sono domande del secolo passato e che non hanno un
senso in assoluto.



Facebook: Massimo Bacilieri

 senso in assoluto.
Quoto quello che hai scritto, non ho obiezioni.
Però sai, sono domande di "inizializzazione", si considera in via
generica un sistema unix-like con una struttura base.
Poi è logico che per capire cose intendo con "struttura base" dovrei
descriverti tutto quello che trattiamo, quindi la tua obiezione è più
che lecita


 obiezione è più che lecita
Sulla struttura del file system esistono degli standard che tra le 
altre cose descrivono le ragioni di quelle scelte sia per quanto 
riguarda il boot che per quanto riguarda le motivazioni delle scelte.
http://www.pathname.com/fhs/pub/fhs-2.3.html


 generica un sistema unix-like con una struttura base.
Unix-like?
Già qui si porrebbe la domanda: System-V o BSD?
Ribadisco quanto detto da altri: la domanda, posta in questi termini, non
ha senso.

> della sua cartella? 
attento ai lart :D