table of contents
ALIEN(1) | User Contributed Perl Documentation | ALIEN(1) |
NAZWA¶
alien - konwertuje lub instaluje obcy pakiet binarny
SKŁADNIA¶
alien [--to-deb] [--to-rpm] [--to-tgz] [--to-slp] [opcje] plik [...]
OPIS¶
alien jest programem konwetrującym pomiędzy różnymi formatami plików pakietów: rpm Red Hata, deb Debiana, slp Stampede, tgz Slackware'a oraz pkg Solarisa. Aby móc używać pakietu z innej dystrybucji Linuksa niż zainstalowana w systemie, można użyć programu alien do skonwertowania tegoż pakietu do preferowanego formatu i zainstalowania go. Także obsługuje pakiety LSB.
OSTRZEŻENIE¶
Mimo wysokiego numeru wersji, alien wciąż jest (i najprawdopodobniej zawsze będzie) programem raczej eksperymentalnym. Chociaż jest rozwijany od wielu lat, to wciąż zawiera wiele błędów i ograniczeń.
aliena nie powinno się używać do zastąpienia ważnych pakietów systemowych, takich jak init, libc czy innych, które są niezbędne do poprawnego działania systemu. Większość tych pakietów jest w różnych dystrybucjach inaczej skonfigurowana, pakiety różnych dystrybucji nie mogą być stosowane wymiennie. Ogólnie, nie można usunąć takiego pakietu bez zepsucia systemu, tak więc prosimy nie próbować zastępować go obcą wersją.
UWAGI DO POSZCZEGÓLNYCH FORMATÓW PAKIETÓW¶
- rpm
- Do konwersji z formatu rpm i na format rpm musi być zainstalowany Red Hat Package Manager.
- lsb
- W przeciwieństwie do pozostałych formatów
pakietów alien potrafi obsłużyć
zależności pakietów lsb, jeżeli tylko format
pakietu wynikowego obsługuje zależności.
Proszę zauważyć, że oznacza to, iż
pakiet utworzony z pakietu lsb będzie zależał od
pakietu nazwanego "lsb" -- Twoja dystrybucja powinna
dostarczyć pakietu o tej nazwie, jeżeli jest zgodna ze
standardem lsb. Domyślnie zostaną skonwertowane
również skrypty w pakiecie lsb.
Do utworzenia pakietów lsb, musi być zainstalowany Red Hat Package Manager, a alien w pierwszej kolejności użyje programu lsb-rpm, jeżeli takowy istnieje. Nie ma żadnych gwarancji, że wygenerowany pakiet lsb będzie w 100% zgodny ze standardem LSB, co więcej jest to raczej niemożliwe, chyba że zostanie on zbudowany w środowisku lsbdev.
- deb
- Do konwersji na format .deb (ale nie z tego formatu) muszą być zainstalowane pakiety gcc, make, debmake, dpkg-dev i dpkg.
- tgz
- Zauważ, że dla formatu tgz alien po prostu utworzy pakiet wynikowy z tymi samymi plikami we wnętrzu, które są w pliku tgz. Działa to dobrze tylko wtedy, jeśli plik tgz zawiera w sobie prekompilowane binaria w standardowym linuksowym drzewie katalogów. NIE uruchamiaj aliena na plikach tar zawierających kod źródłowy, chyba że chcesz, by kod ten podczas instalacji pakietu został zainstalowany w katalogu głównym (root)!
- pkg
- Aby działać na pakietach w formacie pkg Solarisa (który tak naprawdę jest formatem pakietów SV), muszą być zainstalowane solarisowe narzędzia pkginfo i pkgtrans.
OPCJE¶
alien skonwertuje wszystkie podane pliki na wszystkie podane typy pakietów wynikowych. Jeżeli nie podano żadnego typu, to domyślnie pakiet zostanie skonwertowany do formatu deb.
- plik [ ... ]
- Lista plików do konwersji.
- -d, --to-deb
- Pakiet wynikowy będzie pakietem Debiana. Domyślne.
- -r, --to-rpm
- Pakiet wynikowy będzie pakietem rpm.
- -t, --to-tgz
- Pakiet wynikowy będzie pakietem tgz.
- --to-slp
- Pakiet wynikowy będzie pakietem slp.
- -p, --to-pkg
- Pakiet wynikowy będzie pakietem pkg Solarisa.
- -i, --install
- Automatycznie instaluje pakiet wynikowy i usuwa plik pakietu po jego zainstalowaniu.
- -g, --generate
- Tworzy katalog tymczasowy, odpowiedni do zbudowania z niego pakietu, ale samego pakietu faktycznie nie tworzy. Przydatne, jeśli chcesz przesunąć pliki w pakiecie przed jego skonstruowaniem. Pakiet może być zbudowany z tego katalogu tymczasowego przez uruchomienie "debian/rules binary", jeśli tworzony jest pakiet Debiana, lub "rpm -bb <nazwapakietu>.spec", jeżeli jest tworzony pakiet Red Hata.
- -s, --single
- Jak -g, ale nie tworzy katalogu nazwapakietu.orig. Przydatne tylko jeśli jest bardzo mało miejsca na dysku i tworzysz pakiet Debiana.
- --patch=łata
- Określa łatę, jaka ma być użyta, zamiast automatycznego wyszukiwania jej w /var/lib/alien/. Ta opcja ma znaczenie tylko gdy budowany jest pakiet Debiana.
- --anypatch
- Jest mniej wymagający w stosunku do tego, która łata zostanie użyta, próbując użyć pliku z łatą dla starszej wersji pakietu. Nie ma gwarancji, że to będzie zawsze działać; starsze łaty niekoniecznie muszą działać z nowszymi pakietami.
- --nopatch
- Nie używa żadnych plików z łatami.
- --description=opis
- Określa opis pakietu. Może być używane tylko przy konwersji z pakietów tgz Slackware, które nie mają opisów.
- --version=wersja
- Określa wersję pakietu. Opcja ta ma zastosowanie przy
konwersji z pakietów w formacie tgz, które mogą nie
mieć informacji o wersji.
Uwaga, użyta bez argumentu, wyświetla wersję aliena.
- -c, --scripts
- Próbuje konwertować skrypty, który powinny być
uruchamiane przy instalacji lub usuwaniu pakietu. Używaj
rozważnie, gdyż skrypty te mogą być
zaprojektowane do pracy na systemach niepodobnych do twojego i mogą
powodować kłopoty. Przed zastosowaniem tej opcji zaleca
się zbadanie skryptów ręcznie i zobaczenie, co
robią.
Opcja jest domyślnie włączona dla konwertowania z pakietów formatu lsb.
- -T, --test
- Testuje wygenerowane pakiety. Obecnie jest to możliwe tylko dla pakietów Debiana, które będą testowane programem lintian, jeżeli jest on zainstalowany, i zostanie wyświetlone wyjście programu lintian.
- -k, --keep-version
- Domyślnie alien dodaje jeden do pobocznego (minor) numeru wersji. Jeżeli podano tę opcję, alien nie będzie tego robił.
- --fixperms
- Poprawia właścicieli i prawa dostępu podczas budowania pakietu deb. Może być to użyteczne, kiedy w oryginalnym pakiecie panuje bałagan. Z drugiej strony, może to zepsuć pewnie rzeczy związane z prawami dostępu i właścicielami, dlatego domyślnie ta opcja jest wyłączona. Może być użyte tylko podczas konwertowania do pakietów Debiana.
- -v, --verbose
- Tryb głośny: Wyświetla każde polecenie wykonywane przez aliena podczas konwertowania pakietu.
- --veryverbose
- Tryb głośny, podobnie jak w wypadku opcji --verbose, z tą różnicą, że wyświetla wyjście każdego polecenia. Niektóre polecanie mogą generować duże wyjście.
- -h, --help
- Wyświetla krótkie podsumowanie użytkowania.
- -V, --version
- Wyświetla wersję aliena.
PRZYKŁADY¶
Oto kilka przykładów użycia programu alien:
- alien --to-deb pakiet.rpm
- Konwertuje pakiet.rpm na pakiet.deb
- alien --to-rpm pakiet.deb
- Konwertuje pakiet.deb na pakiet.rpm
- alien -i pakiet.rpm
- Konwertuje pakiet.rpm na pakiet.deb (konwersja na pakiet .deb jest domyślna, więc nie musisz podawać --to-deb) i instaluje wygenerowany pakiet.
- alien --to-deb --to-rpm --to-tgz --to-slp foo.deb bar.rpm baz.tgz
- Tworzy 9 nowych pakietów. Po zakończeniu foo, bar i baz będą dostępne we wszystkich 4 formatach pakietów.
ŚRODOWISKO¶
alien rozpoznaje następujące zmienne środowiska:
- RPMBUILDOPT
- Opcje do przekazania do rpm, gdy buduje pakiet.
- RPMINSTALLOPT
- Opcje do przekazania do rpm, gdy instaluje pakiet.
- Jeżeli ustawiona, to alien przyjmuje, że zawiera Twój adres e-mail. Adresy e-mail są dołączane do wygenerowanych pakietów Debiana.
UWAGI¶
Podczas uruchamiania programu alien na pliku tar wszystkie pliki w /etc są uważane za pliki konfiguracyjne.
Jeżeli alien nie jest uruchamiany przez użytkownika root, pliki w utworzonym pakiecie będą miały nieprawidłowych właścicieli i prawa dostępu.
AUTOR¶
alien został napisany przez Christopha Lametera <clameter@debian.org>.
Kod konwersji deb na rpm został wzięty z programu martian Randolpha Chunga <tausq@debian.org>.
Alien został w dużym stopniu napisany ponownie (3 razy) i obecnie jego opiekunem jest Joey Hess <joeyh@debian.org>.
LICENCJA¶
Alien może być kopiowany i rozprowadzany na warunkach Ogólnej Licencji Publicznej GNU.
2003-07-12 | perl v5.8.0 |