Как я настраиваю, какие соединения Ethernet активны на начальной загрузке?

Когда именованный канал создается через mkfifo (или однако еще можно сделать это), он создает канал "файл", который остается на месте, пока он не удален (или, в некоторых случаях, до перезагрузок машины, если Вы забываете удалять его). Можно создать собственный именованный канал с mkfifo просто, поскольку требуется очень немного аргументов, как так:

host # mkfifo -m 777 /tmp/corncob

Это - все, что требуется для создания именованного канала/tmp/corncob. Флаг-m, который используется для установки полномочий, не необходим. Обычно, если Вы не включаете его, набор полномочий по умолчанию для нового именованного канала - то, чем было бы значение по умолчанию для Вашей системы. Как другое примечание стороны, можно также передать флаг-m и установить альфа-полномочия, а не восьмеричный, как:

host # mkfifo -m a=rwx /tmp/corncob

создать ту же самую вещь. Можно удалить именованный канал точно так же, как Вы удаляете файл. комната, и это пошло.

Одна вещь, которую необходимо отметить об именованных каналах, состоит в том, что они обычно (насколько я видел) только могут полностью передать один поток ввода/вывода через себя за один раз. То есть, если у Вас будет один вход отправки процесса к именованному каналу и двум процессам, читающим из него, то только один из процессов считывания получит вывод. Нужно отметить, также, что, если такая ситуация должна была существовать, однажды исходный процесс, который получал выходные выходы, другой процесс начал бы получать вывод от именованного канала (если бы это все еще пыталось читать из него). Это было действительно длинным предложением, или я просто ввожу быстро?;)

Пример того, что я имею в виду ниже:

host-term1 # while :;do echo a b c d e >/tmp/corncob;sleep 15;done

host-term2 # tail -f /tmp/corncob
a b c d e
a b c d e
a b c d e
a b c d e
a b c d e
a b c d e
a b c d e
a b c d e

host-term3 # tail -f /tmp/corncob

host-term2 # ^C

host-term3 #
^C
a b c d e
a b c d e
a b c d e
a b c d e

через

4
03.07.2012, 06:29
2 ответа

cd в /etc/sysconfig/network-scripts. Там, Вы найдете ifcfg-eth0 и ifcfg-eth1. Отредактируйте их и установите ONBOOT значения строки к yes и no, соответственно. (Или наоборот, если это eth1 Вы скорее подошли на начальной загрузке.)

Если необходимо предотвратить ядро от ровной попытки коснуться оборудования Ethernet, можно загнать eth1 строка в /etc/modprobe.conf. Что-то вроде этого:

#alias eth1 e1000

e1000 бит будет названием драйвера; это варьируется в зависимости от аппаратных средств по машине. Вы найдете строку без # в запуске; добавьте его.

Лучшее решение, просто касание этих аппаратных средств является проблемой, состоит в том, чтобы удалить доступ к нему полностью на hardware/VM уровне. Если бы это - VM, Вы удалили бы его из конфигурации VM. Если бы это - реальные аппаратные средства, Вы отключили бы второй интерфейс Ethernet во встроенном микропрограммном обеспечении машины. (BIOS, EFI...)

5
27.01.2020, 20:54
  • 1
    . Все выглядит корректным, однако мой хост говорит после того, как я отправляю команду перезагрузки, и поле возвращается, это застревает с ними обоими активными. Там кто-либо - известная/распространенная вещь, которая вызывает это к Вашему знанию? Или еще лучше, способ отследить то, что процесс вносит изменениями? –  MetaGuru 09.07.2012, 18:38
  • 2
    Это очень странно. Я не знаю, почему Ваш поставщик услуг хостинга предоставил бы Вам доступ к аппаратным средствам, которые вызывают их проблемы. В конечном счете удаление доступа к аппаратным средствам является лучшей фиксацией. Если они не обещали Вам доступ к нему, в этом случае они должны решить свою собственную проблему. –  Warren Young 09.07.2012, 18:59
  • 3
    я не уверен, все, которое я знаю, - то, что, когда и eth0 и eth1 активны на начальной загрузке, это вызывает меня проблемы с SSH. Таким образом на основе Ваш "#alias..." код, который означает, что я могу полностью заблокировать eth1 от ядра, но продолжить позволять eth0? Я предполагаю, что Linux рассматривает их как две различных части аппаратных средств. –  MetaGuru 09.07.2012, 19:25
  • 4
    я не уверен, все, которое я знаю, - то, что, когда и eth0 и eth1 активны на начальной загрузке, это вызывает меня проблемы с SSH. Таким образом на основе Ваш "#alias..." код, который означает, что я могу полностью заблокировать eth1 от ядра, но продолжить позволять eth0? Я предполагаю, что Linux рассматривает их как две различных части аппаратных средств. –  MetaGuru 09.07.2012, 19:25
  • 5
    Они - две различных части аппаратных средств. Даже если ими управляет тот же IC, ими управляют полностью отдельно. То, что Вы делаете путем обстрела modprobe строки, говорит ядру, что Вы не хотите это с помощью тех аппаратных средств. Необходимо, вероятно, отключить kudzu сервис также, если это все еще включено. Вы не хотите eth1 быть автоматически обнаруженным снова. –  Warren Young 09.07.2012, 19:37

Замена 0.0.0.0 с Вашим eth0 IP-адресом в/etc/ssh/sshd_config на Слушать строке будет препятствовать тому, чтобы eth1 использовался ssh.

0
27.01.2020, 20:54
  • 1
    Интересный, это могло быть работой вокруг этого, позволил бы мне SSH в том, даже если оба активны? Затем я могу решить проблему сам, по крайней мере. –  MetaGuru 09.07.2012, 18:40

Теги

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