Что произойдет, если я установлю драйвер Linux в Mac OS X?
Итак, в последнее время я получил систему Mac, и я планировал установить плату Intel WiFi (в качестве обновления для текущей карты). Теперь, как мы знаем, Apple и Intel не поддерживают Wi-Fi.
Однако эта же карта работает в Linux.
Что произойдет, если я буду вынуждать драйверы Intel для ядра Linux в Mac OS X? Будет ли это работать? Будет ли серьезная нестабильность или потеря данных? Возможно ли это?
5 ответов
Что произойдет, если я буду вынуждать драйверы Intel для Linux Ядро в Mac OS X? Будет ли это работать? Будет ли серьезная нестабильность или потери данных? Возможно ли это?
В лучшем случае? 100% ничего. В худшем случае? Уничтожьте всю систему и сделайте ее непригодной или даже не загружаемой.
В то время как Mac OS X и Linux являются разными «ароматами» Unix, вы не можете просто захватить части из одной ОС и просто установить ее в другую ОС и ожидать, что они будут работать.
Тем не менее, если есть исходный код для драйвера, вы можете потенциально скомпилировать их для Mac OS X с помощью набора инструментов разработки Xcode.
Но это один большой if . Реальность заключается в компиляции исходного кода Linux-приложения в системе Mac OS X из системы Linux — это crapshoot. Иногда это работает, и вы можете использовать хорошие инструменты Linux в системе Mac OS X. Но иногда это просто не сработает. И это на уровне приложений. На уровне водителя это еще менее правдоподобно или выполнимо; и даже если бы это было выполнимо, это было бы трудно сделать в лучшем случае.
Тем не менее, похоже, было с открытым исходным кодом, чтобы скомпилировать Linux-драйверы Intel для Mac OS X как показано здесь . Но обратите внимание, что упомянутые версии Mac OS X — Mac OS X 10.4 и 10.5; ничего более современного.
Ничего не произойдет, потому что они не будут работать (модули ядра). MacOS и Linux имеют 2 совершенно разных ядра. Это похоже на попытку перевести двигатель с одного автомобиля на другой: он не будет работать, потому что все соединения /спецификации совершенно разные.
Кроме того, в Mac OS X нет команд lsmod /insmod /modbrobe /rmmod .
Теперь, если вы попробуете бинарные драйверы, которые были бы похожими — прощайте мои сравнения с автомобилем — получите некоторые материалы для автокресла (в соответствии со спецификациями для бренда A) и попытайтесь собрать (скомпилировать) автокресло для бренд B. Если два автомобильных бренда совместимы в области автомобильных сидений, чем вы, вероятно, сделаете это, и это может сработать. Но если вы попытаетесь построить гоночное автокресло из материалов для 20-летнего автомобиля, у вас будет грубая поездка, если вы не потерпите краха и не повредите себе.
Как уже было опубликовано: это невозможно.
Прежде всего, нет такой вещи, как «force install». Нечего устанавливать, и даже если есть что-то, что нужно установить, нет «форсинга». Установка может иметь разные значения, но эти два относятся к вашему вопросу:
Установка означает установку пакета Mac OS X с помощью установщика OS X. Это пакет, содержащий файлы для установки и инструкции для системы установщика, чтобы он знал, куда и что делать, и как это сделать.
Установка означает получение драйвера для части оборудования, загруженного в ядро. OS X работает с использованием так называемых расширений ядра (файлы .kext, или официально, «пакеты», потому что это то, что они есть) для добавления функциональности в ядро. Драйвер — это дополнение, а функциональность — возможность управлять куском оборудования.
Оба случая очень привязаны к операционной системе. Это означает, что вы не можете «установить» что-то без соответствия точкам 1 и 2. Хотя вы можете технически пропустить точку 1, вручную используя программу «kextload» для загрузки файла в качестве расширения ядра, вы не сможете совместить точку 2: только расширения ядра могут быть загружены в ядро. Расширения ядра должны соответствовать ABI и API ядра. Эти два аббревиатуры (не стесняйтесь смотреть их, их полное имя и смысл не имеют отношения к ответу) сопоставимы с соответствующими электрическими розетками для электрических пробок. Это интерфейсы.
Если вы пытались смешивать и сопоставлять двоичные файлы (потому что это то, что есть расширения ядра, модули и драйверы), это не сработает, потому что они несовместимы с ядром и в некоторых случаях процессором, который должен выполнить код. Эта совместимость с ядром заключается в том, что мы приходим к части ABI и API: эти интерфейсы подобны газовым, водяным и электрическим соединениям. Предположим, что Windows — газ, Linux — электричество, а OS X — вода. Если вы попытаетесь подключить подключаемый вилку Linux к водонагревателю OS X, вы не получите ничего, чтобы работать. Вода не течет через электрический штепсель, и электрическая вилка не получает никакого электричества из воды.
Если вы попытаетесь загрузить драйвер linux (который называется модулем ядра) в ядро OS X, используя kextload из командной строки в OS X, он просто скажет вам, что он не знает что делать с файлом, который вы предоставили. Там нет принуждения, он просто ничего не может сделать с этим файлом, так же, как вы не можете заставить лампочку работать от вашего водопроводного крана дома.
Что касается вашей проблемы: чего вы пытаетесь достичь? Если у вас возникла проблема с беспроводным соединением, проблема обычно связана с сетью или средой. Если вам не хватает определенных функций, таких как разные частоты или новые беспроводные протоколы, вы можете попытаться просто установить лучшую поддерживаемую карту. В Интернете есть списки поддерживаемых беспроводными картами, которые будут работать нормально. Intel не является одним из них.
Я надеюсь, что это поможет вам и сделает все как можно более ясным.
Нет, это невозможно, не больше, чем вы можете запускать любые другие исполняемые файлы Linux в OS X (без использования виртуальной машины).
Источник
Debian GNU/Linux + Macbook Air 2017 (установка wifi драйверов)
Так случилось что захотелось снести MacOS на Macbook’е Air и поставить что то более свободное и линуксовое. Макбук 2017 года, долгое время пользовался MacOS Mojave, обновляться до новых выпусков, зная возможные проблемы, желания не было. Немного перебирая варианты дистрибутивов и попробовав различные Live образы, выбор пал на Debian 11 но так как официально он еще не вышел (выход намечен на 14 августа 2021), то взял его второй релиз кандидат Bullseye RC 2.
Проблема 1
Вот тут и появился первый подводный камень: Debian поддерживает не все wifi устройства из коробки. На помощь могут прийти non-free прошивки, которые можно установить после установки системы, добавив репозитории этих несвободных прошивок, в файле sources.list .
Проблема 2
Теперь появляется второй подводный камень: а как мы установим прошивку для wifi устройства если у нас не работает сеть после установки? Тут уже на помощь пришел смартфон с включенным режимом USB Tethering. Подключив с помощью кабеля USB к макбуку, установщик на удивление сразу распознал это как проводное сетевое соединение. Таким образом интернет соединение для установки драйверов на wifi и первоначальных пакетов, мы себе обеспечили.
Действия после установки
Сам процесс инсталляции я описывать не буду так как все индивидуально, и это тема для отдельной статьи.
После установки открываем терминал и утилитой lspci узнаем модель нашего wifi устройства, введя следующую команду:
На выводе получим название модели устройства, в моей случае это:
BCM4360 это и есть модель wifi устройства. Свободных прошивок к сожалению на него нет и теперь чтобы wifi заработал, нам придется установить несвободный драйвер broadcom-sta-dkms который предоставляет исходный код для модуля ядра wl Остальной список поддерживаемых моделей можно посмотреть в описании драйвера https://packages.debian.org/buster/broadcom-sta-dkms
Так же перед установкой, поставим пару необходимых пакетов wireless-tools и wpasupplicant
Далее открываем из под рута, файл sources.list (я использую nano)
И вписываем возле каждого урла репозитория, напротив слова main , теги contrib non-free . Должно получится примерно следующее:
Затем сохраняем файл и обновляем инфу о пакетах командой sudo apt update .
Теперь устанавливаем сам драйвер введя команду:
По ее завершению, убираем модули b44 b43 b43legacy ssb brcmsmac bcma из ядра системы, командой:
и добавляем модуль wl :
После этого в Network manager’е (я использовал его для настройки сети) появится раздел Wi-Fi Networks где мы уже сможем выбрать доступную сеть и ввести пароль для доступа.
Заключение
Данный гайд может быть полезен не только владельцам маков но и других ноутбуков и десктопов. Так же гайд подойдет остальным Debian производным дистрибутивам (хотя могут быть нюансы).
Источник
Установка Linux на Mac
Давно забыли о Windows? Опостылела OS X? Пришло время задуматься о Linux.
Среди пользователей персональных компьютеров есть категория людей, которые находятся в постоянных поисках лучшего программного обеспечения, более совершенной экосистемы и альтернативной ОС, которая бы сумела удовлетворить их специфические запросы. Сегодняшняя инструкция посвящена установке операционной системы, которая более 30 лет держится особняком. Одни считают ее слишком сложной для понимания, другие со странным именем Linux знакомятся впервые. Но есть и те, кто считает Linux одной из самых безопасных, кастомизируемых и удобных систем в мире. Что ж, вперед за установку!
Шаг 1. Подготовка установочной USB-флешки
Одним из самых важных этапов при установке Linux является подготовка установочной флешки. Несмотря на наличие специализированных утилит, позволяющих создать загрузочный USB-накопитель из графической оболочки, наиболее верным является монтирование образа посредством командной строки и приложения Терминал в OS X.
Первое, что необходимо сделать – загрузить установочный образ Linux с официального сайта. В качестве примера рассмотрим установку дружественной и популярной версии Linux Ubuntu.
1. Откройте страницу загрузки Ubuntu и выберите 64-битную версию ОС (32-битная для Mac попросту не подойдет). Нажмите Download и на следующей страницу выберите пункт Not now, take me to the download.
Дистрибутив Ubuntu распространяется абсолютно бесплатно и, таким образом, вы отказываетесь от финансовой поддержки разработчиков, но если вы все же хотите выразить слова благодарности – перетяните соответствующие «долларовые» ползунки на требуемое значение и оплатите результирующую сумму с помощью платежной системы PayPal.
Дождитесь окончания загрузки дистрибутива.
2. Подключите USB-флешку. Для монтирования загрузочного образа подойдет накопитель, размер которого будет не менее 2 ГБ. Все данные, которые в настоящий момент находятся на флешке, будут безвозвратно стерты.
3. Откройте утилиту Терминал. Наша задача – конвертировать скачанный образ ISO в общепринятый в среде Mac IMG/DMG. Для этого нам потребуется запустить выполнение несложной команды.
hdiutil convert -format UDRW -o
По умолчанию все загрузки в среде Mac попадают в папку Загрузки. Для того, чтобы указать путь к скачанному образу наберите в Терминале первую часть команды: hdutil convert -format UDRW -o. Затем перетяните скачанный файл с образом (он имеет расширение ISO) на окно терминала. Автоматически вставится правильный адрес к исходному файлу. Имя файла ubuntu-14.04.2-desktop-amd64.iso можно изменить на любое, скажем, LinuxInstall, но с ОБЯЗАТЕЛЬНЫМ изменением расширения ISO на IMG. Поставьте пробел и вновь перетяните скачанный образ в окно терминала. На этот раз никаких изменений вносить не нужно. Так выглядит введенная команда:
Будьте внимательны: сначала следует указать имя и место размещения директории с получаемым в процессе конвертации образом, а после – с файлом исходником (скачанным дистрибутивом). После ввода команды нажимаем ENTER и ждем пока окончится процесс конвертации.
Если после выполнения команды вы увидели строку created с адресом файла в формате DMG – все прошло успешно и можно переходить к следующему этапу.
4. Разворачиваем установочный образ на флешку. После выполнения вышеуказанной команды в папке Загрузки появился новый файл LinuxInstall.img.dmg. Наша задача – развернуть его на флешку. Убедитесь, что USB-накопитель подключен к Mac и в Терминале введите следующую команду:
diskutil list
Результат выполнения команды:
Перед нами открылась картина всех подключенных логических дисков системы. Наша USB-флешка числится под идентификатором disk1 (размер 2 ГБ). Отключим ее с помощью следующей команды:
diskutil unmountDisk /dev/disk1
Disk1 – частный случай и в команде прописывайте имя, под которым флешка значится в вашей системе. После извлечение накопителя приступим к записи конвертированного образа:
sudo dd if=/path/to/downloaded.img of=/dev/rdisk1 bs=1m
Как и в пункте 3 для более быстрого указания директории введите фрагмент команды sudo dd if= после чего перетяните новый образ (с расширением DMG) на окно терминала. Закончите ввод команды. Помните, что rdisk1 может иметь другой порядковый номер и имя, и зависит от конкретно вашей системы. Нажмите ENTER и введите пароль администратора.
В течение последующих нескольких минут в окне терминала не будет происходить никаких процессов. Не спешите закрывать утилиту и беспокоиться о подвисании процесса. Разворачивание образа происходит «в тихом режиме». Дождитесь окончания процесса. Сигналом об окончании разворачивания образа станет сообщение:
Нажмите Извелчь, но саму флешку из порта не доставайте. Загрузочный накопитель готов.
Шаг 2. Раздел диска.
Для установки операционной системы Linux по-соседству с OS X потребуется создать дополнительный логический раздел диска. Сделать это можно с помощью Дисковой утилиты, являющейся штатным приложением OS X.
Запустите Дисковую утилиту. Подсветите ваш основной винчестер (именно винчестер, не раздел) и откройте вкладку Раздел диска.
Нажите на знак «+» и установите желаемый размер раздела (для нормальной работы Linux достаточно 10 ГБ; рекомендуем объем – 20 ГБ). Нажмите Применить и дождитесь окончания процесса.
Примечание: Если по какой-либо причине схема разделения недоступна (знак «+/-» серым цветом и не реагирует на нажатия), добавить новый раздел можно из загрузочного меню Mac. Перезагрузите компьютер и сразу после того, как экран загорится белым зажмите клавиши Command + R. Удерживайте до появления системного меню Mac, а затем откройте Дисковую утилиту. Процесс разделения полностью аналогичен с описанным выше.
После разделения диска ОБЯЗАТЕЛЬНО запомните точный размер отделенной логической области в гигабайтах. Перезагружаем компьютер.
Шаг 3. Установка Linux Ubuntu
Сразу после того, как началась перезагрузка, зажмите клавишу ALT и дождитесь появления меню с выбором логических дисков, с которых следует произвести установку. Выберите съемный накопитель EFI (первый) и нажмите Enter.
В появившемся установочном меню операционной системы Ubuntu выберите: Установить Ububntu. Начнется подготовительный процесс установки. После выбора требуемого языка и подключения к сети Wi-Fi установщик спросит как именно мы планируем устанавливать систему.
Внимание! Будьте осторожны!Если вы хотите сохранить работоспособность OS X и Linux выбирайте пункт Другой Вариант (выбор пункта Стереть диск и установить Ubuntu приведет к полному форматированию всей структуры диска и удалению ранее созданных разделов, включая раздел с системой OS X).
В открывшемся меню найдите созданный под Linux раздел диска (поможет знание его размера).
Дважды щелкните по требуемому разделу и установите следующие параметры:
- – файловая система Ext2;
– точка монтирования: /;
Нажмите ОК и Установить сейчас. Сообщение об отсутствии файла-подкачки проигнорируйте, нажав Продолжить. Начнется установка операционной системы Linux. Возможно однократная перезагрузка Mac. После завершения установки пользователю будет предложено указать имя учетной записи и придумать пароль. Сам процесс инсталяции занимает от 5 до 15 минут.
Установка завершена. При включении Mac по умолчанию теперь будет загружаться Linux Ubuntu. Изменить приоритетную систему можно в OS X, перейдя в Настройки – Загрузочный том и подсветив раздел, загрузка которого должна осуществляться в первую очередь.
Источник