네트워크가 구성 될 때까지 시작 작업이 실행 중입니다. 우분투 서버 17.10 온라인에서 솔루션을 찾고 다음을 시도했습니다. 네트워크 관리자 비활성화 /etc/systemd/system.conf에서

방금 랩톱에 우분투 서버를 설치했는데 부팅시 랩톱이 이더넷 또는 Wi-Fi 범위에 연결되어 있지 않은 경우 부팅이 시작된다는 메시지가 나타납니다. 약 2 분 동안 유지됩니다. 온라인에서 솔루션을 찾고 다음을 시도했습니다.

  • 네트워크 관리자 비활성화
  • /etc/systemd/system.conf에서 시간 초과 설정 편집
  • systemd.networkd-wait-online.service 비활성화

이 솔루션들 중 어느 것도 나를 위해 일하지 않았습니다. 가능한 수정 사항이 있습니까?



답변

사용하다

systemctl disable systemd-networkd-wait-online.service

온라인 연결 서비스를 비활성화하여 시스템이 네트워크 연결을 기다리는 것을 방지하고

systemctl mask systemd-networkd-wait-online.service

다른 서비스에서 요청한 경우 서비스가 시작되지 않도록합니다 (서비스가에 연결되어 있음 /dev/null).


답변

시스템 서비스를 마스킹하거나 비활성화하지 마십시오.

항상 사용 가능하지 않을 수있는 장치를 편집 /etc/netplan/01-netcfg.yaml하고 추가 하십시오 optional: true.

sudo netplan apply

답변

이것은 systemd-networkd-wait-online.service교수형을 의미 합니다. 알려진 버그가 몇 가지 있습니다. 어떤 서비스를 원하는지 확인하십시오 network-online.target.

systemctl show -p WantedBy network-online.target

원하는 경우 해당 서비스를 비활성화 할 수 있습니다. 그렇지 않으면 Mr.Ecco가 표시 한대로 서비스를 숨겨야 할 수도 있습니다 .


답변

systemd-networkd-wait-online.service다른 답변에서 제안한 것처럼 마스킹 은 간단한 설정에 도움이 될 수 있지만 문제를 해결하지는 않습니다. 서비스를 마스킹하면 서비스에 따라 다른 모든 서비스도 실패합니다. 즉, 네트워크가 온라인 상태가 될 때까지 기다려야하는 모든 서비스가 실패합니다.

메인 인터페이스 bond0의 슬레이브로 사용되는 유선 (enp9s0) 및 무선 (wlp12s0) 인터페이스를 결합 하여 랩톱에 동적 장애 조치 설정을 사용하기 때문에이 문제가 발생 합니다. 브리지 ( 슬레이브 인터페이스가있는 br0) 를 사용하는 경우와 동일한 상황이 발생합니다 . 기본 인터페이스 bond0 또는 br0 만 온라인 상태가되지만 슬레이브 는 작동하지 않으므로 슬레이브에서 장애가 발생합니다.systemd-networkd-wait-online.service

이 문제에 대한 해결책은 서비스를 수정하고 온라인 상태 여야하는 인터페이스 만 확인하는 것입니다. 당신은 찾을 수 있습니다 :

~$ sudo systemctl cat systemd-networkd-wait-online.service | grep --after-context=3 '\[Service\]'
[Service]
Type=oneshot
ExecStart=/lib/systemd/systemd-networkd-wait-online
RemainAfterExit=yes

systemd-networkd-wait-online 프로그램 에는 특정 인터페이스를 테스트하는 매개 변수가 있습니다. 로 확인하십시오 /lib/systemd/systemd-networkd-wait-online --help. 따라서 서비스를 수정하기 위해 파일을 삭제합니다.

~$ sudo systemctl edit systemd-networkd-wait-online.service

빈 편집기에서 인터페이스와 함께 다음 명령문을 삽입하고 편집기를 종료하십시오.

[Service]
ExecStart=
ExecStart=/lib/systemd/systemd-networkd-wait-online --interface=bond0 --quiet

비어있는 ExecStart=것은 “이전”명령을 비활성화하기 때문에 중요합니다. 인터페이스 이상을 확인할 수 있습니다 (도움말 참조).