Конфигурация HandleLidSwitch=ignore не работает должным образом на MacBook Pro 2012.

Вопрос или проблема

В локальной сети есть 2 ноутбука HP и Toshiba с установленной Ubuntu Desktop 24.04. Поскольку они используются только мной через Remmina, была применена следующая конфигурация, чтобы избежать ненужного использования экрана каждого ноутбука:

  1. Откройте файл /etc/systemd/logind.conf
  2. Измените строку с #HandleLidSwitch=suspend на HandleLidSwitch=ignore
  3. Выполните команду sudo systemctl restart systemd-logind

Таким образом, для каждого ноутбука, когда крышка ноутбука закрыта, происходит 2 вещи:

  1. Экран становится черным
  2. Ноутбук продолжает работать спокойно

Помните, что к каждому ноутбуку осуществляется доступ через Remmina.

Наблюдение: если крышка ноутбука открыта – по крайней мере под углом более 5 градусов – экран показывает, что выполняется. Другими словами, экран больше не черный. Кроме того, если крышка ноутбука открыта на угол менее 5 градусов, экран остается черным.

На MacBook Pro 2012 была установлена напрямую в его новый SSD Ubuntu Desktop 24.04. Сейчас, применяя полностью все те же процедуры, указанные выше: когда крышка ноутбука закрыта, экран продолжает работать – он не становится черным. Я подтвердил это, открыв крышку ноутбука на небольшой угол.

Как это исправить?

На всякий случай, когда крышка ноутбука закрыта полностью, свет "яблока" загорается белым.

Ответ или решение

Конфигурация параметра HandleLidSwitch=ignore в файле logind.conf предназначена для управления поведением системы при закрытии крышки ноутбука в среде Linux. Обычно после установки этой опции экран ноутбука должен оставаться выключенным при закрытии крышки, в то время как сама система продолжает работать. В случае с вашим MacBook Pro 2012, кажется, что данная конфигурация работает не так, как ожидалось, поскольку экран остается включенным при закрытом крышке.

Теория (Theory):
На MacBook, особенно более старых моделях, таких как MacBook Pro 2012, управление питанием и состоянием дисплея может отличаться от стандартных решений, которые используются в ноутбуках других производителей, таких как HP или Toshiba. Apple применяет свою технологию для управления переключением дисплея, что может конфликтовать с настройками Linux. Система MacBook может рассчитывать на дополнительные аппаратные сигналы или драйверы, которых не существует в стандартной настройке Ubuntu.

Пример (Example):
Вот пример сценария, который может объяснить вашу проблему. Система MacBook разрабатывалась с учетом уникальной аппаратной платформы, в которой интеграции с macOS предусмотрены на уровне аппаратных драйверов и микропрограммного обеспечения. Ubuntu, будучи универсальной для различных компьютеров платформой, использует более общие драйверы, которые могут не учитывать уникальные аспекты управления питанием в MacBook. Это может привести к тому, что сигнал о закрытии крышки будет обрабатываться иначе, чем на большинстве ПК-ноутбуков под управлением Linux.

Применение (Application):
Теперь, чтобы решить вашу проблему с MacBook Pro 2012 и сделать так, чтобы экран действительно выключался при закрытии крышки, необходимо применять некоторые ухищрения, включающие как изменения в конфигурации Ubuntu, так и возможное использование дополнительных инструментов.

  1. Убедитесь, что обновления установлены: Проверьте, что все обновления Ubuntu установлены. Новые ядра или патчи могут решать проблемы совместимости, присущие более старым аппаратным средствам MacBook.

  2. Используйте дополнительные пакеты: Установите и настройте acpid, который может обеспечивать более точное управление событиями питания.

    sudo apt-get install acpid
  3. Создание пользовательских скриптов: Попробуйте создать скрипт, который выключает экран вручную через передачу сигнала видеокарте. Это может потребовать экспериментов с командой xrandr:

    xrandr --output LVDS-1 --off

    Это команда предполагает, что основной монитор идентифицируется как LVDS-1. Узнайте точное имя вашего дисплея с помощью xrandr.

  4. Модификация ядра или загрузки прошивки: В качестве более сложного шага, можно подумать об изменении параметров загрузки вашего ядра, чтобы манипулировать ACPI (возможности управления питанием и конфигурацией). Можно попробовать добавить параметр acpi_osi=!Darwin в строку загрузки GRUB, что иногда помогает обмануть систему, чтобы та не считала, что она работает на macOS.

  5. Проверка состояния "яблока": Если логотип Apple продолжает светиться, это косвенно указывает на теоретическую работу подсистемы питания MacBook. Убедитесь, что никакие соседние процессы или службы не блокируют состояния сна или выключение дисплея (например, через systemd-inhibit).

  6. Обратитесь за поддержкой: Если ни один из этих методов не помогает, стоит обратиться к сообществу Ubuntu или специфическим форумам Mac/Linux для получения советов от пользователей, которые сталкивались с подобной проблемой.

Проделав вышеперечисленные шаги, вероятно, вы сможете настроить вашу систему так, чтобы экран выключался, как и было задумано. Сложность подобных конфигураций на MacBook объясняется особенностью их аппаратного обеспечения и необходимостью более глубокой интеграции программного обеспечения с ним.

Оцените материал
Добавить комментарий

Капча загружается...