
- •Лабораторна робота № 10 основи роботи з операційною системою unix
- •1 Мета роботи
- •2 Основні положення
- •2.1 Загальна характеристика ос сімейства unix
- •2.2 Архітектура unix
- •2.3 Функціонування системи unix
- •2.3.1 Ядро системи
- •2.3.2 Початок і завершення сеансу робіт
- •3 Контрольні запитання
- •4 Домашнє завдання
- •5 Лабораторне завдання
- •6 Зміст протоколу
- •2.1 Основні характеристики FreeBsd
- •2.2 Історична довідка
- •2.3 Мета проекту FreeBsd
- •2.4 Вимоги до системи при інсталяції FreeBsd
- •3 Контрольні запитання
- •4 Домашнє завдання
- •5 Лабораторне завдання
- •2.1 Поняття процесу
- •2.2 Компоненти процесу
- •2.2.1 Ідентифікатор процесу
- •2.2.2 Ідентифікатор батьківського процесу
- •2.2.3 Ідентифікатор користувача і групи
- •2.3 Стан процесу, "заблукалі" процеси
- •2.4 Управління процесами, команди kill та nice
- •2.4.1 Дворівнева схема керування процесами
- •2.4.2 Команда kill
- •2.4.3 Команда nice
- •2.5 Поточний контроль процесів, команди ps та top
- •2.6 Захист фонових процесів, команда nohup
- •3 Ключові запитання
- •4 Домашнє завдання
- •5 Лабораторне завдання
- •6 Зміст протоколу
- •7 Список рекомендованої літератури
- •Лабораторна робота № 13 права доступу в операційній системі unix
- •1 Мета роботи
- •2 Основні положення
- •2.1 Поняття прав доступу користувача
- •2.2 Основні біти доступу (читання/запис/виконання)
- •2.3 Додаткові біти доступу
- •2.4 Сполучення бітів доступу
- •3 Контрольні запитання
- •4 Домашнє завдання
- •5 Лабораторне завдання
- •2.1 Основні поняття клієнт-серверної архітектури
- •2.2 Основи мережного програмування
- •2.3 Компіляція
- •3 Контрольні запитання
- •4 Домашнє завдання
- •5 Лабораторне завдання
- •6 Зміст протоколу
- •7 Список рекомендованої літератури
- •Основні комбінації клавіш і команди
- •Закінчення таблиці а2
- •Закінчення таблиці а4
- •Приклади програм для реалізації клієнт-серверної архітектури
- •Перевірка буфера
- •Зчитування запису
- •Лістинг 2 Server-сервер, котрий демонструє застосування функції readvrev
7 Список рекомендованої літератури
7.1 Робачевский А. М. Операционная система UNIX. — СПб.: БХВ-Петербург, 2002.
7.2 Ивановский С. Операционная система UNIX. — М.: Познавательная книга плюс, 2000.
7.3 Дегтярев Е. К. Введение в UNIX. — М.: МП "Память", 1991.
7.4 Снейдер Й. Эффективное программирование ТСР/IP. Библиотека программиста — СПб: Питер, 2001. – 320 с.: ил, с. 70.
7.5 Nagle, J. 1984. “Congestion Control in IP/TCP Internetworks”, RFC 896 (Jan.).
7.6 http://www.freebsd.org.ru
7.7 http://www.anriintern.com/computer/freebsd/
7.8 http://www.linuxrsp.ru/freebsd/
ДОДАТОК А
Основні комбінації клавіш і команди
FREEBSD
УВАГА: ПАМ’ЯТАЙТЕ, ЩО КОМАНДИ UNIX Є НАДТО ЧУТЛИВІ ДО РЕГІСТРА, В ЯКОМУ ЇХ НАБИРАЮТЬ. Наприклад: Команди digger, DIGGER і DiGer — це три різні команди, так само як my_fil, my_file, і my_FILE — це три різних файли.
Таблиця А1 — Основні сполучення клавіш та їхні позначення
[Ctrl][Alt][F1] |
Перемикання на перший консольний термінал |
[Ctrl][Alt][F#] |
Перемикання на #ий консольний термінал (#=1..8, але може змінюватися як завгодно) |
[Tab] |
Доповнення поточної послідовності символів, набраної в консолі, до, виконуваної команди. Ця особливість надто спрощує набір команд! |
[Ctrl][Alt][Del] |
Перезавантаження комп’ютера |
[Ctrl]c |
Убити поточний процес |
[Ctrl]d |
Вихід з поточного термінала (зазвичай працює) |
[Ctrl]d |
Надсилання поточному процесові сигналу завершення файла |
[Ctrl]s |
Зупинка виведення на термінал |
[Ctrl]q |
Поновлення виведення на термінал. Спробуйте цю комбінацію клавіш, якщо ваш термінал незрозуміло чому припинив відповідати на ваші запити |
~ |
Моя домашня директорія. Наприклад cd ~/моя_піддиректорія |
. |
(крапка) Поточна директорія |
.. |
(дві крапки) Батьківська директорія для поточного каталогу |
Таблиця А2 — Стандартні команди, що надають інформацію із системи
Команди (завжди набираються в одному рядку) |
Опис |
Pwd |
Вивести поточну директорію |
Hostname |
Вивести — змінене мережне ім’я машини |
Whoami |
Ввести ім’я, під яким я зареєстрований |
Date |
Вивести змінені дату й час |
Закінчення таблиці а2
time |
Одержати інформацію про час, необхідний для виконання процесу, плюс ще деяку інформацію. Не плутайте цю команду з date. Наприклад: Я можу визначити, як багато часу потрібно для виведення списку файлів у директорії, набравши послідовність: time ls |
Who |
Визначити, хто з користувачів працює на машині |
finger [ім’я_користу- вача] |
Системна інформація про зареєстрованого користувача. Спробуйте: finger root |
Uptime |
Кількість часу, що пройшов після останнього перезавантаження |
Ps |
Список поточних процесів |
Top |
Інтерактивний список поточних процесів відсортованих за використанням cpu |
Uname |
Вивести системну інформацію |
df –h |
(=місце на диску) Вивести інформацію про вільне й використовуване місце на дисках (у зручному для читання вигляді) |
du / -bh | more |
(=хто скільки зайняв) Виведення детальної інформації про обсяг файлів по директоріях, починаючи з кореневої (у зручному для читання вигляді) |
set|more |
Вивести поточні значення зміни оточення |
Таблиця А3 — Робота з мережею
mail [адреса] |
Програма mail дозволяє надсилати та одержувати E-mail |
ping [ім’я_машини] |
Перевірка, є чи немає контакту з іншою машиною (у якості параметрів команді можна передавати мережне ім’я або IP адресу), натисніть <Ctrl>-C, коли вся необхідна інформація буде отримана |
ifconfig |
(як root) Вивести інформацію про поточні мережні інтерфейси (ethernet, ppp тощо). Ваша перша ethernet плата буде подана як ed0, друга — як ed1, перший ppp модем — як ppp0 і т. д. “lo” розшифровується як “loopback only” — мережний інтерфейс, який має бути постійно активований. Використовуйте відповідні опції (переглядайте результат виконання ifconfig-help) для налаштування мережних інтерфейсів |
Таблиця А4 — Найпростіші дії
cd [директорія] |
Змінити директорію |
cp [що копіювати] [куди копіювати] |
Копіювати файли |
mv [що переміщувати] [куди переміщувати] |
Перемістити перейменований файл |
ln -s [на що зробити посилання][ім’я посилання] |
Створити символічне посилання |
rm [файли] |
Вилучити файли |
mkdir [директорію] |
Створити нову директорію |
rmdir [директорію] |
Вилучити порожню директорію |
rm -r [файли і/чи директорії] |
(рекурсивне вилучення) Вилучити файли, директорії та їхні піддиректорії. ОБЕРЕЖНІШЕ з цією командою, якщо у вас є права суперкористувача! Поки в FreeBSD немає системи повного відновлення вилучених файлів (якщо ви не користуєтесь спеціальними програмами для розміщення вилученого файла в спеціальному каталозі — аналогічно до кошика під W95) |
cat [ім’я файла] | more |
Перегляд вмісту текстового файла по одній сторінці за один раз |
less [ім’я файла] |
Перегляд вмісту текстового файла з можливістю повернутися до попередніх сторінок. Натисніть q, коли захочете вийти з програми. “Less” — аналог команди DOS “more”, хоча надто часто “less” буває більш зручною, ніж “more” |
ee [ім’я файла] |
Редагувати текстовий файл (для виходу Esc+Enter) |
lynx [html чи файл посилання] |
Переглядання файла html чи WWW посилання за допомогою текстового браузера Lynx |
tar -zxvf файли] |
Розпакувати архів tgz або tar.gz |
find / -name “ім’я файла” |
Віднайти файл з іменем “ім’я файла”. Пошук розпочинається з директорії /. “ім’я файла” може містити маску для пошуку |
Mc |
Запустити програму керування файлами “Midnight Commander” (Виглядає як “Norton Commander”, але за своїми можливостями є ближче до far чи dn) |