Pracownia Technik Obliczeniowych
Instalowanie oprogramowania
Paweł Daniluk
Wydział Fizyki
Wiosna 2016
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 1 / 16
Standardowy układ katalogów
Systemy UNIXowe mają z reguły ten sam układ katalogów.
/bin Podstawowe pliki wykonywalne dostępne dla wszystkich (np. cat, ls, cp).
/boot Pliki rozruchowe (np. kernel, initrd).
/dev Pliki urządzeń (ang. device; np. /dev/null).
/etc Pliki konfiguracyjne.
/home Katalogi domowe użytkowników .
/lib Biblioteki dla programów z katalogów /bin i /sbin.
/mnt Punkt montowania innych niż natywny systemów plików.
/media Punkty montowań dla nośników wymienialnych.
/opt Opcjonalne aplikacje.
/proc Wirtualny system plików proc informujący o stanie systemu.
/root Katalog domowy użytkownika root.
/sbin Pliki wykonywalne do zarządzania systemem (np. init, route, ifup).
/tmp Pliki tymczasowe (mogą być kasowane przy restarcie).
/usr Drugorzędowa hierarchia dla danych, dane tylko do odczytu.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 2 / 16
Standardowy układ katalogów
/usr/bin J. w., ale nie wymagane do uruchomienia systemu.
/usr/include Standardowe pliki nagłówkowe.
/usr/lib J. w.
/usr/sbin J. w., ale nie wymagane do uruchomienia systemu.
/usr/share Dane niezależne od architektury.
/usr/src Kody źródłowe.
/usr/local Trzeciorzędowa hierarchia danych lokalnych.
/var Pliki często ulegające zmianom (n.p. logi, bazy danych).
/var/lock Pliki blokady zasobów będących w użyciu.
/var/log Logi różnych aplikacji.
/var/mail Skrzynki pocztowe użytkowników.
/var/run Informacje o działaniu systemu od ostatniego jego uruchomienia.
/var/spool Miejsce przechowania oczekujących zadań.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 3 / 16
Systemy pakietów
Każdy nowoczesny UNIX/Linux ma jakiś system zarządzania instalacją oprogramowania, który zapewnia:
1
możliwość deinstalacji
2
zachowanie zależności (wymagań i wykluczeń)
3
aktualizację wersji
Przykładowe systemy pakietów
1
RPM (RedHat i pokrewne)
2
APT (Debian i pokrewne)
3
MacPorts, Homebrew, Fink (dla OS X)
Niektóre narzędzia mają własne systemy pakietów. Np.:
1
Python
2
LaTeX
3
R
Jeżeli to tylko możliwe, całe oprogramowanie powinno być instalowane przez system pakietów.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 4 / 16
Kiedy system pakietów zawodzi
Oprogramowanie naukowe (i nie tylko) nie spełnia opisanych standardów i wymaga specjalnego podejścia do instalacji.
Czasem trzeba własnoręcznie skompilować narzędzie.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 5 / 16
Gdzie instalować
Można instalować w:
1
/usr/local – wymaga uprawnień superużytkownika, instalacja dostępna dla wszystkich
2
$HOME/local – u siebie każdy może wszystko
3
jako moduł
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 6 / 16
Etapy instalacji
1
Pobranie i rozpakowanie źródeł
2
Przygotowanie kompilacji – weryfikacja wymagań, konfiguracja
3
Kompilacja
4
Instalacja (kopiowanie w docelowe miejsce)
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 7 / 16
Standardowa procedura
. / c o n f i g u r e make
make i n s t a l l
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 8 / 16
configure
Sprawdza, czy kompilacja jest możliwa. Lokalizuje potrzebne biblioteki.
Ustawia parametry kompilacji.
1
miejsce instalacji
2
moduły do skompilowania
3
inne opcje
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 9 / 16
make
Nadzoruje kompilację.
Pożyteczna opcja make -j
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 10 / 16
Pakiety Pythonowe
Python szuka pakietów w bieżącym katalogu oraz domyślnych lokalizacjach.
>>> s y s . p a t h
[ ’ ’ , ’ / home/ p a w e l ’ , ’ / u s r / l i b 6 4 / p y t h o n 2 6 . z i p ’ ,
’ / u s r / l i b 6 4 / p y t h o n 2 . 6 ’ , ’ / u s r / l i b 6 4 / p y t h o n 2 . 6 / p l a t −l i n u x 2 ’ ,
’ / u s r / l i b 6 4 / p y t h o n 2 . 6 / l i b −tk ’ , ’ / u s r / l i b 6 4 / p y t h o n 2 . 6 / l i b −o l d ’ ,
’ / u s r / l i b 6 4 / p y t h o n 2 . 6 / l i b −d y n l o a d ’ ,
’ / u s r / l i b 6 4 / p y t h o n 2 . 6 / s i t e −p a c k a g e s ’ ]
Pakiety, które mają być dostępne dla wszystkich, można instalować w site-packages.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 11 / 16
PyPI
Repozytorium pakietów Pythonowych.
http://pypi.python.org
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 12 / 16
Setuptools
Zestaw narzędzi do instalowania pakietów. Zawiera easy_install.
Instalacja
http://bootstrap.pypa.io/ez_setup.py
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 13 / 16
Zadanie 1
Pobierz kod źródłowy najnowszej wersji Pythona 2, skompiluj i zainstaluj w swoim katalogu domowym.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 14 / 16
Zadanie 2
Zainstaluj setuptools.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 15 / 16
Zadanie 3
Zainstaluj ipython.
P. Daniluk(Wydział Fizyki) PTO XI Wiosna 2016 16 / 16