부팅 시 프로세스가 시작되는 원인은 무엇입니까?

부팅 시 프로세스가 시작되는 원인은 무엇입니까?

질문이 있습니다:

얼마 전에 이라는 소프트웨어를 설치했는데 wii-u-gc-adapter, 이를 실행했을 때 GameCube 컨트롤러를 Linux 컴퓨터에 연결하고 데스크톱 컴퓨터에서 게임을 즐길 수 있었습니다. 이것은 훌륭하게 작동합니다.

어느 시점에서 나는 몇 가지 조언을 받아들여 시작 시 이 프로세스를 실행하도록 내 컴퓨터 어딘가에 지시를 두었을 것입니다.

제가 이 질문을 하는 이유는 컴퓨터를 종료하면 이 프로세스가 끝날 때까지 1분 30초 동안 기다리기 때문입니다.

직접 실행할 때는 ./wii-u-gc-adapter수동으로 종료합니다. 그러나 설치 중 어느 시점에서 시스템에 이를 실행하라고 지시했습니다.

이 프로그램이 나열되어 있는데 usr/local/bin전혀 놀랍지 않습니다.

나에겐 이게 끝이야$pstree

        ├─whoopsie───2*[{whoopsie}]
        ├─wii-u-gc-adapte───2*[{wii-u-gc-adapte}]
        ├─wpa_supplicant
        └─xdg-permission-───2*[{xdg-permission-}]

htopWii를 필터링하면 다음이 표시됩니다.

Wii용 htop 필터

컴퓨터를 종료하면 1분 30초 동안 기다려야 하며 F2 키를 누르면 다음 메시지가 표시됩니다.

A stop job is running for Wii U Gamecube Adapter

해결되지 않은 문제를 정리하고 싶습니다. 나는 보통 파일을 수정할 때 무엇을 하는지 기록하지만 여기서는 그렇게 하지 않을 것 같아서 시작 시 프로그램이 실행되도록 하는 변경 사항을 어디에서 적용했는지 찾기가 어렵습니다.

[여기서 일부 진행 상황 - 편집 1]

~$ ps j 1045
   PPID     PID    PGID     SID TTY        TPGID STAT   UID   TIME COMMAND
      1    1045    1045    1045 ?             -1 Ssl      0   0:00 /usr/local/bin/wii-u-gc-adapter

따라서 1045의 상위 프로세스는 PPID 1입니다. 즉, 누군가 systemd에 이 프로세스를 시작하라고 지시한 것 같습니다. 이 프로세스를 목록에서 제외하고 싶습니다.

[여기서 더 많은 진행 상황]

gamecube.service 파일은 /etc로 이동하여 ag를 사용하여 검색하여 찾았습니다.

systemd/system/gamecube.service
2:Description=Wii U Gamecube Adapter
8:ExecStart=/usr/local/bin/wii-u-gc-adapter

이 서비스를 완전히 삭제하고 싶습니다. [세 번째 편집] 나는 이 답변을 따르고 있습니다.https://superuser.com/a/936976

[네 번째 편집] 수퍼유저 단계를 수행하고 상위 프로세스가 실제로 systemd에 ps j를 사용하고 있음을 발견한 후 이 문제가 해결되었습니다.

답변1

해결책:

  1. pstree에서 프로세스 이름 찾기
  2. htop에서 프로세스를 찾아 거기에서 PID를 가져옵니다.
  3. 명령을 사용하여 ~$ ps j [PID]상위 프로세스의 PID를 찾으십시오.
  4. PID가 1이면 시작 중입니다.systemd
  5. systemd로 시작한 경우 다음을 사용하십시오.이 답변1단계와 2단계에서 얻은 정보와 함께 systemd시작 시 실행되는 목록에서 프로세스를 완전히 제거합니다.

관련 정보