Jestem użytkownikiem niebędącym administratorem na dużym systemie komputerowym. Potrzebuję aktualnych pakietów, które nie są zainstalowane w systemie. Chcę użyć yum, aby je zainstalować. Czy jako użytkownik bez dostępu sudo, admin lub root, mogę używać zarządzania pakietami do instalowania pakietów w moim katalogu domowym? Zawsze mogę używać make ze źródeł, ale możliwość korzystania z yum ułatwi życie.
51
Odpowiedzi:
Większość plików binarnych jest kompilowanych do zainstalowania w określonych lokalizacjach
/
.Istnieją menedżery pakietów innych niż root, takie jak Prefiks Gentoo i GoboLinux bez rootowania i może 0install .
Jak powiedziałeś, samodzielne skompilowanie rozwiązania tego problemu lub użycie chroota. Jednak największą przeszkodą w chrootowaniu będą warunki wstępne i połączenie z obiektami współdzielonymi przez jądro.
źródło
Zamiast używać
yum
, znajdź żądane RPM i pobierz je. Nadal nie możesz zainstalować ich bezpośrednio bez roota, ale pakiety RPM są tak naprawdę fantazyjnymi plikami .cpio i możesz rozpakować ich zawartość. Najłatwiejszym sposobem na to jest prawdopodobniemc
przeglądarka plików („midnight commander”) (jedno z największych programów w historii), która pozwala przeglądać zawartość.rpm
i kopiować pliki bezpośrednio z niej.Poza tym możesz użyć go
rpm2cpio
do konwersji na .cpio, a następniecpio
do wyodrębnienia plików i umieszczenia ich we właściwych miejscach. Oba zostaną już zainstalowane w systemie redhat lub fedora. Oto przykład instalacji „xsnow” (prawdopodobnie chcesz to zrobić w pustym katalogu):Zauważ, że znalazłem .rpm odpowiedni dla mojego systemu, fc17 x86_64. Jest to ważne, ponieważ są to wstępnie skompilowane pliki binarne połączone z innymi komponentami. Teraz wypakuj .cpio:
Gdy przeglądam to drzewo katalogów, tam wszystko, czego potrzebuję, oprócz niektórych meta-informacji, które mogą pomóc mi rozwiązać zależności. Można to znaleźć za pomocą
rpm -q -p [package] --[query]
:Jestem pewien, że mam już wszystkie te rzeczy. Więc teraz wszystko, co muszę zrobić, to umieścić plik wykonywalny xsnow w mojej $ PATH, która już zawiera bin w moim katalogu domowym:
Altówka! Teraz nie mogę
xsnow
nic pisać i oglądać, bo jak się okazuje, xsnow nie działa dobrze z KDE :(, ale mam nadzieję, że pierwsza część procesu jest czysta. Nie musiałem nic robić poza moim katalogiem domowym.Jeśli musisz zainstalować biblioteki, musisz również utworzyć dla nich katalog domowy i dodać
~/.bashrc
:źródło