- Что лучше: дистрибутив Linux в яблочном стиле или нормальный хакинтош?
- Преимущества Linux над macOS
- Экосистема
- Железо
- Безопасность
- Полный контроль
- Личный и профессиональный рост
- Стабильность и производительность
- Хакинтош
- Десктопы
- Планшеты и смартфоны
- На правах рекламы
- How to Run Mac Apps on Linux
- Run a macOS Virtual Machine (All Apps)
- Using the Darling Translation Layer (CLI Only)
- Building and Installing Darling
- Методы удаленного доступа к Linux GUI
- Введение
- Установка GUI
- Удаленный доступ
- TeamViewer
Что лучше: дистрибутив Linux в яблочном стиле или нормальный хакинтош?
Дистрибутив Trenta OS для публичного тестирования обещают выпустить в начале 2021 года
На вкус и цвет товарищей нет, но некоторым нравится интерфейс macOS. При этом они не хотят погружаться в закрытую экосистему, где Apple может запретить любую программу на компьютере, отслеживая запуск каждого бинарника: хэши отправляются в Apple в реальном времени. Разумеется, для нашей безопасности.
Конечно, большинство пользователей Apple благодарны за такую заботу, но некоторые считают её неуместной.
Выход есть: свободная и универсальная система Linux поддерживает любой GUI, в том числе «яблочный». Есть особые дистрибутивы с интерфейсом в стиле macOS или iOS — специально для пользователей с повышенными эстетическими запросами. И для тех, кто стремится вырваться из «огороженного сада» Apple, не теряя при этом чувство прекрасного.
Преимущества Linux над macOS
Есть узкие ниши, где выбор в пользу macOS оправдан, например, видеомонтаж в Final Cut Pro, профессиональная звукообработка и микширование в Logic Pro X. Тут действительно Linux или Windows сложно конкурировать с Mac. Но в других ситуациях Linux объективно предпочтительнее. Вкратце перечислим причины, по которым люди переходят с macOS на Linux.
Экосистема
Linux — это не операционная система и не одна компания, а целое сообщество компаний, организаций, разработчиков, которые выпускают огромное количество Linux-совместимых устройств, драйверов, окружений рабочего стола, дистрибутивов и т. д. Это буквально тысячи компаний, сотни тысяч или миллионы разработчиков.
В этом смысле сравнивать Linux и macOS просто нечестно в отношении macOS, это как избиение новичка в спортивной секции группой профессиональных боксёров.
Железо
Свободную ОС можно установить практически на любой компьютер на любой архитектуре CPU, выбор безграничный: от одноплатников до последней модели Tesla Model S (см. репозиторий Tesla на GitHub).
Новый дизайн Model S с Linux-компьютером на 10 терафлопс
Даже на стареньком компьютере с 64 МБ оперативной памяти заведётся минималистичный Tiny Core. Или подбираем произвольную конфигурацию для мощнейшего игрового десктопа, каких у Apple просто нет в наличии. Хотя сразу заметим, что macOS можно поставить на стороннем железе (см. раздел «Хакинтош»).
Безопасность
Количество зловредов для macOS постоянно растёт. Здесь уже не та безопасная гавань, что десятилетие назад.
Под Linux тоже есть вирусы, но это свободная система с открытым исходным кодом, где уязвимости мгновенно исправляют, как только обнаружат. А вот в macOS они долгое время могут оставаться неисправленными, как это произошло с последней уязвимостью в sudo (CVE-2021-3156): её мгновенно запатчили во всех дистрибутивах Linux, но не в macOS.
Наверняка Apple не заставит долго ждать, но порочна сама система, основанная на центральном вендоре, который превращается в единую точку отказа. Увидеть исходный код macOS невозможно. Это как автомобиль с заваренным капотом, потому что вам запрещено смотреть на двигатель.
Полный контроль
Что-то не нравится в интерфейсе или функциях? Просто убираем это или настраиваем на свой вкус. Так работает практически всё в Linux. Не нравится интерфейс GNOME в Ubuntu? Ставим KDE. Есть ещё масса расширений для GNOME. Самые популярные — загрузка пользовательских тем оформления, виджет с погодой и GSConnect для интеграции с Nautilus, Chrome и Firefox.
Теоретически можно изменить даже ядро: скомпилировать его с нестандартными параметрами или изменить настройки ядра в процессе работы. Например, вот некоторые настройки в файле /etc/sysctl.conf :
Открытый исходный код позволяет внести изменения в любой компонент операционной системы.
Личный и профессиональный рост
Полный контроль над системой несёт и косвенные преимущества. Это возможности для саморазвития, улучшения профессиональных знаний в различных областях IT, бонус для профессионального роста и карьеры. Знание Linux необходимо в очень многих специальностях: девопсы, облачные системы, Kubernetes, да и вообще для любого кандидата. Речь идёт не только о технических знаниях, таких как установка приложений из консоли, а о философии Open Source, без понимания которой сложно представить образованного человека в 21 веке.
Знание macOS тоже полезно, потому что такому человеку проще будет учить Linux. Многие инструменты одинаковые, ведь это родственные ОС из одного семейства *nix.
Стабильность и производительность
Стабильность и высокая производительность вытекают из предыдущих преимуществ — открытый исходный код, гибкость в настройке, безопасность. Именно по этим причинам Linux является главной серверной системой. У админа настолько полный контроль над платформой, что он может настроить её на максимальную производительность для конкретных задач.
Полный контроль над системой зачастую идёт в ущерб комфорту. Для многих юзеров удобнее, когда оптимальный выбор уже сделан по умолчанию. В Linux это не так. Но только полный контроль обеспечивает надёжность.
Ещё одна веская причина выбрать Linux вместо macOS.
Сегодня большинство Windows-игр отлично запускаются под Linux благодаря системе Proton, интегрированной в Steam Play.
Под macOS нормальные игры придётся запускать через программы виртуализации типа Parallels Desktop, потому что Proton для macOS не существует. И есть серьёзные сомнения, что его удастся разработать в силу особенностей macOS. Например, macOS не поддерживает программные интерфейсы Vulkan, которые необходимы для работы DXVK, а также ряд других важных API для Proton и Wine.
Поэтому для геймеров Linux — лучший вариант.
Конечно, есть и другие причины перехода на Linux: экономические, этические и профессиональные, этот список очень длинный.
Хакинтош
Как мы уже упоминали, есть вариант установить практически любую версию macOS на произвольном железе. Полный набор инструкций, видео и форумов с советами см. на сайте Hackintosh.com.
Технические спецификации всех моделей Mac за все годы опубликованы на сайте EveryMac.com. Это чтобы сравнить со своей конфигурацией и подобрать оптимальную версию macOS.
Например, все модели 2020 года:
А вот сравнение технических характеристик трёх произвольных моделей iMac за 2017-2019 годы:
Это некий компромисс, почти настоящий «мак», но в то же время свобода устанавливать систему на любом железе, как хочется вам, а не компании Apple. То есть тут пользователь уже перестаёт быть продуктом, а делает продуктом систему macOS, хотя в идеологии Apple должно быть наоборот.
На видео показана пошаговая установка macOS Big Sur (macOS 11) на совместимый компьютер с помощью конфигуратора OpenCore Gen X (Dortania).
Десктопы
Вместо хакинтоша можно поставить полноценный Linux, со всеми преимуществами надёжной опенсорсной системы. И если хочется красивый интерфейс в стиле macOS, то Linux его обеспечит. Есть дистрибутивы в стиле Apple для настольных компьютеров, ноутбуков, планшетов и смартфонов.
Для десктопа довольно много дистрибутивов, которые похожи на macOS по элегантному и минималистическому стилю. Вот некоторые из них:
- elementary OS на базе Ubuntu, но с окружением рабочего стола Pantheon, написанном с нуля специально для создания эстетического эффекта macOS. В комплекте ряд приложений, выполненных в том же визуальном стиле: калькулятор, календарь, текстовый редактор, менеджер файлов, браузер Epiphany и др.
elementary OS
Иконки Trenta
Планшеты и смартфоны
Специально для планшетов разработан JingOS — «первый в мире дистрибутив Linux в стиле iPad».
Правда, разработчики ещё не опубликовали исходный код в репозитории на GitHub, но обещают сделать это в течение полугода. JingOS доступна для скачивания с 31 января 2021 года, то есть это совсем свежий дистрибутив.
Главные особенности: интерфейс и управление в стиле iPad, жесты мультитач, красивые иконки и анимации. JingOS идёт в комплекте с некоторыми нативными Linux-приложениями, включая Calendar, Timer, Files, Media Player и Calculator, но разработан специально для планшетов.
JingOS — полноценный Linux, запускающий на планшете нативные десктопные приложения, такие как VS Code, Libre Office и др. Дистрибутив основан на Ubuntu 20.04, KDE v5.75 и Plasma Mobile 5.20, но скоро Plasma Mobile заменят на собственную JDE (Jing Desktop Environment).
Дистрибутив пока протестирован только на Surface Pro 6 и Huawei Matebook 14. Летом обещают выпустить версию JingOS ARM с поддержкой Android-приложений. На самом деле компания хочет продавать собственные ARM-смартфоны и планшеты JingPad, для этого и разрабатывает операционку. Но обещает, что при этом система всегда останется открытой и бесплатной.
Предположительно, JingPad выйдет на восьмиядерном процессоре (4 ядра Cortex-A75 на 2,0 ГГц и 4 ядра Cortex-A55 на 1,8 ГГц) с графикой PowerVR GM 9444. То есть по производительности он будет примерно как Pixel 3.
Пока что разработчики выложили для скачивания версию JingOS 0.6 (образ ISO), но лучше дождаться более стабильной версии 0.8 в марте.
Кстати, летом 2020 года проходила информация, что разработчики дистрибутива Deepin Linux тоже готовят версию для планшетов в стиле iPad.
Deepin Linux для планшетов
Подводя итог, нет ничего плохого в стремлении сделать интерфейс в стиле Apple. На самом деле, дизайнеры UI/UX этой компании делают хорошую работу, у них есть чему поучиться. Они выдержали похожий минималистичный стиль на устройствах разного форм-фактора, и это выдающийся дизайн. Если кто-то пытается реализовать «стиль Apple» на десктопе или планшете, то в реальности он просто пытается реализовать удобный, эффективный и красивый интерфейс.
На правах рекламы
Виртуальные серверы с возможностью создать свой тариф в несколько кликов. Скорость интернета — 500 Мегабит, новейшее железо и возможность устанавливать ОС со своих ISO. Всё это про наши эпичные серверы. Максимальная конфигурация — 128 ядер CPU, 512 ГБ RAM, 4000 ГБ NVMe! Поспешите заказать.
Источник
How to Run Mac Apps on Linux
macOS and Linux share a common heritage. Unfortunately, that does not mean applications can smoothly transition between the operating systems. To run Mac apps on Linux, you’ll need some sort of virtual machine or translation layer.
Run a macOS Virtual Machine (All Apps)
The most reliable way to run Mac apps on Linux is through a virtual machine. With a free, open-source hypervisor application like VirtualBox, you can run macOS on a virtual device on your Linux machine. A properly-installed virtualized macOS environment will run all macOS apps without issue.
Virtualizing a desktop like this does require significant RAM, so it may not run smoothly on low-resource devices. For machines with the technical specs, virtualizing an operating systems through a VirtualBox virtual machine is the best option.
Using the Darling Translation Layer (CLI Only)
You can also run a translation layer called Darling. This works like WINE, which creates a Windows-to-Linux translation environment that allows you to run some Windows applications on Linux systems. Darling tries to accomplish the same goal between macOS and Linux. Because macOS and Linux both share the same UNIX-style base, Darling is less resource-intensive than WINE, producing better results in more circumstances.
For the time being, Darling can only work with very simple GUI apps and several command-line apps. While GUI app support is a goal for the project, the feature hasn’t yet been implemented. Basically, you can run a macOS shell in Terminal reliably and may or may not be able to run other apps effectively.
It also contains an enormous amount of code, requiring about 12 gigabytes of disk space after building. It’s essentially duplicating the functionality of the macOS operating system. So, if you worry about remote executables corrupting your system, you might want to avoid a package of this size.
Building and Installing Darling
1. Follow the installation instructions to download the correct dependencies for your Linux distro from the Darling Install page. Depending on your distro, you may need to run a lengthy command.
For example, for Ubuntu, run the following Terminal command to download Darling’s dependencies:
2. Clone Darling’s git depository to your local machine:
Источник
Методы удаленного доступа к Linux GUI
В службу технической поддержки RUVDS регулярно обращаются по поводу GUI и удаленного доступа к нему на виртуальных серверах с Linux, несмотря на то что в интернете достаточно много материалов освещающих эту проблему. Поэтому, для наших пользователей мы решили собрать всё по этой теме в одну статью.
Введение
На всякий случай возможно стоит упомянуть, что SSH — основной способ предоставления доступа к линуксовым виртуалкам на RUVDS. Большая часть действий описываемых в этой статье будет осуществляться именно таким образом.
Для подключения необходимо найти SSH-клиент для вашей операционной системы.
- OpenSSH; если Вы пользуетесь Linux, например Ubuntu, скорее всего всё уже установлено, до нас, так что можно смело писать в терминале: ssh root@[IP].
- PuTTY есть и для Linux, в том числе в официальных репозиториях Debian и Ubuntu.
MAC OS:
Установка GUI
Итак, перейдем к установке GUI. Сначала нужно поставить графическую подсистему:
Для Debian/Ubuntu:
Далее следует установка Desktop Environment (DE). Их существует великое множество. Мы рекомендуем ставить на сервер более легковесные среды, а еще лучше, не ставить вовсе. Первые две DE достаточно компактные, функциональные и «привычные».
1. Xfce
Для Debian/Ubuntu:
Можно поставить дополнительно:
Добавление русской раскладки:
Сочетание клавиш можно менять на свое усмотрение, например:
Чтобы эта команда запускалась каждый раз при запуске LXDE, нужно добавить в конец файла с помощью вашего любимого vi строку: @setxkbmap -option grp:switch,grp:ctrl_shift_toggle,grp_led:scroll us,ru. Или вот так…
Следующие две DE являются чрезвычайно легкими. Если уж GUI нужен на сервере, вероятно, стоит использовать именно их.
3. FluxBox
Для Debian/Ubuntu:
4. Openbox
Для Debian/Ubuntu:
Далее следуют наиболее популярные на десктопах графические оболочки.
5. Gnome
Для Ubuntu/Debian:
Замечание: с настройкой VNC-сервера под Gnome что-то пошло не так… Сервера из репозиториев tightvncserver и vnc4server так и не согласились сотрудничать, поэтому пришлось собрать пару deb-пакетов руками. Если у Вас не получится настроить сервер, то мы можем порекомендовать скачать собранный нами архив с tigervnc-server’ом и поставить его. Для этого:
7. Cinnamon
Для Debian/Ubuntu:
Если Вы хотите получать доступ к GUI через «Аварийный режим», то необходимо сделать следующее:
Мало того, необходимо обеспечить запуск графической оболочки при старте системы. Для этого можно установить какой-нибудь экранный менеджер (Display Manager, DM), например:
Или в случае с CentOS:
Если необходимости в доступе из личного кабинета нет, то следует выполнить:
Заметка: Ubuntu предлагает своим пользователям несколько метапакетов для более удобной установки нужной DE:
Далее, есть много способов получить удаленный доступ к GUI.
Удаленный доступ
На виртуальном сервере, в зависимости от OS нужно произвести следующие действия.
Далее, если вы используете Windows, подключаемся через встроенный RDP-клиент, Remote Desktop Connection (Подключение к удаленному рабочему столу).
Стандартный порт 3389. Для Linux есть масса клиентов которые можно установить из репозиториев: freerdp и remmina, gnome-rdp, vinagre и т.п.
Также можно пробросить RDP-шный трафик через SSH-туннель. Для этого нужно поправить конфигурационный файл xrdp:
В секцию [globals] нужно добавить строку: address=127.0.0.1
Проверить, что всё правильно, можно так:
Затем если вы используете cygwin или mingw, linux или mac os:
Запустите PuTTY. В древовидном меню слева Connection → SSH → Tunnels. Далее добавляем новый Forwarded Port (Source port: 3389, Destination: localhost:3389). Нажимаем Add.
Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.
Далее для Windows:
- Можно использовать вышеупомянутый клиент: remmina
- Если в браузере хотите: novnc — HTML5 VNC client
- И ещё куча всяких разных: directvnc, gnome-rdp, krdc, xtightvncviewer, vinagre, xvnc4viewer
Для MAC OS:
OS X предоставляет для этого встроенное приложение Screen Sharing. Можно также использовать Safari
Сервер: На Вашей виртуальной машине установите VNC сервер:
Если на Вашей системе работает файрвол необходимо открыть соответствующие порты. Пример для CentOS
При возникновении проблем с отображением иконок и шрифтов при использовании xfce4 по Ubuntu/Debian:
Если вы хотите, чтобы VNC-сервер стартовал автоматически, создайте файл:
Со следующим содержимым:
Теперь можно подключиться, например, через UltraVNC. Для этого нужно запустить UltraVNC Viewer, в поле VNC Server записать [IP]::5901 (по-умолчанию: 5901, 5902 и т.п. для первого дисплея, второго и т.д. соответственно) и нажать на кнопку подключиться.
Также можно пустить vnc-шный трафик через ssh-туннель. Для этого отредактируйте:
Затем если вы используете cygwin или mingw, linux или mac os:
Если PuTTY:
Запустите PuTTY. В древовидном меню слева Connection → SSH → Tunnels. Далее добавляем новый Forwarded Port (Source port: 5901, Destination: localhost:5901). Нажимаем Add.
Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.
Затем открываете UltraVNC Viewer и в поле VNC Server вводите: localhost::5901 после чего подключаетесь.
Также можете попробовать другие VNC-сервера:
x11vnc — фактически VNC-сервер (как vnc4server или tightvnc), но позволяет получать доступ к уже существующей X-сессии. Т.е. если Вы настроили графическую оболочку таким образом, что она запускается при старте системы, то можно использовать следующий вариант:
После подключения по VNC (на порт 5900) Вы должны увидеть тоже что и в «Аварийном режиме».
Для старта x11vnc при запуске OS необходимо проделать следующее:
Теперь немного поинтереснее. Одна замечательная компания NoMachine разработала отличный протокол NX на замену VNC. Клиенты для подключения по этому протоколу бесплатны, а официальное серверное ПО от NoMachine стоит много денег. В свое время, эта же компания поддерживала проект FreeNX работы на котором со временем затихли; текущая версия 0.7.2 от 2008-08-22. Но, к счастью, нашлись люди создавшие форк и назвавшие его x2go. К сожалению, x2go не совместим ни с NX от NoMachine, ни с freeNX. Так что клиент берем тут.
Установка сервера на Debian (источник):
Для примера поставим эту DE:
Далее следуем инструкциям с оффициального сайта:
Вывод следующей команды должен показать, что x2go готов к работе:
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n» и заменить её на «tty -s && mesg n».
Следующая команда выведет путь до исполняемого файла startfluxbox, понадобится при настройке клиента:
Установка сервера на Ubuntu:
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».
Установка сервера на CentOS:
Клиент для линукс ставится из вышеприведенных репозиториев следующей командой:
Для Windows — скачиваем, ставим, запускаем. По той же ссылке, приведенной выше, есть клиент для OS X.
В настройках сессии указываем: в поле Host — IP вашего сервера, в поле Login — root, порт оставляем как есть, session type — тот GUI который ставили.
Как вы можете видеть, есть возможность аутентификации по ключу. В общем много всякого. Посмотрите сами. И звук можно через PulseAudio выводить.
После нажатия Ok вы увидите вот такие вот очаровательные штучки, на которые нужно нажать для получения запроса на ввод пароля и подключения к выбранной сессии:
Замечание: обратите внимание, что в списке нет Вашего любимого FluxBox’а поэтому путь к нему приходится прописывать руками.
Важной возможностью x2go является возможность запуска любого графического приложения вообще без установки DE. Для этого в настройках сессии нужно в секции session type нужно выбрать пункт single application и выбрать выполняемое приложение или ввести путь к программе которую следует запустить.
В этом случае установка ПО на сервер будет выглядеть следующим образом. В случае с Ubuntu:
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».
И настроив сессию как показано ниже, можно будет запустить браузер на удаленном сервере, а на вашей машине откроется окно его отображающее:
Или так; тогда просто откроется окно терминала:
Ниже вы можете видеть скриншот окна статуса текущей сессии. Оранжевыми цифрами отмечены кнопки:
- «Suspend session» — после нажатия на эту кнопку соединение будет разорвано, но сессия останется и будет ожидать повторного подключения. Все запущенные вами на сервере приложения продолжат свою работу;
- «Terminate session» — после нажатия подключение к серверу будет разорвано, а запущенные вами на сервере приложения будут завершены.
TeamViewer
Последний способ удаленного доступа к рабочему столу.
Установка на Ubuntu:
Установка на Debian:
Установка на CentOS:
Также необходимо принять лицензионное соглашение TeamViewer’а, это можно сделать с помощью «Аварийного режима», либо добавить следующие строки в конец файла /opt/teamviewer/config/global.conf:
Следующая команда покажет состояние демона TeamViewer’а и необходимый для подключения девятизначный TeamViewer ID:
После запуска клиента скачанного тут, нужно ввести TeamViewer ID в поле Partner UD и нажать на кнопку «Connect to partner». Далее TeamViewer запросит пароль: [PASSWD].
Источник