Что такое & ldquo; IP-Config: & rdquo; во время загрузки и почему он переопределяет мой / etc / network / interfaces?

Это можно сделать с помощью скрипта python. Скрипт требует, чтобы python-wnck и python-gtk устанавливались для работы, хотя я думаю, что они все равно установлены по умолчанию.

Скопируйте и вставьте это в текстовый редактор и сохраните в разумном месте ( например, switch.py ​​в домашней папке):

#!/usr/bin/env python2
import wnck
import gtk
import sys
import time

screen = wnck.screen_get_default()

while gtk.events_pending():
    gtk.main_iteration()

windows = screen.get_windows()

for w in windows:
    if len(sys.argv) > 1:
        if w.get_application().get_name() == sys.argv[1]:
            w.activate(int(time.time()+1))
            break
    else:
        print("Application name of window with title " + repr(w.get_name()) + " is " + repr(w.get_application().get_name()))

Затем вы можете настроить сочетание клавиш, открыв клавиши быстрого доступа (System-> Preferences-> Keyboard Shortcuts).

[d3 ] Нажмите «Добавить», чтобы создать новый ярлык.

Используйте команду bash -c 'python ~/switch.py Terminal' (предполагается, что вы сохранили ее как switch.py ​​в своей домашней папке). Замените «Terminal» на имя приложения, в которое вы хотите переключиться. Чтобы узнать имена приложений открытых окон, запустите python ~/switch.py в терминале.

enter image description here

Затем вы можете назначить предпочитаемую комбинацию клавиш это действие.

2
задан 24 August 2017 в 04:42

6 ответов

Наконец я нашел, что это вызвало. Не найдя скрытый указатель на него где-то, нет, а, скорее, путем grepping всей моей файловой системы для настроек DHCP: grep -ri 'dhcp' /. Там почти наверняка лучший способ. Но в любом случае:

Ранние попытки игры с использованием ISCSI на этом компьютере каким-то образом привели к созданию файла /run/network/dynamic-interfaces, который, похоже, использует тот же синтаксис, что и /etc/network/interfaces. Разумеется, в этом была строка, указывающая машине, чтобы вызвать eth0 в качестве DHCP, и поскольку это происходит в контексте initramfs, он доставляет интерфейс онлайн задолго до того, как iftools получит шанс.

[d3 ] Этот файл является частью пакета cloud-initramfs-dyn-netconf, который является стандартным для сервера Ubuntu. Вы не хотите удалять его, поскольку он является частью метапакета ubuntu-server (и если вы удалите это, обновления могут завершиться неудачно в будущем)

После очистки файла и перезагрузки NIC управляется файл interfaces, как обычно ожидалось.

2
ответ дан 22 May 2018 в 19:27

Наконец я нашел, что это вызвало. Не найдя скрытый указатель на него где-то, нет, а, скорее, путем grepping всей моей файловой системы для настроек DHCP: grep -ri 'dhcp' /. Там почти наверняка лучший способ. Но в любом случае:

Ранние попытки игры с использованием ISCSI на этом компьютере каким-то образом привели к созданию файла /run/network/dynamic-interfaces, который, похоже, использует тот же синтаксис, что и /etc/network/interfaces. Разумеется, в этом была строка, указывающая машине, чтобы вызвать eth0 в качестве DHCP, и поскольку это происходит в контексте initramfs, он доставляет интерфейс онлайн задолго до того, как iftools получит шанс.

Этот файл является частью пакета cloud-initramfs-dyn-netconf, который является стандартным для сервера Ubuntu. Вы не хотите удалять его, поскольку он является частью метапакета ubuntu-server (и если вы удалите это, обновления могут завершиться неудачно в будущем)

После очистки файла и перезагрузки NIC управляется файл interfaces, как обычно ожидалось.

2
ответ дан 18 July 2018 в 08:30

Наконец я нашел, что это вызвало. Не найдя скрытый указатель на него где-то, нет, а, скорее, путем grepping всей моей файловой системы для настроек DHCP: grep -ri 'dhcp' /. Там почти наверняка лучший способ. Но в любом случае:

Ранние попытки игры с использованием ISCSI на этом компьютере каким-то образом привели к созданию файла /run/network/dynamic-interfaces, который, похоже, использует тот же синтаксис, что и /etc/network/interfaces. Разумеется, в этом была строка, указывающая машине, чтобы вызвать eth0 в качестве DHCP, и поскольку это происходит в контексте initramfs, он доставляет интерфейс онлайн задолго до того, как iftools получит шанс.

Этот файл является частью пакета cloud-initramfs-dyn-netconf, который является стандартным для сервера Ubuntu. Вы не хотите удалять его, поскольку он является частью метапакета ubuntu-server (и если вы удалите это, обновления могут завершиться неудачно в будущем)

После очистки файла и перезагрузки NIC управляется файл interfaces, как обычно ожидалось.

2
ответ дан 24 July 2018 в 19:06

Я считаю, что правильная формулировка статична; не ручной. Также, вы определили, что выбранный вами адрес 192.168.88.50 находится за пределами диапазона адресов, используемых для DHCP в маршрутизаторе, чтобы избежать столкновения? Возможно, x.50 уже используется или зарезервирован.

После определения пула DHCP в маршрутизаторе я предлагаю вам изменить файл на:

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.88.zz
netmask 255.255.255.0
gateway 192.168.88.1
dns-nameservers 192.168.88.1
dns-domain mynet.lan

... где zz - это адрес, расположенный за пределами пула DHCP.

Перезагрузите интерфейс:

sudo ifdown eth0 && sudo ifup -v eth0

. -v для подробностей должен содержать вывод, который сообщает нам, было ли соединение успешным.

Вы получили запрошенный адрес?

ifconfig
0
ответ дан 22 May 2018 в 19:27
  • 1
    Это не сработало - интерфейс по-прежнему транслируется для DHCP при поднятии. – Mikey T.K. 24 August 2017 в 04:32
  • 2
    Любые подсказки в журнале? cat /var/log/syslog | grep -i -e eth -e dhcp Как результат, вероятно, длинный, вставьте здесь результат и дайте нам ссылку: paste.ubuntu.com – chili555 24 August 2017 в 04:36
  • 3
    Мой последний комментарий был немного ошибочным - DHCP не транслировался, скорее он держал старый адрес. После сглаживания интерфейса ip addr по-прежнему отображается ошибочный адрес .222. Я выпустил ip address flush eth0, но, скорее всего, он все равно вернется к перезагрузке. Все, что происходит, происходит только при загрузке. Вопрос обновлен этой новой информацией. В syslog нет строк dhcp, только «Ip-Config: " строка, которая видна только при запуске , а не в моих файлах журнала, dmesg или journalctl .. – Mikey T.K. 24 August 2017 в 04:45
  • 4
    Могла ли ваша BIOS искать PXE DHCP? Вы когда-нибудь использовали PXE для сетевой загрузки машины? Я признаю, что это кажется маловероятным, но я могу подумать, что это не будет отображаться в файлах журналов. Может быть, это ошибочно принимает адрес, который не возвращается с опцией 60 после загрузки процесса загрузки? Вы пытались запустить wirehark / tcpdump, пока он загружается, чтобы посмотреть запрос DHCP? – RobertRSeattle 24 August 2017 в 07:30

Я считаю, что правильная формулировка статична; не ручной. Также, вы определили, что выбранный вами адрес 192.168.88.50 находится за пределами диапазона адресов, используемых для DHCP в маршрутизаторе, чтобы избежать столкновения? Возможно, x.50 уже используется или зарезервирован.

После определения пула DHCP в маршрутизаторе я предлагаю вам изменить файл на:

# The primary network interface auto eth0 iface eth0 inet static address 192.168.88.zz netmask 255.255.255.0 gateway 192.168.88.1 dns-nameservers 192.168.88.1 dns-domain mynet.lan

... где zz - это адрес, расположенный за пределами пула DHCP.

Перезагрузите интерфейс:

sudo ifdown eth0 && sudo ifup -v eth0

. -v для подробностей должен содержать вывод, который сообщает нам, было ли соединение успешным.

Вы получили запрошенный адрес?

ifconfig
0
ответ дан 18 July 2018 в 08:30

Я считаю, что правильная формулировка статична; не ручной. Также, вы определили, что выбранный вами адрес 192.168.88.50 находится за пределами диапазона адресов, используемых для DHCP в маршрутизаторе, чтобы избежать столкновения? Возможно, x.50 уже используется или зарезервирован.

После определения пула DHCP в маршрутизаторе я предлагаю вам изменить файл на:

# The primary network interface auto eth0 iface eth0 inet static address 192.168.88.zz netmask 255.255.255.0 gateway 192.168.88.1 dns-nameservers 192.168.88.1 dns-domain mynet.lan

... где zz - это адрес, расположенный за пределами пула DHCP.

Перезагрузите интерфейс:

sudo ifdown eth0 && sudo ifup -v eth0

. -v для подробностей должен содержать вывод, который сообщает нам, было ли соединение успешным.

Вы получили запрошенный адрес?

ifconfig
0
ответ дан 24 July 2018 в 19:06
  • 1
    Это не сработало - интерфейс по-прежнему транслируется для DHCP при поднятии. – Mikey T.K. 24 August 2017 в 04:32
  • 2
    Любые подсказки в журнале? cat /var/log/syslog | grep -i -e eth -e dhcp Как результат, вероятно, длинный, вставьте здесь результат и дайте нам ссылку: paste.ubuntu.com – chili555 24 August 2017 в 04:36
  • 3
    Мой последний комментарий был немного ошибочным - DHCP не транслировался, скорее он держал старый адрес. После сглаживания интерфейса ip addr по-прежнему отображается ошибочный адрес .222. Я выпустил ip address flush eth0, но, скорее всего, он все равно вернется к перезагрузке. Все, что происходит, происходит только при загрузке. Вопрос обновлен этой новой информацией. В syslog нет строк dhcp, только «Ip-Config: & quot; строка, которая видна только при запуске , а не в моих файлах журнала, dmesg или journalctl .. – Mikey T.K. 24 August 2017 в 04:45
  • 4
    Могла ли ваша BIOS искать PXE DHCP? Вы когда-нибудь использовали PXE для сетевой загрузки машины? Я признаю, что это кажется маловероятным, но я могу подумать, что это не будет отображаться в файлах журналов. Может быть, это ошибочно принимает адрес, который не возвращается с опцией 60 после загрузки процесса загрузки? Вы пытались запустить wirehark / tcpdump, пока он загружается, чтобы посмотреть запрос DHCP? – RobertRSeattle 24 August 2017 в 07:30

Другие вопросы по тегам:

Похожие вопросы: