Katalog profilu jest domem użytkowika w systemie Linux. Są w nim ustawienia użytkownika oraz jego pliki. Przedstawie za co odpowiadają poszczególne katalogi i pliki w tym profilu.
Ustawienia w systemie Linux możemy podzielić na dwa rodzaje: systemowe i użytkownika. Ustawienia systemowe znajdujące się w katalogu /etc odpowiadają za konfigurację sprzętu, usług, aplikacji systemowych, sieci, itd. Ustawienia użytkownika, czyli zaczynąc od tła pulpitu, ikony, wygląd systemu, preferencje programów znajdują się w katalogu domowym użytkownika. Normalnie są one ukryte tak, aby nie przeszkadzały w normalnym przeglądaniu naszych plików.
Katalogi domowe wszystkich użytkowników (poza rootem) znajdują się w katalogu /home. Znaczenie pozostałych katalogów omawiałem tutaj. Np. jeżeli użytkownik w systemie będzie używał nazwy 'piotr' to jego katalog domowy będzie znajdował się w /home/piotr.

Z systemie Linux ukryte pliki i katalogi zaczynają się od kropki. Aby je zobaczyć w menedżerze plików musimy zaznaczyć opcję Pokaż ukryte (nazwa opcji może się różnić w zależności od użytego menedżera). Sami też możemy ukrywać pliki, po prostu dając kropkę w nazwie pliku.
Aplikacje przechowują ustawienia użytkownika w swoich katalogach, np. przeglądarka Opera przechowuje ustawienia użytkownika w katalogu ~/.opera. Tylda ~ w Linuksie oznacza katalog użytkownika. Gdy skopiujemy katalog ~/.opera na inny komputer do katalogu domowego i uruchomimy Operę zauważymy, że wszystkie nasze zakładki i ustawienia zostaną zachowane. Dzięki temu w prosty sposób oddzielamy pliki potrzebne do uruchomienia aplikacji od naszych preferencji i możemy robić kopie zapasowe ustawień programów.
Jeśli szukamy katalogu ustawień danego programu możemy posłużyć się tym schematem, czyli kropka i nazwa aplikacji. Gdy chcemy usunąć ustawienia aplikacji to po prostu kasujemy ten katalog. Są też katalogi i pliki ukryte używane przez system bądź środowisko graficzne. Po kolei je wyliczę i przedstawię ich znaczenie.
- ~/.cache/ - katalog podręczny dla aplikacji. W tym katalogu aplikacje trzymają swoje tymczasowe dane.
- ~/.config/ - część aplikacji trzyma swoje ustawienia w tym podkatalogu.
- ~/.dbus/ - katalog roboczy systemu dbus.
- ~/.fonts/ - katalog czcionek użytkownika. Jeśli nie mamy uprawnień administratora tutaj możemy wrzucić pliki czcionek i będą widziane przez system i aplikacje, ale tylko na naszym koncie.
- ~/.gconf/ - katalog rejestru Gnome.
- ~/.gnome2/ - katalog z ustawieniami Gnome 2.x.
- ~/.gnupg/ - katalog GPG, gdzie przechowywane są klucze użytkownika oraz klucze publiczne.
- ~/.gvfs/ - katalog w którym znajdują się punkty montowania zdalnych systemów plików, wykorzystywany przez Gnome.
- ~/.icons/ - katalog z motywami ikon i kursorów myszy. Zainstalowane motywy lądują w tym katalogu.
- ~/.kde/ - katalog z ustawieniami środowiska KDE wraz z konfiguracją aplikacji tego środowiska.
- ~/.local/ - katalog danych dla różnych aplikacji, np. tutaj może być trzymana poczta z programu Evolution lub pobrane skórki programu Audacious.
- ~/.pulse/ - katalog z ustawieniami użytkownika systemu dźwięku PulseAudio.
- ~/.themes/ - katalog motywów Gnome. Zainstalowany motyw ląduje w tym miejscu.
- ~/.wine/ - katalog z ustawieniami Wine. Tutaj znajdują się również zainstalowane aplikacje z systemu Windows.
- ~/.ICEauthority - plik systemu ICE (Inter-Client Exchange). Służy do komunikacji pomiędzy dwoma aplikacjami działającymi z uprawnieniami tego samego użytkownika, działającymi w jednym serwerze X. Gdy stracimy uprawnienia do tego pliku możemy mieć problem z zalogowaniem się do środowiska graficznego. Wtedy z konsoli wirtualnej (np. CTRL+ALT+1) należy go przejąć na własność za pomocą polecenia:
sudo chown <nazwa_użytkownika>:<nazwa_grupy_użytkownika> ~.ICEauthority
- ~/.Xauthority - plik odpowiedzialny za ochronę sesji X serwera. Dzięki temu inny użytkownik komputera nie może się podłączyć do naszej sesji X'ów. Na komputerze może być otwartych wiele sesji X, dla wielu użytkowników, np. w momencie przełączania się użytkowników oraz podczas pracy użytkowników zdalnych (VNC).
- ~/.bash_history - historia poleceń wydawanych w konsoli.
- ~/.bash_logout - skrypt wykonywany w momencie wylogowania się z systemu. Szczególnie przydatny, gdy pracujemy zdalnie na naszym komputerze.
- ~/.bashrc - plik z ustawieniami powłoki BASH. Tu możemy np. pokolorować prompta, tworzyć aliasy poleceń itp.
- ~/.gtkrc-2.0 - plik z ustawieniami motywu, ikon, czcionki i kursora dla Gnome 2.
- ~/.profile - skrypt uruchamiany zaraz po zalogowaniu się do systemu. Możemy dodać tu własne polecenia np. swoje zmienne środowiskowe.
- ~/.xsession-error - log z błędami aplikacji graficznych, działających na X'ach. Gdy uruchamiamy aplikację z GUI w konsoli widzimy w niej ewentualne błędy i komunikaty programu. Gdy uruchomiśmy aplikację z samego środowiska X, np. z menu czy ikonki, komunikaty programu są dla nas niewidoczne, ale zapisują się właśnie w tym pliku. Jeśli jakaś aplikacja się nam nie uruchamia lub powoduje błędy, tutaj możemy szukać przyczyn takiego działania.
To czy ustawienia aplikacji będą się znajdować w naszym katalogu domowym ~/ czy w ~/.config zależy już od samego programisty. Znalezienie ustawień danej aplikacji nie należy do trudnych zadań. Znajomość znaczenia poszczególnych katalogów i plików w katalogu domowym może pomóc w rozwiązywaniu problemów z aplikacjami. W Linuksie wszystkie ustawienia są przechowywane w plikach tekstowych, więc łatwo je odczytać i modyfikować. Dotyczy to zarówno ustawień systemu jak i programów. Zachęcam do przejrzenia swoich plików z ustawieniami. Dzięki temu możemy dowiedzieć się znacznie więcej o swoim systemie, a także dotrzeć do opcji konfiguracyjnych niedostępnych z poziomu narzędzi graficznych.