Do tworzenia katalogów w systemie Linux służy polecenie mkdir. Jest to podstawowe polecenie, które powinien znać każdy użytkownik Linuksa, ponieważ odgrywa kluczową rolę w zarządzaniu plikami i katalogami. Podstawowa składnia polecenia mkdir umożliwia utworzenie jednego lub większej liczby katalogów jednocześnie, ustawienie uprawnień, a nawet utworzenie katalogów nadrzędnych, jeśli jeszcze nie istnieją. Zrozumienie różnych opcji i składni mkdir może znacznie poprawić wydajność zarządzania plikami i katalogami w wierszu poleceń.
W tym przewodniku wyjaśniono składnię polecenia mkdir, zapoznano się z jego opcjami i przedstawiono praktyczne przykłady użycia mkdir w różnych scenariuszach w systemie Linux.
Składnia polecenia mkdir
W najprostszej formie polecenie mkdir ma następującą składnię:
mkdir [OPTION]... DIRECTORY...
- mkdir to polecenie nakazujące systemowi utworzenie nowego katalogu.
- [OPCJA] to opcjonalny argument modyfikujący zachowanie polecenia.
- KATALOG to nazwa katalogu lub katalogów, które chcesz utworzyć.
Opcje dostępne w poleceniu mkdir
Istnieje kilka opcji, których możesz użyć z poleceniem mkdir, aby dostosować jego funkcjonalność:
- -m, –mode=TRYB: Ustawia tryb pliku (uprawnienia) dla nowego katalogu, często przedstawiany jako ciąg liczbowy, np. „755” lub „644”.
- -p, –parents: Jeśli określone katalogi już istnieją, ta opcja gwarantuje, że nie zostanie zgłoszony żaden błąd. W razie potrzeby umożliwia także tworzenie katalogów nadrzędnych.
- -v, –verbose: Wyświetla szczegółowe dane wyjściowe wyjaśniające działanie polecenia mkdir.
- –help: Wyświetla komunikat pomocy i kończy pracę.
- –wersja: Wyświetla informacje o wersji i kończy działanie.
Przykłady poleceń mkdir
Tworzenie prostego katalogu za pomocą mkdir
Najprostszym i najczęstszym zastosowaniem polecenia mkdir jest utworzenie nowego katalogu:
mkdir new_directory
W tym poleceniu nowy_katalog jest nazwą tworzonego katalogu. Po wykonaniu tego polecenia w Twojej bieżącej lokalizacji zostanie utworzony nowy katalog o nazwie nowy_katalog.
Tworzenie wielu katalogów za pomocą mkdir
Polecenie mkdir może także utworzyć wiele katalogów jednocześnie. Oto jak to zrobić:
mkdir dir1 dir2 dir3
W tym poleceniu dir1, dir2 i dir3 są nazwami katalogów, które mają zostać utworzone. To polecenie utworzy te trzy katalogi w Twojej bieżącej lokalizacji.
Tworzenie katalogu z określonymi uprawnieniami za pomocą mkdir
Za pomocą opcji -m lub –mode możesz określić uprawnienia katalogu w momencie jego tworzenia:
mkdir -m 755 new_directory
Tutaj tworzony jest nowy_katalog z uprawnieniami ustawionymi na „755”, co oznacza, że właściciel może czytać, zapisywać i wykonywać, podczas gdy grupa i inne osoby mogą tylko czytać i wykonywać.
Tworzenie zagnieżdżonych katalogów za pomocą mkdir
Opcja -p lub –parents umożliwia utworzenie katalogów nadrzędnych w razie potrzeby. Na przykład:
mkdir -p dir1/dir2/dir3
To polecenie sprawdza, czy istnieją katalogi dir1 i katalog2, a jeśli nie istnieją, tworzy je. Następnie tworzy katalog dir3 wewnątrz katalogu dir2, który znajduje się wewnątrz katalogu dir1.
Używanie pełnego wyjścia z mkdir
Opcja -v lub –verbose powoduje, że mkdir wyświetla komunikat dla każdego utworzonego przez siebie katalogu, co może być przydatne przy rozwiązywaniu problemów lub potwierdzaniu:
mkdir -v new_directory
To polecenie utworzy nowy_katalog, a następnie wydrukuje komunikat informujący o jego utworzeniu.
Tworzenie katalogu ze spacją w nazwie
Czasami chcemy utworzyć katalog ze spacją w nazwie. Możemy to osiągnąć umieszczając nazwę katalogu w cudzysłowie:
mkdir "new directory"
Za pomocą tego polecenia tworzony jest nowy katalog o nazwie nowy katalog (ze spacją pomiędzy „nowy” i „katalog”).
Sprawdzanie wersji mkdir
Możesz sprawdzić wersję polecenia mkdir aktualnie zainstalowaną w twoim systemie. Może to być pomocne w przypadku problemów ze zgodnością lub rozwiązywania problemów. Aby sprawdzić wersję, możesz użyć:
mkdir --version
To polecenie wyświetli informacje o wersji polecenia mkdir aktualnie używanego w systemie.
Wyświetlanie pomocy dla mkdir
Jeśli kiedykolwiek będziesz potrzebować pomocy przy korzystaniu z polecenia mkdir lub chcesz szybko sprawdzić jego opcje, użyj opcji –help:
mkdir --help
To polecenie wyświetli komunikat pomocy pokazujący użycie i dostępne opcje polecenia mkdir.
Tworzenie katalogów z pliku tekstowego
Wyobraź sobie, że masz plik tekstowy z listą nazw katalogów, które chcesz utworzyć. Możesz to zrobić za pomocą polecenia xargs wraz z mkdir:
xargs mkdir < dir_list.txt
W tym poleceniu dir_list.txt jest plikiem tekstowym zawierającym listę nazw katalogów. Polecenie odczyta ten plik i utworzy katalogi o tych nazwach.
Tworzenie katalogu z pełną ścieżką
Możesz określić pełną ścieżkę, w której chcesz utworzyć katalog. Jest to szczególnie przydatne, gdy chcesz utworzyć katalogi w lokalizacji innej niż bieżący katalog roboczy:
mkdir /path/to/new_directory
Tutaj tworzony jest nowy_katalog w określonej ścieżce /ścieżka/do/.
Tworzenie ukrytego katalogu
W systemie Linux każda nazwa pliku lub katalogu rozpoczynająca się od kropki (.) jest uważana za ukrytą. Aby utworzyć ukryty katalog, użyj:
mkdir .hidden_directory
To polecenie utworzy ukryty katalog o nazwie .hidden_directory. Możesz przeglądać ten katalog za pomocą ls -a.
Zapobiegaj nadpisywaniu istniejących katalogów
Opcji -p lub –parents można również użyć, aby zapobiec nadpisaniu istniejących katalogów przez polecenie mkdir:
mkdir -p existing_directory
Dzięki temu poleceniu, jeśli istniejący_katalog już istnieje, nie zostanie on nadpisany, co zapobiegnie potencjalnej utracie danych.
Tworzenie katalogu i ustawianie identyfikatora grupy
The g
opcja pozwala ustawić identyfikator grupy dla nowego katalogu:
mkdir -m g=group_name new_directory
To polecenie tworzy nowy_katalog i ustawia jego identyfikator grupy na nazwa_grupy.
Tworzenie katalogu i uczynienie go katalogiem tymczasowym
The t
Opcja umożliwia utworzenie katalogu tymczasowego, który Linux traktuje nieco inaczej niż katalog standardowy:
mkdir -m t new_directory
To polecenie utworzy nowy_katalog jako katalog tymczasowy. Pliki utworzone w katalogu tymczasowym są zwykle usuwane, jeśli nie są używane przez określony czas.
Tworzenie wielu poziomów zagnieżdżonych katalogów
The -p
opcji można użyć do utworzenia wielu poziomów zagnieżdżonych katalogów za pomocą jednego polecenia:
mkdir -p Level1/Level2/Level3/Level4
To polecenie utworzy cztery poziomy katalogów. Poziom 1 to katalog najwyższego poziomu, Poziom 4 to katalog najniższego poziomu, a Poziom 2 i Poziom 3 to katalogi pośrednie.
Tworzenie katalogu z różnymi uprawnieniami dla użytkownika, grupy i innych osób
Opcja -m pozwala określić różne uprawnienia dla użytkownika, grupy i innych osób:
mkdir -m u=rwx,g=rx,o= new_directory
Tutaj tworzony jest nowy_katalog z uprawnieniami do odczytu, zapisu i wykonywania dla użytkownika (u), uprawnieniami do odczytu i wykonywania dla grupy (g) i bez uprawnień dla innych (o).
Tworzenie katalogu w trybie pełnym i ignorowanie błędów
Opcję -v można połączyć z opcją -p, aby zignorować błędy i wyświetlić szczegółowe dane wyjściowe:
mkdir -pv existing_directory
W tym poleceniu, jeśli istniejący_katalog już istnieje, polecenie mkdir nie zwróci błędu i zamiast tego wyświetli szczegółowe dane wyjściowe.
Tworzenie katalogu bez trybu szczegółowego
Jeśli chcesz utworzyć katalog w trybie cichym, bez szczegółowych danych wyjściowych, użyj polecenia mkdir bez opcji -v:
mkdir quiet_directory
To polecenie tworzy katalog o nazwie cichy_katalog bez wyświetlania żadnego komunikatu.
Korzystanie z rozwijania nawiasów za pomocą polecenia mkdir
Rozwijanie nawiasów to potężna funkcja systemu Linux, której można używać z poleceniem mkdir w celu utworzenia sekwencji katalogów:
mkdir dir{1..5}
To polecenie utworzy pięć katalogów o nazwach dir1, dir2, dir3, dir4 i dir5.
Tworzenie katalogów i ustawianie lepkiego bitu
Sticky bit to bit uprawnień, który chroni pliki w katalogu. Jeśli jest ustawione, pliki mogą być usuwane lub zmieniane tylko przez właściciela plików lub użytkownika root. Oto jak ustawić bit sticky podczas tworzenia katalogu:
mkdir -m +t new_directory
Za pomocą tego polecenia tworzony jest nowy_katalog z ustawionym bitem sticky.
Tworzenie katalogu i ustawianie bitów Setuid i Setgid
Bity setuid i setgid można ustawić podczas tworzenia katalogu, co wpływa na własność utworzonych w nim plików i katalogów. Opcja -m pozwala ustawić następujące bity:
mkdir -m u+s,g+s new_directory
To polecenie utworzy nowy_katalog z ustawionymi bitami setuid i setgid.
Tworzenie katalogów z różnymi uprawnieniami przy użyciu trybu ósemkowego
Chociaż omówiliśmy już tryb symboliczny ustawiania uprawnień, polecenie mkdir obsługuje również tryb ósemkowy:
mkdir -m 700 private_directory
Tutaj tworzony jest katalog_prywatny z uprawnieniami ustawionymi na „700” (odczyt, zapis i wykonywanie dla użytkownika, bez uprawnień dla grupy i innych).
Tworzenie katalogu i uczynienie go niezmiennym
Uczynienie katalogu niezmiennym zapobiega jego usunięciu, nawet przez użytkownika root. Najpierw tworzymy katalog, a następnie czynimy go niezmiennym za pomocą metody chattr
Komenda:
mkdir new_directory
sudo chattr +i new_directory
Spowoduje to utworzenie nowego_katalogu, a następnie uczyni go niezmiennym.
Tworzenie katalogu i ustawianie domyślnych list ACL
Jeśli Twój system plików obsługuje listy kontroli dostępu (ACL), możesz ustawić domyślne listy ACL podczas tworzenia katalogu:
mkdir new_directory
setfacl -d -m g::rwx new_directory
W przypadku tych poleceń najpierw tworzony jest nowy_katalog, a następnie komenda setfacl ustawia domyślną listę ACL dla katalogu na rwx dla grupy.
Tworzenie katalogu i ustawianie kontekstu SELinux
Jeśli pracujesz na systemie z włączoną obsługą SELinux, możesz ustawić kontekst SELinux podczas tworzenia katalogu:
mkdir new_directory
chcon -t httpd_sys_content_t new_directory
Tutaj najpierw tworzony jest nowy_katalog. Następnie polecenie chcon zmienia kontekst SELinux nowego_katalogu na httpd_sys_content_t.
Wniosek
Opanowanie polecenia mkdir i jego różnych opcji może znacznie zwiększyć możliwości zarządzania katalogami w systemie Linux. Rozumiejąc jego składnię i eksperymentując z dostarczonymi przykładami, możesz usprawnić przepływ pracy i poprawić wydajność wiersza poleceń. Niezależnie od tego, czy tworzysz pojedynczy katalog, wiele katalogów, czy ustawiasz określone uprawnienia, mkdir jest niezbędnym narzędziem dla każdego użytkownika Linuksa.