Architektura komputerów i systemy operacyjne oraz administrowanie IT (AKIT) Laboratoria Konsola systemu Windows MS-DOS Początki powłoki tekstowej, jaką znamy obecnie, w systemach z rodziny Windows sięgają 1981 roku, kiedy to Microsoft odkupił prawa do QDOS (Quick and Dirty Operating System). Nieznana wtedy jeszcze prawie nikomu mała firma wprowadziła zmiany i ulepszenia w zakupionym systemie, po czym zaoferowała go użytkownikom jako MS-DOS podstawowy system operacyjny dla komputerów IBM PC. Przygotowany na komputery 16-bitowe MS-DOS, ciągle rozwijany i udoskonalany, zyskał wielką popularność na komputerach osobistych. Dziś DOS nie odgrywa prawie żadnej roli jako samodzielny system operacyjny. Jednak wiele z jego funkcji zostało wykorzystanych w późniejszych systemach Microsoftu, gdzie przez długi czas stanowił on moduł ładujący pozostałą 32-bitową część systemu (Windows 95, 98). W najnowszej serii systemów operacyjnych Microsoftu Windows NT (New Technology) DOS nie jest konieczny do działania oprogramowania. Szczątki MS-DOS-a funkcjonują jako konsola tekstowa, czyli interpreter poleceń cmd.exe, maszyna wirtualna command.com i konsola odzyskiwania systemu (dla Windows 2000/XP/2003). Wiersz poleceń Uruchomienie programu cmd lub dowolnej aplikacji pracującej w trybie MS-DOS skutkuje wywołaniem maszyny wirtualnej DOSa. Za cenę maksymalnej zgodności z dawnym systemem firmy Microsoft command.com jest pozbawiony większości dodatków wprowadzonych w cmd.exe, przykładowo nazwy plików/folderów musimy wpisywać w formacie 8.3 (8 liter nazwy pliku, 3 litery rozszerzenia). Interpreter poleceń wbudowany w systemie Windows pozwala na dostęp do powłoki systemu MS-DOS. Wczesne wersje systemu Windows i MS-DOS, nie są w stanie uruchomić się bez pliku cmd.exe lub command.com. Wiersz poleceń (zwany także konsolą) pozwala na wykonywanie większości czynności związanych z obsługą systemu bez konieczności posługiwania się interfejsem graficznym. Różnica pomiędzy command.com & cmd.exe Polecenie command.com otwiera okno maszyny wirtualnej DOS, realizowanej przez proces ntvdm.exe. Emulacja jest pełna: procesor przełącza się w tryb VM86, w pamięci rezerwowany jest obszar 1 MiB na potrzeby trybu rzeczywistego DOS, a w nim umieszczany jest lekko tylko zmodyfikowany kod systemu MS-DOS. Tak stworzona maszyna wirtualna może co prawda uruchamiać wszelkie aplikacje i nawet korzystać w pewnym zakresie z długich nazw plików, każda operacja jest jednak okupiona wielkim narzutem wydajnościowym wynikającym z emulacji DOSu. Z kolei cmd.exe otwiera okno 32-bitowej, tekstowej konsoli systemu Windows. Nie wolno zapominać, że Windows to nie tylko grafika, ale również bardzo rozbudowany system tekstowy. W Windows NT i pochodnych 32-bitowe aplikacje tekstowe nie mają nic wspólnego z DOSem i mogą oferować naprawdę rewelacyjną funkcjonalność za wyjątkiem grafiki. Dodatkowo nie ma tu mowy o jakiejkolwiek emulacji czy marnowaniu pamięci operacyjnej. Podsumowując: o command.com należy pamiętać tylko uruchamiając programy przeznaczone dla systemu DOS. Ewentualne prace polegające na wykorzystaniu tekstowej powłoki systemu (skrypty, uruchamianie programów 32-bitowych) należy rozpoczynać zawsze od uruchomienia cmd.exe. 1
Wiersz poleceń systemu Windows Wiersz poleceń (zwany także konsolą) pozwala na wykonywanie większości czynności związanych z obsługą systemu bez konieczności posługiwania się interfejsem graficznym. Dostęp do konsoli uzyskujemy za pomocą aplikacji Wiersz polecenia w menu Start lub poprzez wpisanie polecenia cmd w Start -> Uruchom. Istnieje także możliwość uruchomienia konsoli z uprawnieniami administratora (PPM myszy na Wiersz polecenia ). Szczegóły dotyczące sposobu uruchamiania konsoli zależą od wersji systemu. Zalety korzystania z wiersza poleceń: możliwość wykonywania pewnych operacji szybciej, efektywniej zamiast wielokrotnie powtarzać te same czynności myszką, automatyzacja pewnych czynności poprzez pisanie prostych skryptów (pliki wsadowe), gwarantuje lepsze poznanie systemu, pozwala na wykorzystanie wielu programów, które nie posiadają interfejsu graficznego (GUI), a są istotne w pracy z systemem, praca zdalna (np. pakiet PSTOOLS), komendy nie podlegają tak szybkim zmianom jak interfejsy graficzne, raportowanie/przesyłanie wyników pracy do pliku. Wybrane polecenia podstawowe operacje help wyświetlenie info. o poleceniach oraz ich opcjach (np. help [polecenie], [polecenie] /?) cls czyszczenie ekranu color zmiana koloru tła i czcionki (np. color f0 i color f, ustawienia domyślne = color) dir lub tree wyświetlanie zawartości danego katalogu (atrybut /f), cd zmiana lokalizacji (np. cd [nazwa lub ścieżka], cd.., cd /), literadysku: przełączanie między dyskami (np. e:) md lub mkdir copy del rd lub rmdir rename lub ren copy con format defrag scandisk lub chkdsk tworzenie katalogu, kopiowanie zbioru bądź grupy zbiorów (np. copy [co kopiujemy] [dokąd kopiujemy]), także łączenie plików w jeden (np. 1.txt+2.txt 3.txt), usuwanie zbioru lub grupy zbiorów z dysku (np. del e:\*.txt), UWAGA usuwanie jest trwałe (plik nie jest przenoszony do kosza), usuwanie pustego katalogu z dysku, zmiana nazwy zbioru (np. ren [stara nazwa] [nowa nazwa]), tworzenie zbioru tekstowego/ciągu znaków (np. copy con plik.txt), po wciśnięciu klawisza ENTER wprowadzamy tekst, kończymy F6 lub Ctrl-Z przygotowanie dysku do zapisu, komenda format niszczy zawartość dysku (np. format a:) program ten porządkuje ułożenie zbiorów na dysku, tzn. usuwa fragmentaryzację zbiorów bada i usuwa ewentualne błędy na dysku (np. chkdsk e: /x /f /r) 2
Informacje dodatkowe i podpowiedzi Szybkie wprowadzanie poleceń, ścieżek i nazw: TAB (+SHIFT) wybieranie kolejnych pozycji w katalogach, [ ] oraz [ ] wprowadzanie użytych wcześniej sekwencji znaków. Atrybuty poleceń: [polecenie] /[opcja], np.: tree wyświetlenie struktury podkatalogów, tree /f wyświetlanie również plików. Informacje na ten temat: help [polecenie] lub [polecenie] /? np. help dir lub dir /? Zbiory i znaki specjalne: przy posługiwaniu się poleceniami możemy stosować znaki specjalne (ang. wildcard's) tzn.:? zastępuje jeden znak, * zastępuje wiele znaków. Przykłady: *.txt wszystkie zbiory z rozszerzeniem txt (książka.txt, arch.txt), raport.* wszystkie zbiory o nazwie raport i dowolnym rozszerzeniu (raport.txt, raport.doc), m*.* zbiory o nazwie rozpoczynającej się od litery m i dowolnym rozszerzeniu (march.xls),???.* zbiory mające trzyliterową nazwę i dowolne rozszerzenie (car.bmp, win.ini). Rodzaje ścieżek: relatywne położenie pliku/folderu określa się względem miejsca, w którym obecnie się znajdujemy, np. c:\windows> cd system\system32, bezwzględne położenie pliku/folderu podajemy za pomocą pełnej ścieżki dostępu, np. c:\windows> cd c:\windows\system\system32. Długie nazwy plików/folderów: Linia poleceń spację interpretuje jako separator parametrów, dlatego pliki i katalogi, które zawierają w nazwie spację należy zapisywać w cudzysłowie, np.: cd Program files \ Microsoft Office cd Program files\microsoft Office Strumień danych: przekierowanie do pliku przekazanie do innego polecenia/programu istnieje możliwość przekierowania informacji wyświetlanej w oknie konsoli do pliku tekstowego, wykorzystujemy do tego celu operator > lub >> (ten drugi powoduje dopisywanie do istniejącego już pliku), np. dir *.* > list.txt, dane będące wynikiem działania jednego polecenia możemy przekazać potokowo do innego polecenia za pomocą znaku, proces taki dojdzie do skutku jeżeli drugie polecenie jest przygotowane do przyjmowania danych, np. type tekst.txt find fragment tekstu. 3
Inne polecenia i programy attrib deltree find, findstr path print type more prompt pause echo xcopy fc, comp sort ping, tracert pathping net ipconfig nslookup wyświetla lub zmienia atrybuty plików i folderów (np. pliki ukryte lub tylko do odczytu), usuwanie drzewa katalogów z dysku (w nowszych systemach zastąpione przez rd lub rmdir), wyszukiwanie fragmentów tekstu w pliku lub w plikach, wyświetlenie lub ustawienie ścieżki dostępu do plików wykonywalnych (np. path [ścieżka1]; [ścieżka2];...; [ścieżka n];), drukowanie pliku tekstowego, wyświetla zawartość jednego lub więcej plików tekstowych, wyświetla dane po jednym ekranie na raz (np. more plik.txt), zmiana znaku zgłoszenia, wstrzymanie wykonywania pliku wsadowego i wyświetlenie komunikatu, włączenie lub wyłączenie wyświetlania poleceń lub wyświetlenie komunikatu (echo [on off], echo [komunikat], np. echo włóż dyskietkę), kopiuje pliki i drzewa katalogów, porównywanie zawartości dwóch plików, sortowanie zawartości pliku tekstowego, diagnostyka połączeń sieciowych, diagnostyka połączeń sieciowych, zarządzanie usługami sieciowymi i administrowanie kontami użytkowników, konfiguracja kart sieciowych, narzędzie do rozwiązywania nazw DNS, np. nslookup ue.wroc.pl. Dodatkowe polecenia dla systemu Windows XP shutdown fsutil netstat getmac openfiles systeminfo tasklist taskkill zamyka system, także zdalnie, narzędzie do konfiguracji systemu NTFS, np. wymuszenie gruntownych testów dysku c: podczas kolejnego uruchomienia systemu poprzez oznaczenie dysku jako uszkodzonego (np. fsutil dirty query c:), informacja o nawiązanych połączeniach sieciowych, wyświetla adresy fizyczne kart sieciowych, wyświetlanie i zarządzanie otwartymi plikami, dotyczy głównie udostępnionych zasobów, które są aktualnie używane w sieci, wyświetla podstawowe informacje o systemie, tekstowy odpowiednik menadżera zadań, zamykanie procesów. 4
Zadania do wykonania Zadanie 1 Sprawdź jak działają wyżej opisane polecenia, zwłaszcza Wybrane polecenia podstawowe operacje (poza trzema ostatnimi ), jakie przyjmują atrybuty i opcje. Zadanie 2 Utwórz w katalogu C:\Work dwa podkatalogi: PUBLIC i PRIVATE. W katalogu PUBLIC utwórz dwa podkatalogi PROGRAMY i DANE. W katalogu PRIVATE utwórz podkatalog DOKUMENT. W katalogu DOKUMENT utwórz zbiór tekstowy "zyciorys.txt", wpisz do niego swoje imię, nazwisko, datę urodzenia. Skopiuj zbiór zyciorys.txt do katalogu DANE. Zmień nazwę zbioru życiorys.txt w katalogu DANE na swoje nazwisko, czyli np. na kowalski.txt. C:\ WORK\ PUBLIC\ PROGRAMY\ DANE\ kowalski.txt PRIVATE\ DOKUMENT\ zyciorys.txt Zadanie 3 Z poziomu katalogu C:\WORK utwórz katalog LAB, a w nim podkatalogi LAB2A i LAB3A. W katalogu LAB3A utwórz podkatalog LAB4. W katalogu LAB2A utwórz pliki: plik1.txt i wpisz do niego swoje imię i nazwisko, plik2.txt i wpisz do niego swój numer indeksu. Umieść dane z plików plik1.txt i plik2.txt w pliku mojedane.txt. Wyświetl zawartość pliku mojedane.txt.. Skopiuj plik mojedane.txt do katalogu LAB3A zmieniając jego nazwę na plikscal.txt. Zmień nazwę pliku mojedane.txt na mojedane.lst. Ustaw atrybut "tylko do odczytu" dla pliku plikscal.txt. Ustaw atrybut "ukryty" dla katalogu LAB4. Ustaw atrybuty "tylko do odczytu" i "ukryty" dla pliku plik2.txt. Utwórz katalog C:\WORK\LABOR. Przenieś całą strukturę z katalogu LAB do katalogu LABOR pamiętając o plikach i katalogach ukrytych oraz o pustym katalogu. Umieść w pliku infolab1.txt informację o całej strukturze katalogu C:\WORK oraz w pliku infolab2.txt informację o atrybutach tej struktury. Usuń drzewo katalogu C:\WORK\LAB. C:\ WORK\ LAB\ LAB2A\ plik1.txt plik2.txt mojedane.txt LAB3A\ LAB4 Zadanie 4 Do wykonania ostatniego zadania niezbędne jest ukończenie trzech pierwszych. Zadanie 4 należy przesłać pod koniec zajęć. Szczegóły zostaną podane podczas zajęć. 5