Графические оболочки на серверы: стоит ли игра свеч?
Знаете, что общего между GUI и стояночным тормозом на автомобиле? Их наличие упорно игнорируют матёрые юзеры. Но если бывалому водителю легко трогаться под уклон только с педали тормоза, то новичку ручник будет очень кстати. Точно такая ситуация с графическими оболочками для серверов.
Если вы устали от командной строки или только начинаете её осваивать, предлагаем рассмотреть достойную альтернативу — графический интерфейс. Сейчас расскажем, в чём профит от использования графических оболочек и почему удобный интерфейс всё-таки полезная штука.
От командной строки до графической оболочки: путь интерфейсов за полвека
Ключевая задача интерфейса — подружить оператора с машиной. И чем быстрее и удобнее это будет, тем лучше. Раньше юзерам приходилось подстраиваться под алгоритмы компьютера и использовать точные инструкции, затем появились графические оболочки и общение с ЭВМ стало более комфортным.
Когда администратора попросили поставить графический интерфейс на сервер
Графический пользовательский интерфейс (от англ. — graphical user interface, GUI) — графическая оболочка с оконным менеджером, позволяющая запускать приложения без работы с консолью.
На переход от командной строки до графического интерфейса потребовалось почти полвека. CLI остаётся популярным инструментом, но всё больше админов пробуют графические оболочки для более удобной работы с серверами.
Вот как это было:
1960–70-е — операторы управляют компьютерами через перфокарты, командная строка только зарождается, а об удобной графической оболочке даже не приходится мечтать.
1981 — Xerox выпускает Star 8010, которая становится первой коммерческой информационной системой с внедрёнными элементами графического интерфейса. В это же время выходит MC DOS, которая в дальнейшем станет основой для ранних версий Windows, представляющих первые GUI, запущенных поверх командной строки.
1983 — Apple выпускает первый персональный компьютер Lisa с полноценным графическим интерфейсом.
1985 — Microsoft презентует Windows 1.0 как расширение MS-DOS. Первая Windows имела мозаичную структуру, которая оказалась неудобной для пользователей. Позже Microsoft скопируют режим окон у Apple и выпустят Windows 2.0, что станет причиной затяжных судебных разбирательств, тормозящих развитие GUI.
1987 — появляется стандарт X Window System, который определил базовые функции для графической среды. X Window впервые программно разделил сервер и клиент, что позволило реализовать графический интерфейс для управления другим компьютером по сети через удалённый доступ.
1992 — Linux получает поддержку TCP/IP, которая позволила импортировать X Window. Этот момент считается зарождением GUI в Linux.
1995 — выходят Windows 95 и графическая среда KDE для Linux. Функциональность и юзабилити программ примерно на одном уровне, KDE внешне напоминала Windows.
1999 — появляется графическая среда GNOME Linux, главный конкурент KDE. Визуально GNOME полностью отличалась от KDE — с этого момента GUI для Linux перестали быть похожими на импорт оконного менеджера из Windows.
2000-е и н.в. — графических оболочек становится больше, для серверов на базе Linux появилось много вариантов GUI. С развитием юзабилити и функциональности интерфейса увеличивается нагрузка на сервер — современные GUI стали довольно прожорливы, но позволяют полностью обходиться без командной строки.
Графический интерфейс можно смело назвать ступенькой эволюции в языке оператора и машины. Появление GUI продиктовано трендом популяризации ЭВМ. Развитие технологий сделало компьютеры дешевле и доступнее для рядовых пользователей, а разработка графической оболочки снизила порог входа — освоить ПК стало проще.
Историческая битва — кто кого: CLI vs GUI
Интерфейс командной строки (CLI) — способ общения с компьютером с помощью командной строки. Такой подход появился раньше графических интерфейсов и считается более трушным инструментом для администратора, но всё не так однозначно. В графических оболочках тоже есть свои плюшки — разберёмся, в чём основные плюсы и минусы.
За — GUI удобнее, чем консоль
Графические оболочки программируются в первую очередь под пользователей — они интуитивно понятны. В GUI проще освоиться, в отличие от CLI, где нужно запоминать широкий спектр команд и синтаксисов. В графическом интерфейсе начинающему админу будет проще работать.
Наш конфигуратор: здесь можно найти панель под любую ОС
На сайте RUVDS можно оформить лицензию на панель ispmanager 6 Lite всего за 200 рублей в месяц при заказе любого сервера на ОС Ubuntu, Debian и CentOS 7. Это удобная панель управления, в которой объединены графический интерфейс и командная строка. Подойдёт как для профи, так и начинающих администраторов.
Панель ispmanager. Здесь есть и CLI, и GUI
За — лучше подходит для многозадачности
В графическом интерфейсе удобнее работать с сайтами — он хорош при многозадачности и позволяет быстро переключаться между окнами. Работа из командной строки в таком случае займёт больше времени — задачи обрабатываются последовательно, а навигация и набор команд состоят из больших строк кода.
В оконном менеджере удобнее работать сразу по нескольким задачам, быстрее навигация и ориентирование
Фактически из преимуществ GUI появляются и недостатки, которых нет у CLI: нагрузка на сервер и более низкий порог безопасности, определяемый человеческим фактором.
Против — GUI расходует ресурсы сервера
GUI не подходит для установки на слабые машины — вместо полезной нагрузки графический UI использует мощности сервера для комфортной работы оператора. Особенно сильно GUI нагружает серверы на базе семейства Linux, у которых в ОС нет предустановленной и стандартизированной графической оболочки, как в Windows. Хотя есть исключения.
Сейчас можно найти много графических оболочек для маломощных серверов на базе ОС семейства Linux: например, LXDE, Xfce и MATE
Если для работы GUI не хватает ресурсов сервера, можно удалить ранее установленные пакеты. В таком случае обязательно требуется снепшот системы или бекап на случай проблем с зависимостями софта. Из-за этого возникают дополнительные сложности, но по итогу в долгосрочной перспективе работать в графическом UI всё же удобнее.
Против — больше бэкдоров из-за человеческого фактора
Отход от точных инструкций в угоду пользовательской доступности снижает безопасность системы. Обеспечить безопасность графического UI сложнее, чем консольного интерфейса. Ярким примером более слабой защищённости графических оболочек стала история вируса ILOVEYOU в 2000 году.
В 2000 году вирус заразил более 50 миллионов компьютеров за 10 дней, это 10% всех пользователей интернета на то время
Вредоносный скрипт маскировался под текстовый файл, который пользователи запускали при открытии документа — при использовании командной строки такая уязвимость просто невозможна.
Так что лучше — консоль для сервера или графический UI?
GUI считается логичным развитием интерфейсов после CLI. Исторически командная строка считается более функциональной и безопасной, чем графическая оболочка, а GUI — более удобным и лёгким для пользователей. Для работы с CLI важно знать команды и разбираться в синтаксисе, а для графической оболочки — нужны свободные ресурсы сервера. Оптимальный вариант — софт, совмещающий возможности CLI и GUI. Например, панели управления.
Наши партнёры из ispmanager разрабатывают панель управления, в которой объединены графическая оболочка и командная строка. Инструментарий панели позволяет работать с графическим интерфейсом на серверах с KVM виртуализацией и даже VNC, на которых поставить GUI напрямую невозможно.
Панель управления ispmanager. Все элементы в GUI информативны и интуитивно понятны, но при желании всё можно сделать и в CLI
Панель платная, но есть тестовый период, где можно обкатать софт на своём сервере. В интерфейсе легко разобраться и всегда можно выбрать, как управлять сервером: через Shell-контроль или в графическом интерфейсе.
Если устали от командной строки, попробуйте ispmanager.