Я пытаюсь изменить свой MAC-адрес каждый раз, когда я перезагружаю систему. Таким образом, я записал сценарий, и он присоединяется рев.
#!/bin/bash -x
echo "Date $(date)"
systemctl stop NetworkManager.service
ip addr
macchanger -r wlx9cefd5fe0d41
systemctl start NetworkManager.service
Когда я запускаю скрипт в терминале, это - успешно changeing MAC-адрес, но когда я использую crontab, чтобы сделать это, я получаю следующую ошибку:
[ERROR] Could not change MAC: interface up or insufficient permissions: Device or resource busy.
Я выполняю crontab как корень и журналами, которые я присоединил шоу, на которые снижается интерфейс. Кто-то может помочь мне? Если существует лучший путь, я открыт для него.
Это - моя crontab строка:
@reboot bash -x /home/user/changeMac.sh >> /home/user/testlog.txt 2>&1
Файл журнала:
++ date
+ echo 'Date Wed Aug 22 21:27:32 PDT 2018'
Date Wed Aug 22 21:27:32 PDT 2018
+ systemctl stop NetworkManager.service
+ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s25: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether brd ff:ff:ff:ff:ff:ff
3: wlx9cefd5fe0d41: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether brd ff:ff:ff:ff:ff:ff
+ macchanger -r wlx9cefd5fe0d41
[ERROR] Could not change MAC: interface up or insufficient permissions: Device or resource busy
Current MAC: (unknown)
Permanent MAC: (unknown)
+ systemctl start NetworkManager.service
Журнал не говорит о том, что интерфейс не работает, он жалуется, что он работает! Для правильного сброса добавьте
ip link set wlx9cefd5fe0d41 down
к вашему сценарию перед строкой macchanger
. Чтобы снова вызвать его, используйте эквивалент:
ip link set wlx9cefd5fe0d41 up
Как вы, вероятно, поняли, для манипулирования сетевыми устройствами ip
следует использовать. NetworkManager - это просто демон, управляющий конфигурацией сети.