| |
![]() urpmi.addmediaTu się zaczyna właściwa część naszego artykułu.
Pierwszym krokiem który musisz wykonać, to utworzenie (jeżeli
jeszcze nie masz) listy adresów ze "źródłami urpmi"
(z ang. repository) za pomocą zlecenia: urpmi.addmedia . Lista może składać się z adresów
serwerów ftp, płytek CD, a nawet wybranego katalogu na dysku
twardym. Na stronie Easy
Urpmi znajdziesz listę z internetowymi adresami "źródeł
urpmi". Dodawanie nowego "źródła urpmi" (repository) wygląda
tak:
urpmi.addmedia nazwa_nosnika ftp://ftp.site.com/path/to/Mandrake/RPMS with ../base/hdlist.cz W Mandrake-Linux serwery ftp powinny zawierać katalogi z paczkami rpm podzielonymi wg zastosowania:
Możesz użyć ![]() Odzyskiwanie utraconych "źródeł urpmi" (płytki CD)Jeśli zauważysz, że nie masz wszystkich swoich płytek CD (np. zgubiłeś)
określonych jako "źródła urpmi", to wypróbuj zlecenie: ![]() Kopiowanie płyt CD na dysk twardy i używanie ich jako "źródeł urpmi" do pobierania paczek rpmJeśli nie lubisz przekopywania się przez CD podczas sesji urpmi, a masz trochę wolnego miejsca, utwórz katalog (powiedzmy: /home/CDS/). Skopiuj do niego katalogi (wraz z zawartością) /base oraz Mandrake/ z płytki CD nr 1. Potem skopiuj katalog RPMS2 do RPMS8 (katalog RPMS8 znajduje się we wcześniej wspomnianym katalogu Mandrake/). Po usunięciu (ewentualnie wyłączeniu) "źródła urpmi" adresowanego z płytek CD, wpisz zlecenie: urpmi.addmedia --distrib HD file://home/CDS ![]() urpmi.updateKomenda urpmi.update aktualizuje listę pakietów ze "źródeł urpmi" urpmi. Lista ta zmienia się, gdy tylko zmienią się pakiety w serwerze. Musisz więc aktualizować ją za każdym razem, gdy chcesz zainstalować nowy pakiet ze "źródła urpmi" typu serwer ftp (czyli ze źródła, w którym okresowo są zmieniane najnowsze aktualki - nie dotyczy to oczywiście płytek CD). (...) Przykłady zleceń: urpmi.update nazwamediów luburpmi.update -a Argument -a oznacza "wszystkie media". ![]() urpmi.removemediaJeśli chcesz sie pozbyć "źródła urpmi", to użyj komendy: urpmi.removemedia nazwamediów ![]() urpmfZ doświadczenia wiem, że urpmf jest najlepszą z nieznanych opcji systemu zarządzania pakietami urpmi. Z jego pomocą możesz znaleźć dowolny plik, poznać pakiet do którego on należy, zobaczyć opis pakietu i zrobić masę innych rzeczy. Powiedzmy, że chcesz skompilować przeglądarkę obrazów w swoim komputerze. Oto znany przykład z instalacji jakiegoś programu:
dekompresujesz pakiet tar, potem uruchamiasz ./configure
i... skrypt konfiguracyjny narzeka na brak powiedzmy
jpeglib.h . Używając systemu zarządzania pakietami
urpmi w opcji urpmf wystarczy dać następne
zlecenie: libjpeg62-devel:/usr/include/jpeglib.h Więc wiesz, że nagłówek pliku jpeglib jest częścią libjpeg62-devel, i możesz teraz zainstalować go, używając zlecenia: urpmi libjpeg62-devel. Zaoszczędzisz dużo czasu :-) Przpuśćmy, że, chcesz zainstalować klienta pocztowego, ale
niestety nie znasz żadnego pod Linuksa. Przeszukaj więc listę
pakietów, by znaleźć w nazwach określenia "poczta" ('mail)
lub "klient" ('client'). evolution:Integrated GNOME mail client, calendar and address
book.
co w wolnym tłumaczeniu znaczy: Opcja -summary używana jest do przeszukiwania tekstu w liście nazw plików, a opcja -a ozacza 'and' (i). ![]() urpmiJest to główna komenda zarządzania pakietami, której używasz do zainstalowania pakietów i wszystkiego co jest potrzebne by działały. Ułatwia i upraszcza to pracę administratora. Podstawowy wygląd zlecenia: urpmi nazwapakietu Przykład. Uwaga: wpisanie zlecenia: urpmi nazwapakietu generalnie skutkuje zainstalowaniem najnowszej wersji pakietu. Urpmi porównuje numer zainstalowanego w systemie pakietu z numerem tego samego pakietu ze źródła. Wyjątki pojawią się, gdy paczki aktualizacyjne mają nieco inną nazwę. Wówczas stare i nowe wersje pakietów są dostępne. Co ma zrobić administrator, gdy chce zainstalować starsze wersje pakietów? Przykład ![]() Istnieją szczególne przypadki, gdy dobrze będzie zainstalować
OBA pakiety, a system Mandrake sam wybierze do użycia ten, która
będzie lepszy. Więcej szczegółów znajdziesz w systemowym pliku: Przeczytaj poniższy opis zlecenia: urpmq --fuzzy , by dowiedzieć się, jak unikać podomnych problemów z wersjami. ![]() Zlecenie urpmi jest najczęściej używany do aktualizacji systemu (wprowadzanie do systemu najnowszych wersji programów) oraz aktualek bezpieczeństwa (bugfixes - łaty związane z bezpieczeństwem). Zlecenie: urpmi.update updates && urpmi --update --auto-select Ten przykład zakłada, że masz "źródło urpmi" (np. płytka CD lub adres serwera ftp). Ponieważ zawartość "listy pakietów aktualizacyjnych" często się zmienia (dotyczy serwerów ftp), konieczne jest użycie zlecenia: urpmi.update nazwamediów , by poszukać nwych pakietów. Znaki '&&' oznaczają, że jeśli uda się pierwsza komenda (czyli: urpmi.update nazwamediów), to można wykonać drugą. Druga część komendy, czyli: 'urpmi --update' oznacza coś takiego: 'szukaj tylko w "źródłach urpmi" określonych jako źródła aktualizacyjne'. Wpis: '--auto-select' oznacza 'znajdź najnowsze wersje już zainstalowanych pakietów'. Urpmi zrobi wówczas listę możliwych do zaktualizowania pakietów i zapyta, cy chcesz iść dalej. Jeśli byś wpisał '--auto' zamiast '--auto-select' , to wszystkie możliwe do zaktualizowania pakiety zostałyby zaktualizowane bez pytania o potwierdzenie. Jeśli wolisz używać GUI (okienka np. KDE), wypróbuj Mandrake Update w Mandrake Control Center. ![]() urpmeJest to komenda odinstalowująca software z twojego komputera. Podobnie jak zlecenie urpmi wyszukuje zależności i mówi ci czy jakiś zainstalowany software jest zaleźny od tego, co zamierzasz odinstalować. Masz w ten sposób możliwość zatrzymania procedury odinstalowywania pakietu, gdyby miało to zachwiać stabilnością innych programów. Przykład zlecenia: urpme nazwapakietu Przykład ![]() urpmqZlecenie urmpq pozwala przeprowadzić zapytanie (z ang. query) do bazy danych urpmi. W odpowiedzi możesz uzyskać informacje o pakietach, które zainstalowałeś (lub możesz zainstalować). Poniższy przykład pokazuje jak za pomocą zlecenia: urpmq --list-media uzyskać listę źródeł mediów (które masz już skonfigurowane): [root@isis root]# urpmq
--list-media contrib
Uwaga: kiedy używasz urpmi do szukania pakietów, upewnij się, że rozumiesz różnicę pomiędzy używaniem tego z opcją --fuzzy, a bez niej. Jeśli nie będziesz ostrożny, możesz pominąć niektóre pakiety, których szukałeś. Jeśli urpmq znajdzie pakiet z dokładnie tą nazwą, o którą pytałeś, pokaże tylko ten pakiet i domyślnie, nie zobaczysz innych pakietów zawierających tę nazwę. Zlecenie: urpmq z opcją --fuzzy jest przydatne, by sprawdzić jaka inna wersja pakietu jest dostępna. Czasem nowa duża wersja nie ma pełnej zgodności wstecznej i dlatego nowsze wersje są rozprowadzane pod nieco inną nazwą pakietu. Teraz na pewno nic nie przeoczysz. Przykład
co w wolnym tłumaczeniu znaczy: Przykład co w wolnym tłumaczeniu znaczy: ![]() INSTALOWANIE NOWEGO KERNELAZapamietaj ważną uwagę: Kernel nigdy nie jest aktualizowany, a jedynie instalowany. W związku z tym nigdy nie zobaczysz zaktualizowanego Kernela kiedy uruchomisz Mandrake Update. By zainstalować nowe jądro z linii komend wykonaj: co w wolnym tłumaczeniu znaczy: Nowe jądro zainstaluje się w katalogu /boot obok starych jąder. Konfiguracja Lilo zostanie automatycznie przystosowana do dodania możliwości wyboru starego jądra. Domyślny wiersz 'linux' (w menu wyboru Lilo) uruchomi nowe jądro. Jeśli chcesz, możesz użyć Mandrake Software Install GUI (czyli w okienkach np. KDE). Aby tak zainstalować nowe jądro musisz najpierw uruchomić Mandrake Update GUI, by wymusić aktualizację bazy danych urpmi. Zauważysz, że jednym z dostępnych pakietów jest 'kernel-source'. Jest to kod źródłowy najnowszego jądra dostępnego w źródle aktualizacyjnym (w tym przypadku 2.4.22.10mdk). By skompilować coś w stylu sterownika programowego urządzenia powinienieś zainstalować pakiet źródłowy jądra. Pamiętaj jedynie, żeby zainstalować tę samą wersję kernel-source, którą ma domyślne jądro. W przeciwnym wypadku sterownik, który skompilujesz, nie będzie działał. ![]() Używanie interfejsów graficznych![]() drakMandrake oferuje dużą ilość przyjemnych narzędzi graficznych wykonujących te same zadania. Zobacz narzędzia Drak, czyli uruchamiane zleceniami zaczynającymi się od liter drak... Listę takich zleceń uzyskasz wpisując (jako root) tekst: drak i wciskając klawisz TAB. Zapraszam na sąsiednią stronę o MCC. ![]() urpmi.setupWpisz zlecenie: urpmi.setup . Zostanie uruchomiony program urpmi.addmedia oraz urpmi.remove w wersji okienkowej. Jest bazowany na liście lustrzanych serwerów FTP z Penguin Liberation Front. ![]() Trochę porad związanych z bezpieczeństwem![]() Zagadnienia związane z bezpieczeństwemBy instalować pakiety, urpmi musi być uruchamiane
pod rootem.
rpmdb: /var/lib/rpm/Pubkeys: unexpected file type
or format (nieoczekiwany typ lub format pliku)
rpmdb: /var/lib/rpm/Pubkeys: unexpected file type or formatNiestety, nie można jednoznacznie określić przyczyny takiego błędu i momentu zniekształcenia pliku. Rozwiązaniem jest usunięcie pliku /var/lib/rpm/Pubkeys/rpmdb i zainmportowanie kluczy publicznych raz jeszcze. Pytanie: Chciałbym zobaczyć więcej informacji o
importowaniu publicznych kluczy dla urpmi i naprawianiu problemów z
nieważnymi sygnaturami i takimi rzeczami. Sam nie wiem dość, by
samemu dodawać te informacje... --SimonOosthoek ![]() MD5Na serwerach ftp poza zwykłymi plikami instalacyjnymi rpm lub
np. ISO, można znaleźć pliki tekstowe MD5. Zawierają one
liczbę kontrolną (checksum) powstałą po skontrolowaniu
"wiarygodnego - niezniekształconego" pliku, najczęściej na komputerze
twórcy instalki. Zawartość pliku MD5 MUSI BYĆ TAKA SAMA jak
po późniejszym wygenerowaniu jej na Twoim komputerze. ![]() Jeśli z jakiejś przyczyny plik jest uszkodzony (istnieje błąd sumy kontrolnej MD5), to narzędzie urpmi automatycznie odmówi instalacji. Oto, co ostatnio mi się przydarzyło: [root@localhost augustin]# urpmi kdesdk co w wolnym tłumaczeniu znaczy: [root@localhost augustin]# urpmi kdesdk
Zwróć uwagę na dwie linie: Rozwiązaniem jest usunięcie pliku z katalogu /var/cache/urpmi/rpms/ i ponowne jego ściągnięcie. Spróbuj jeszcze raz zainstalować go przy pomocy urpmi. Jeśli nadal nie działa, oznacza to, że serwer ftp (mirror) ma uszkodzony plik. Spróbuj ściągnąć go ręcznie z dwóch lub trzech innych mirrorów. Zapisz go w folderze /var/cache/urpmi/rpms/ i spróbuj zainstalować. Pamiętaj, aby zawsze ręcznie usunąć wcześniej ściągnięty plik przed ponownym jego pobraniem. Później zainstaluj go ponownie przy użyciu urpmi. Zdarza się, że ten sam uszkodzony plik znajduje się na wszystkich serwerach ftp. Jeśli wypróbowałeś kilka serwerów i zawsze trafiałeś na ten sam problem, sprawdź na forum użytkowników Mandrake'a albo liście mailowej, czy inni użytkownicy też mają ten sam problem z tym samym plikiem. Jeśli tak jest, to prawdopodobnie wkrótce zostanie wypuszczony nowy plik. ![]() Możliwe problemy![]() Zablokowana baza danych RPMJako root wpisz zlecenia: killall urpmi urpmi.update urpme rpm urpmi.addmedia orazrm -f /var/lib/urpmi/.LOCK /var/lib/rpm/RPMLOCK Jeśli to nie otworzy bazy danych, zawsze zostaje restart i ponowne uruchomienie. ![]() Odbudowywanie twojej bazy danychOdbudowanie bazy danych jest niezbędne, gdy zlecenie rpm powie ci, że "pakiet jest już zainstalowany", kiedy tak naprawdę nie jest i vice-versa. rm -rf /var/lib/rpm/__db* rpm --rebuilddb ![]() Błąd "medium contrib uses an invalid list" czyli uszkodzona listaWykonaj zlecenie: rm /var/lib/urpmi/list.contrib Zapobiegnie to pojawianiu się błędu bez przeszkadzania w instalacji pakietu. ![]() Aktualizacja (upgrade) do najnowszej wersji Mandrake przy pomocy urpmiUrpmi może być użyte do aktualizacji systemu jako całości na nowszą wersję Mandrake Linux. Opis takiej aktualizacji znajdziesz na wstępie niniejszej strony. ![]() Przydatne sztuczki przy pomocy urpmi![]() Instalowanie z url lub pliku lokalnegoNarzędzie urpmi może być użyte do instalowania lokalnej paczki rpm. Przykładowo, właśnie utworzyłeś instalkę foo-1.0-1bar.rpm. Z łatwością możesz użyć zlecenia: urpmi ./ foo-1.0-1bar.rpm . Działa to nawet z url http lub ftp (a nawet z ssh, pod warunkiem że po obu stronach jest zainstalowany rsync). ![]() Pobieranie listy przed instalacją pakietówUżywając urpmq, możesz znaleźć dużo informacji na temat rpm. Jeśli użyjesz zlecenia: urpmq -d , dostaniesz listę wszystkich rpm, potrzebnych do instalacji jednego software'u. Spróbuj urpmq -d , by zobaczyć, jakie rpm są wymagane. Dodając jeszcze -m, zobaczysz tylko te niezainstalowane w obecnej chwili w systemie. A z opcją --sources, dostaniesz "źródła urpmi". Więc, przy pomocy zlecenia: urpmq -d -m --sources dostaniesz listę adresów url pasujących do potrzebnych ci pakietów rpm, co jest dość przydatne, jeśli nie masz dobrego połączenia z Internetem. ![]() Zdobywanie informacji o danym pakiecie rpmZlecenie: urpmq -i może dać ci informacje o rpm które możesz zainstalować. Wypróbuj urpmq -i . Działa tylko z pełnymi hdlist.cz, a nie z syntezą (synthesis.hdlist.cz). ![]() Instalowanie nietypowego oprogramowaniaGdzie to możliwe, powinieneś używać urpmi do instalowania software'u, używając pakietów z poprawnego "źródła urpmi" dla obecnej wersji Mandrake'a. Prawie wszystko co potrzebujesz jest dostępne (o ile masz zdefiniowane "źródła urpmi" dla contrib i plf. Jednakże czasami możesz chcieć zainstalować inny pakiet lub aktualniejszy niż ten dostępny w źródłach Mandrake. Pamiętaj wówczas, że złotą zasadą jest, by nigdy nie omijać bazy danych pakietów rpm i nigdy nie instalować pakietu siłą. Jeśli będziesz przestrzegał tej zasady, (jakkolwiek może się to wydawać denerwujące), masz gwarancję, że twój system nigdy nie będzie w złym stanie. Jeśli urpmi/rpm nie pozwala ci czegoś zainstalować, to zwykle ma po temu ważny powód! ![]() kompilowanie ze źródeł na binariaZamiast znanej trójcy zleceń: ./configuremake make install użyj: ./configuremake checkinstall Dostaniesz wtedy rpm, który ma wielką zaletę: daje się łatwo odinstalować. Więcej o samodzielnym tworzeniu paczek rpm za pomocą narzędzia checkinstall znajdziesz na sąsiedniej stronie. ![]() Instalowanie binarek takich jak Acrobat Reader czy JAVA firmy SUNTe programy powinny znaleźć się w katalogu /usr/local/ . Jest to katalog przeznaczony dla nieoficjalnych pakietów. Jednakże, możesz zażyczyć sobie dodania kilku symlinks (linków), jeśli nie są one zdefiniowane w twoim $PATH. np. /usr/bin/java -> /usr/java/j2re1.4.2_04/bin/java ![]() SkryptyProponuję, byś trzymał swoje skrypty w katalogu $HOME/bin (jeśli nie jest ustawiony w $PATH, to dodaj do .bashrc). ![]() Sterownik NvidiaBinarny sterownik nvidia, jeśli go użyjesz, ma swój własny, przeraźliwy program instalujący, łamiący wszystkie powyższe reguły. Rezultaty są w porządku, ale proces nie jest przyjemny! ![]() Odbudowywanie bazy RPMSJeśli masz rpm utworzony dla systemu innego niż twój własny, jest możliwa jego odbudowa. ![]() Weryfikacja pakietów RPMNaprawdę użytecznym narzędziem do sprawdzania uszkodzonego systemu jest weryfikacja pakietów w bazie danych rpm. Zlecenie: rpm -Va powie ci, które pakiety zmieniły się od czasu instalacji (na przykład, tworzy listę wszystkich sposobów, na jakie twój system jest niekonsekwentny z bazą danych rpm). Na przykład, jeśli masz kłopot z dopływem prądu podczas uruchamiania, niektóre pliki mogą się uszkodzić. Możesz wówczas naprawić system by był jak nowy, reinstalując wszystkie zamieszane w to pakiety. Może to zostać zrobione także na nie-uruchamialnych systemach poprzez użycie awaryjnego CD, by uruchomić i naprawić system. By sprawdzić pojedynczy pakiet, użyj zlecenia: rpm -V nazwapakietu (nazwa wystarczy, numer wersji itp. mogą zostać pominięte). By zweryfikować prawidłowe md5sum, hash i sygnaturę gpg
jednego lub więcej pakietów daj zlecenie: ![]() Kilka słów na zakończenieJeśli msec weryfikuje twój system, używa bazy danych rpm
i na powolnej maszynie może to długo potrwać. Jeśli zlecenie: ps -e pokazuje msec, rpmv,
grep i sort, możesz przyspieszyć rpmdrake /
urpmi poprzez wyłączenie procesów rpmv, grep i sort. Jeśli
chciałbyś mieć mały skrypt, z którym rozpoczniesz rpmdrake, ale
najpierw sprawdzisz, czy robi to msec, napisz do DickGevers). -- AnneWilson - 18 Nov 2004 Copyright © 2003-2005 by the contributing authors. All material on this collaboration platform is the property of the contributing authors and is licensed under a Creative Commons License unless otherwise noted. Ideas, requests, problems regarding TWiki? Send feedback ![]() Autor niniejszej strony www nie ponosi ŻADNEJ odpowiedzialności za przetłumaczony tekst. Zrobił to WYŁĄCZNIE na swój prywatny użytek i w dobrej wierze udostępnił wyniki pracy. Strona domowa opracowania i tłumaczeń: http://gorzow-wlkp.pl W razie pytań i uwag proszę pisać na adres: twarogal@poczta.wp.pl Tłumaczyli: Małgorzata i Mirosław Twarogal 12.02.2005 Uwaga: z powodu namnożenia się różnych złodziejskich witryn, które kopiują moje strony i umieszczają je u siebie wraz z komercyjnymi reklamami (na których zarabiają) informuję, że Wszelkie prawa do tłumaczonego, polskiego tekstu (ale nie angielskiego oryginału) są zastrzeżone. Uwaga. Aby uniknąć zasysania całej witryny gorzow-wlkp.pl/linux za pomocą programów typu TeleportPro, WebCopier itd. informuję, że udostępniłem spakowaną wersję (w formacie RAR). |
|
Witryna była dostępna pod adresami: strony.wp.pl/wp/twarogal , strony.wp.pl/wp/linuxtwarka , twarogal.republika.pl , klub.chip.pl/twarogal oraz gorzow-wlkp.net (w latach 2003/04).