시스템화 된 명령 줄 옵션“--switched-root”및“--deserialize”는 무엇입니까?


17

ps내 Linux에서 상자를 수행하면 systemd명령 행 옵션 --switched-root및로 실행되는 것으로 표시 됩니다 --deserialize. 매뉴얼 페이지에는 아무것도 /usr/share/doc/systemd언급되지 않았으며 Google은 그다지 도움이되지 않았습니다. 그래서 그들은 무엇을합니까? 그것은 그것이 pivot_root--switched-root 와 관련 이 있다고 생각하지만, 그것은 단지 추측 일뿐입니다.


1
좋은 점, 여기 아치에서와 동일 : 내 프로세스 n. 1은 systemd --system --deserialize 18입니다. 다시 인간의 실마리는 없습니다.
MariusMatutiae

답변:


18

이들은 의도적으로 문서화되지 않은 시스템 내부 부품입니다. 따라서 매우 간단합니다.

  • --deserialize의 이전 호출 것을 저장된 내부 상태를 복원하는 데 사용됩니다 systemd, exec()이 일을 보내고는, 파일에 기록했습니다. 옵션 인수는 해당 프로세스에 대한 열린 파일 디스크립터 입니다 .
  • --switched-root이 호출은 initramfs 관리systemd 에서 호출되었다는 것을 알리는 데 사용되며 , 따라서 발생하는 일부 동작을 끄는 것을 포함하여 그에 따라 동작해야합니다 .systemd--deserialize

3
좋은 대답입니다. --deserialize --switched-root로 실행하는 systemd는 본질적으로 systemit이 initramfs에서도 사용되었음을 의미합니다. 요즘은 이것이 일반적이므로 PID 2의 명령 행
에서이

@zbyszek 그래서 요점은 무엇입니까? 좋은 대답이라면 왜 공개적으로 노출 된 내부 부분이 systemd아직 공식 systemd문서에 포함되어 있지 않습니까? systemd우리가 보는 것을 설명하기 위해 공식 문서에 설명을 포함 시켜서는 안 systemd-cgls | grep deserialize됩니까 ( )? 벌써 2020 년입니다! Google과 SO가 실제로 공개적으로 제공되는 내부 부분을 systemd우리와 같은 미성년자에게 설명해야하는 유일한 장소 입니까?
티노
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.