Convenzioni di denominazione di file e directory


21

Voglio riformattare i file e le directory sul mio sistema. Tuttavia, non sono sicuro di quale sia la migliore pratica .

Dopo aver letto questa domanda e le sue risposte, presumo che la parte più importante sia quella di essere coerenti. Tuttavia, questo è dove sono bloccato. Ad esempio in root, ci sono directory come /bine /usr, che usano tutte lettere minuscole. Ma nella directory del mio utente /home/foobar/, ci sono già un sacco di directory come ~/Pictures, ~/Documentse ~/Music(che sono in maiuscolo)!

Forse questo è solo perché uso Ubuntu, ma quale è considerata la migliore pratica ?


7
Fai sul tuo sistema quello che vuoi. Se vuoi archiviare la tua collezione porno in / boot nessuno lo limita.
Anton Barkovsky,

2
Cordiali saluti, quando inizi un percorso con /, come hai fatto con /Pictures, ciò significa che il percorso inizia a livello di radice (cioè un percorso assoluto ). Se un percorso inizia con ~, allora il suo punto di partenza è una home directory (la tua home directory se seguita da a /o niente, qualcun altro è seguito dal loro nome utente). Quindi dovresti invece scrivere ~/Picturesper indicare la directory Pictures nella tua home directory, o dovresti semplicemente scrivere Pictures. Se vuoi mostrare che è una directory, seguila con un /, come in Pictures/.
Mike DeSimone,

Risposte:


7

Ci sono un paio di parti in conflitto qui. Il commento sulla possibilità di fare ciò che vuoi è vero, ma farà anche molto più lavoro per te nel lungo periodo.

Se hai idea di riorganizzare qualcosa al di fuori della tua home directory, fermati ! È molto più complicato di quanto pensi e dovresti lasciarlo da solo. Se non ti piace, dovresti passare a una distribuzione diversa o persino a un sistema operativo. Se non è adatto a te, dovrai creare il tuo, ma non puoi semplicemente spostare le directory di sistema senza bruciarti. Vedi questa domanda per avere un'idea di cosa succederebbe se tu volessi andare in quel modo.

Quindi siamo nella tua home directory.

Prima di tutto, ricorda mentre pensi a una struttura secondo cui le autorizzazioni sono gerarchiche. Affinché qualcuno abbia le autorizzazioni su una determinata cartella, deve avere almeno le autorizzazioni di esecuzione su ogni cartella SOPRA quella cartella. Se hai qualcosa nella tua directory home che condividi, deve essere vicino all'inizio (es. ~ / Music), tutto ciò che vuoi limitare dovrebbe essere in sottocartelle con permessi limitati (es. ~ / .Ssh / id_rsa).

In secondo luogo, non esistono regole o addirittura migliori pratiche di per sé, ma esistono convenzioni. Molti software utilizzano valori predefiniti che è possibile o meno essere in grado di modificare, ma anche quando è possibile modificarli è problematico doverlo fare costantemente. A Gnome, e in particolare a quelli di Ubuntu, piacciono le cartelle con nomi carini che iniziano con le maiuscole. Se provi a spostare "Download" su "download" scoprirai che probabilmente l'originale viene creato di nuovo troppo presto da un programma con un valore predefinito presunto. Dovrai decidere quanto nuotare contro corrente che vuoi fare in questi casi.


E ho pensato che Linux è configurabile come vuoi ...
daGrevis l'

Hai ancora bisogno di eseguire le autorizzazioni su ogni cartella sopra una directory se accedi a quella directory da un softlink? Inoltre, perché non creare un softlink da "Download" a "Download" come risposta all'ultimo punto su alcuni comportamenti di distro.
deed02392,

15

L'organizzazione dei file di sistema dipende dal produttore del sistema operativo. Le distribuzioni Linux in linea di massima seguono lo standard di gerarchia dei filesystem di Linux (FHS) . Come utente o amministratore di sistema, l'FHS (e le convenzioni aggiuntive della tua distribuzione) può occasionalmente essere utile se devi individuare un file o se vuoi capire il ruolo di un file data la sua posizione, ma non ti costringe, puoi fai ancora quello che vuoi (a tuo rischio e pericolo).

All'interno della home directory, puoi fare praticamente quello che vuoi, con una sola eccezione: i file dot, ovvero i file il cui nome inizia con un .nella home directory, sono file di configurazione o di stato e le applicazioni richiedono che abbiano un nome particolare. Ad esempio, bash leggerà sempre ~/.bashrcquando inizia (tranne quando non lo fa, ma questa è un'altra storia), quindi è meglio non usare quel nome per un altro scopo.

Il progetto di Freedesktop , che è principalmente un terreno comune per Gnome e KDE , ha definito alcune directory standard in$HOME : Documents, Music, ecc Alcune applicazioni creare queste directory se non esistono, e li usa come percorsi predefiniti. Puoi cambiare il loro nome, e infatti dovrebbero essere tradotti nella tua lingua. Il componente software che gestisce queste directory è xdg-users-dirs. È possibile modificare i nomi delle directory impostando valori diversi in ~/.config/user-dirs.dirs.


1

Su GNU / Linux lo standard pertinente è il Filesystem Hierarchy Standard (FHS). Tuttavia, ciò non copre le convenzioni di denominazione delle directory all'interno di una home directory degli utenti.


Quibble: Se fate PREFIX=$HOME ./configure; make; make installdi costruire qualcosa senza privilegi di root si otterrà bin, lib, include, share, manecc sotto $HOME, quindi se c'è qualche possibilità che tu ogni vuole fare che si potrebbe anche usare i nomi tradizionali, in primo luogo.
dmckee,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.