Odpowiednik rejestru systemu Windows dla systemu Linux

57

Co to jest odpowiednik rejestru systemu Windows w systemie Linux? Jeśli w systemie Linux nie ma równoważnej lub podobnej struktury, w jaki sposób czynności wykonywane przez rejestr systemu Windows są obsługiwane w systemie Linux?

Serena
źródło

Odpowiedzi:

54

Aplikacje Linux zazwyczaj przechowują swoją konfigurację w pliku tekstowym specyficznym dla aplikacji. Konfiguracje specyficzne dla komputera są zwykle przechowywane w drzewie katalogów / etc. Ustawienia specyficzne dla użytkownika znajdują się zazwyczaj w katalogu domowym użytkowników i często w „ukrytych” plikach rozpoczynających się od „.” (użyj 'ls -a', aby je zobaczyć).

uSlackr
źródło
5
Możemy również dodać, że te pliki tekstowe są czytelne dla ludzi i często zawierają w nich komentarze opisujące konkretny element konfiguracji. Tak więc dokumentacja jest często tuż przed tobą, gdy musisz coś zmienić. Możesz także dodawać własne notatki, na przykład, dlaczego coś zmieniłeś. Rejestr systemu Windows nie zawiera takich „metadanych”.
Keith,
Z pewnością ta odpowiedź jest błędna, ponieważ celem rejestru nie jest przechowywanie ustawień, ale rejestrowanie w systemie operacyjnym składników, takich jak biblioteki DLL i rozszerzenia powłoki. Przechowywanie tam konfiguracji programu Jest techniką niezadowoloną.
Adam Casey,
12
Nie jestem pewien, czy „marszczysz brwi”, ale robi się to regularnie. Większość programów MS i wiele danych konfiguracyjnych zewnętrznych sklepów znajduje się tam.
uSlackr
7
@Dotmister: To był rzeczywiście jego cel ... w czasach Windows 3.1. Począwszy od 32-bitowego systemu Windows (95 i NT) Rejestr stał się bazą danych danych konfiguracyjnych .
grawity
Hej ... więc Linux zasadniczo robi to, co ma zapobiec Rejestrowi Windows?
Iszi
11

/proc dla rzeczy związanych z jądrem

/etc dla rzeczy związanych z oprogramowaniem

Konfiguracja Gnome może być również uważana za podobną do rejestru Windows.

Ale ponieważ podstawowe filozofie Linuxa i Windowsa są diametralnie różne (Linux ~ otwarty i kompatybilny, Windows ~ zamknięty i przeszkadzający), nie ma bezpośredniej równoległości.

Edycja: dla tych, którzy się nie zgadzają, oto trochę historii: http://www.faqs.org/docs/artu/ (świetne czytanie, bez względu na twoje pochodzenie)

Zostaw mnie w spokoju
źródło
28
Nie rozumiem, co filozofia projektowania oprogramowania ma wspólnego z konkretnymi implementacjami pamięci konfiguracji. Przyczyną braku bezpośredniej równoległości jest to, że są to zasadniczo różne architektury, nie tylko dlatego, że Microsoft nienawidzi wolności.
Shinrai
8
@Shinrai Podstawową filozofią projektowania systemów Unix (i Linux) jest stosowanie standardowych formatów tekstowych. Rejestr systemu Windows jest zastrzeżonym formatem binarnym. „Microsoft nienawidzi wolności” jest całkowicie poza kontekstem. System Windows został zaprojektowany tak, aby był jak najbardziej niezgodny z Uniksem i zignorował wszystkie możliwe międzynarodowe standardy (tworząc własne). To stara historia, ale stąd pochodzi rejestr systemu Windows.
Let_Me_Be
7
@Let_Me_Be - Przepraszam, twoje sformułowanie przeczytało mnie, aby pomyśleć, że masz na myśli: „Otwarte oprogramowanie jest najlepsze! Microsoft jest wcieleniem zła!” jak wielu fanatyków * nix w Internecie, zamiast dyskusji na temat dosłownego formatu treści. Komentarz wycofany, ale przeformułowanie może być nieco jaśniejsze, ponieważ wydaje się, że kilka osób przeczytało go tak jak ja. (Myślę, że „przeszkadzający” robi tutaj złe wrażenie).
Shinrai
12
@Let_Me_Be: Standartized formatów tekstowych? Musisz żartować. Windows jest do bani na wiele sposobów, ale wspólny interfejs API rejestru to jedna z rzeczy, które dobrze sobie radzi.
grawity
7
@Let_Me_Be: Słowo było „standaryzowane”, a nie „udokumentowane”. Wolałbym rozpowszechniać jeden .regplik (lub .ini, .xml, .json, cokolwiek chcesz) na maszynach X niż mieć do regexp piekło z dwudziestu różnych plików konfiguracyjnych w /etc/podczas próby zmiany ustawień dla całej sieci, ale zachowują niepowiązanych lokalnych dodatków podczas ... nie znajdzie dokładnie szczegółowych wyjaśnień uli rejestru systemu Windows, ich struktura nie jest do końca tajemnicą . (wychodzi z flamewar)
grawity
7

Systemowe ustawienia znajdują się w plikach /etc, ustawienia użytkownika są zwykle ukryte (start w / a.) W katalogu domowym użytkowników. Aby uzyskać więcej informacji na temat określonego programu, zobacz jego stronę podręcznika - man [program name].

daalbert
źródło
Może warto wspomnieć o .*rcplikach w katalogu osobistym użytkownika. /etcdotyczy tylko całego systemu.
Mike DeSimone,
5

Większość aplikacji używa tekstowych plików konfiguracyjnych (zwykle każdy program ma swój własny format, chociaż niektóre używają XML lub JSON). Konfiguracja całego systemu jest utrzymywana /etc.

Konfiguracja użytkownika jest zwykle przechowywana w katalogu osobistym użytkownika, w tak zwanych „plikach kropkowych” (nazwy plików rozpoczynające się od „ .”; służą ls -ado ich wyświetlania). Aby uniknąć „pełzania plików dotfile”, ostatnio programy zaczęły utrzymywać konfigurację ~/.config/zgodnie ze specyfikacją XDG Base Directory .

Różne środowiska pulpitu mają własne API podobne do rejestru: Gconf (przestarzałe) i dconf / GSettings (nowe) w GNOME; Xfconf w Xfce.

grawitacja
źródło
3

W Linuksie jest podzielony. Nie ma jednego miejsca.

W przypadku programów uruchamianych przez użytkowników zwykle znajduje się w $ HOME / .someprogramrc, jeśli jest to plik, lub $ HOME / .somedirname, jeśli jest wystarczająco skomplikowany, aby uzasadnić podkatalog. Wszystkie aplikacje KDE znajdują podobszary $ HOME / .kde, które, jak sądzę, zwykle nie generują własnego katalogu.

Częstą czynnością w przypadku list katalogów jest traktowanie plików zaczynających się od .jako ukrytych, więc będziesz musiał użyć ls -Az wiersza poleceń lub show hidden filesustawienia GUI.

W przypadku programów uruchamianych przez system zazwyczaj jest to plik gdzieś w /etc/Nie ma prawdziwej konwencji nazewnictwa w itp., Chociaż katalogi są zwykle oznaczone .dna końcu.

W przypadku jądra jest ono włączone /etc/sysconfig.conflub skrypt startowy w /etc/init.d, który zapisuje do / proc / sys / *

Większość konfiguracji systemu ma na /etccelu ułatwienie tworzenia kopii zapasowej systemu. /etc/Dlatego przechowując tylko pliki konfiguracyjne, a nie pliki binarne, wydaje się być mały.

Rich Homolka
źródło
0

W systemie Linux nie ma rejestru. Ale powinieneś rzucić okiem na edytor gconf i edytor dconf ... a także ukryte pliki / foldery w twoim katalogu domowym (o nazwach rozpoczynających się od kropki), głównie zwykłe (TXT) pliki zawierające pewną konfigurację dla określonego programu.

saeedgnu
źródło
-1

Rejestr systemu Windows został utworzony w celu zautomatyzowania różnych plików .ini i innych plików konfiguracyjnych dla systemu operacyjnego i programów, aby ładował się szybciej. Wszystkie informacje w rejestrze są również zawarte w innym miejscu na komputerze, ale obecnie są zwykle chronione przed zapisem. Linux używa Vi (edytor wizualny) lub innego edytora, aby uzyskać dostęp do tych plików konfiguracyjnych w systemie Linux w celu ich edycji.

builder7
źródło
2
Witaj na stronie superuser.com. Chociaż uważam, że to, co próbujesz powiedzieć, że plakat jest poprawny, w twojej odpowiedzi nie wychodzi zbyt dobrze. Chyba że dobrze rozumiesz, jak działają Linux i Windows, uważam, że trudno jest zrozumieć, do czego dążysz. Proszę przemyśleć i przepisać swoją odpowiedź, aby każdy mógł ją zrozumieć.
Mogget,
-1

Windows: - Przechowuje dane w plikach w hierarchii katalogów - Te pliki są jak wspomniane .dll i inne pliki pomocnicze - Następnie pliki są zarządzane przez systemy zarządzania, takie jak bazy danych (Rejestr), aby zapewnić łatwiejszą interakcję z użytkownikiem (użytkownikami) . - Oznacza to, że wskazujemy i klikamy, ale TONY danych są zapisywane w tle dla łatwości użytkowania, szybszej dostępności i niepotrzebnego przechowywania danych w imię łatwiejszego użytkowania.

Linux: - Pliki są przechowywane na oddzielnych partycjach (musimy pamiętać, że w Linuksie możemy uzyskać bezpośredni dostęp do sprzętu, w tym do ekranu - wszystko jest dostępne poprzez CLI). - Pliki te znajdują się już w hierarchii katalogów (w systemie pamięci masowej systemu operacyjnego, podobnym do systemu Windows, ale nie tylko oddzielone folderami) - Pliki są bardziej czytelne, łatwiej dostępne, ale wymagają znajomości interfejsu CLI być w stanie je wykorzystać.

Podstawowa różnica: Windows dodaje „warstwę” baz danych do interfejsu systemu operacyjnego, aby zarządzać interakcjami od użytkownika, systemu itp. Ułatwia to korzystanie z GUI do uzyskiwania dostępu i wykonywania wszystkiego, ale także czyni użytkownika i system w dużej mierze zależy od tego systemu bazy danych dla większości funkcji. Z drugiej strony Linus pozwala na bezpośredni interfejs ze składnikami, co oznacza, że ​​musisz znać „język”, aby pisać zamiast metod wskazywania i klikania w systemie Windows. Tak, można korzystać z interfejsu wiersza polecenia za pośrednictwem systemu Windows, ale tak naprawdę nie porównujesz porównania systemu Windows do systemu Linux. Różnice polegają na tym, w jaki sposób użytkownik uzyskuje dostęp do danych, w jaki sposób system wykorzystuje dane oraz w jaki sposób system Windows po prostu dodaje więcej „zarządzania” (przez system), aby uzyskać „łatwiejsze”

Jest to zrozumiałe porównanie do oceny jako kogoś nowego w środowisku CLI / Linux, ale ma o wiele większy sens, gdy najpierw zastosujesz zamiar obu tych systemów. Linux nie „podważa prób podjętych przez Microsvck przy integracji rejestru”, daje użytkownikowi większą moc, eliminując warstwy abstrakcji między użytkownikiem a sprzętem.

Aby to sobie wyobrazić, pomyśl o maszynie do pisania. Naciskasz klawisze, poruszają zębatkami i wbijasz atrament w papier, generując dane. W systemie Linux użytkownik wprowadza polecenia w celu połączenia z jądrem systemu w celu wykonania działań na sprzęcie. W środowisku Windows istnieje więcej potencjalnych warstw między użytkownikiem a sprzętem. Aplikacje mogą wywoływać polecenia komunikujące się z systemem operacyjnym, który współpracuje z systemem / jądrem, które następnie współpracuje ze sprzętem. Proces ten staje się bardziej skomplikowany w systemie Windows, ponieważ do równania wchodzi więcej zmiennych, takich jak polecenia wymagające interakcji z rejestrem w celu pobrania informacji przed wykonaniem rzeczy ... dlatego system Windows używa więcej zasobów do uruchamiania, wykonywania podstawowych i złożone zadania. Załadowane są wstępnie załadowane usługi i procesy, aby umożliwić zarządzanie funkcjami, które Linux wymagałby od użytkownika. I tak, istnieją procesy działające w Linuksie, ale staram się po prostu dać podstawowe pojęcie o tym, czym różnią się systemy, aby lepiej pokazać, dlaczego niektóre inne komentarze były niedokładne. Ideą korzystania z Linuksa jest zminimalizowanie interfejsów między użytkownikiem a sprzętem, uproszczenie rzeczy przy znacznie mniejszym bałaganie. Windows dostosowuje się do użytkowników i stara się objąć większą funkcjonalność w łatwiejszy sposób, ale wiąże się to z kosztem złożonych systemów zarządzania (które mogą łatwo być zaśmiecone i problematyczne). Rejestr może również zapewniać cyfrowy zapis wszystkich fizycznych połączeń i innych fizycznych interakcji ze sprzętem, który jest właśnie zapisywany i zapisywany (chyba że jest czyszczony przez użytkownika / program). JA' d wolę mieć czytelne pliki, które mogę ręcznie usunąć, gdy nie są używane, w porównaniu do czyszczenia różnych / wielu miejsc wymagających regularnego czyszczenia w systemie Windows (i potencjalnie ryzykując DUŻE problemy b / c rejestru). To tylko kolejna warstwa do zarządzania rzeczami za kulisami i ustanowienia bardziej cyfrowego szlaku, który użytkownik utknął w pamięci.

Niestety, wielu użytkowników jest uzależnionych od systemu Windows i zbyt boi się Linuksa przed rozpoczęciem procesu. Jest tak wiele smaków, niektóre mają różne polecenia, muszle itp., Które trudno jest wybrać jako początkującym. Po usunięciu naszego „warunkowania systemu Windows” staje się jasne, że dystrybucje systemu Linux są lepsze pod wieloma względami (bez rozdętego oprogramowania). Jedynym scenariuszem, w którym osobiście uważam, że Windows jest lepszy, jest granie w gry. Staje się to bardziej niepokojące, gdy MS naciska coraz więcej, aby zjednoczyć się z 1 systemem operacyjnym naraz, zawsze chcąc uzyskać od ciebie więcej danych. To dobra umiejętność, a granie z dystrybucją Linuksa może potencjalnie odpowiedzieć na te pytania dla nowych użytkowników czytających te posty.

Mike Hawk
źródło
3
To brzmi jak rant, a nie odpowiedź. Wątpliwe jest, czy rzeczywiście próbuje odpowiedzieć na zadane pytanie. Jest to również całkowicie błędne w kilku miejscach. (Pliki w Linuksie przechowywane na oddzielnych partycjach? Pliki w systemie Linux wymaga znajomości CLI, aby uzyskać dostęp? Linux eliminując abstrakcji sprzętu w porównaniu do systemu Windows? Użytkowników Linuksa oddziałujących bezpośrednio z jądrem? Naprawdę, WTF?) Zachęcam do podjęcia strony wycieczkę do dowiedz się, jak to robimy i przeczytaj. Jak napisać dobrą odpowiedź na sugestie. Następnie możesz to edytować .
CVn
1
@ MichaelKjörling: chociaż masz rację co do jakości tej odpowiedzi, zawiera ona jedną rzecz, która jest bardzo ważna: rejestr systemu Windows (program regedit) to jedna aplikacja, pokazująca elementy wewnętrzne tak, jakby były przechowywane w jednej bazie danych konfiguracji, podczas gdy rzeczywiście te pliki są rozrzucone po całym komputerze. Przekształca to pierwotne pytanie w „Czy istnieje narzędzie Linuksa, które daje podsumowanie ogólnej konfiguracji maszyny, coś takiego jak regedit w systemie Windows?”
Dominique,