Biologia molekularna, IV rok. Ćwiczenia z bioinformatyki I .
Autor: mgr Małgorzata Maciukiewicz, mgr Sylwia Alaba
Ćw1 - Wprowadzenie do systemu Linux.
Linux jest, w przeciwieństwie do MS Windows, darmowym systemem operacyjnym..
Jego wielką jest to, że instalując system użytkownik od razu ma niezbędne aplikacje (jak
pakiet Office) i nie musi ich instalować z oddzielnych płyt. Po wykonaniu podstawowej
instalacji użytkownik dostaje pełen i gotowy do pracy system operacyjny. Korzystając z
najnowszych dystrybucji nie ma potrzeby szukania w sieci sterowników ani instalowania ich
z dodatkowych płyt jak to ma miejsce w przypadku Windowsa XP, a w mniejszym stopniu
Visty czy Windows 7. System od razu wykryje kartę sieciową, graficzną, dźwiękową itd.
Większość popularnych programów pod MS Windows posiada swoje odpowiedniki w
systemie Linux.
Aplikacja w Windows
Aplikacja w Linux
MS Office
Open Office
Windows Media Player,
Power DVD
VLC Media Player
Totem
Internet Explorer,
Mozilla, Netscape
Mozilla, Opera, Netscape
Gadu-Gadu
Kadu
Corel Draw
Inscape
Adobe Photoshop
Gimp
Winamp
Rhytmbox, Amarok
Notatnik
Gedit
Dodaj/usuń programy z
Panelu Sterowania
Menedżer pakietów
Synaptic
Tabela 1- Popularne aplikacje w systemie Windows i ich odpowiedniki w systemie Linux. Oczywiście
odpowiedników można znaleźć więcej.
Jeśli nowemu użytkownikowi systemu Linux ciężko się rozstać z ulubionymi
programami działającymi w systemie Windows może zainstalować je w nowym systemie,
korzystając z tzw. emulatorów (jak płatwy CrossOver) czy aplikacji typu darmowy Wine.
Zainstalowaną, podstawową wersję systemu zawsze można wzbogacić o dodatkowe pakiety.
Najwygodniejszą metodą jest włączenie menedżera pakietów (System->Administracja-
>Synaptic Menedżer pakietów w Ubuntu, lub Centrum Sterowania Gnome->Dodaj lub Ususń
Pakiety w Mandrivie) Menedżer pakietów działa analogicznie do Panelu Sterowania w
systemie Windows. Bardziej zaawansowani użytkownicy mogą pokusić się o kompilację i
instalowanie pakietów z poziomu konsoli.
1 Część programów posiada wersje uruchamialne pod systemami Windows oraz Linux
1
Istnieje wiele dystrybucji systemu Linux. Niektóre jak Mandriva czy Ubuntu są
polecane dla początkujących użytkowników. Z kolei dystrybucje jak Gentoo czy Debian są
wskazane dla osób bardziej zaawansowanych. Istnieją też wersje ‘dziedzinowe’ jak BioLinux.
Na ogół jednak dla każdej dystrybucji dostępnych jest bardzo dużo pakietów dodatkowych
tak, że każdy może łatwo dostosować system do swoich potrzeb.
Specyfika systemu Linux polega na kontroli użytkownika nad systemem, znacznie
większej niż w przypadku Windows. Choć większość rzeczy można ‘wyklikać’ w środowisku
graficznym, warto poznać podstawy pracy w konsoli.
Część I - GUI
Skrót GUI pochodzi od Graphical User Interface, i oznacza graficzny interfejs użytkownika.
Układ Menu systemowego różni się od tego znanego z Windows.
Istnieją dwa środowiska graficzne w systemach Linux: Gnome i KDE. W Ubuntu domyślnym
środowiskiem jest Gnome z kolei w Mandrivie KDE. Wybór między Gnome a KDE jest
kwestią wyłącznie estetyczną. Aktualna dystrybucja KDE 4.4 bardzo przypomina menu i
układ graficzny z sytemu Windows Vista. Mimo dla osób po raz pierwszy stykających się z
systemem Linux prościej opanować Gnome.
Zadanie 1 - pakiet biurowy OpenOffice
Pakiet Office. Pakiet OpenOffice posiada analogiczne aplikacje w stosunku do MS Office.
Power Point Prezentacja OpenOffice Org
MS Word
Edytor tekstu Oo.org
MS Excel
Arkusz kalkulacyjny Oo.org
MS Access
Baza danych Oo.org
Tabela 2 Części pakietu MS Office i ich zamienniki w OpenOffice (Oo).
Wizualnie Open Office przypomina MS Office w wersji 2003 i wcześniejszej (zupełnie
inaczej niż MS Office 2007 czy 2010). W sieci dostępne są obszerne tutoriale, także w języku
polskim, do Open Office, z których osoby zainteresowane mogą skorzystać w celu
pogłębienia swej wiedzy.
1. Writer
a) Otwórz Open Office Writer (Programy->Biuro->Edytor Tekstu OpenOffice.org) i napisz
kilka zdań różnymi czcionkami (domyślnie w systemie Linux nie ma znanych z Windows
czcionek jak 'Times New Roman' czy 'Arial'. Aby z nich korzystać należy zainstalować pakiet
'Microsoft TrueType Fonts' z poziom Synaptic).
b) W tekstach prac często zamieszcza się tabele oraz podsumowania. Umieść w dokumencie
tabelę składającą się z 3 kolumn i dwóch wierszy. Kolor tła komórek w pierwszym wierszu
niech będzie zielony, zaś tekst w drugim wierszu czerwony.
2
c) Bardzo użyteczną i wbudowaną opcją pakietu OpenOffice jest możliwość bezpośredniego
drukowania bieżącego dokumentu jako PDF. W przypadku MS Office trzeba znaleźć
odpowiednie dodatki lub zainstalować programu typu PDF creator. Zapisz dokument jako
PDF i dołącz do protokołu.
2. Calc
a) Otwórz OpenOffice Calc. Otworzy się zeszyt wyglądający jak zeszyty w MS Excel z
trzema arkuszami. Na początek zmień nazwy arkuszy na: ark1, ark2, ark3.
b) Calc posiada wiele znanych z MS Excel funkcji. Przejdź do arkusza pierwszego. W dwóch
pierwszych kolumnach wpisz dowolne dwie liczby zaś w trzeciej kolumnie iloczyn liczb z
dwóch poprzednich kolumn. Pierwszy wiersz niech będzie wierszem nagłówka- pierwsza
kolumna niech zostanie opisana jako liczba1, następna jako liczba2 a ostatnia jako iloczyn. W
podobny sposób wypełnij pierwsze dziesięć wierszy. Uwaga! Nie jest potrzebne by za
każdym razem korzystać wykorzystywać kreatora funkcji do rozpisania iloczynu. Wystarczy
skopiować zawartość komórki- kopiowanie są całe formuły! (aby skopiować komórkę należy
‘przeciągnąć’ jej zawartość na sąsiednie komórki).
c) Sortowanie. Dane biologiczne jakie są przedmiotem analiz często zawierają wartości
numeryczne. Posortuj wstawione wartości po kolumnie iloczyn tak od wartości największych
do najmniejszych (Dane->Sortowanie->Sortuj według->Iloczyn)
d) Filtrowanie . Kolejną z bardzo użytecznych funkcji używanych na danych jest filtrowanie.
Odfiltruj dane w ten sposób aby w arkuszu znalazły się jedynie te wiersze, w których iloczyn
jest większy lub równy 20 (Dane->Filtr->Filtr standardowy).
Cześć II - Konsola
Choć wiele rzeczy można obecnie ‘wyklikać’ w środowisku graficznym czasem
zachodzi skorzystania z poziomu wiersza poleceń. Nie każdy program posiada graficzny
interfejs użytkownika (GUI), dlatego warto poznać sposoby poruszania się po drzewie
katalogów, tworzeniu katalogów.
W razie jakichkolwiek wątpliwości warto skorzystać z polecenia man. Po wpisaniu
man [nazwa_polecenia] np. man copy w oknie terminala pojawi się pełna dokumentacja na
temat wybranej komendy. Podobne rezultaty zostaną uzyskane przy użyciu komendy help.
Aby zakończyć wyświetlanie stron manuala wciśnij CTRL+Z lub naciśnij klawisz 'q'. Na
stronie
http://linuxreviews.org/man/index.html.pl
znajduje się opis (w języku polskim) wielu
komend systemu Linux.
W dalszej części zajęć komendy będą podawane w następujący sposób:
komenda [opcje_dodatkowe]
Wpisując wspomniane opcje dodatkowe jak na przykład man copy, nie używamy
nawiasów kwadratowych. Komendy zawsze piszemy z małej litery. Pomiędzy komendą a jej
opcjami pozostawiamy JEDNĄ spację.
Zadanie1 - drzewo katalogów w systemie Linux i poruszanie się po nim
Otwórz konsolę (Aplikacje->Akcesoria->Terminal).
3
1. Aby sprawdzić w jakim katalogu znajduje się użytkownik należy użyć polecenia pwd. W
jakim katalogu otwiera się domyślnie konsola? (Katalogi w systemie Linux oznaczane są
poprzez: /nazwa_katalogu, na przykład /home/malgosia, co oznacza katalog domowy
użytkownika malgosia. Po znakach / można prześledzić pełną ścieżkę dostępu do naszego
katalogu od katalogu nadrzędnego, czyli danej partycji systemowej).
2. Innym ciekawym poleceniem jest ls ( ang. listing), pozwalające wyświetlić wszystkie
pliki zawarte w bieżącym katalogu. W zależności od opcji polecenia możne wyświetlić
dodatkowe informacje o plikach/katalogach.
Wypróbuj następujące opcje:
–l (wyświetla właściwości plików)
-a (wyświetla ukryte pliki i foldery. Nazwy ukrytych plików zaczynają się do ./)
oraz
–s –h (wyświetla rozmiar plików folderów (ang. size w sposób czytelny dla ludzi).
UWAGA! Pomiędzy znakiem myślnika (-) a nazwą opcji NIE wstawiamy spacji.
a) W swoim katalogu domowym (na przykład /home/malgosia) załóż katalog, o
dowolnej nazwie, w którym przechowywane będą wszelkie wyniki pracy na ćwiczeniach.
Aby utworzyć katalog należy wpisać w wierszu poleceń mkdir nazwa_katalogu. Po
utworzeniu warto przejść do nowego katalogu za pomocą komendy cd nazwa_katalogu.
Zamiast nazwa katalogu należy wpisać nazwę utworzonego katalogu, na przykład
cw_bioinfo. Wówczas komenda wygląda:
mkdir cw_bioinfo
oraz
cd cw_bioinfo.
b) Przejdź do utworzonego w podpunkcie a) katalogu i utwórz w nim prosty plik tekstowy o
dowolnej nazwie. Do tworzenia plików służy polecenie touch nazwa_pliku, na przykład
touch plik.txt .
Wykonaj printscreen konsoli z użytymi w powyższym zadaniu komendami i wklej obrazek
do protokołu. Aby wykonać printscreen skorzystaj z klawisza PrtScr, ulokowanego w
okolicach klawisza F12.
Zadanie 2 - prawa dostępu w systemie Linux
W systemach Linux/Unix, bardziej niż w przypadku systemu Windows, ważne są prawa
dostępu do plików. W zależności od uprawnień posiadanych przez danego użytkownika
plik(lub program) można otwierać/edytować/uruchamiać. Prawa oznaczane są następująco:
- do odczytu oznaczane jest jako r (ang. read)
- do zapisu(edycji) jako w (ang. write)
- do uruchamiania jako x (ang. execute)
Aby określić jakie są prawa dostępu do plików w danym katalogu należy użyć polecenia
ls z opcją -l
a) Jakie są prawa dostępu do pliku ex-text-file.txt?
4
Prawa dostępu dotyczą: właściciela - grup - innych. Zapis r-- r-- r— oznaczają prawa
do odczytu dla: właściciela, grupy oraz innych. Kolejne symbole dotyczące uprawnień dla
wspomnianych osób wyświetlane są w tej właśnie kolejności.
b) Co oznacza zapis:
rwx r-- --- ?
Niektóre programy, używane w analizach bioinformatycznych są uruchamiane z poziomu
linii poleceń. Aby móc uruchomić program należy mieć prawo do jego wykonywania.
Aby zmienić prawa dostępu należy użyć polecenia chmod. Prawa dostępu oznaczane są
też numerycznie, z tego właśnie sposobu zapisu korzysta chmod.
4- prawo do odczytu
2- prawo do zapisu
1-prawo do uruchomienia
0-brak uprawnień.
W systemie numerycznym prawa się sumują, tzn. prawo do zapisu i odczytu (4 i 2)
zapisywane jest jako 6 (suma 4 oraz 2). Prawo do odczytu/zapisu/uruchomienia oznaczane
jest jako 7 (2+4+6).
c) Zmień prawa dostępu do pliku ex-text-file.txt tak aby każdy miał prawo do edycji pliku (to
znaczy aby prawo do otwierania oraz zapisu posiadał: właściciel, grupa oraz inni.) Zapisz
użytą komendę.
Zadanie 3 - operacje na zawartości plików i wyszukiwanie wzorca
grep jest bardzo użytecznym poleceniem pozwalającym na szybkie przeszukanie czy w
danym pliku znajduje się interesujący użytkownika wzorzec. Wzorcem może być każdy,
dowolny ciąg znaków: słowo, kilka liter czy fragment sekwencji DNA czy białka.
Plik GSM424848-tbl-1.txt zawiera krótkie sekwencje pochodzące z Arabidopsis thaliana.
Jedna linia pliku zawiera dane dotyczące tylko jednej sekwencji.
a) Sprawdź ile sekwencji (w tym wypadku linii) znajduje się w pliku GSM424848-tbl-1.txt
używając komendy wc z odpowiednią opcją (znajdź ja przy pomocy poznanych wcześniej
poleceń umożliwiających przeglądanie dokumentacji dotyczących poszczególnych komend
Linuxa). Jakiego polecenia użyłeś aby poznać tę opcję? Podaj wynik działana użytej komendy
wc z wybraną przez Ciebie opcją.
b) użyj polecenia grep w celu wyświetlenia tylko tych sekwencji z pliku GSM424848-tbl-
1.txt, które zawierają w sobie 'CATGTAAGCACGTC'. Ile jest takich sekwencji?
b) Powtórz zadanie z podpunktu a) tym razem wyszukując sekwencję '
TTTTTTTCATGTAAGCACGTCGGTT'. Czy w którejś (jeśli tak to w której) linii znajduje
się ta sekwencja? Która z opcji polecnia grep pozwala określić linię, w której znaleziono
szukaną frazę? Zapisz użytą komendę do protokołu.
c) powtórz komendę z podpunktu b) dodając opcję -o. Na podstawie uzyskanego razultatu
krótko opisz działanie tej opcji.
c) użyj polecenia grep z opcją –v w celu wyświetlenia wszystkich linii prócz tych
zawierających w sekwencji adeninę. Korzystając z poznanej w podpunkcie b) opcji grep
5
wypisz numery ostatnich trzech linii, w których nie występuje poszukiwany nukleotyd. Podaj
w protokole jakiej komendy użyłaś/eś. Spróbuj zmienić wielkość liter we wzorcu. Czy wynik
działania komendy uległ zmianie?
Zadanie 4 - wyświetlanie plików z linii komend
1. cat jest poleceniem pozwalającym na wyświetlenie zawartość pliku (lub kilku plików
jednocześnie) na ekranie lub na przekierowanie jego (ich) zawartości do pliku przy użyciu
symbolu przekierowania >. Komenda cat w połączeniu z grep pozwala wyświetlać linijki
zawierające określone słowo lub frazę. Jest to szczególnie przydatne w przypadku edytowania
plików konfiguracyjnych, których nie można edytować w trycie graficznym!!
a) Proszę za pomocą polecenia cat wyświetlić zawartość pliku ex-text-file.txt i zapisać ją do
pliku o nazwie tmp.txt. Aby zapisać zawartość pliku do innego pliku należy użyć symbolu
przekierowania >. W przypadku korzystania z cat składnia polecenia wygląda następująco:
cat plik1
> plik2.
Przekieruj zawartość pliku ex-text-file.txt do pliku ex1-text-file.txt.
b) W przypadku dużych plików, nie mieszczących się na ekranie terminala, wygodne jest aby
wyświetlać je fragmentami. Wyświetl 10 linii pliku ex-text-file.txt. W celu wyświetlenia
początkowych linii należy skorzystać z opcji : head –liczba_linii plik
Analogicznie do poprzedniego przykładu proszę wyświetlić 10 ostatnich linii z pliku ex-text-
file.txt . W celu wyświetlenia ostatnich linii z pliku należy skorzystać z tail.
Wykonaj print screen komend użytych w podpunktach a) oraz b).
2) Polecenie more bardzo ułatwia przeglądanie dużych plików tekstowych z poziomu konsoli.
Aby przeglądać pliki tekstowe za pomocą more należy wpisać:
more [-dlfpcsu ] [-num ] [+/ wzór] [+ num_linii] [plik...]
a) opcja -d ułatwia przeglądanie większych plików poprzez wpisanie na końcu ekranu
komunikatu 'Press space to continue, press q to quit'. Wypróbuj opcję -d w połączeniu z
opcją -num. Zapisz wynik działania komendy (zrób print screen'a konsoli)
b) Opcja +linenum pozwala na rozpoczęcie przeglądania pliku od linii o zadanym numerze.
Rozpocznij przeszukiwanie pliku ex-text-file.txt od linii 12. Zapisz użytą komendę.
c) Korzystając z man odpowiedz na pytanie co znaczą opcje -l, -f, -p, -c, -s, -u?
Zadanie 5 - pakowanie i rozpakowywanie plików z linii komend
Polecenie tar służy do tworzenia archiwum w systemach UNIX/Linux. Korzystając z tar
stwórz archiwum z katalogu w którym zostały wykonane powyższe zadania.
Komenda:
tar cvf katalog.tar katalog
stworzy archiwum o nazwie katalog.tar z katalogu o nazwie katalog. Opcje cvf oznaczają:
c - tworzenie nowego archiwum
6
v - włączenie trybu widocznego (ang verbose)-użytkownik widzi jak kolejne pliki są
dodawane do archiwum
f - nazwa archiwum zostaje podana z poziomu linii poleceń
Korzystając z polecenia man odpowiedz na następujące pytanie- co oznaczają opcje -z oraz
-j polecenia tar?
7