This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
- Logowanie
- System zdalny
- Lokalny Linuxa
- Po zalogowaniu
- Pomoc systemowa
- Obsługa
- Wydawanie poleceń
- Obsługa terminala
- Podstawy
- Skróty przeznaczone do edycji polecenia
- Skróty okien
- Edytor vi
- Poruszanie się po tekście (tryb komend)
- Usuwanie fragmentów tekstu (tryb komend)
- Wyszukiwanie i zastępowanie
- Wyjście z vi (tryb komend)
- Zadania domowe
Systemy operacyjne Unix są systemami wielodostępnymi i wielozadaniowymi. Wielodostępność pozwala na jednoczesną pracę wielu użytkowników, a wielozadaniowość umożliwia uruchamianie w systemie wielu zadań jednocześnie. Wielodostępność wymaga stosowania mechanizmów, które pozwalają na bezpieczną i jednoczesną prace różnym użytkownikom. Podstawowym rozwiązaniem w tym zakresie jest autoryzacja, która jest realizowana w oparciu o nazwy użytkowników i ich hasła.
W laboratoriach dostępne są na komputerach instalacje Linux oraz serwer Linux lts.wmi.amu.edu.pl
.
Logowanie
System zdalny
Z poziomu Windows by zalogować się do systemu zdalnego (np. lts.wmi.amu.edu.pl
) należy użyć programu ssh (ang. secure shell). Można użyć programu putty, który jest już zainstalowany na wydziałowych komputerach.
Zadanie 1
Uruchom system Windows.
Uwaga: twój wydziałowy login to sXXXXXX
, gdzie XXXXXX
to numer albumu (umieszczony na legitymacji studenckiej); jeśli nie logowałeś się wcześniej w systemie Windows, to hasłem jest twój PESEL; następnie system wymusi zmianę hasła.
Zadanie 2
Zaloguj się do serwera lts.wmi.amu.edu.pl
(używajac programu putty).
Lokalny Linux
Przy starcie systemu należy wybrać system Linux. Po starcie sytemu pojawi się środowisko graficzne. Na razie nie będziemy z niego korzystać.
By uruchomić jeden z terminali wirtualnych, możemy użyć kombinacji klawiszy Alt+F1
, Alt+F2
itd. lub Ctrl+Alt+F1
, Ctrl+Alt-F2
, itd. Aby wrócić do środowiska graficznego używamy kombinacji Alt+F7
lub Ctrl+Alt+F7
. W środowisku graficznym można również uruchomić terminal. Służą do tego takie aplikacje jak termilal, xterm, uxterm, terminator (bardziej zaawansowana nakładka) i inne.
Zadanie 3
Uruchom system Linux. Zaloguj się do lokalnego systemu używając terminala tekstowego (używając kombinacji klawiszy Ctrl+Alt+F1
).
Zadanie 4
Zaloguj się do serwera lts.wmi.amu.edu.pl
(używając polecenia ssh
). Wyloguj się z serwera poleceniem exit
.
Po zalogowaniu
Po zalogowaniu do systemu użytkownik ma możliwość zmiany własnego hasła; służy do tego polecenie:
passwd
Po jego wydaniu należy wprowadzić dotychczasowe hasło, a następnie nowe hasło, które trzeba także powtórzyć, aby system mógł zweryfikować czy nie popełniono błędu przy jego wprowadzaniu (np. "literówki"). W trakcie wpisywania hasła na monitorze nie są wyświetlane żadne znaki.
Zadanie 5
Zmień własne hasło.
System identyfikuje użytkowników na podstawie specjalnych identyfikatorów numerycznych (takie numery są łatwiejsze do przetwarzania), tj. nazywanych id. Każdy użytkownik systemu operacyjnego może także sprawdzić jaki identyfikator numeryczny id został mu przydzielony; należy wówczas zastosować polecenie:
id
którego wynik może być następujący:
uid=1500(adam) gid=100(students) groups=100(students)
gdzie:
- uid (ang. user identifier) oznacza identyfikator użytkownika, w nawiasie znajduje się jego nazwa,
- gid (ang. group identifier) oznacza identyfikator grupy, w nawiasie znajduje się jej nazwa.
Zadanie 6
Sprawdź własny identyfikator oraz grupy, do których należysz.
Wielodostępność oznacza także, że każdy użytkownik może zalogować się do systemu wielokrotnie, korzystając np. z terminali wirtualnych dostępnych za pomocą klawiszy Alt+F1
, Alt+F2
, itd., lub Ctrl+Alt+F1
, Ctrl+Alt+F2
, itd.
Możliwe jest także pozyskanie informacji o wszystkich zalogowanych aktualnie w systemie użytkownikach. Aby tego dokonać należy wydać jedno z poleceń:
who
– wyświetla listę zalogowanych użytkowników (podobnie poleceniefinger
),last
– wyświetla datę i czas ostatniego logowania użytkowników,whoami
– wyświetla nazwę aktualnie zalogowanego użytkownika,
Wylogowanie się z systemu jest możliwe po wydaniu polecenia:
exit
Warto także zaznaczyć, że systemach UNIX rozróżniane są wielkie i małe litery – dotyczy to zarówno logowania do systemu jaki i wydawania poleceń w systemie oraz nazw plików i katalogów.
Zadanie 7
Sprawdź kto jest zalogowany w chwili obecnej na serwerze lts.wmi.amu.edu.pl
.
Pomoc systemowa
W systemach Unix dostępna jest pomoc systemowa w postaci dokumentów tekstowych opisujących różne aspekty systemu i jego narzędzia. Dostęp do dokumentacji możliwy jest dzięki przeglądarce interaktywnej, którą uruchamia się poleceniem:
man nazwa_polecenia
gdzie nazwa_polecenia
to nazwa programu lub usługi, dla której chce się uzyskać pomoc, np.:
man passwd
pozwala na uzyskanie pomocy dla polecenia passwd
. Istnieją także strony pomocy dla samej pomocy systemowej; można uzyskać do nich dostęp poleceniem:
man man
Strony dokumentacji podzielone są na sekcje, które separują informacje zawarte w pomocy. Oto lista najpopularniejszych sekcji:
- NAME – nazwa oraz krótki komentarz lub wyjaśnienie;
- SYNOPSIS – sposoby uruchamiania programu lub polecenia wraz z listą możliwych przełączników;
- DESCRIPTION – pełen opis programu oraz szczegółowy opis możliwych do zastosowania przełączników;
- CONFIGURATION – opis konfiguracji usługi lub programu;
- FILES – opis plików konfiguracyjnych;
- SEE ALSO – wskazówki dotyczące podobnych lub powiązanych poleceń.
Całość dokumentacji podzielona jest na rozłączne rozdziały, które zawierają opisy poleceń i programów określonego typu. Podział na rozdziały może się różnić w zależności od implementacji systemu, jednak najczęściej podział wygląda następująco:
- rozdział nr 1 – polecenia użytkownika;
- rozdział nr 2 – wywołania systemowe;
- rozdział nr 3 – funkcje biblioteczne;
- rozdział nr 4 – pliki specjalne;
- rozdział nr 5 – formaty plików;
- rozdział nr 6 – gry;
- rozdział nr 7 – konwersje i rozmaitości;
- rozdział nr 8 – administracja i polecenia administratora;
- rozdział L – funkcje bibliotek matematycznych;
- rozdział N – funkcje tcl.
Strony pomocy są oznaczane za pomocą hasła i numeru rozdziału, np.:
passwd(1)
oznacza, że dla polecenia użytkownika passwd pomoc systemowa znajduje się w rozdziale nr 1. Przywołanie pomocy ze wskazaniem rozdziału wygląda następująco:
man 1 passwd
Takie polecenie wyświetli pomoc systemową dla polecenia passwd z rozdziału nr 1.
Zadanie 8
Zapoznaj się z opisem polecenia ls
, korzystając z pomocy systemowej.
Zadanie 9
Zapoznaj się z opisem struktury katalogów poprzez polecenie man 7 hier
.
Obsługa
Pomoc systemowa wyświetlana jest za pomocą przeglądarki more
, którą obsługuje się za pomocą następujących poleceń klawiszowych:
spacja
– przejście do następnej strony;Ctrl+B
– przejście do poprzedniej strony;q
– zamknięcie i opuszczenie przeglądarki;/
– wyszukiwanie tekstu w przód, po znaku/
należy wpisać tekst do wyszukania;?
– wyszukiwanie w tył;n
,N
– przejście do następnego (n
) / poprzedniego (N
) wystąpienia poszukiwanego wyrażenia.
Wyszukiwanie stron pomocy systemowej jest możliwe dzięki programom apropos
oraz whatis
, które wyszukują podanych słów w pomocy systemowej, np.:
apropos passwd
whatis passwd
Wydawanie poleceń
Polecenia w systemach Unix wydaje się wpisując nazwę polecenia oraz wybierając klawisz Enter
. Polecenia mogą przyjmować argumenty oraz przełączniki, zgodnie ze wzorcem:
polecenie [przełączniki] [argumenty]
Oto przykład:
ls -al /etc
W tym przypadku polecenie ls
zostało uruchomione z argumentem /etc
oraz z przełącznikami al
. Wydanie polecenia ls
bez argumentu spowoduje wyświetlenie zawartości aktualnego katalogu; podanie natomiast jako argumentu nazwy katalogu, spowoduje wyświetlenie zawartości tego, wskazanego katalogu (w przykładzie jest to katalog /etc
). Dalej, domyślne działanie polecenia można modyfikować stosując przełączniki, które są przeważnie jednoznakowymi skrótami, zawsze występującymi po znaku -
. W przykładzie zastosowano dwa przełączniki a
i l
. Opis możliwych do zastosowania argumentów i przełączników można odnaleźć w pomocy systemowej dla właściwego polecenia. Przełączniki, jak widać, można łączyć; kolejny przykład przedstawia jak można wydawać polecenie z przełącznikami:
ls -a -l /etc
ls -l -a /etc
ls -al /etc
ls -la /etc
Zadanie 10
Wyświetl nazwy plików i katalogów znajdujących się w katalogu domowym korzystając z polecenia ls
.
Obsługa terminala
Podstawy
Tab
– automatyczne dokończenie nazwy zaczętego poleceniaTab – wciśnięte dwa razy
– w przypadku gdy powłoka nie jest w stanie dokończyć zaczętego polecenia powtórne wciśnięcie klawiszaTab
spowoduje wyświetlenie podpowiedzi z listą dostępnych komend zaczynających się od wpisanej wartości.strzałki góra / dół
– Poruszanie się po historii poleceń, które wcześniej były już wpisywane w konsole,Ctrl+P
/Ctrl+N
– tak samo jak w przypadku strzałek – poruszanie się po historii poleceń, które wcześniej były już wpisywane w konsole,Ctrl+R
– wyszukuje w historii poleceń wcześniej już wykonanych, po wciśnięciu skrótu wpisujemy początkowy jakiejś komendy – i otrzymujemy podpowiedźCtrl+G
– wychodzi z wyszukiwania historii poleceńAlt+.
– wkleja ostatnie słowo z poprzedniego poleceniaCtrl+C
– przerwanie/zabicie działania programuCtrl+Z
– zatrzymanie działania programuCtrl+S
– zatrzymanie transferu do terminalaCtrl+Q
– kontynuowanie transferu do terminala – (jeśli wcześniej użytoCtrl+S
)Ctrl+L
– wyczyszczenie ekranu (działa jak polecenieclear
)!!
– wykonaj ostatnie polecenie!wpis
– wykonaj najczęściej wykonywane polecenie zaczynające się od wpis!wpis:p
– to samo co wyżej, tylko bez wykonywania (wyświetlenie pełnej nazwy komendy)
Skróty przeznaczone do edycji polecenia
Ctrl+A
– przesuwa kursor na początek liniiCtrl+E
– przesuwa kursor na koniec liniiCtrl+K
– usuwa wszystko od kursora do końca liniiCtrl+U
– usuwa wszystko od kursora do początku liniiCtrl+W
– usuwa słowo przed kursoremCtrl+Y
– wkleja poprzednio wymazany fragment poprzezCtl-U
orazCtl-K,W
Ctrl+D
– usuwa literę przed kursorem (lub słowo – równieżAlt+Backspace
)Alt+B
– cofa kursor o słowo do tyłuAlt+F
– przenosi kursor o słowo do przoduAlt+T
– zmienia kolejność wpisywanych słówAlt+C
– Zamienia pierwszą literę w wyrazie na Wielką, a kolejne na małe.Alt+L
– Zamienia wszystkie znaki w wyrazie na prawo od kursora na małe literyAlt+U
– Zamienia wszystkie znaki w wyrazie na prawo od kursora na Wielkie litery
Skróty okien
Ctrl+Alt+F1
– Przełącza na pierwszy terminal.Ctrl+Alt+FN
(N=1..6) – Przełącza na następne terminale.tty
– wyświetla nazwę bieżącego terminalu.Ctrl+Alt+F7
– Przełącza na pierwszy terminal graficzny (jest na tym terminalu uruchomiony jest X-window).Ctrl+Alt+FN
(n=7..12) – Przełącza na następny terminal graficzny (jeśli terminal GUI jest uruchomiony na ekranie n-1).Shift+PgUp
– przewija dane wyjściowe z terminala w górę.Shift+PgDown
– przewija dane wyjściowe z terminala w dół.Ctrl+Alt+Esc
– zabija okno w które klikniesz myszkąCtrl+Alt+Backspace
– zabija środowisko graficzne lub je restartuje. Warto skorzystać z tej kombinacji, kiedy wszystko inne przestało działać.
Edytor vi
W edytorze vi
mamy dwa tryby pracy:
- tryb komend,
- tryb edycji.
Po uruchomieniu edytora vi
jesteśmy w trybie komend, w którym możemy wydawać polecenia dla edytora. Przejście z trybu komend do trybu edycji następuje przez naciśnięcie jednego z poniższych klawiszy:
a
(ang. append),i
(ang. insert),c
,o
,O
.
W trybie edycji mamy możliwość dopisywania tekstu. Przejście z trybu edycji do trybu komend następuje przez naciśnięcie klawisza Esc
.
Poruszanie się po tekście (tryb komend)
l
lubspacja
– przejście do następnego znaku,h
– przejście do poprzedniego znaku,j
– przejście o jeden znak w dół,k
– przejście o jeden znak w górę,0
– przejście na początek bieżącej linii,$
– przejście na koniec bieżącej linii,-
(minus) – przejście na początek poprzedniej linii,+
lubEnter
– przejście na początek następnej linii,G
– przejście do ostatniej linii,1G
– przejście do pierwszej linii,nG
– przejście do linii o numerze n.
Usuwanie fragmentów tekstu (tryb komend)
x
– usunięcie znaku, na którym stoi kursorX
– usunięcie znaku poprzedzającego kursor,r
– zastąpienie znaku, na którym znajduje się kursor,dd
– usunięcie bieżącej linii,d$
– usunięcie znaków od bieżącego położenia kursora aż do końca bieżącej linii włącznie,dnd
lubdn+
– usunięcie kolejnych n linii począwszy do bieżącej w kierunku końca pliku,dn-
– usunięcie kolejnych n linii począwszy do bieżącej w kierunku początku pliku,dG
– usunięcie wszystkich linii od bieżącej do końca pliku,dn
– usunięcie bieżącego znaku i n-1 następnych,dnh
– usunięcie bieżącego znaku i n-1 poprzednich.
Usunięty fragment umieszczany jest w buforze i można go wstawić w następnej linii komendą p
lub w miejscu położenia kursora komendą P
. Odpowiedni fragment można też skopiować do bufora (bez usuwania go z dotychczasowego miejsca) w analogicznych sposób jak się go usuwało, przy czym zamiast litery d
w wymienionych komendach należy użyć litery y
.
- J – usunięcie znaku końca bieżącej linii (połączenie linii bieżącej i następnej)
Wyszukiwanie i zastępowanie
/wzorzec
– szukanie wzorca w kierunku końca pliku,?wzorzec
– szukanie wzorca w kierunku początku pliku,n
lub/
– szukanie następnego wystąpienia,:od,dos/stary/nowy/gc
– zastąpienie tekstu stary tekstem nowy z zakresie odod
(numer linii,.
(kropka) – bieżąca linia,$
- koniec pliku) dodo
lub globalnie (%
);g
oznacza, że w zastępowanie ma być wykonane w całym podanym zakresie, ac
oznacza konieczność potwierdzenia każdej operacji zastąpienia.
Wyjście z vi (tryb komend)
ZZ
lub:x
- wyjście z edytora z zapisaniem dokonanych zmian,:w
– zapis zmian bez wychodzenia z edytora,:q!
– wyjście z edytor bez zapisywania zmian.
Aby otworzyć istniejący plik, w trybie komend wprowadzamy :o nazwapliku
.
Zadanie 11
Używając programu vi
:
- stwórz plik o nazwie
moj_plik
, - dodaj do niego 10 linijek tekstu,
- zapisz plik,
- przejdź do 3. linii,
- usuń ją,
- znajdź wszystkie wystąpienia danego słowa,
- zastąp wszystkie wystąpienia danego słowa na inne,
- zapisz i wyjdź z edytora.
Zadania domowe
Poćwicz pracę z terminalem oraz edytorem vi
, również łącząc się z poza uczelni.
Sprawna praca z tymi narzędziami będzie niezbędna na kolejnych zajęciach.