Я недавно установил ПОМОЩНИКА Ubuntu 16.04 на своем Thinkpad X240. Для отключения автоматического запуска Bluetooth я сделал следующее:
Попытка 1: sudo pluma /etc/rc.local
, затем добавьте строку rfkill block bluetooth
выше exit 0
. Однако то, когда я перезапустил Bluetooth, было все еще активировано. Таким образом, я снова отредактировал файл и удалил строку, которую я добавил.
Я позже следовал за предложениями здесь и повторил попытку 1 с добавлением также echo disable > /proc/acpi/ibm/bluetooth
, но это не добивалось цели также
Попытка 2: После описания здесь (на немецком языке), я создал файл /lib/systemd/system/disablebluetooth.service
с содержанием:
#########################################################################
#
# disablebluetooth.service
# systemd service: disable bluetooth at start
#
#########################################################################
[Unit]
Description=Disable Bluetooth
[Service]
Type=oneshot
ExecStart=/usr/sbin/rfkill block bluetooth
[Install]
WantedBy=multi-user.target
# EOF
и затем работал sudo systemctl enable disablebluetooth.service
Это также не помогло, Bluetooth, все еще автоматически запущенный на запуске.
Однако это затем, Ubuntu также сообщает о проблеме на системном запуске (и диалог открывается, в котором я могу нажать отмену или сообщить о проблеме). [РЕДАКТИРОВАНИЕ: зафиксированный теперь]
Так, для отмены попытки 2 я работал
sudo systemctl disable disablebluetooth.service
и удаленный файл я создал.
Но предупреждение/проблема является в запуск, все еще обнаруживается. Таким образом, теперь мои вопросы
lsusb
возвраты
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 004: ID 5986:0268 Acer, Inc
Bus 002 Device 006: ID 8087:07dc Intel Corp.
Bus 002 Device 002: ID 138a:0017 Validity Sensors, Inc. Fingerprint Reader
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Мы можем все еще использовать правило udev отключить Bluetooth. Запустите
sudo -H pluma /etc/udev/rules.d/81-bluetooth-hci.rules
, Вводят следующее, поскольку одна строка
SUBSYSTEM=="usb", ATTRS{idVendor}=="8087", ATTRS{idProduct}=="07dc", ATTR{authorized}="0"
Сохраняет, выходит из редактора и перезагрузки.
Вот то, как можно создать сценарий, который будет работать на запуске и выполнять действие для уничтожения сервиса Bluetooth, и это было бы следующим (я использую нано, не стесняйтесь использовать любой другой текстовый редактор):
Шаг 1: Перешли к папке: cd /etc/systemd/system/
Шаг 2: Первый создают сценарий, который уничтожит сервис Bluetooth, однажды выполненный:
nano bluetoothkill.sh
Шаг 3: Введите следующий код, сохраните и выйдите:
#!/bin/bash rfkill block bluetooth exit 0
Шаг 4: Создают foo.service
файл в той же папке,/etc/systemd/system/:
nano foo.service
Шаг 5: Введите следующий код, сохраните и выйдите:
[Unit] Details=Additional startup scripts After=network.target [Service] ExecStart=/etc/systemd/system/bluetoothkill.sh [Install] WantedBy=default.target
Шаг 6: Выполнение следующая команда в терминале:
sudo chmod 744 bluetoothkill.sh
Шаг 7: Выполнение следующая команда в терминале:
sudo systemctl start foo.service
Шаг 8: Перезапуск машина и на следующей начальной загрузке Вы заметите, что сервису Bluetooth больше не включают по умолчанию на запуске. Можно все еще включить его, когда когда-либо Вам нравится в настройках или терминале, это ведет себя без любых ошибок.
, Если Вам нравится добавлять больше сценариев на запуске, можно всегда редактировать foo.service файл и добавлять дополнительные строки под [Сервис] скобка для запущения дополнительных скриптов на запуске, например:
ExecStart=/full-script-filepath/newscript.sh