Недавно я, используя свои ограниченные знания bash, собрал скрипт, который должен выполнять 2 действия:
- Предполагается, что это изменит мое имя хоста.
- а затем изменить мой MAC-адрес.
Я вставил инструкции прямо в /etc/rc.local
мою машину backtrack 5 r3, но, похоже, не могу заставить ее изменить мой mac-адрес. macchanger уже установлен. Он отлично меняет мое имя хоста, но, похоже, не хочет менять мой mac-адрес. Может ли это быть из-за того, что моя машина работает в virtual box?
Вот что я вложил /etc/rc.local
:
dhclient -r && rm -f /var/lib/dhcp3/dhclient* && sed "s=$(hostname)=REPLACEME=g" -i /etc/hosts && hostname "$(echo $RANDOM | md5sum | cut -c 1-7 | tr a-z A-Z)" && sed "s=REPLACEME=$(hostname)=g" -i /etc/hosts && macchanger -e eth0 && macchanger -e wlan0 && dhclient
Я пробовал так, с операторами &&, и я также пробовал, помещая команду в каждую строку. Имя хоста меняется каждый раз, но MAC-адрес — нет.
Любая помощь будет оценена по достоинству!
решение1
Попробуйте записать результаты macchanger -e eth0
и macchanger -e wlan0
в файл. И посмотрите, существуют ли устройства с таким именем во время запуска с помощью ifconfig
. Например, поместите это в свой /etc/rc.local
:
macchanger -e eth0 &> /tmp/devices.txt
macchanger -e wlan0 &>> /tmp/devices.txt
ifconfig &>> /tmp/devices.txt
Объяснение:
&> /tmp/devices.txt
записывает стандартный вывод и стандартный вывод ошибок в файл /tmp/devices. После запуска машины вы можете заглянуть в этот файл и, возможно, получить подсказку из него.
решение2
Спасибо за доверие, я уже пробовал это, но это не сработало. Похоже, что-то мешает macchanger запуститься до того, как я введу "startx". Полагаю, я могу запустить его только в верхних кольцах? Я поместил команды в другой файл, а также выполнил команду chmod +x для файла, а также "sudo /etc/init.d myfile defaults", которая сказала, что файл был добавлен во все rc1.local-rc5.local. Я, наконец, просто вставил путь к файлу в мои программы автозагрузки в графическом интерфейсе, и теперь после запуска startx он меняет mac-адрес.
EDIT: упс, не тот аккаунт gmail. Я перепощу это как правильный аккаунт.