
- •Теоретичні відомості:
- •Історія створення та статус Linux
- •Вхід та вихід з системи
- •Деякі прості команди
- •Файлові системи та каталоги
- •Файли та шляхи
- •Звичайні файли
- •Каталоги
- •Каталоги та фізичні диски
- •Посилання (зв”язки)
- •Спеціальні файли
- •Права доступу до файлів
- •Стандартні каталоги Linux
- •Хід роботи та індивідуальні завдання
- •Лабораторна робота №2
- •Теоретичні відомості
- •Отримання списку файлів
- •Організація файлів
- •Копіювання файлів
- •Переміщення та перейменування файлів
- •Видалення файлів та каталогів
- •Перегляд вмісту файлів
- •Пошук файлів
- •Сортування текстових файлів
- •Переспрямування вводу та виводу
- •Хід роботи та індивідуальні завдання
- •Лабораторна робота №3
- •Теоретичні відомості:
- •Налаштування робочого середовища
- •Завдання назв файлів
- •Передавання даних між процесами з використанням каналів (pipes)
- •Використання змінних оточення
- •Підстановка результата виконання команди
- •Групи команд та породжені оболонки
- •Редагування команд оболонки та використання псевдонімів
- •Робота з командними скріптами оболонки
- •Використання у програмах спеціальних символів
- •Використання команд керування процесом виконання
- •Хід роботи
- •Лабораторна робота №4
- •Теоретичні відомості:
- •Формування розділів жорсткого диску
- •Завантаження та ініціалізація ядра
- •Хід роботи
- •Лабораторна робота №5
- •Теоретичні відомості:
- •Визначення прав доступу до файлів
- •Робота з користувачами системи
- •Виконання окремих команд від імені адміністратора
- •Хід роботи
- •Лабораторна робота №6
- •Використання утіліти nmblookup
- •Доступ до ресурсів з використинням smbclient
- •Монтування та демонтування каталогів спільного використання Windows
- •Графічні оболонки для роботи з Samba
- •Хід роботи
Посилання (зв”язки)
Посилання не є справжніми файлами. Їм відповідають записи в каталогах, що вказують на один і той же індекс. В таблиці індексів зберігається інформація про те, скільки посилань асоційовано з файлом. Файл можна знищити тільки, коли на нього не буде посилань. Посилання не можуть вказувати на файли на іншому диску.
Linux має посилання і іншого типу, т. зв. символічні посилання (symbolic link) Для такого просилання відповідний запис каталога містить індекс файлу, в якому розміщена інформація про шлях до іншого файла, який може знаходитися у довільному місці логічної файлової системи Linux. Якщо знищується файл, то знищуються і всі символічні посилиння на нього.
Для відображення інформації про посилання можна скористатися командою ls –l
При цьому у списку файлів біжучого каталогу буде відображатися, що даний файл є посиланням, наприклад:
lrwxrwxrwx 1 root root 4 Jan 18 16:27 Info->info/
Ознакою того, що даний файл є посиланням є символ “l” на початку рядка
Спеціальні файли
Всі фізичні пристрої, приєднані до Linux – диски, термінали, прінтери – подані файлами. Майже усім зовнішнім пристроям відповідають файли у каталозі /dev. Наприклад, системній консолі відповідає файл /dev/console, а терміналу може відповідати файл /dev/tty01.
Прінтери та термінали називають символьними пристроями, так як обмін інформацією з комп”ютера з ними відбувається посимвольно. На відміну від символьних пристроїв, обмін даними з дисками відбувається цілими блоками, кожен з яких має адрес, поданий відповідними номерами дорожки та сектору. На диск неможливо записати чи прочитати окремий символ. Тому диск є блочним пристроєм.
Для зручності в Linux робота з символьними та блочними пристроями відбувається з точки зору користувача однаково. Як для символьних, так і для блочних пристроїв створюється логічний пристрій символьного типу.
Ще одним типом пристрою є іменований канал (named pipe). Фактично він є буфером FIFO (first in — first out). Такий буфер є звичайним файлом. При записі його розмір збільшується, а при зчитуванні – зменшується. Такі файли використовують для того, декілька одночасно працюючих програм посилали інформацію одна одній. Наприклад, команда роздруку файлів lp визначає параметри друку шляхом запису в іменований канал інформації для системного процеса lpshed який керує друкуванням.
Корисним є також спеціальний пристрій /dev/null (кошик для сміття). Вивід даних у цей файл ігнорується. Наприклад, якщо користувача не цікавлять діагносимчні повідомлення, які зазвичай виводяться в стандартний потік помилок, він може переспрямувати вивід у кошик для сміття:
ls -la > /dev/null
Права доступу до файлів
Права доступу до файлу або каталогу в Linux – це щось більше ніж просто права доступу на читання або запуск програми – вони визначають також і тип файла і то, яким чином буде виконуватися процес, що відповідає файлу.
Права доступу для даного файлу можна дізнатися, якщо виконати команду ls –l . Параметр -l вказує команді ls, що списоу файлів біжучого каталога треба видати у розширеному форматі. Результат виконання команди може виглядати, наприклад, так:
drwx------ 2 sglines doc 512 Jan 1 13:44 Mail
drwx------ 5 sglines doc 1024 Jan 17 08:22 News
-rw------- 1 sglines doc 1268 Dee 7 15:01 biblio
drwx------ 2 sglines doc 512 Dee 15 21:28 bin
-rw------- 1 sglines doc 44787 Oct 20 06:59 books
-rw------- 1 sglines doc 23801 Dee 14 22:50 bots.msg
-rw-r----- 1 sglines doc 105990 Dee 27 21:24 duckie.gif
У цьому виводі відображена практично уся інформація, яку можна отримати аналізуюсчи записи у каталозі та індекси файлів. У першій колонці наведені права доступу до файлів, другий стовпець вказує кфлькість посилань на файл або к-сть додаткових блоків каталогу, третя відображає власника файла (в Linux власники файлів можуть бути трьох типів: користувач, група користувачів, всі користувачі). Четвертий стовпець містить ім”я групи якій належить даний файл, п”ята – розмір файлу в байтах, шоста – час та дату його створення, а сьома – назву файла.
Перший стовпець з правами доступу у свою чергу склавдається з чотирьох полів:
- rwx rwx rwx
Перше поле вказує на тип файла. Звичайний файл позначається (-), каталог – буквою d. Можливі значення цього поля такі:
Символ |
Значення |
- |
Звичайний файл |
b |
Файл, якому відповідає блочний пристрій |
c |
Файл, якому відповідає символьний пристрій |
d |
Каталог |
Три наступні поля відображають права доступу для файлу для читання, запису, виконання. Перше поле задає права користувача – власника файла, друге – права групи користувачів, третє – права усіх інших користувачів. Кожне з цих полів має по три символи. Наприклад, послідовність rwx у першому полі означає, що власник файла має права на читання, запис та виконання файла.
Зазвичай файл-програма виконується з правами доступу того користувача, який її запустив на виконання. Але, якщо встановлено спеціальний біт (User Id bit, біт користувача файла) то програма виконується з правами власника файла. Це означає, що програма буде мати такі ж права доступу до інших файлів, що й власник. Наприклад, якщо звичайний користувач запустить файл власником якого є адміністратор (root), то програма буде мати права доступу адміністратора при звертанні до всіх файлів системи, незважаючи на обмеження прав доступу звичайного користувача. Аналогічно діє і інший біт керування (group Id bit), тільки по відношенню до групи.
Дані про режим виконання файлу містять ще біт збереження задачі (sticky bit, біт прилипання). Цей біт вказує системі на необхідність зберегти копію програми, що виконується у пам”яті після її завершення. Включення цього біта вигідно при частому запуску програми, так як економить час на завантьаження файла у пам”ять при кожному запуску.
Завдання та зміна прав доступу виконується з використанням кооманди chmod. Ця команда застосовується у двох формах – абсолютній та відносній. Синтаксис абсолютної форми використовує завдання у восьмірковій формі кода прав доступу. Для отримання значення повного коду захисту файла необхідно додати базові складові чсастини подані у таблиці нижче
Код |
Режим доступу |
0001 |
Права на виконання для інших |
0002 |
Права на запис для інших |
0004 |
Права на читання для інших |
0010 |
Права на виконання для групи |
0020 |
Права на запис для группы |
0040 |
Права на читання для группы |
0100 |
Права на виконання для власника |
0200 |
Права на запис для власника |
0400 |
Права на читання для власника |
1000 |
Встановлено біт збереження задачі |
2000 |
Якщо файл виконувальний – то включено біт групи, у всіх інших випадках – повністю блокує доступ до файлу |
4000 |
Якщо файл виконувальний – то включено біт користувача |
Наприклад, для того, щоб дати права на читання, запис для власника файлу, на читання та запис групі, та жодних прав іншим користувачам, можна скористатися командою
chmod 660 file
де 660 – це сума відповідник складових кодів прав
При використанні команди chmod у відносній формі, необхідно задати такі параметри:
кому даються права
права даються вперше, додаються до існуючих, чи вилучаються
які нові права даються
Наприклад, команда chmod a=rwx file встановить заново права на читання, запис та виконання для усіх користувачів.
Параметри команди chmod, які використовуються у відносній формі наведені у таблиці нижче
Значення параметра |
Опис |
Група користувачів |
|
a |
Всі користувачі: даний коритстувач, його група, та усі інші |
g |
Група даного користувача |
o |
Всі користувачі, що не входять у групу даного користувача |
u |
Тільки даний користувач |
Операція |
|
+ |
Додати права до вже існуючих |
- |
Вилучити права |
= |
Надати вказані права замість існуючих |
Права доступу до файлу |
|
x |
Право на виконання |
r |
Право на читання |
w |
Право на запис |
s |
Встановлено біт користувача |
t |
Встановлено біт збереження задачі |
Якщо для файла біт користувача встановлено, команда ls –l виведе для нього такий рядок:
-rws------ 1 sglines 3136 Jan 17 15:42 х
Якщо додати біт групи, цей вивід буде такий:
-rws--s--- 1 sglines 3136 Jan 17 15:42 х
Якщо додати біт збереження задачі, отримаємо наступний запис:
-rws--srwt 1 sglines 3136 Jan 17 15:42 х
Літери s та t вказують на стан біта користувача та біта збереження задачі