/run충분히 일찍 설치되었습니다.

/run충분히 일찍 설치되었습니다.

Raspbian GNU/Linux 8 시스템에서 부팅하는 동안 다음 오류가 발생합니다.

ifplugd(eth0)[214]: Executing '/etc/ifplugd/ifplugd.action eth0 up'.
ifplugd(eth0)[214]: client: /sbin/ifup: failed to open lockfile /run/network/.ifstate.lock: No such file or directory
ifplugd(eth0)[214]: client: run-parts: /etc/ifplugd/action.d//ifupdown exited with return code 1
ifplugd(eth0)[214]: Program execution failed, return value is 1.

Ifplugd는 성공하여 작업을 반복합니다. 초기 실패는 /run이 마운트되지 않았기 때문에 발생했다고 생각됩니다. 내 질문은 다음과 같습니다

  1. 이는 정상적인 동작입니까, 아니면 버그/구성 오류입니까? ifplugd가 실행 중일 때 systemd-fsck가 계속 실행 중이므로 ifplugd가 조금 이른 것 같나요? 이 질문을 무시해도 되나요?

  2. /run 마운트는 아주 일찍 일어나야 하기 때문에 /etc/fstab이 처리할 수 없는 특별한 경우인 것 같습니다. 그렇다면 /run의 마운트를 제어하는 ​​부분은 무엇입니까? 이것은 systemd에 의해 수행됩니까? 그렇다면 systemd의 어느 부분입니까?

답변1

/run충분히 일찍 설치되었습니다.

진단이 잘못되었습니다.

/runsystemd프로세스 #1로 실행되는 프로그램에 의해 설치됩니다. 이는 systemd가 서비스와 대상을 시작하기 전에 설치하는 소위 "API 파일 시스템" 중 하나입니다. 실제로 systemd에서는 /run프로세스 #1이 프로그램 자체를 실행하기 전에 부트로더의 initrd 단계에 의한 설치를 허용합니다 systemd. 문제의 원인이 무엇이든, /run설치 부족 으로 인한 것은 아닙니다 .

문제가 의 파일에 있다는 점을 고려하면 /run/network/실제로 첫 번째 생각은 다음과 같습니다./run/network/현재 디렉토리가 부트로더에 존재합니까?이런 질문으로 이어진다/run/network/디렉토리는 어떻게 생성되나요 ?networking스크립트를 실행하게 만든 서비스 및 /etc/init.d/networking스크립트를 실행한 서비스 이전 또는 이후에 실행되었는지 여부입니다. 답변을 보려면 현재 보고 있는 로그를 참조하세요. ☺ifplugd/etc/init.d/ifplugd

예, 서비스는 어떤 서비스가 먼저 시작되는지 ifplugd에 따라 달라집니다 . networking아니요, van Smoorenburg rc스크립트는 실제로 이 순서를 인코딩하지 않습니다.

추가 읽기

관련 정보