Konwencje nazewnictwa plików i katalogów


21

Chcę refaktoryzować pliki i katalogi w moim systemie. Nie jestem jednak pewien, jaka jest najlepsza praktyka .

Po przeczytaniu tego pytania i jego odpowiedzi zakładam, że najważniejszą częścią jest konsekwencja. Jednak tutaj utknąłem. Np. W katalogu głównym istnieją katalogi takie jak /bini /usr, które wszystkie używają małych liter. Ale w moim katalogu użytkownika /home/foobar/istnieje już pęczek katalogów, takich jak ~/Pictures, ~/Documentsi ~/Music(które są kapitalizowane)!

Może to tylko dlatego, że używam Ubuntu, ale co jest uważane za najlepszą praktykę ?


7
Robisz w swoim systemie, co chcesz. Jeśli chcesz przechowywać swoją kolekcję porno w katalogu / boot, nikt tego nie ogranicza.
Anton Barkovsky,

2
Dla twojej informacji, kiedy zaczynasz ścieżkę /, tak jak masz /Picturesto oznacza, że ​​ścieżka zaczyna się na poziomie głównym (tj. Ścieżka bezwzględna ). Jeśli ścieżka zaczyna się od ~, to punktem początkowym jest katalog domowy (twój katalog domowy, jeśli następuje po nim albo /nic, albo inna osoba, jeśli następuje po niej nazwa użytkownika). Zamiast tego powinieneś pisać, ~/Picturesaby oznaczać katalog Pictures w swoim katalogu domowym, lub po prostu pisać Pictures. Jeśli chcesz pokazać, że jest to katalog, postępuj zgodnie z nim /, jak w Pictures/.
Mike DeSimone

Odpowiedzi:


7

Jest tu kilka sprzecznych części. Komentarz dotyczący możliwości robienia wszystkiego, co chcesz, jest prawdą, ale na dłuższą metę przyniesie ci również dużo więcej pracy.

Jeśli masz pomysł na ponowne uporządkowanie czegokolwiek poza katalogiem domowym, przestań ! To o wiele bardziej skomplikowane niż myślisz i powinieneś zostawić to w spokoju. Jeśli ci się nie podoba, powinieneś zmienić na inną dystrybucję lub nawet system operacyjny. Jeśli nic ci nie odpowiada, musisz rzucić własny, ale nie możesz po prostu przenosić katalogów systemowych bez poparzenia. Zobacz to pytanie, aby dowiedzieć się, co by się stało, gdybyś chciał pójść tą drogą.

Przechodzimy do twojego katalogu domowego.

Przede wszystkim pamiętaj, gdy wymyślisz strukturę, że uprawnienia są hierarchiczne. Aby ktoś miał uprawnienia do danego folderu, musi mieć przynajmniej uprawnienia do wykonywania każdego folderu POWYŻEJ tego folderu. Jeśli masz coś w katalogu domowym, który udostępniasz, musi znajdować się w górnej części (np. ~ / Music), wszystko, co chcesz ograniczyć, powinno znajdować się w podfolderach z ograniczonymi uprawnieniami (np. ~ / .Ssh / id_rsa).

Po drugie, nie ma żadnych zasad ani nawet najlepszych praktyk jako takich, ale istnieją konwencje. Wiele programów korzysta z wartości domyślnych, które możesz zmienić lub nie, ale nawet jeśli możesz je zmienić, trudno jest to robić stale. Gnome, a zwłaszcza rzeczy Ubuntu, lubi foldery o ładnych nazwach, zaczynające się od wielkich liter. Jeśli spróbujesz przenieść „Pobrane” na „Pobrane”, zauważysz, że oryginał prawdopodobnie zostanie utworzony ponownie zbyt długo przez jakiś program z założonymi domyślnymi ustawieniami. Będziesz musiał zdecydować, ile pływania pod prąd chcesz zrobić w takich przypadkach.


Pomyślałem, że Linux jest tak konfigurowalny, jak tylko chcesz ...
daGrevis

Czy nadal potrzebujesz uprawnień do wykonywania każdego folderu powyżej katalogu, jeśli uzyskujesz dostęp do tego katalogu za pomocą softlink? Ponadto, dlaczego nie utworzyć softlink z „Pobranych” do „Pobranych” w odpowiedzi na twój ostatni punkt dotyczący niektórych zachowań dystrybucyjnych.
deed02392

15

Organizacja plików systemowych zależy od producenta systemu operacyjnego. Dystrybucje systemu Linux są zgodne ze standardem hierarchii systemu plików Linux (FHS) . Jako użytkownik lub administrator systemu, FHS (i dodatkowe konwencje twojej dystrybucji) mogą czasami być przydatne, jeśli potrzebujesz zlokalizować plik lub chcesz zrozumieć rolę pliku, biorąc pod uwagę jego lokalizację, ale nie ogranicza cię to, możesz nadal rób, co chcesz (na własne ryzyko).

W swoim katalogu domowym możesz robić prawie wszystko, co chcesz, z jednym wyjątkiem: pliki kropkowe, tj. Pliki, których nazwa zaczyna się od .w katalogu domowym, są plikami konfiguracyjnymi lub stanowymi, a aplikacje wymagają, aby miały określoną nazwę. Na przykład, bash zawsze będzie czytał, ~/.bashrckiedy się zacznie (z wyjątkiem, gdy nie, ale to inna historia), więc lepiej nie używać tej nazwy do innego celu.

Projekt freedesktop , który jest głównie bezsporne dla Gnome i KDE , zdefiniowała kilka standardowych katalogów w$HOME : Documents, Music, itd. Niektóre aplikacje będą tworzyć te katalogi, jeśli nie istnieją, i używać ich jako domyślnych lokalizacjach. Możesz zmienić ich nazwy, a tak naprawdę mają być przetłumaczone na twój język. Jest to składnik oprogramowania zarządzający tymi katalogami xdg-users-dirs. Możesz zmienić nazwy katalogów, ustawiając różne wartości w ~/.config/user-dirs.dirs.


1

W GNU / Linux odpowiednim standardem jest Standard Systemu Hierarchii Plików (FHS). Nie obejmuje to jednak konwencji nazewnictwa katalogów w katalogu osobistym użytkowników.


Zastrzeżenie: Jeśli nie PREFIX=$HOME ./configure; make; make installzbudować coś bez przywilejów administratora dostaniesz bin, lib, include, share, manetc mocy $HOME, więc jeśli istnieje jakakolwiek szansa, że będziesz każdy chce zrobić to równie dobrze można użyć tradycyjnych nazw w pierwszej kolejności.
dmckee,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.