Różne dystrybucje linuksa współdzielą ten sam folder / home?

58

Jaki jest najlepszy sposób udostępniania tych samych /homekatalogów między różnymi dystrybucjami linuksa?

Chcę mieć oba, powiedzmy, Fedorę i Archa, i chcę znaleźć moje pliki w domu, bez względu na to, w którą dystrybucję linuksową uruchamiam. Ale jeśli podłączę tę samą partycję, /homemogę zepsuć konfiguracje zapisane w /homekatalogu.

Więc co mogę zrobić?

behzad.nouri
źródło
3
Udostępniam mój folder domowy między 3 dystrybucjami Linuksa. Oto jedna ważna kwestia, z której zdałem sobie sprawę, że jest prawdopodobnie nieunikniona. Chociaż można argumentować, że dostęp do tych samych plików w różnych wersjach aplikacji zwykle nie powinien powodować utraty danych, wydaje się całkowicie naturalne, że różne pamięci podręczne i indeksy wyszukiwania będą musiały być przebudowywane przy każdym uruchomieniu innego (większego lub mniejszego) wersja aplikacji. Wygląda na to, że mam taki problem z indeksem wyszukiwania pulpitu GNOME.
Alexey,

Odpowiedzi:

40

Z pewnością możliwe jest współdzielenie folderu domowego (lub partycji) w różnych dystrybucjach systemu Linux.

Ale weź następujące uwagi:

  • UID i GID muszą być takie same w każdej dystrybucji dla określonego użytkownika (użytkowników).
  • (jak już wspomniano) różne pliki konfiguracyjne dla tych samych programów mogą spowodować nieoczekiwane zachowanie.
  • Jeśli zainstalujesz wszystkie dystrybucje w tym samym folderze rozruchowym, upewnij się, że bootloader poprawnie obsługuje różne dystrybucje.

Mam działającą (wirtualną) konfigurację:

/dev/sda (40GB)
 +-/dev/sda1   /boot (100MB, ext2)
 +-/dev/sda3   swap  (2GB)
 +-/dev/sda4   /home (20GB, ext4)
 +---/dev/sda5  /root (Ubuntu 10.04, 5GB, ext4)
 +---/dev/sda6  /root (Fedora 14, 5GB, ext4)
 +---/dev/sda7  /root (openSUSE 11.3, 5GB, ext4)
 +---/dev/sda8  /root (ArchLinux 2010.05, 5GB, ext4)

Zarówno Ubuntu, jak i Fedora uruchamiają Gnome 2.30, openSUSE ma KDE4 i ArchLinux LXDE. Wszystkie dystrybucje mają niezbędne pliki rozruchowe na jednej partycji. Przełączanie między dystrybucjami zapewnia stałą konfigurację użytkownika zgodną z przeznaczeniem.

Inną możliwością byłby lekki folder domowy (nie musi to być cała partycja) dla każdej dystrybucji, zapewniający jedynie niezbędne pliki konfiguracyjne (.gnome2, .kde4, .compiz, .themes itp.) Oraz wspólna partycja danych z „ciężkimi” rzeczami (dokumenty, zdjęcia, filmy, muzyka itp.). Dowiązania symboliczne we własnym folderze domowym każdej dystrybucji wskazywałyby na partycję współdzieloną.

Następnie można go dowolnie rozszerzać, aby obejmował także inne elementy.
Przykład: masz eclipsezainstalowane IDE we wszystkich dystrybucjach i chcesz, aby wszędzie były dostępne takie same pliki konfiguracyjne i źródłowe. W tym celu można utworzyć dowiązania symboliczne w każdym folderze domowym dystrybucji do folderu współdzielonego.

Byłby to Ubuntu:

$ ls -l /home/user
.eclipse -> /mnt/shared/.eclipse
.gnome2
Documents -> /mnt/shared/Documents
workspace -> /mnt/shared/workspace
...

I openSUSE:

$ ls -l /home/user
.eclipse -> /mnt/shared/.eclipse
.kde4
Documents -> /mnt/shared/Documents
workspace -> /mnt/shared/workspace
...

I tak dalej..

Jeśli nie masz pewności co do ingerowania w pliki konfiguracyjne, wypróbuj drugi, bezpieczniejszy sposób i dowiedz się, które komponenty domowe można łatwo udostępniać między zainstalowanymi dystrybucjami.

machać
źródło
1
Dobra odpowiedź. Sugerowałbym, abyś ty i ktokolwiek inny próbował czegoś podobnego, rzuć okiem na LVM.
jmtd
Utworzenie konfiguracji za pomocą LVM uczyniłoby ją bardziej elastyczną i skalowalną. Korzystanie z partycji podstawowych / logicznych działa dobrze w przypadku instalacji statycznej. Zależy od przypadku użycia i dostępnego czasu na wdrożenie rozwiązania.
wag
1
Używam lekkiego domu i innej partycji do ciężkich rzeczy z symbolicznymi linkami. Działa świetnie i można dodać konfigurację dla popularnych programów, takich jak Firefox, na wspólnej partycji „ciężkich rzeczy” i zastąpić pliki dowiązaniami symbolicznymi.
Fernando Briano,
Planuję zrobić coś takiego z moim komputerem domowym, ponieważ ostatnia aktualizacja Ubuntu pozostawiła dość błędny. Najpierw przetestowałem sytuację na wirtualnym, a ten sam folder / home powoduje wiele problemów, szczególnie w przypadku menedżerów pulpitu, z powodu uprawnień na tej partycji. Myślę, że osobne / home z łączami sym będą tym, co skończę na moim komputerze. Użyję: CentOS, Ubuntu, Debian, openSUSE, ewentualnie Fedory wszystkie pliki systemu operacyjnego na LVM, partycja podstawowa dla głównego / boot i rozszerzone dla wszystkich innych plików OS / boot. Ponieważ nie będą działać w LVM
CenterOrbit
11

Nie polecam dzielenia się /homemiędzy radykalnie różnymi dystrybucjami. Dwie wersje tego samego programu odczytujące i zapisujące te same pliki konfiguracyjne mogą powodować problemy, np. Jeśli nowsza wersja zapisuje coś, czego starsza wersja nie rozumie.

Jeśli nie przeszkadza ci to, że ścieżki są różne, zapisz pliki w /homejednej dystrybucji i zamontuj ten / home w innej lokalizacji w drugiej dystrybucji (np. /home/<user>/fedora). Następnie /home/<user>/foo/barmożna uzyskać /home/<user>/fedora/foo/barna przykład dostęp za pośrednictwem arch.

Jeśli chcesz, aby ścieżki były takie same, zapisz większość plików na trzeciej, odrębnej partycji i zamontuj je w tym samym miejscu w ramach obu dystrybucji, np /home/<user>/stuff.

jmtd
źródło
1
Mam konfigurację podobną do tej, ale z folderem ~ / Docs /. To tam są wszystkie „moje własne dane”, poza tym są inne dane programu (specyficzne dla maszyny lub nie). Kopie zapasowe kluczowych plików konfiguracyjnych są regularnie archiwizowane z ~ / do ~ / Docs / configfiles /
kasterma
Niech każdy użytkownik ma swoje lokalne informacje. Wydaje mi się, że radzenie sobie z tymi różnicami jest trudniejsze niż udostępnianie „wspólnych” folderów (Muzyka, Pobieranie, Kodowanie, Dokumenty itp.), A nie plików dotfile lub innych podobnych /usrlub /opt. W ten sposób możesz wykonać kopię zapasową danych z folderu, z którego codziennie korzystasz we wszystkich swoich urządzeniach.
erm3nda
7

Możesz użyć dowiązań symbolicznych

ln -s /mnt/mydisk/mydocuments /home/user4123/mydocuments

Na każdej dystrybucji raz. Teraz każda dystrybucja ma własne pliki konfiguracyjne

kizzx2
źródło
to działa dla mnie!
Martin Delille,
@MartinDelille Czy mogę prosić o problemy, skoro skomentowałeś 1 rok temu ?. Nadal chętnie pomieszałeś wszystkie pliki? Które zakłóca.
erm3nda
To było dla Ubuntu / ElementaryOS, ale już go nie używam.
Martin Delille,
6

Możesz udostępniać katalogi domowe między dystrybucjami, nawet między różnymi wariantami unixów. Ludzie z katalogami domowymi udostępnianymi przez NFS w heterogenicznej sieci robią to cały czas.

Możesz napotkać problemy, jeśli uruchomisz różne wersje niektórych programów na różnych systemach korzystających z tych samych katalogów domowych. Kłopotliwe programy to zazwyczaj te z najbardziej fantazyjnymi GUI, takimi jak Gnome. Na przykład Firefox z przyjemnością zaktualizuje Twój profil do nowszej wersji, ale może nie pozwolić na ponowne załadowanie tego profilu we wcześniejszej wersji.

Gilles „SO- przestań być zły”
źródło
5

Polecam używanie dowiązań symbolicznych do wszystkich typowych plików konfiguracyjnych, których brakuje w jednym. Utwórz nowy katalog w miejscu dostępnym dla obu dystrybucji, przenieś stamtąd pliki i dowiązanie symboliczne.

Nie tylko kontroluje dokładnie to, co jest udostępniane, ale także ułatwia przenoszenie preferencji na inne komputery, poddanie ich kontroli wersji, jeśli zajdzie taka potrzeba, i wykonanie ich kopii zapasowej. Istnieją nawet narzędzia, które pomogą ci to zrobić w oparciu o założenie, że pracujesz w ten sposób (patrz na przykład tęsknota za domem).

Jeśli chodzi o ustawianie wspólnych katalogów dla takich rzeczy, jak dokumenty, filmy, muzyka itp., Istnieje standard w postaci katalogów użytkowników XDG, które konfigurują takie rzeczy jak pulpit, muzyka, obrazy, filmy itp. ( Http: // freedesktop.org/wiki/Software/xdg-user-dirs ). Katalogi mogą znajdować się poza twoim domowym katalogiem lub możesz dowiązać symbolicznie, jak chcesz i ustawić katalogi tak, aby wskazywały na dowiązania symboliczne. Wiem, że Gnome z nimi współpracuje i zakładam, że KDE też.

W przeszłości próbowałem używać całego tego samego katalogu domowego, a różne wersje aplikacji szybko powodowały problemy.

Edd Steel
źródło
3

Możesz ustawić domyślny folder Dokumenty w innej lokalizacji lub partycji i taki sam dla innych folderów, takich jak folder Pulpit, folder Pobierz i tak dalej.

Każda aplikacja ma swój własny sposób korzystania z domyślnych ścieżek, więc pierwszy raz będzie długim zadaniem ...

Kilka przykładów

KDE http://docs.kde.org/stable/en/kdebase-workspace/kcontrol/paths/index.html

GNOME http://ubuntuforums.org/showthread.php?t=631711

Jeśli nie znajdziesz instrukcji, jak zmienić ustawienia domyślne niektórych programów, możesz spróbować ponownie.

Jest też trudny, ale inteligentny sposób, aby skonfigurować inną dystrybucję na tym samym komputerze PC, współużytkując to samo jądro.

Radzę (wszystkim) dla ciekawości zajrzeć do tego artykułu:

http://teddziuba.com/2011/01/multiple-concurrent-linux-distros.html

tmow
źródło