
- •Тема 1. Мережеві операційні системи, ос FreeBsd
- •Контрольні питання
- •Література
- •Тема 2. Ядро ос FreeBsd і управління програмним забезпеченням
- •Література
- •Тема 3. Мережева підсистема FreeBsd
- •Література
- •Тема 4. Маршрутизація трафіку в ос FreeBsd
- •Література
- •Тема 5. Динамічне налаштування мережевих інтерфейсів
- •Література
- •Тема 6. Засоби фільтрації трафіку
- •Література
- •Тема 7. Трансляція мережевих адрес
- •Література
- •Тема 8. Служба доменних імен
- •Література
- •Тема 9. Поштові служби. Протоколи smtp, pop3
- •Література
- •Тема 10. Протокол imap
- •Література
- •Тема 11. Обмін файлами у мережах. Протокол ftp
- •Література
- •Тема 12. Обмін файлами у мережах. Nfs, smb, BitTorrent
- •Література
- •Тема 13. Веб-сервер на основі ос FreeBsd
- •Література
- •Тема 14. Проксі –сервер. Сервіси моніторингу
- •Література
- •Тема 15. Захищені віртуальні канали. Стек протоколів ipSec
- •Література
Зміст
Тема 1. Мережеві операційні системи, ОС FreeBSD 2
Тема 2. Ядро ОС FreeBSD і управління програмним забезпеченням 29
Тема 3. Мережева підсистема FreeBSD 47
Тема 4. Маршрутизація трафіку в ОС FreeBSD 66
Тема 5. Динамічне налаштування мережевих інтерфейсів 80
Тема 6. Засоби фільтрації трафіку 91
Тема 7. Трансляція мережевих адрес 106
Тема 8. Служба доменних імен 116
Тема 9. Поштові служби. Протоколи SMTP, POP3 135
Тема 10. Протокол IMAP 153
Тема 11. Обмін файлами у мережах. Протокол FTP 165
Тема 12. Обмін файлами у мережах. NFS, SMB, BitTorrent 180
Тема 13. Веб-сервер на основі ОС FreeBSD 195
Тема 14. Проксі –сервер. Сервіси моніторингу 217
Тема 15. Захищені віртуальні канали. Стек протоколів IPSec 234
Тема 1. Мережеві операційні системи, ос FreeBsd
Вступ
Програма вивчення нормативної навчальної дисципліни складена з урахуванням вимог освітньо-професійних програм підготовки магістрів, спеціалістів напряму підготовки 6.050102 Комп’ютерна інженерія, спеціальності 8.05010201, 7.05010201 Комп’ютерні системи та мережі.
Предметом вивчення навчальної дисципліни «Мережеві інформаційні технології» є сучасні мережеві операційні системи (ОС), мережеві проколи і прикладення.
Міждисциплінарні зв'язки: дисципліна пов’язана з попередніми їй курсами: «Корпоративні і загальнодоступні мережі», «Цифрові системи зв’язку». З урахування знань дисципліни «Мережеві інформаційні технології» вивчаються такі дисциплін, як: «Сучасні інформаційні технології в науці та освіті», «Дистанційні платформи та технології навчання».
Програма навчальної дисципліни складається з таких змістових модулів:
1. Мережеві ОС, адміністрування FreeBSD.
2. Мережеві сервіси FreeBSD.
Мета та завдання навчальної дисципліни
Мета і завдання дисципліни
1.1. Мета викладання навчальної дисципліни «Мережеві інформаційні технології» є підготовка спеціаліста до науково-дослідної, виробничо-технічної роботи, який зможе проектувати, обслуговувати та адмініструвати сучасні комп’ютерні мережі.
1.2. Основними завданнями вивчення дисципліни «Мережеві інформаційні технології» є:
– підвищення рівня знань студентства з мережевих ОС;
– прищеплення студентам навичок наукового аналізу, спрямованих на забезпечення самостійного вибору і адміністрування сучасних мережевих ОС;
– виховання уміння застосовувати набуті знання з мережевих інформаційних технологій при розв’язанні практичних задач.
1.3. Згідно з вимогами освітньо-професійної програми студенти повинні:
– знати матеріал програми курсу «Мережеві інформаційні технології», принципи побудови операційних систем сучасних комп’ютерних мереж; методів реалізації файлових систем сучасних мережних ОС; шляхів покращення характеристик мережних ОС; принципів керування мережною ОС;
– вміти логічно та послідовно викласти засвоєний ним матеріал, робити самостійні науково обґрунтовані висновки та узагальнення, свідомо вибирати ту чи іншу мережну ОС, встановлювати та налагоджувати мережну ОС, виконувати базові функції з адміністрування мережної ОС, встановлювати та налагоджувати додаткові сервіси мережної ОС.
На вивчення навчальної дисципліни відводиться 198 годин, 5,5 кредитів ECTS.
Історія операційних систем
UNIX зародився в лабораторії Bell Labs фірми AT&T більше 30 років тому. У те час Bell Labs займалася розробкою розрахованої на багато користувачів системи розподіли часу MULTICS (Multiplexed Information and Computing Service) спільно з MIT і General Electric, але ця система потерпіла невдачу, частково із-за занадто амбітних цілей, не що відповідали рівню комп'ютерів того часу, а частково і через те, що вона розроблялася на мові PL/1, а компілятор PL/1 затримувався і взагалі погано працював після свого запізнілої появи. Тому Bell Labs взагалі відмовилася від участі в проекті MULTICS, що дало можливість одному з її дослідників, Кену Томпсону, зайнятися пошуковою роботою у напрямі поліпшення операційного середовища Bell Labs. Томпсон, а також співробітник Bell Labs Денис Ритчи і деякі інші розробляли нову файлову систему, багато риси якої вели своє походження від MULTICS. Для перевірки нової файлової системи Томпсон написав ядро ОС і деякі програми для комп'ютера GE - 645, який працював під управлінням мультипрограмної системи розподіли часу GECOS. У Кена Томпсона була написана їм ще в часи роботи над MULTICS гра "Space Travel" - "Космічне подорож". Він запускав її на комп'ютері GE - 645, але вона працювала на йому не дуже добре із-за невисокої ефективності розподілу часу. Окрім цього, машинний час GE - 645 коштувало занадто дорого. В результаті Томпсон і Ритчи вирішили перенести гру на ту, що стоїть в кутку без діла машину PDP - 7 фірм DEC, що має 4096 18-бітових слів, телетайп і хороший графічний дисплей. Але у PDP - 7 було неважливе програмне забезпечення, і, закінчивши перенесення гри, Томпсон вирішив реалізувати на PDP - 7 ту файлову систему, над який він працював на GE - 645. З цієї роботи і виникла перша версія UNIX, хоча вона і не мала у той час ніякого назви. Але вона вже включала характерну для UNIX файлову систему, засновану на індексних дескрипторах inode, мала підсистему управління процесами і пам'яттю, а також дозволяла двом користувачам працювати в режимі розподілу часу. Система була написана на асемблері. Ім'я UNIX (Uniplex Information and Computing Services) було дане їй ще одним співробітником Bell Labs, Брайаном Керниганом, який спочатку назвав її UNICS, підкреслюючи її відмінність від розрахованої на багато користувачів MULTICS. Незабаром UNICS почали називати UNIX.
Першими користувачами UNIX стали співробітники відділу патентів Bell Labs, які знайшли її зручним середовищем для створення текстів.
Великий вплив на долю UNIX зробила перепис її на мові високого рівня З, розробленого Денисом Ритчи спеціально для цих цілей. Це сталося в 1973 році, UNIX налічував до цього часу вже 25 інсталяцій, і в Bell Labs була створена спеціальна група підтримки UNIX.
Широке поширення UNIX отримав з 1974 року, після опису цієї системи Томпсоном і Ритчи в комп'ютерному журналі CACM. UNIX отримав широке поширення в університетах, оскільки для них він поставлявся безкоштовно разом з початковими кодами на С. Широке поширення ефективних C -компиляторов зробило UNIX унікальній для того часу ОС із-за можливості перенесення на різні комп'ютери. Університети внесли значний вклад в поліпшення UNIX і подальшу його популяризацію. Ще одним кроком на шляху отримання визнання UNIX як стандартизованого середовища стала розробка Денисом Ритчи бібліотеки введення-виведення stdio. Завдяки використанню цієї бібліотеки для компілятора програми для UNIX стали легко переносимими.
Широке поширення UNIX породило проблему несумісності його численних версій. Очевидно, що для користувача дуже неприємний той факт, що пакет, куплений для однієї версії UNIX, відмовляється працювати на інший версії UNIX. Періодично робилися і робляться спроби стандартизації UNIX, але вони доки мали обмежений успіх. Процес зближення різних версій UNIX і їх розбіжності носить циклічний характер. Перед особою нової загрози з боку якої-небудь іншої операційної системи різні виробники UNIX-версій зближують свої продукти, але потім конкурентна боротьба змушує їх робити оригінальні поліпшення і версії знову розходяться. У цьому процесі є і позитивна сторона - поява нових ідей і засобів, що покращують як UNIX, так і багато інших операційних системи, що перейняли у нього за довгі роки його існування багато корисного.
Найбільше поширення набули дві дуже несумісні лінії версій UNIX: лінія AT&T - UNIX System V, і лінія університету Berkeley - BSD. Багато фірм на основі цих версій розробили і підтримують свої версії UNIX : SunOS і Solaris фірми Sun Microsystems, UX фірми Hewlett - Packard, XENIX фірми Microsoft, AIX фірми IBM, UnixWare фірми Novell (проданий тепер компанії SCO), і список цей можна ще довго продовжувати.
Найбільший вплив на уніфікацію версій UNIX зробили такі стандарти як SVID фірми AT&T, POSIX, створений під егідою IEEE, і XPG4 консорціуму X/Open. У цих стандартах сформульовані вимоги до інтерфейсу між додатками і ОС, що дає можливість додаткам успішно працювати під управлінням різних версій UNIX.
Незалежно від версії, загальними для UNIX рисами є:
розрахований на багато користувачів режим із засобами захисту даних від несанкціонованого доступу;
реалізація мультипрограмної обробки в режимі розподілу часу, заснована на використанні алгоритмів витісняючої багатозадачності (preemptive multitasking);
використання механізмів віртуальної пам'яті і свопінгу для підвищення рівня мультипрограмування;
уніфікація операцій введення-висновку на основі розширеного використання поняття "файл";
ієрархічна файлова система, твірна єдине дерево каталогів незалежно від кількості фізичних пристроїв, використовуваних для розміщення файлів;
переносимість системи за рахунок написання її основної частини на мові C;
різноманітні засоби взаємодії процесів, в тому числі і через мережу;
кешування диска для зменшення середнього часу доступу до файлів.
Мережеві ОС
Мережева операційна система є "мозком" мережі і забезпечує коректну взаємодію її програмного та апаратного забезпечення. Мережеві операційні системи (ОС) поділяються на дві категорії: однорангові і клієнт-серверні. Однорангові операційні системи передбачають можливість використання будь-якого комп'ютера як робочої станції і сервера одночасно. В однорангових мережах мережеві ОС ( LANtastic, LanSmart, Windows for Workgroups тощо) інсталюються на кожному комп'ютері, у цьому разі назва мережі - це похідна від операційної системи, що утворює однорангову мережу. Таким чином, кожний із комп'ютерів отримує можливість надавати свої ресурси всім іншим комп'ютерам у мережі. Продуктивність однорангових мереж значно знижується за збільшення розмірів мережі і збільшення кількості взаємодій мережевих комп'ютерів. Експлуатація і підтримка таких мереж, як правило, ускладнена. Не маючи можливості централізованого управління, адміністратори змушені керувати множиною сервісів на кожній машині окремо. Така робота ускладнюється ще й тим, що користувачі, працюючи на кожному з комп'ютерів, мають можливість самостійно змінювати настройки ОС, що часто призводить до непрацездатності всього програмного забезпечення робочої станції.
У мережах клієнт/сервер мережна ОС (Windows 95/98, Windows 2000, Windows NTt Windows XP, Windows Millennium, Novell NetWare, UNIX тощо) установлюється на сервері. Цей комп'ютер керує мережею і надає свої ресурси клієнтським робочим станціям. Мережева ОС, працюючи на сервері (серверна ОС), відповідає за координацію всіх дій, пов'язаних із використанням ресурсів і сервісів цього сервера. Клієнтом у такій мережі є будь-який мережевий пристрій, що формує запит до сервера для використання його ресурсів і сервісів. Для забезпечення взаємодій клієнта і сервера на комп'ютер і-клієнті встановлюється і функціонує клієнтське програмне забезпечення, яке підтримує загальний протокол взаємодії клієнта і сервера. У клієнт/серверній мережі користувачі "реєструються" зі своєї робочої станції. Для реєстрації користувач повідомляє серверові своє ім'я і пароль, якщо ім'я і пароль коректні, сервер аутентифікує користувача і надає йому доступ до всіх тих ресурсів і сервісів (використання файлів і принтерів, забезпечення безпеки даних і надання можливостей мережевої взаємодії), на які користувачу були надані права. Серверна ОС гарантує надійність і безпеку будь-яких даних, що зберігаються і опрацьовуються на сервері.
Мережева операційна система дає змогу користувачам спільно використовувати: дорогі апаратні ресурси мережі - принтери, сканери, дискові накопичувані тощо; програмне забезпечення, інстальоване тільки на сервері; інформаційні ресурси - базу даних сервера; організувати сумісну роботу великого колективу користувачів з оперативним обміном інформації між ними. До складу сучасних операційних систем (Windows XP, Windows 2000, Windows NT Server, Net Ware) входять компоненти: керування локальними ресурсами комп'ютера; серверна частина для надання власних ресурсів і послуг у загальне користування; клієнтська частина операційної системи для розпізнавання і перенаправлення в мережу запитів до віддалених ресурсів; комунікаційні засоби для обміну повідомленнями в мережі.
Програма перенаправлення резидентно міститься в пам'яті комп'ютера. Коли користувач або його програма звертається із запитом до операційної системи комп'ютера, ця програма перехоплює запит, аналізує, хто може його виконати, і спрямовує або до ОС того ж комп'ютера, або до сервера, якому адресовано запит.
У мережі вузли (комп'ютери) взаємодіють між собою за певними правилами - комунікаційними протоколами, які реалізуються як програмно, так і апаратно. Протоколи нижніх рівнів, як правило, реалізуються комбінацією програмних і апаратних засобів, а протоколи верхніх рівнів - суто програмними засобами. Як уже зазначалося, протоколи реалізуються не тільки комп'ютерами, а й іншими мережевими пристроями - концентраторами, мостами, комутаторами, маршрутизаторами тощо. Протокол являє собою узгодженість, прийняту двома взаємодіючими об'єктами (комп'ютерами), проте це не означає, що він обов'язково є стандартним. На практиці під час побудови мереж намагаються використовувати стандартні протоколи. Вони можуть бути національними або міжнародними.
Наприкінці 80-х років минулого століття Міжнародна організація зі стандартизації розробила правила пересилання даних мережею, які отримали назву "Модель взаємодії відкритих систем" (International Organization for Standartization, ISO). Модель ISO отримала статус міжнародного стандарту і її рекомендації є керівництвом для побудови мережі. Відповідно до моделі ISO засоби взаємодії поділяються на сім рівнів: рівень протоколу, представлення даних, сеансовий, транспортний, мережевий, канальний і фізичний. Кожен із семи рівнів визначає сукупність логічно згрупованих функцій, необхідних для контролю процесу передачі даних мережею.
Рівень протоколу - це найвищий рівень в ієрархії еталонної моделі ISO, він установлює інтерфейс між застосуванням користувача і мережевим рівнем.
Рівень представлення даних - відповідає за спосіб кодування даних, Далеко не всі комп'ютерні системи використовують ту саму схему кодування даних, тому на рівень представлення даних покладено обов'язки з перетворення між несумісними схемами кодування даних.
Сеансовий рівень керує потоком службової інформації під час "спілкування" двох комп'ютерних систем. Він визначає, чи є з'єднання одно- або двонаправленим, а також гарантує, що поточний запит буде цілком опрацьований. Функції сеансового рівня реалізуються компонентами мережевої операційної системи.
Транспортний рівень забезпечує застосуванням користувача або верхнім рівням - представлення і сеансовому - передачу даних з певною надійністю (можливість відновлення перерваного зв'язку, здатність виявляти і виправляти помилки передачі).
Мережевий рівень відповідає за визначення маршруту між передавальним і приймальним комп'ютерами. Мережевий рівень може і не використовуватися. Він обов'язковий тільки в тому разі, якщо комп'ютерні системи розташовані в різних мережевих сегментах, розділених маршрутизатором.
Канальний рівень готує дані для передачі (розбиває їх на окремі частини - кадри, до кожного кадру додає адреси відправника і отримувача, службову інформацію). Канальний рівень також відповідає за складання кадрів при прийнятті від фізичного рівня.
Фізичний рівень має справу з передачею бітів фізичними каналами зв'язку, такими, наприклад, як коаксіальний кабель, вита пара або оптоволоконний кабель. Фізичними каналами передаються повідомлення і заголовки, які додаються до повідомлення на кожному рівні. Заголовки містять службову інформацію, яку необхідно передати через мережу відповідному рівню ISO комп'ютера, щоб повідомити йому, яку роботу треба виконати. Функції фізичного рівня реалізує мережевий адаптер.
Функціональні компоненти мережевої ОС
Мережеві операційні системи (Network Operating System – NOS) – це комплекс програм, що забезпечують обробку, зберігання і передачу даних в мережі. Мережева операційна система виконує функції прикладної платформи, надає різноманітні види мережевих служб і підтримує роботу прикладних процесів, що виконуються в абонентських системах. Вони використовують клієнт серверну або однорангову архітектуру. Компоненти NOS розташовуються на всіх робочих станціях, включених в мережу.
NOS визначає взаємозв'язану групу протоколів верхніх рівнів, що забезпечують виконання основних функцій мережі. До них, в першу чергу, відносяться:
– адресація об'єктів мережі;
– функціонування мережевих служб;
– забезпечення безпеки даних;
– управління мережею.
При виборі NOS необхідно розглядати безліч чинників. Серед них: – набір мережевих служб, які надає мережа;
– можливість нарощування імен, що визначають дані, які зберігаються, і прикладні програми;
– механізм розосередження ресурсів по мережі;
– спосіб модифікації мережі і мережевих служб;
– надійність функціонування і швидкодія мережі;
– фізичні засоби з'єднання, що використовуються або вибираються;
– типи комп'ютерів, що об'єднуються в мережу, їх операційні системи;
– пропоновані системи, що забезпечують управління мережею;
– засоби захисту даних, що використовуються;
– сумісність з вже створеними прикладними процесами;
– число серверів, яке може працювати в мережі;
– перелік ретрансляційних систем, що забезпечують сполучення локальних мереж з різними територіальними мережами;
– спосіб документування роботи мережі, організація підказок і підтримки.
Мережева операційна система складає основу будь-якої обчислювальної мережі. Кожен комп'ютер в мережі автономний, тому під мережевою операційною системою в широкому сенсі розуміється сукупність операційних систем окремих комп'ютерів, що взаємодіють з метою обміну повідомленнями і розділення ресурсів за єдиними правилами – протоколами. У вузькому сенсі мережева ОС – це операційна система окремого комп'ютера, що забезпечує йому можливість працювати в мережі.
Відповідно до структури, приведеної на рис. 1.1, в мережевій операційній системі окремої машини можна виділити декілька частин.
Засоби керування локальними ресурсами комп'ютера: функції розподілу оперативної пам'яті між процесами, планування і диспетчеризації процесів, керування процесорами, керування периферійними пристроями і інші функції керування ресурсами локальних ОС. Засоби надання власних ресурсів і послуг в загальне користування – серверна частина ОС (сервер). Ці засоби забезпечують, наприклад, блокування файлів і записів, ведення довідників імен мережевих ресурсів; обробку запитів віддаленого доступу до власної файлової системи і бази даних; керування чергами запитів віддалених користувачів до своїх периферійних пристроїв.
Рисунок 1.1 - Структура мережевої ОС
Засоби запиту доступу до віддалених ресурсів і послуг – клієнтська частина ОС (редиректор). Ця частина виконує розпізнавання і перенаправлення в мережу запитів до віддалених ресурсів від додатків і користувачів. Клієнтська частина також здійснює прийом відповідей від серверів і перетворення їх в локальний формат, так що для додатку виконання локальних і віддалених запитів невиразне. Комунікаційні засоби ОС, за допомогою яких відбувається обмін повідомленнями в мережі. Ця частина забезпечує адресацію і буферизацію повідомлень, вибір маршруту передачі повідомлення по мережі, надійність передачі і т.п., тобто є засобом транспортування повідомлень.
При виборі мережевої операційної системи необхідно враховувати:
– сумісність устаткування;
– тип мережевого носія;
– розмір мережі;
– мережеву топологію;
– вимоги до сервера;
– операційні системи на клієнтах і серверах;
– мережеву файлову система;
– угоди про імена в мережі;
– організація мережевих пристроїв зберігання.
*BSD вітка *nix
Berkeley Software Distribution (BSD) – назва кількох POSIX-сумісних операційних систем сімейства UNIX, створених на основі розробок Каліфорнійського університету в Берклі на початку 1970-х років. Безкоштовні, мають відкритий вихідний код. Сьогодні найпопулярнішою є FreeBSD. Назва *BSD також є збірною для сучасних наступників тих збірок. До сімейства BSD відносяться: NetBSD, FreeBSD, OpenBSD, ClosedBSD, MirBSD, DragonFly BSD, PC-BSD, DesktopBSD, SunOS, TrueBSD, Frenzy, Ultrix і частково Darwin (ядро Mac OS X). Хронологію розвитку можна побачити на генеалогічному дереві BSD. Відмінності від «класичної» системи UNIX полягають у відсутності перемикання рівнів виконання, системі друку, файлової системи і командного процесора. Користувача команди практично ідентичні.
FreeBSD
FreeBSD – UNIX-подібна операційна система, коріння якої тягнеться від AT&T UNIX, через Berkeley Software Distribution (BSD) гілку операційних систем 386BSD та 4.4BSD. Працює на Intel x86 (IA-32), сумісних з ПК системах (включно з Microsoft Xbox, а також DEC Alpha, Sun, Itanium (IA-64), AMD64, PowerPC та NEC PC-98 архітектурах. FreeBSD добре зарекомендувала себе як система для побудови Інтранет і інтернет-серверів. Вона надає достатньо надійні мережеві служби і ефективне управління пам’яттю.
FreeBSD (див. рисунок 1.2) розробляється як повноцінна операційна система. Ядро, драйвери пристроїв та базові користувацькі утиліти (так звані Userland), на кшталт командного процесору (shell) розробляються в єдиному дереві джерельних текстів. Це одна з головних відмінностей системи від Linux, у котрій робота над розробкою ядра ведеться однією групою програмістів, базових користувацьких утиліт іншою (наприклад, проектом GNU), і усе це збираються третіми групами у так званий дистрибутив.
Розробка FreeBSD почалася в 1993 році із набору патчів користувачів системи 386BSD, що швидко зростав. Цей набір пізніше виріс і відокремився від 386bsd в окрему операційну систему, що увібрала код від Free Software Foundation. Перша офіційна версія FreeBSD 1.0 вийшла у грудні 1993 року. Walnut Creek CDROM погодилася поширювати FreeBSD на компакт-диску і також надала для роботи проекту окремий комп’ютер з інтернет-з’єднанням. Керівництво до FreeBSD містить докладнішу історичну інформацію про походження системи.
Проте, в січні 1995 року з міркувань законності використання запозиченого у 386BSD коду, а також через судовий процес між Novell та Берклі, проект випустив спеціальну версію системи FreeBSD 2.0, де було переписано більшу частину її коду, чимало якого запозичено у 4.4BSD-Lite.
FreeBSD 3.0 приніс до проекту багато змін: перехід до двійкового формату ELF, з’явилася початкова підтримка SMP-систем і 64-розрядної архітектури Alpha. У свій час, гілка 3.х серйозно критикувалася, оскільки багато змін не були очевидно вигідними і мало впливали на роботу, однак, вона була необхідним кроком у розвитку проекту, котрий допоміг гілці 4.х стати дуже успішною.
FreeBSD 4 була дуже популярною серед інтернет-провайдерів і хостерів часів першого «міхура доткомів» і вважалася за одну з найстабільніших і високопродуктивних систем класу Unix. Одним з головних недоліків FreeBSD 4 вважається погана підтримка багатопроцесорних систем, особливо в режимі багатопоточності. FreeBSD 4 поставила своєрідний рекорд за тривалістю розробки однієї гілки операційної системи – за п’ять років було усунено велику кількість помилок і отримана на рідкість стабільна система. В середині розробки FreeBSD 4 від неї відокремився проект Dragonflybsd, засновники якого поставили собі за мету серйозну оптимізацію ядра для високо-навантажених систем, зокрема кращу підтримку багатопроцесорності (зменшення часу, необхідного для перемикання ниток і ін.).
Рисунок 1.2 - Талісман проекту FreeBSD
Модель розробки FreeBSD
Існує близько 4000 розробників, які працюють над системою на добровільній основі. Всі вони можуть читати дерево репозиторія, але не можуть вносити зміни. Замість цього розробник звертається до комітера, який має право вносити зміну до коду. Існує близько 400 комітерів. Розробник може вирости по соціальних сходах проекту і стати комітером. Кандидатуру нового комітера пропонує до розгляду ментор майбутнього комітера. Залежно від основної області діяльності, новий комітер затверджується основною командою, portmgr@ або docmgr@. Основна команда є адміністративним ядром проекту і складається з 9 чоловік, які вибираються на 2 роки комітерами зі свого складу. Основна команда вирішує конфлікти між комітерами.
Учасники проекту розробляють гілку CURRENT («поточна» версія) і декілька STABLE («стабільна», стабільність означає гарантію незмінності інтерфейсів, як API, ABI і так далі).
Новий код поміщають у гілку CURRENT, де він отримує ширше тестування. Нові функції, додані в CURRENT, можуть залишитися в системі або від них можуть відмовитися, якщо реалізація виявиться невдалою. Інколи ця версія може опинитися в непридатному для використання стані. З початком використання perforce як допоміжного репозиторія, і з виділенням projects/ області в svn, проект прагне гарантувати постійну працездатність CURRENT.
STABLE-версія містить тільки ті нововведення, які пройшли перевірку в CURRENT. Проте, ця версія теж призначена в основному для розробників. Не рекомендується оновлювати відповідальні робочі сервери до STABLE, заздалегідь її не протестувавши. На основі STABLE регулярно створюються ретельно протестовані розробниками, групою release-інженерів і ширшим довкола користувачів RELEASE-версії.
Після випуску релізів створюються додаткові гілки розробки для підтримки релізів, але в них вносяться лише найнеобхідніші зміни, що виправляють серйозні помилки або проблеми з безпекою системи. До четвертої версії FreeBSD у стабільної і поточної гілок був один і той же старший номер версії. Потім поточній гілці був привласнений номер 5, а у стабільної залишився номер 4.
Спочатку, FreeBSD використовувала в якості свого логотипу демона BSD, однак у 2005 році, був влаштований конкурс на створення нового логотипу. 8 жовтня 2005 змагання завершилися, і переміг у них Anton K. Gural, малюнок котрого став новим логотипом проекту. Однак, демон BSD залишається талісманом проекту FreeBSD.
FreeBSD забезпечує сумісність з деякими іншими UNIX-подібними операційними системами, зокрема, з Linux. Шар сумісності надає можливість працювати з програмним забезпеченням для Linux, котре розповсюджується лише у двійковому форматі, і не може бути портовано на FreeBSD.
FreeBSD має два можливих варіанти сумісності: для користувачів та для розробників. Варіант для користувачів має назву, що починається linux_base а для розробників – linux_dist. Обидва варіанти можна встановити із портів, розділ emulators (емулятори).
Версії системи
Всі можливі версії які були випущені під назвою FreeBSD наведено в таблиці 1.1. На даний момент остання випущена версія операційної системи FreeBSD має версію 9.1, і підтримує такі архітектури процесорів: amd64, i386, powerpc64, sparc64.
Таблиця 1.1 - Версії системи FreeBSD
Ім'я |
Дата виходу релізу |
Примітки та особливості |
FreeBSD 1.0 |
Листопад 1993 року |
Серед ключових поліпшень: |
FreeBSD 2.0 |
Березень 1994 року |
Серед ключових поліпшень: |
FreeBSD 3.0 |
13 жовтня 1998 року |
Серед ключових поліпшень:
|
FreeBSD 4.0 |
Березнь 2000 року |
Серед ключових поліпшень:
|
FreeBSD 5.0 |
Січень 2003 року |
Була випущена довгоочікувана версія 5.0-release. Ця версія надавала розширену підтримку багатопроцесорності і багатонитевості, а також підтримку платформ UltraSPARC і IA-64. Найбільші архітектурні зміни в FreeBSD 5 – це зміна механізму блокування на нижньому рівні ядра, щоб поліпшити підтримку багатопроцесорних smp-систем. Це звільнило велику частку ядра від так званого «гігантського блокування» (Giant lock). Тепер в ядрі з'явилася можливість виконувати більш за одне завдання одночасно. Іншою важливою зміною була реалізація «рідної» підтримки багатонитевості типа M:N під назвою Kernel Scheduled Entities (KSE). Починаючи з FreeBSD 5.3 ця реалізація нитей була встановлена по-замовчуванню, поки не була замінена на реалізацію моделі 1:1 в FreeBSD 7. У FreeBSD 5 була серйозно змінена система блокового введення-виводу за допомогою введення модульною структурной системи перетворення запитів вводу-виводу GEOM (внесеною Poul-henning Kamp). GEOM дає можливість створювати різну функціональність, таку як зеркалірованіє (mirroring) або шифрування (модулі GBDE і GELI). |
FreeBSD 5.1 |
Червень 2003 року |
Серед ключових поліпшень:
|
FreeBSD 5.2 |
Січень 2004 року |
Серед ключових поліпшень:
|
FreeBSD 5.3 |
Листопад 2004 року |
Серед ключових поліпшень:
|
FreeBSD 5.4 |
Травень 2005 року |
Серед ключових поліпшень:
|
FreeBSD 5.5 |
Травень 2006 року |
Серед ключових поліпшень:
|
FreeBSD 6.0 |
4 листопада 2005 року |
Серед ключових поліпшень:
|
FreeBSD 6.1 |
Травень 2006 року |
Серед ключових поліпшень:
|
FreeBSD 6.2 |
Січень 2007 року |
Серед ключових поліпшень:
|
FreeBSD 6.3 |
Січень 2008 року |
Серед ключових поліпшень:
|
FreeBSD 6.4 |
11 листопада 2008 року |
Ці версії є продовженням оптимізації підтримки smp і багатонитевості разом з розширеною підтримкою стандарту 802.11, записом подій безпеки проекту TRUSTEDBSD, серйозними поліпшеннями продуктивності мережевої підсистеми. Основне досягнення цього реліза – виключення «гігантського блокування» (Giant lock) з віртуальної файлової підсистеми (VFS), реалізація додаткової, продуктивнішої підтримки багатонитевості (libthr) з моделлю 1:1, і додавання OPENBSM – первинного модуля безпеки, який був створений проектом TRUSTEDBSD. |
FreeBSD 7.0 |
27 лютого 2008 року |
Серед ключових поліпшень:
|
FreeBSD 7.1 |
5 січня 2009 року |
Серед ключових поліпшень:
Нова система показала значні поліпшення в швидкості в порівнянні з попередніми версіями і системоюLinux. |
FreeBSD 7.2 |
4 травня 2009 року |
Серед ключових поліпшень:
На сьогоднішній день вже розроблені відеодрайвера NVIDIA для 64-розрядної архітектури Amd64. Остаточна адаптація файлової системи ZFS v.13 для цієї вітки майже завершена. |
FreeBSD 7.3 |
Березень 2010 року |
Серед ключових поліпшень:
|
FreeBSD 7.4 |
24 січня 2011 року |
Серед ключових поліпшень:
|
FreeBSD 8.0 |
25 листопада 2009року |
Серед нововведень в цій версії можна відзначити:
Крім того, слід зазначити:
|
FreeBSD 9.0 |
12 січня 2012 року |
Серед ключових поліпшень:
|
Сфери застосування ОС FreeBSD Unix
Так як дана операційна система має безліч можливих пакетів програм, а також вбудовану графічну систему X11 вона може використовуватись в будь-яких сферах де є ПК, як для звичайного користувацького комп’ютера (декстопа), ноутбука, нетбука, планшета з графічним робочім столом, так і для без графічних серверних машин (NAS, Hosting Server). Для звичайних робочих комп’ютерів існує версія операційної системи з автоматичним встановленням робочого столу під назвою PCBSD, для NAS систем також існує готова операційна система FreeNAS яка повністю основана на FreeBSD, але має обмежені (полегшені) можливості і відносно просту утиліту інсталяції. Також дана операційна система має свої переваги порівняно ї іншими комерційними аналогами, так як має відкритий код і кожен бажаючий може виконати тонке налаштування під свої потреби підвищивши при йому стабільність і продуктивність.
Встановлення ОС FreeBSD
Апаратні вимоги для FreeBSD досить скромні, не такі жорсткі, як в сучасних ОС Windows, але вони фактично залежать від подальших задач ОС. Офіційні мінімальні апаратні вимоги FreeBSD 8 і вище:
- CPU: 486 процесор або вище;
- RAM: мінімум 24 Mб;
- HDD: мінімум 150 Mб вільного простору на жорсткому диску для виконання мінімальної інсталяції;
- Video, Sound: необхідно дивитись в список підтримуваного обладнання.
Рисунок 1.3 - Вибір Usage в головному меню Sysinstall
Утиліта sysinstall це програма установки, що надається проектом FreeBSD. Це консольний додаток, розділене на кілька меню та екранів, які ви можете використовувати для налаштування і управління процесом установки. Меню sysinstall управляється клавішами навігації, Enter, Tab, прогалиною, та іншими. Детальний опис клавіш і їх функцій міститься в інформації щодо використання sysinstall. Для перегляду цієї інформації переконайтеся, що обрані пункт Usage і кнопка [Select], як показано на Рис. 1.3, потім натисніть Enter. Будуть показані інструкції з використання меню. Після перегляду інструкцій, натисніть Enter для повернення в головне меню.
Для встановлення системи через Sysinstall існує три можливих варіанти Standart (звичайний найпростіший метод встановлення в якому всі необхідні можливі дії які треба зробити при встановленні надаються послідовно, це схоже на майстрів встановлення у Windows), Express (швидкий метод встановлення), Custom (найбільш розширений метод з вільним простором для дій). Щоб охопити всі можливості інсталятора виберемо останній варіант Custom. Отже почнемо інсталяцію:
Для вибору жорсткого диска виконаємо пункт 3 Partition в меню Choose Custom Installation Options натиснувши Enter.
В FDISK Partition Editor. Натискаємо клавішу A потім Q. В Install Boot Manager for drive ad0? Обираємо пункт BootMgr і натискаємо Enter.
Повернувшись в меню Choose Custom Installation Options для розмітки вибраного жорсткого диска оберемо пункт 4 Label. В FDISK DiskLabel Editor створимо відповідні розділи заданим розміром як показано в таблиці 1.2.
Таблиця 1.2 – Приклад розмітки
-
Мітка розділу
Розмір розділу
/
300Мб
swap
256
/var
450
/tmp
200
/usr
2890
Для цього натискаємо клавішу C, та вводимо розмір розділу в мегабайтах 300М. Please choose a partition type вибираємо FS A file system. В Value Required вводимо точку монтування даного розділу, в даному випадку це буде /. Аналогічно створюємо і решту. Для swap потрібно вибирати в Please choose a partition type пункт Swap. Після завершення розподілення простору жорсткого диску натискаємо клавішу Q щоб вийти з утиліти FDisk.
Тепер відмітимо необхідні нам пакети для установки і роботи системи. Оберемо пункт 5 Distributions далі Custom (див. рисунок 1.4). Тепер відмітимо необхідні пакети base, kernels та man (клавіша ПРОБІЛ). Далі повертаємося знову до меню Choose Custom Installation Options через Exit.
Рисунок 1.4 – Вибір необхідних пакетів для установки
Виберемо джерело встановлення 6 Media в даному випадку це буде CD/DVD. Завершивши всі налаштування перед встановлення вибираємо пункт 7 Commit і натискаємо Enter.
Далі відбувається процес встановлення FreeBSD.
Екскурс у використання FreeBSD
Встановлена операційна система представляє собою командний рядок з певною оболонкою яку можна змінювати (пр. bash, sh, csh…), кожна оболонка має свій синтаксис команд. При вході під звичайним користувачем рядок привітання має символ $, при вході під суперкористувачем, або зміні статуса користувача за допомогою команди su рядок привітання зміниться на #. За замовченням операційна система має стандартні утиліти які варто використовувати при конфігуруванні, для полегшення цього процесу.
Архітектура файлової системи
Наразі операційна система FreeBSD використовує дві файлові системи UFS (рідну), ZFS (імпортовану з Solaris). Розглянемо рідну файлову систему детально.
Unix File System (UFS) - файлова система, створена для операційних систем сімейства BSD і використовувана в переробленому і доповненому вигляді на даний момент як основна в операційних системах-нащадках (FreeBSD, OpenBSD, NetBSD).
Фізично UFS складається з наступних частин:
кілька блоків на початку розділу відводиться під завантажувальну область (яка повинна ініціалізуватися окремо від файлової системи);
суперблок, що включає магічне число, ініціалізуюче файлову систему, і деякі інші важливі числа, що описують геометрію і настройку деяких параметрів файлової системи;
опис груп циліндрів. Кожна група включає наступні компоненти:
резервну копію суперблоку;
тема групи циліндрів, статистичні дані і т. д., інформацію аналогічну міститься в суперблоці, але для конкретної групи;
деяка кількість індексних дескрипторів , кожен з яких містить атрибути файлів;
деяка кількість блоків даних.
Індексні дескриптори нумеруються послідовно. Кілька перших індексних дескрипторів збережені з історичних причин, далі йдуть індексні дескриптори кореневого каталогу.
Каталог файлів містить тільки список файлів у директорії і індексний дескриптор, пов'язаний з кожним файлом. Всі метадані файлу зберігаються в індексному дескрипторі.
Основні команди для роботи з ОС
Розглянемо базовий набор команд для початкового налаштування і керування системою.
Перервати виконуємо команду:
^ C (Ctrl-C)
Вийти з shell:
exit
Показати документацію до команди ls. Замість ls можна підставити будь-яку іншу команду:
man ls
Опис структур каталогів:
man hier
Показати поточну дату і час:
date
Показати тривалість того, скільки часів включено систему:
uptime
Показати хто залягання:
w
Показати останні 10 входів:
last -10
Показати директорію, в якій зараз знаходимося:
pwd
Перейти в директорію /usr/local/etc/:
cd /usr/local/etc/
Замість /usr/local/etc/ можна вказати будь-яку іншу директорію, в яку є доступ.
Перейти до каталогу на один рівень вгору:
cd ..
Перейти в свою домашню директорію:
cd ~
Перейти в кореневу директорію:
cd /
Дізнатися розмір папки:
du -hsx /шлях/до/папки
Показати вміст поточної директорії:
ls
Показати детально вміст поточної директорії (у виведенні команди вказані дати, права на файли директорії):
ls -l
Показати список всіх файлів, включаючи приховані файли:
ls -a
Показати права доступу до файлу filename:
ls -l filename
Показати права доступу до директорії directory:
ls -ld directory
Створити директорію newdir в папці tmp:
mkdir /tmp/newdir/
Створюємо директорію subdir, навіть якщо у нас відсутня папка newdir. Усі папки створяться автоматично:
mkdir -p /tmp/newdir/subdir/
Видалити директорію /tmp/newdir/. Замість /tmp/newdir/ можете вказати потрібну вам папку:
rmdir /tmp/newdir/
Видалити не пусту директорію newdir. Замість «newdir» у вас може бути інша папка:
rm -rd /tmp/newdir/
Список часто виконуваних команд:
history | awk '{a [$ 2] + +} END {for (i in a) {print a [i] »» i}}' | sort -rn | head
Кількість активних сполук tcp:
netstat -an | grep tcp | wc -l
Кількість активних сполук udp:
netstat -an | grep udp | wc -l
Прочитати кілька байт файлу і визначити тип файлу:
file filename
Приклад 1:
file /etc/rc.conf
/etc/rc.conf: ASCII English text
Приклад 2:
file /bin/cp
/bin/cp: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 7.1, dynamically linked (uses shared libs), FreeBSD-style, stripped
Вивести на екран вміст файлу filename:
less filename
space (пропуск) = наступна сторінка, b = попередня сторінка,
q = вийти,/= шукати далі,? = Шукати в попередньому, n = повторити пошук.
Вивести на екран вміст файлу filename. -M = показувати назву файлу:
less -Mi filename
Показати кількість рядків у файлі filename:
wc -l filename
Показати перші 5 рядків файла filename (кількість рядків можна вказати самостійно):
head -5 filename
Показати останні 5 рядків файла filename (кількість рядків можна вказати самостійно):
tail -5 filename
Показати останні 10 рядків файлу, почекати і показати нові лінії по мірі їх додавання (^ C для виходу). Особливо корисний для лог-файлів:
tail -f filename
Створити файл filename, якщо він не існує, або оновити час створення, якщо такий файл існує:
touch filename
Видалити файл filename:
rm filename
Копіювати файл filename і присвоїти йому нове ім'я - newname:
cp filename newname
Копіювати файл або файли в директорію /tmp/, назва файлів і директорію вкажіть самостійно:
cp file1 file2 .../tmp /
Копіювати директорію /tmp/ в директорію /home/, назва директорій вкажіть самостійно:
cp -R /tmp/ /home/
Перенести файл oldname в тугіше директорію, де він знаходиться, але під іншою назвою - newname. Простіше кажучи, перейменувати файл oldname в newname:
mv oldname newname
Перенести файл або файли в директорію /tmp/, назва файлів і директорію вкажіть самостійно:
mv file1 file2 ... /tmp/
Зробити жорстку посилання newname на файл filename:
ln filename newname
Знайти всі файли в директорії /etc/, або в будь-який інший вказаної вами директорії (/etc/ - для прикладу):
find /etc/ -type f
Знайти всі файли в директорії /etc/, що починаються з rc. Замість /etc/ і rc вкажіть свої дані:
find /etc/ -type f-name 'rc *'
Читати стиснене текстовий файл, без розпакування його на диск:
gzip -dc filename.gz | less
bzip2 -dc filename.bz2 | less
Показати вміст стиснутого архіву:
tar -tzf filename.tgz або. tar.gz
tar -tjf filename.tbz2 або. tar.bz2
Видобути вміст архіву filename.tgz в директорію/tmp /:
tar -xvzf filename.tgz-C /tmp/
Видобути вміст архіву filename.tbz2 в директорію /tmp/:
tar -xvjf filename.tbz2-C /tmp/
Видобути вміст архіву filename.tgz в поточну директорію:
tar -xvzf filename.tgz
Видобути вміст архіву filename.tbz2 в поточну директорію:
tar -xvjf filename.tbz2
Показати всі процеси:
ps auxw
Показати всі процеси «sshd»:
ps auxw | grep sshd
Постійно показувати найбільш активні процеси (q - вихід):
top
Надіслати сигнал для зупинки процесу, ідентифікатором якого є його pid:
kill pid
або
kill -TERM pid
Послати сигнал всім процесам, чиє ім'я «httpd»:
killall httpd
Шукати команду cp в PATH і показати, де вона була знайдена:
which cp
Показати 20 останніх введених команд:
history 20
Показати всі змінні оточення:
printenv
Показати одну змінну оточення 'PATH':
printenv PATH
або
echo $ PATH
Змінні середовища можна встановити в ~ /. Profile для sh, ~ /. Bash_profile для bash, або ~ /. Cshrc для csh
Показати поточні uid, gid та додаткові groups:
id
Показати поточне ім'я користувача:
whoami
Стати root'ом (користувач повинен бути в групі «wheel»):
su
Змінити uid на username:
su username
Показати всі облікові записи (виводиться вміст файлу /etc/passwd, де вони перераховані):
cat /etc/passwd
Показати всі групи (виводиться вміст файлу /etc/group, де вони перераховані):
cat /etc/group
Створити користувача username; - m = створити домашню директорію:
pw useradd username -m
Змінити свій пароль:
passwd
Змінити пароль користувача username (має право тільки root):
passwd username
Додати користувача username до групи «wheel» (або відредагуйте /etc/group):
pw usermod username -G wheel
Видалити користувача username;-r = видалити домашню директорію:
pw userdel username -r
Показати всі облікові записи з зашифрованими паролями:
cat /etc/master.passwd
Показати монтовані файлові системи:
mount
Показати використовуване і вільне місце на всіх монтованих файлових системах (-h = для більшої читабельності для людей,-m = якщо треба дізнатися розмір у Мб):
df
df -h
df -m
Список процесів з відкритими файлами:
fstat
Показати файлову таблицю:
cat /etc/fstab
Показати Слайс пристрої ad0:
fdisk /dev/ad0
Показати статистику дискових операцій введення/виведення кожні 2 секунди:
iostat 2 gstat -I 2s
Показати список встановлених пакетів:
pkg_info
Показати докладний опис пакету «zip» (замість zip вкажіть будь-який встановлений у вас пакет):
pkg_info zip \ *
Показати список файлів, включених в пакет «zip»:
pkg_info -L zip \ *
Встановити пакет foo-1.2.3.tbz:
pkg_add foo-1.2.3.tbz
Встановити пакет foo з FTP сервера, використовуваного за замовчуванням:
pkg_add -r foo
Встановити пакет foo з альтернативного FTP сервера:
PACKAGEROOT = «ftp://ftp.freebsd.org» pkg_add -r foo
Видалити пакет foo-1.2.3:
pkg_delete foo-1.2.3
Виконувати після встановлення пакетів, для повторного сканування PATH. (Необхідно тільки якщо використовуєте csh):
rehash
Показати завантажені модулі:
kldstat
Завантажити модуль:
kldload названіе_модуля
Вивантажити модуль:
kldunload названіе_модуля
Показати всі мережеві інтерфейси:
ifconfig -a
Показати таблицю маршрутизації:
netstat -r -n
Додати статичний маршрут за замовчуванням:
route add default 192.168.0.254
Надіслати ping пакети на адресу 1.2.3.4, перевірка доступності хоста (^ C для виходу):
ping 1.2.3.4
Відправка пакетів до адреси 1.2.3.4 і відображення проміжних знайдених маршрутизаторів:
traceroute -n 1.2.3.4
Показати всі пакети, передані та прийняті на інтерфейсі em0:
tcpdump -i em0 -n -s 1500 -X
Показати лише заголовки tcp пакетів приходять/йдуть на 80 порт:
tcpdump -i em0 -n tcp port 80
Відкрити TCP з'єднання на порт 80 хоста з адресою 1.2.3.4:
telnet 1.2.3.4 80
Ініціалізація налаштувань мережевих інтерфейсів в /etc/rc.conf:
/etc/rc.d/netif start
Ініціалізація налаштувань статичних маршрутів з /etc/rc.conf:
/etc/rc.d/routing start
Налаштування інтерфейсу з позначкою «DHCP» в /etc/rc.conf:
/etc/rc.d/dhclient start
Показати активні з'єднання з мережею:
netstat -finet -n
Показати процеси хто слухає на IPv4 sockets:
sockstat -4 -l
Перезавантажити ОС:
reboot
Вимкнути ПК, негайно:
shutdown -p now
Права на файли/папки:
права на файли і папки позначаються у вигляді цифр або букв:
4 = read (дозвіл на читання)
2 = write (дозвіл на запис)
1 = execute (дозвіл на виконання)
Права представлені трьома цифрами:
перша цифра - дозволи для вас
друга цифра - дозволи для групи
третя цифра - дозволу для всіх інших
Додавання цифр можна домогтися встановлення прав. Наприклад:
3 (2 +1) - дозвіл на запис та виконання файлу (каталогу);
5 (4 +1) - дозвіл на читання і виконання;
6 (4 +2) - дозвіл на читання і запис;
7 (4 +2 +1) - дозвіл на читання, запис і виконання
Тобто існує всього сім варіантів:
7 = read, write & execute (читання, запис, виконання);
6 = read & write (читання і запис);
5 = read & execute (читання і виконання);
4 = read (читання);
3 = write & execute (запис і виконання);
2 = write (запис);
1 = execute (виконання).
Для встановлення прав доступу використовується команда CHMOD.
На прикладі наочніше:
chmod 777 /tmp/file.sh - дозволити читати, змінювати, виконувати файл file.sh всім.
chmod 766 /tmp/ file.sh - дозволити собі читати, змінювати, виконувати файл file.sh, а групі і всім іншим тільки читати, змінювати.
Якщо треба дати права усіх файлів у папці та всього вмісту включаючи підпапки (рекурсивно), треба використовувати параметр-R, тобто:
chmod-R 766 /tmp/
Дізнатись погоду з консолі (повинен бути встановлений curl, Замість Moscow напишіть своє місто):
curl -s «http://www.google.com/ig/api?weather=Moscow» | sed's |. *. * | \ 1 |'
Дізнатися кількість встановленої фізичної пам'яті:
cat /var/run/dmesg.boot | grep «real memory»
Дізнатися змінні оточення (PATH) в мові csh (за замовчуванням в FreeBSD):
setenv | grep PATH
Перестартовать мережу (мережеве підключення по ssh збережеться)
/etc/rc.d/netif restart
Зупинити мережеву карту:
ifconfig network-interface down
тут network-interface - це інтерфейс мережевої карти, який можна подивитися командою ifconfig
Аналогічно запуск мережевої карти:
ifconfig network-interface up
Отримати список піднятих мережевих інтерфейсів:
ifconfig -u
Отримати список вимкнених мережевих інтерфейсів:
ifconfig -d
Переглянути розмір директорії:
du -h
Перезапустити ipfw:
/etc/rc.d/ipfw restart
Інформація про встановлений CPU:
sysctl -a | egrep -i 'hw.machine | hw.model | hw.ncpu'
Дізнатися всі IP-адреси сайту:
host -ta mediaunix.com
Створити дамп бази mysql:
mysqldump -u ЛогінАдмінаБД -p ПарольАдмінаБД -B ІмяБД> /шлях/куди/зберегти/дамп/бази/ІмяБази.sql