Використовуємо openbsd як десктопа

Коли мова заходить про OpenBSD, на думку спадають міжмережеві екрани, IPSec-тунелі і агентство національної безпеки США. Проте опеньок може бути відмінним десктопом, в якому немає простоти установки Ubuntu, але є логічність і рівень опрацювання кожного компонента, а також солідний набір першокласних інструментів адміністрування прямо з коробки.

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

Початок почав, або установка на жорсткий диск

Як і всі інші ОС, OpenBSD поширюється у вигляді ISO-образів і навіть образів флоппі-дисків, які можна використовувати для установки системи на зовсім старе залізо. ISO-образів при цьому пропонується два: для установки по мережі (ім'я cdXX.iso, де XX - номер версії ОС) і повна система (файл installXX.iso), яка включає в себе все, крім сторонніх пакетів. Отримати образи можна з будь-якого з доступних FTP-серверів, наприклад mirror.corbina.net/pub/OpenBSD. Слід перейти в каталог з номером версії ОС (наприклад, 5.1), а далі - в каталог з ім'ям потрібної архітектури (i386 чи amd64 для стандартних ПК) і завантажити відповідний образ, в моєму випадку install51.iso.

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

Перше питання інсталятора стосується режиму роботи LiveCD:

Нас цікавить перший пункт, тому вводимо символ 'i'. Далі - розкладка клавіатури:

Тиснемо Enter, щоб вибрати стандартну QWERTY-розкладку. Після цього необхідно ввести ім'я хоста:

Набираємо будь-яку вподобану ім'я і тиснемо Enter. Далі інсталятор виведе список доступних мережевих інтерфейсів і запропонує настроїти один з них:

Далі буде виданий запит щодо налаштування конфігурації інших інтерфейсів:

Як видно, крім em0 залишився тільки vlan0, тобто віртуальний мережевий інтерфейс, тому інсталятор пропонує натиснути. щоб перейти до наступного етапу установки. Так і робимо і бачимо на екрані наступне:

Тиснемо Enter, щоб відмовитися від подальшого ручного конфігурації мережі. Тепер ми повинні двічі ввести пароль root'а:

Після чого нам запропонують прописати sshd і ntpd в автозавантаження:

Натискаємо два рази. щоб sshd запускався, а ntpd - немає. Далі інсталятор запитає нас про те, чи буде на цій машині працювати X Window. Єдине, на що він впливає, - це приміщення в конфіг /etc/sysctl.conf рядки machdep.allowaperture = 1, без якої запуск іксів неможливий:

Тиснемо Enter, щоб погодитися. Далі нас запитають про запуск xdm за замовчуванням, тобто запуску іксів відразу після завантаження системи:

Тиснемо Enter, щоб відмовитися, так як замість убогого XDM ми будемо використовувати більш сучасний менеджер входу (хоча естети можуть ввести тут «yes», щоб насолоджуватися XDM). Далі нам запропонують додати в систему користувача:

Відмовляємося натисканням. цю операцію простіше виконати після установки. Наступний крок - вибір часового поясу:

Вводимо, наприклад, Europe / Moscow. Знайти потрібну зону можна тут: en.wikipedia.org/wiki/List_of_IANA_time_zones. На наступному кроці установник запитає про жорсткому диску, на який буде встановлюватися система, і використанні унікальних номерів DUID в / etc / fstab замість шляхів до периферійних пристроїв:

У домашній машині зазвичай тільки один диск, тому сміливо тиснемо Enter два рази. Далі ми повинні відповісти, чи хочемо ми, щоб OpenBSD використовувала весь диск:

У разі установки OpenBSD всередині віртуальної машини просто тиснемо Enter, щоб віддати весь диск під систему і не мучитися з розбивкою. Якщо ж мова йде про реальну машині, на якій вже встановлена ​​одна або кілька операційних систем, то слід ввести 'e', ​​а потім створити додатковий розділ для OpenBSD за допомогою fdisk.

Після натискання інсталятор зробить попередню розбивку розділу / диска на OpenBSD-партіціі (всі BSD-системи використовують власну схему розмітки диска, яка несумісна з іншими ОС і створюється всередині звичайного розділу) і виведе їх список на екран, надаючи вибір - відкоригувати або погодитися із запропонованою схемою:

Використовуємо openbsd як десктопа
Схема розмітки розділу, запропонована інсталятором, не завжди буває правильною

На даному етапі лізти в нетрі утиліти disklabel, за допомогою якої відбувається розмітка, сенсу немає, тому просто тиснемо Enter, погоджуючись на те, що запропонував інсталятор (тим, хто не терпить автоматичний режим, запропоную посилання на покрокове керівництво по ручній розмітці: goo. gl / eNBta). Після нетривалої процедури розбиття слід вибрати джерело установки системи:

Знову ж тиснемо Enter, погоджуючись на установку з CD. На наступне питання про вибір дисковода також відповідаємо натисканням клавіші «Введення» (у тебе ж тільки один дисковод?). Далі вибір шляху, по якому розташовуються пакети на диску:

Тут взагалі без варіантів. Далі система виведе на екран список «сетів», тобто наборів ПО, і запропонує вибрати потрібні:

За замовчуванням буде вибрано всі, що досить логічно, тому продовжуємо натисканням (щоб виключити з процесу установки будь-якої сет, потрібно використовувати знак «-», так, конструкція «-x *» скасує установку всіх Х-компонентів). Розпочнеться установка системи, яка триватиме буквально кілька хвилин, після чого інсталятор попросить вибрати додаткове джерело установки:

Тиснемо Enter. На цьому все, вводимо reboot, щоб перезавантажитися.

Використовуємо openbsd як десктопа
Закінчення установки системи

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

У базову поставку OpenBSD входить два веб-сервера: nginx і Apache з набором патчів для підвищення безпеки і бекпортамі функціональності з другої версії.

OpenBSD має найбільшою набір якісних драйверів для бездротового обладнання серед усіх BSD-систем.

OpenBSD поставляється з власним звуковим сервером aucat, який можна використовувати для змішування аудіопотоків з різних джерел без необхідності установки pulseaudio або jack.

Постінсталляціонное конфігурація

Для початку увійдемо в систему, додамо нового безправного користувача і призначимо йому пароль. Як і в інших Нікс, зробити це можна за допомогою команд useradd і passwd:

Зверни увагу, що passwd з OpenBSD не допустить застосування коротких і простих паролів, так що доведеться придумати щось вишукане. Тепер додамо в конфіг sudo рядок, яка дозволить створеному користувачеві виконувати будь-які команди від імені root

Тепер можна вийти, набравши команду exit, і залогінитися під ім'ям створеного користувача. Наступний крок, який необхідно зробити, - це встановити bash, графічне середовище і всі необхідні додатки. У OpenBSD додатки поширюються в вигляді портів і пакетів, зібраних з портів. Перший спосіб установки додатків дає більший контроль над установкою, дозволяючи зібрати додатки з тими опціями, які потрібні саме тобі, другий - швидше і простіше. Ми поки не будемо морочитися з портами і для установки всього необхідного скористаємося пакетами.

Тепер можна встановити bash, vim і інші інструменти, які можуть тобі знадобитися:

Тепер можна встановити графічне середовище. Я пропоную використовувати Xfce як легку середу для легкої ОС. У OpenBSD Xfce розбита на безліч пакетів, більшість з яких ніяк не залежать один від одного, тому їх доведеться встановлювати окремо. Щоб інсталювати базу, досить набрати наступну команду:

Використовуємо openbsd як десктопа
Так за замовчуванням виглядає робочий стіл OpenBSD

Пакет витягне разом з собою GTK, Glib, cairo, d-bus, деякі компоненти середовища і все необхідне для їх роботи (крім X.Org, він йде в комплекті базової системи). Після того як середовище буде встановлена, можна запустити ікси, додавши Xfce в автозавантаження:

Перша команда тут потрібна, щоб встановити правильну локаль, дозволивши додаткам коректно виводити текст російською; друга - щоб налаштувати перемикання мов між українським і англійським по клавіші CAPSLOCK; третя запускає Xfce; четверта потрібна, щоб Xfce також потрапила в автозавантаження графічного менеджера логіна, який ми встановимо пізніше. Щоб інсталювати весь Xfce цілком, встанови наступні пакети:

Цей список можна зберегти в файл (ти знайдеш його на доданому до журналу диску), а потім встановити всі разом за допомогою наступної команди:

Щоб налаштувати графічний логін в систему, ми повинні встановити менеджер входу, такий як GDM, KDM, або скористатися стандартним XDM. На жаль, перші два тягнуть за собою велику кількість непотрібних залежностей, а третій виглядає кепсько, тому ми встановимо простий і стильний менеджер SLIM:

Щоб він запускався автоматично після старту системи, додай в /etc/rc.local наступний рядок:

Якщо ж потрібен Автологін, досить додати в /etc/slim.conf два рядки:

Тепер після перезавантаження машини буде відразу стартувати графічне оточення.

Використовуємо openbsd як десктопа
Робочий стіл Xfce в OpenBSD

Пакети і порти

Ми навчилися встановлювати пакети, але що робити, якщо додаток необхідно видалити з системи? Для цього служить команда pkg_delete, просто запусти її з ім'ям потрібного пакету, і ти його більше не побачиш:

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

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

Далі можна перейти в каталог / usr / ports, знайти потрібний порт і зібрати його. наприклад:

Система портів у всіх BSD майже ідентична, тому якщо ти коли-небудь працював з FreeBSD, то легко розберешся.

Використовуємо openbsd як десктопа
Постер, присвячений виходу OpenBSD 5.1

автомонтірованіе

У OpenBSD немає udev, sysfs або динамічної файлової системи devfs, тому стандартні механізми автомонтірованіе не спрацюють. У користувача залишається вибір: або налаштувати архаїчний amd для автомонтірованіе, або зробити так, щоб монтування можна було виконати за допомогою однієї простої команди. Ми підемо іншим шляхом, і пізніше я поясню чому.

Щоб зробити монтування зручним, ми повинні, по-перше, зробити так, щоб диски і флешки міг монтувати будь-який користувач; по-друге, додати необхідні записи в / etc / fstab. Перша операція виконується за допомогою п'яти команд:

Зверни увагу на імена файлів пристроїв. USB-накопичувачі в OpenBSD завжди монтуються як SCSI-диски з ім'ям sd0, sd1 і так далі і буквою, що означає розділ. Розділи зі сторонніми ФС (включаючи FAT і NTFS) отримують імена, починаючи з символу i, тому «sd0i» - це перший розділ (а він зазвичай єдиний) першої увіткненою флешки. Ім'я «cd0a» - це завантажувальний сектор диска в першому дисководі. Тепер монтувати флешки і диски можна за допомогою таких команд:

При цьому графічні середовища, такі як Xfce і GNOME, будуть робити це автоматично при натисканні на ярлик пристрою. Саме з цієї причини ми відмовилися від використання amd, він би вніс додаткову складність, не давши ніяких переваг.

Використовуємо openbsd як десктопа
Розподіл часток BSD-систем серед користувачів

Всього цього достатньо, щоб при наступному завантаженні мережа була повністю працездатною, хоча зміни можна застосувати відразу, виконавши скрипт netstart:

З бездротовими мережами все не набагато складніше. Підтримка механізму WPA, який сьогодні використовують за замовчуванням майже всі бездротові роутери, в OpenBSD вбудована прямо в ядро, а не реалізована у вигляді зовнішнього застосування wpa_supplicant, як в інших Юнікс, тому wicd і NetworkManager працювати не будуть, зате мережу легко налаштувати на рівні системи . Отже, з'ясовуємо ім'я мережевого інтерфейсу за допомогою читання dmesg. Припустимо, ми знайшли ім'я ral0, тепер створюємо файл /etc/hostname.ral0 і пишемо в нього наступне:

Зберігаємося і змушуємо систему перечитати настройки:

І це все. Дійсно все. Якщо ж необхідно отримати список доступних мереж, то це легко зробити за допомогою наступної команди:

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

Що далі?

Ми встановили, налаштували і повністю «десктопізіровалі» OpenBSD за якихось півгодини. Це дійсно швидко і не так складно, як могло б здатися. Більш того, багато етапів установки і настройки в OpenBSD вдалося виконати набагато швидше і простіше, ніж в інших ОС. Зверни увагу, що ми отримали повністю робочий десктоп, що не виправивши жодного рядка в головних конфігах системи. Багато дій, які в інших системах зажадали б вивчення синтаксису чергового конфіга і його редагування, в опенке можна виконати за допомогою однієї команди і дуже легко заскріптованних. Коли ти почнеш використовувати OpenBSD щодня, ти вбив його, як просто в ній зробити, здавалося б, складні речі.

Список інсталяційних сетів

  • bsd - ядро ​​системи (обов'язковий для установки)
  • bsd.mp - ядро ​​для багатопроцесорних систем
  • bsd.rd - ядро ​​з підтримкою RAM-диска (для відновлення системи)
  • base51.tgz - містить базові компоненти (обов'язковий для установки)
  • etc51.tgz - містить файли каталогу / etc (обов'язковий для установки)
  • comp51.tgz - компілятор, заголовки та бібліотеки
  • man51.tgz - довідкові сторінки
  • game51.tgz - набір простеньких текстових іграшок
  • xbase51.tgz - бібліотеки і утиліти для X11
  • xetc51.tgz - конфіги X11
  • xfont51.tgz - набір шрифтів X11
  • xserv51.tgz - X-сервер
  • xshare51.tgz - довідкові сторінки, налаштування локалі, заголовки та інше для X Window

Покажи цю статтю друзям: