Основные команды ос unix
Алексеев Игорь Геннадиевич,
Бранцевич Петр Юльянович
“ОПЕРАЦИОННЫЕ СИСТЕМЫ и СИСТЕМНОЕ ПРОГРАММИРОВАНИЕ”
Часть 1
учебно-методическое пособие для студентов специальности
«Программное обеспечение информационных технологий»
Минск 2009
УДК 004.04 (075.8)
ББК 32.973 я 73
А47
Рецензент:
А47Алексеев И.Г. Учебно-методическое пособие Операционные системы и системное программирование: для студ. спец. «Программное обеспечение информационных технологий»/И.Г Алексеев, П.Ю. Бранцевич – Мн.: БГУИР, 2009. – 73 с.
ISBN 985-444-№
В пособии рассмотрены основные команды операционной системы UNIX, предназначенные для работы с файлами и каталогами, а также для создания процессов и организации взаимодействия между ними. Даны структуры лабораторных работ по курсу «ОСиСП»
УДК 004.04 (075.8)
ББК 32.973 я 73
А47
ISBN 985-444-387-6 © Алексеев И.Г, Бранцевич П.Ю 2009
© БГУИР, 2009
СОДЕРЖАНИЕ
1. ОСНОВНЫЕ Команды ОС UNIX......................................................... 4
2. Лабораторные работы...................................................................... 7
Лабораторная работа №1 Работа в ОС UNIX/Linux,
интерпретатор BASH .............................................................................................. 7
Лабораторная работа № 2 Работа с файлами и каталогами ОС UNIX.... 12
Лабораторная работа № 3 Процессы в ОС UNIX/Linux .......................... 17
Лабораторная работа № 4 Использование сигналов в ОС UNIX/Linux ….. 21
Лабораторная работа № 5 Использование каналов в ОС UNIX/Linux …… 26
Лабораторная работа № 6 Потоки в ОС UNIX/Linux ……………………… 33
Лабораторная работа № 7 Семафоры в ОС UNIX/Linux …………………… 36
Лабораторная работа № 8 Использование общей памяти в
ОС UNIX/Linux ………………………………………………………………… 39
Литература................................................................................................. 42
ОСНОВНЫЕ КОМАНДЫ ОС UNIX
Операционная система ОС Linux создана на основе ОС UNIX и во многом имеет схожую структуру и систему команд. Пользователь может работать в текстовом режиме с помощью командной строки, или с использованием графического интерфейса X Window и одного из менеджеров рабочего стола (например, KDE или GNOME). Причем, одновременно в системе могут работать 7 пользователей (6- в текстовом режиме консоли и 1 – в графическом режиме), переключение между пользователями осуществляется по нажатию клавиш:
.
В табл. 1 приведены основные команды системы
Таблица 1
Команда | Аргументы/ключи | Пример | Описание |
dir | каталог | dir dir /home | Выводит на консоль содержимое каталога |
ls | -all и другие (см. man) | ls -all | Выводит на консоль содержимое каталога |
ps | -a -x и другие (см. man) | ps -a | Выводит на консоль список процессов |
mkdir | имя каталога | mkdir stud11 | Создает каталог |
rmdir | имя каталога | rmdir stud11 | Удаляет каталог |
rm | файл | rm myfile1 | Удаляет файл |
mv | файл новое имя | mv myfile1 myf1 | Переименование файла |
cat | файл | cat 1.txt | Вывод файла на консоль |
cd | имя каталога | cd home | Переход по каталогам |
grep | (см. man) | grep "^a" "words.txt" | Поиск строки в файле |
kill | pid процесса | kill 12045 | Уничтожает процесс |
top | Выводит на консоль список процессов | ||
htop | Выводит на консоль полный список запущенных процессов | ||
su | Переход в режим root | ||
chmod | права доступа файл | chmod 777 1.txt | Изменение прав доступа к файлам |
mount | устройство каталог | mount /dev/cdrom /MyCD | Монтирование устройств |
dd | if=файл of=файл bs=n count=n | dd if=/dev/hda1 of=/F.bin bs=512 count=1 | Копирование побайтное |
ln | файл1 файл2 -l | ln файл1 файл2 ln –l файл1 файл2 | Создать жёсткую или символическую ссылку на файл |
uname | -a | uname –a | Информация о системе |
find | dir файл | find /home –name a1.txt | Поиск файлов |
man | man fgetc | Справка по системе | |
info | info fgetc | Справка по системе |
Linux и Windows используют различные файловые системы для хранения и организации доступа к информации на дисках. В Linux используются файловые системы- Ext2/Ext3, RaiserFS, FFS и другие. Все файловые системы имеют поддержку журналирования. Журналируемая файловая система сначала записывает изменения, которые она будет проводить в отдельную часть файловой системы (журнал) и только потом вносит необходимые изменения в остальную часть файловой системы. После удачного выполнения всех транзакций, записи удаляются из журнала. Это обеспечивает лучшее сохранение целостности системы и уменьшает вероятность потери данных. Следует отметить, что Linux поддерживает доступ к Windows-разделам.
Файловая система Linux имеет лишь один корневой каталог, который обозначается косой чертой ( / ). В файловой структуре Linux нет дисков A, B, C, D …., а есть только каталоги. В Linux различаются прописные и строчные буквы в командах, именах файлов и каталогов. В Windows у каждого файла существует лишь одно имя, в Linux их может быть много. Это – «жесткие» ссылки, которые указывают непосредственно на индексный дескриптор файла. Жесткая ссылка – это один из принципов организации файловой системы Linux.
Структура каталогов ОС Linux представлена в табл. 1. Есть также несколько полезных сокращений для имен каталогов:
- Одиночная точка (.) обозначает текущий рабочий каталог.
- Две точки (..) обозначают родительский каталог текущего рабочего.
- Тильда (~) обозначает домашний каталог пользователя (обычно это каталог, который является текущим рабочим при запуске Bash).
Таблица 1
/ | Корневой каталог |
/bin | Содержит исполняемые файлы самых необходимых для работы системы программ. Каталог /bin не содержит подкаталогов. |
/boot | Здесь находятся само ядро системы (файл vmlinuz-...) и файлы, необходимые для его загрузки. |
/dev | Каталог /dev содержит файлы устройств (драйверы). |
/etc | Это каталог конфигурационных файлов, т. е. файлов, содержащих информацию о настройках системы (например, настройки программ). |
/home | Содержит домашние каталоги пользователей системы. |
/lib | Здесь находятся библиотеки (функции, необходимые многим программам). |
/media | Содержит подкаталоги, которые используются как точки монтирования для сменных устройств (CD-ROM'ов, floppy-дисков и др.) |
/mnt | Данный каталог (или его подкаталоги) может служить точкой монтирования для временно подключаемых файловых систем. |
/proc | Содержит файлы с информацией о выполняющихся в системе процессах. |
/root | Это домашний каталог администратора системы. |
/sbin | Содержит исполняемые программы, как и каталог /bin. Однако использовать программы, находящиеся в этом каталоге может только администратор системы (root). |
/tmp | Каталог для временных файлов, хранящих промежуточные данные, необходимых для работы тех или иных программ, и удаляющиеся после завершения работы программ. |
/usr | Каталог для большинства программ, которые не имеют значения для загрузки системы. Структура этого каталога фактически дублирует структуру корневого каталога. |
/var | Содержит данные, которые были получены в процессе работы одних программ и должны быть переданы другим, и файлы журналов со сведениями о работе системы. |
ЛАБОРАТОРНЫЕ РАБОТЫ