Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Metodicheskie ukazaniya UNIX 2014

.pdf
Скачиваний:
9
Добавлен:
11.02.2016
Размер:
414.29 Кб
Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ОДЕСЬКИЙ НАЦІОНАЛЬНИЙ МОРСЬКИЙ УНІВЕРСИТЕТ КАФЕДРА «ТЕХНІЧНА КІБЕРНЕТИКА»

Основи операційної системи UNIX

Методичні вказівки і завдання до лабораторних робіт з дисципліни «Операційна система Unix»

для напряму підготовки 6.050101 «Комп’ютері науки»

Одеса – 2014

Методичні вказівки і завдання до лабораторних робіт відповідають програмі дисципліни «Операційна система Unix» для напряму підготовки 6.050101 «Комп’ютері науки»

Методичні вказівки і завдання до лабораторних робіт підготовлені старшими викладачами кафедри «Технічна кібернетика» ОНМУ Тузовою І.А., Кутяковим Д.В., Рубльовим І.С.

Методичні вказівки і завдання до лабораторних робіт схвалено на засіданні кафедри «Технічна кібернетика» ОНМУ «___» _______ 2014 року (протокол № 3)

2

ЗМІСТ

ВСТУП _________________________________________________________________ 4 Розділ 1. Операційна система UNIX (LINUX) _________________________________ 5

Поняття файлової системи. Команди операційної системи UNIX (LINUX) _________ 5

1.1.Довідкова інформація________________________________________________ 5

1.1.1Структура файлової системи ______________________________________ 6

1.1.2Файл __________________________________________________________ 7

1.1.3Типи файлів ____________________________________________________ 7

1.1.4Імена файлів і каталогів __________________________________________ 7

1.1.5Основні типи файлів _____________________________________________ 8

1.1.6Основні команди, використовувані при навігації по файловій системі____ 8

1.1.7Посилання_____________________________________________________ 11

1.1.8Розподіл прав доступу в Linux. Читання. Запис. Виконання. Призначення прав доступу. Команди chmod, chown, chgrp___________________________________ 11

1.1.9 Команди довідкової інформації _____________________________________ 13

1.2 Завдання до лабораторних робіт по темі «Команди роботи з файлової системою» _________________________________________________________________ 14

Завдання 1 _________________________________________________________ 14 Завдання 2 _________________________________________________________ 14 Завдання 3 _________________________________________________________ 15 Завдання 4 _________________________________________________________ 15 Завдання 5 _________________________________________________________ 15 Завдання 6 _________________________________________________________ 16 Завдання 7 _________________________________________________________ 16 Завдання 8 _________________________________________________________ 17 Завдання 9 _________________________________________________________ 17

Розділ 2 Програмування під LINUX ________________________________________ 20

2.1Довідкова інформація _______________________________________________ 20 2.1.1 Компілятор ______________________________________________________ 20 2.1.2 Текстовий редактор _______________________________________________ 20

2.2Завдання до лабораторних робіт по темі «Програмування під LINUX» ______ 21

Завдання 1 _________________________________________________________ 21 Завдання 2 _________________________________________________________ 21 Завдання 3 _________________________________________________________ 23 Завдання 4 _________________________________________________________ 24

ДОДАТОК______________________________________________________________ 26 ЛІТЕРАТУРА___________________________________________________________ 27

3

ВСТУП

Зміни в законодавстві України, пов'язані з її інтеграцією в світову економіку, вимагають дотримання законів в галузі авторського права. Інтернетспільнота розробників вільного програмного забезпечення надає для безкоштовного використання широкий спектр високоякісних операційних систем і програмних продуктів.

У даних методичних вказівках стисло описані можливості операційної системи UNIX (LINUX). Операційна система UNIX - це набір програм, який керує комп'ютером, здійснює зв'язок між користувачем і комп'ютером і забезпечує користувача інструментальними засобами, щоб допомогти виконати роботу.

Дані методичні вказівки призначені для студентів напряму підготовки 6.050101 «Комп’ютері науки».

В них наведено коротка довідкова інформація та набори завдань для отримання практичних навичок роботи на персональному комп'ютері при використанні команд ОС UNIX (LINUX).

Методичні вказівки містять 2 розділу.

-У першому розділі коротко викладені відомості про операційну систему UNIX (LINUX), файлову систему, команди операційної системи, що дозволяють працювати з каталогами та файлами.

-У другому розділі містяться короткі відомості про програмування

під UINUX.

Набори завдань кожного розділу можуть розширюватися на розсуд викладачів додатковими завданнями для успішних студентів.

Розділ 1. Операційна система UNIX (LINUX)

Поняття файлової системи. Команди операційної системи UNIX (LINUX)

1.1. Довідкова інформація

Операційна система UNIX - це набір програм, який керує комп'ютером, здійснює зв'язок між користувачем і комп'ютером і забезпечує користувача інструментальними засобами Розроблена, щоб забезпечити легкість, ефективність і гнучкість програмного забезпечення, система UNIX має кілька корисних функцій:

основна мета системи - це виконувати широкий спектр завдань і

програм;

інтерактивне оточення, яке дозволяє вам зв'язуватися безпосередньо

зкомп'ютером і негайно відповіді на ваші запити та повідомлення;

оточення для багатьох користувачів, яке дозволяє вам розділяти ресурси комп'ютера з іншими користувачами без зменшення продуктивності. Цей метод називається поділом часу. Система UNIX взаємодіє з користувачами по черзі, але так швидко, що здається, що взаємодіє з усіма користувачами одночасно;

оточення що є обслуговує багато задач, яке дозволяє вам виконувати більш одного завдання в одне і теж час.

Система UNIX має 4 основні компоненти:

ядро - це програма, яка утворює ядро операційної системи; вона координує внутрішні функції комп'ютера (такі як розміщення системних ресурсів). Ядро працює невидимо для вас;

shell - це програма, яка здійснює зв'язок між вами і ядром, інтерпретуючи і виконуючи ваші команди. Так як вона читає ваш введення і посилає вам повідомлення, то описується як інтерактивна;

commands - це імена програм, які комп'ютер повинен виконати. Пакети програм називаються інструментальними засобами. Система UNIX забезпечує інструментальними засобами для таких завдань як створення і редагування тексту, написання програм, розвиток інструментарію програмного забезпечення, обмін інформацією з іншими за допомогою комп'ютера;

file system - файлова система.

Файлова система - це концептуальне поняття OS UNIX, яке визначає логічну організацію простору зовнішньої пам'яті. Вона може бути утворена на будь-якому фізичному або віртуальному влаштуванні зовнішньої пам'яті з прямим доступом, наприклад, жорсткому диску, логічному розділі жорсткого диска, гнучкому диску, змінному пакеті дисків. Поділ простору зовнішньої пам'яті на фізичні або віртуальні носії даних в OS UNIX відбивається логічним поділом зовнішньої пам'яті на файлові системи.

5

Файлова система OS UNIX забезпечує основні функції:

розбиття простору фізичної пам'яті зовнішнього пристрою на пойменовані ділянки даних - файли,

гарантує захист даних від апаратних збоїв і несанкціонованого

доступу,

підтримує єдиний інтерфейс доступу до Ваших даних,

мінімізує час звернення до даних.

1.1.1 Структура файлової системи

Структура файлової системи має двоїсту інтерпретацію:

внутрішня структура файлової системи;

зовнішнє подання файлової системи.

 

Внутрішня структура файлової системи

 

0

1

2

S

N M

Блок

Суперблок

Індексний файл

Область даних

Область

завантаження

(містить

(містить індексні

(містить

своппинга

(містить

заголовок

дескриптори

послідовність

(Підкачка

програму

файлової

файлів, що

блоків,

сторінок)

початкового

системи, який

характеризують

використовуваних

 

завантаження

включає

їх основні

для зберігання і

 

OS UNIX)

інформацію про її

атрибути)

непрямої адресації

 

 

розміри і

 

даних)

 

 

характеристиках)

 

 

 

Зовнішнє подання файлової системи має ієрархічну структуру з пойменованими вузлами, які позначають або файли даних, або каталоги файлів, або спеціальні файли доступу до пристроїв. Зовнішній інтерфейс файлової системою забезпечений відповідними командами і системними викликами ядра.

Файлова система Linux, на відміну від операційних систем сімейства Windows не розділене по томах (дискам, пристроїв), а має єдину деревоподібну структуру, в основі якої лежить кореневої каталог.

Кореневої каталог - це рівень файлової системи, вище якого по дереву каталогів піднятися неможливо. В Linux кореневої каталог позначається як / (саме / - слеш, а не \ - зворотний слеш). Система дозволяє встановлювати багато кореневих каталогів. Так, наприклад, для деякого користувача ftp/home буде кореневим каталогом і при зверненні до клієнта ftp на зміну каталогу на кореневої користувач буде потрапляти в /home.

Для підключення будь-якого пристрою до файлової системи використовується так звана точка монтування - каталог, всі вкладені рівні якого є файлової системою на пристрої-носії. Наприклад, при монтуванні дискети зазвичай використовується каталог /media/floppy.

6

Є у файлової системи Linux і ще одна особливість. Кожному користувачеві в ній виділяється домашній каталог - спеціальний каталог, необхідний для зберігання користувачем своїх особистих даних. При вході користувача в систему, він відразу виявляється в своєму домашньому каталозі. Зазвичай права доступу до домашнього каталогу користувача виставлені таким чином, що доступ до каталогу заборонений усім крім власника та адміністратора.

1.1.2 Файл

Файл (англ. File) - блок інформації на накопичувачі комп'ютера, що має певне логічне уявлення (починаючи від простої послідовності бітів або байтів і закінчуючи об'єктом складної СУБД), відповідні операції читання-запису і, як правило, фіксоване ім'я (символьне або числове ), що дозволяє отримати доступ до цього файлу і відрізнити його від інших файлів.

Файл в Linux - будь-який об'єкт - від текстового документа до пристрою. А технології розмежування прав доступу до файлів є основою концепції безпеки

1.1.3 Типи файлів

Звичайні файли, поділяються на текстові та двійкові. Текстові файли складаються з рядків символів, представлених в ASCII-коді. Двійкові файли не використовують ASCII-коди, вони часто мають складну внутрішню структуру, наприклад, об'єктний код програми або архівний файл

Спеціальні файли - це файли, асоційовані з пристроями введеннявиведення, які дозволяють користувачеві виконувати операції введеннявиведення, використовуючи звичайні команди записи в файл або читання з файлу.

Файли-каталоги. Каталог - це, з одного боку, група файлів, об'єднаних користувачем виходячи з деяких міркувань, а з іншого боку - це файл, що містить системну інформацію про групу файлів, його складових. В каталозі міститься список файлів, що входять до нього, і встановлюється відповідність між файлами та їх характеристиками.

1.1.4 Імена файлів і каталогів

ВLinux імена файлів і каталогів можуть бути довжиною не більше 256 символів, і можуть містити будь-які символи, крім "/".

Вфайлової системі Linux немає ніяких розпоряджень з приводу розширення: в імені файлу може бути будь-яку кількість точок (у тому числі і жодної), а після останньої крапки може бути будь-яку кількість символів.

7

1.1.5 Основні типи файлів

Основними типами файлів є: - простий файл;

d каталог; l посилання;

bблоковий пристрій;

cсимвольний пристрій.

1.1.6 Основні команди, використовувані при навігації по файловій системі

pwd - показує повне ім'я каталогу, в якому знаходиться користувач. [student@ns student] $ pwd

cd - змінює поточний каталог на вказаний.

cd без параметрів або з параметром ~ змінює поточний каталог на домашній.

cd з параметром .. змінює каталог на той, який знаходиться на один рівень вище по дереву каталогів.

[student @ ns student] $ cd primer [student @ ns primer] $ cd .. [student @ ns bin] $ cd ~

[student @ ns student] $ cd / bin

pushd, popd - ці команди працюють у зв'язці. Команда pushd змінює каталог на вказаний. pushd c параметром .. змінює каталог на той, який знаходиться на один рівень вище по дереву каталогів. Основна відмінність цієї команди від cd в тому, що вся історія зміни каталогів запам'ятовується в стек і потім може бути використана для швидкого зворотного навігації за допомогою команди popd.

[student @ ns student] $ pushd/var /var ~

[student @ ns var] $ popd

~

Команда ls виводить список файлів в поточному каталозі. Її синтаксис: ls [параметри] <ім'я каталогу>

[student @ ns lesson_2] $ ls –l

8

Список основних параметрів наведено в додатку. Якщо необхідно отримати більш повну інформацію про каталог, в команді можна задати складовою параметр

[student @ ns lesson_2] $ ls –lat

Основні команди, використовувані при роботі з каталогами це - rmdir і

mkdir.

Команда mkdir дозволяє створити каталог, rmdir дозволяє видалити каталог. Команда rmdir, без використання додаткових параметрів, може видаляти ТІЛЬКИ ПОРОЖНІ каталозі.

Синтаксис команд. mkdir <ім'я каталогу> rmdir <ім'я каталогу>

[student @ ns student] $ mkdir catalog [student @ ns student] $ rmdir catalog

Створити дві і більше директорій одночасно дозволить команда mkdir <ім'я каталогу> <ім'я каталога1> ... <ім'я каталогу n> [student @ ns student] $ mkdir catalog catalog1 catalog2

В поточному каталозі будуть створені три каталогу - catalog, catalog1, catalog2.

Для створення каталогу з підкаталогами використовується команда mkdir з ключем -р.

Синтаксис команди.

mkdir <ім'я каталогу> / <ім'я каталога1>

[student @ ns student] $ mkdir -p catalog / catalog1 / catalog2

В поточному каталозі буде створено дерево каталогів catalog, catalog1, catalog2.

Команда mv /dir1 /dir2 використовується для перейменування директорії.

Команда du виводить на екран розмір заданої директорії. Можна використовувати для визначення розміру файлів. її синтаксис

du [параметри] <ім'я каталогу>

[student @ ns lesson_2] $ du -sh / home / Mut @ NT /

Команда cp використається для копіювання файлів. Її синтаксис: cp [параметри] <ім'я файлу джерела> <ім'я каталогу приймача> [student @ ns primer_3] $ cp in_primer_3 ../primer_1/in_primer_1/

Параметр -R, дозволяє рекурсивно копіювати каталоги, т.е з усім їх вмістом.

9

[student @ ns primer_3] $ cp -R * ../primer_2

Команда touch дозволяє створювати порожні файли. Її синтаксис: touch <ім'я файлу>.

[student @ ns lesson_3] $ touch file

Якщо файл із заданим ім'ям існує в поточній директорії, команда touch оновить його час створення на поточне.

Команда cat > <ім'я файлу> дозволяє записати запроваджуваний на екран текст в зазначений файл

[student @ ns lesson_3] $ cat> file

CTRL/d

Команда cat <ім'я файлу> виводить вміст файлу на стандартний висновок (за замовчуванням - на екран).

[student @ ns lesson_3] $ cat file

Команда cat >> <ім'я файлу> дозволяє дописати запроваджуваний на екрані текст у вказаний файл після його останнього запису.

[student @ ns lesson_3] $ cat >> file

CTRL/d

Для того, щоб відредагувати текстовий файл, використовується редактор файлів.

синтаксис: nano <ім'я файлу>

[student @ ns lesson_3] $ nano catalog / file - перегляд та редагування

файлу

Комбінації клавіш текстового редактора nano приведені в Додатку 3

Команда more <ім'я файлу> - перегляд вмісту довгого текстового файлу по сторінках

[student @ ns lesson_3] $ more file

Команда rm використовується для видалення файлів. Її синтаксис: rm [параметри] <ім'я файла>

[student @ ns lesson_3] $ rm -iv ./file

Команда rm -r <файли та / або каталоги> (рекурсивне видалення) дозволяє видалити файли або каталоги і їх підкаталоги.

[student @ ns lesson_3] $ rm -r ./file

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]