fork

Libvirt는 후크 포크를 허용합니다.
fork

Libvirt는 후크 포크를 허용합니다.

다음 Libvirt 후크가 있는 경우/etc/libvirt/hooks/qemu.d/hook.sh #!/usr/bin/env bash if [[ $1 == "SEARCH_FOR_ME" ]]; then while true; do sleep 1 done fi bash /etc/libvirt/hooks/qemu.d/hook.sh SEARCH_FOR_ME & disown $! touch /tmp/test123 exit 0 이제 가상 머신을 시작하면 이 후크가 호출되...

Admin

포크()는 매우 느립니다
fork

포크()는 매우 느립니다

가상 머신에 Ubuntu 18.04를 실행하는 Linux 서버가 있습니다. 유사 ls -l하거나 빈번한 작업은 w완료하는 데 몇 초가 걸립니다. 몇 밀리초밖에 걸리지 않는다고 strace -c ls -l하는데 문제가 발생할 때까지 여러 번 실행하면 clone() 시스템 호출이 문제의 원인이라는 것을 알 수 있습니다.lsstrace -c strace -c ls -l % time seconds usecs/call calls errors syscall ------ -----------...

Admin

Perl의 `kill`은 예상치 못한 `$! == Errno::EINTR`을 사용합니다.
fork

Perl의 `kill`은 예상치 못한 `$! == Errno::EINTR`을 사용합니다.

TCP 연결을 처리하기 위해 하위 프로세스를 포크하는 네트워크 데몬을 작성했습니다. SIGINT기본 프로세스 의 각 하위 프로세스에 대해 하나씩 트리거하여 kill일부 최종 통계를 정리하고 수집합니다. 거의 모든 경우에 잘 작동하며 하위 프로세스가 매우 빠르게 종료됩니다. 그러나 때로는 하위 프로세스가 짧은 시간 초과(예: 5초) 내에 종료를 거부하는 경우도 있습니다. 당시 무슨 일이 있었는지 전혀 모르므로 상황을 진단하기 위해 자세한 출력을 추가했습니다. netcat연결을 열고 프로세스를 일시 중지...

Admin

GNU 화면에서 "-dm"과 "-Dm"의 차이점은 무엇입니까?
fork

GNU 화면에서 "-dm"과 "-Dm"의 차이점은 무엇입니까?

GNU 화면 매뉴얼은 다음과 같이 말합니다: `-d -m' Start `screen' in _detached mode. This creates a new session but doesn't attach to it. This is useful for system startup scripts. `-D -m' This also starts `screen' in _detached_ mode, but doesn't fork...

Admin

장기 실행 독립 프로세스를 생성하는 시스템 서비스를 실행하는 "올바른" 방법은 무엇입니까?
fork

장기 실행 독립 프로세스를 생성하는 시스템 서비스를 실행하는 "올바른" 방법은 무엇입니까?

새로운 이벤트가 감지될 때마다 ffmpeg 프로세스를 생성하는 시스템 서비스가 있습니다. 이러한 프로세스는 서비스가 다시 시작되더라도 유지되고 완료될 때까지 실행되어야 합니다(그래서 가능한 한 빨리 분리됩니다). 현재 다음 서비스 단위 파일을 사용하여 설정했습니다. [Unit] Description=My Service [Service] Environment="VAR1=val1" "VAR2=val2" Type=exec KillMode=process ExecStart=/path/to/service/ex...

Admin

zsh에서 tmux의 하위 프로세스 및 형제 프로세스 실행
fork

zsh에서 tmux의 하위 프로세스 및 형제 프로세스 실행

나는 Ubuntu 22.04.1( 이 질문에만 관련이 WSL 2있다는 사실에도 불구하고 )를 사용하고 있습니다Unix tmux세션 에서 실행할 때 zsh프로세스 트리(약간 요약했습니다)가 다음에서 시작되는 이유는 무엇입니까? init(Ubuntu)─┬─SessionLeader───Relay(9)─┬─ssh-agent └─zsh───pstree 도착하다 init(Ubuntu)─┬─SessionLeader───Relay(9)─┬─s...

Admin

간단한 C 프로그램을 실행하는 가상 머신을 실행하는 가장 쉬운 방법은 무엇입니까
fork

간단한 C 프로그램을 실행하는 가상 머신을 실행하는 가장 쉬운 방법은 무엇입니까

가상 머신에서 간단한 단일 파일 C 프로그램을 실행하려고 합니다. 사실, 이것은 포크 폭탄 C 프로그램입니다: #include <stdio.h> #include <sys/types.h> int main() { while(1) { fork(); } return 0; } 이 가상 머신이 시스템에서 실행 중인 다른 가상 머신에 얼마나 많은 영향을 미치는지 확인하기 위해 이 작업을 수행하고 싶습니다. 가상 머신에서 이 작업을 수행하는...

Admin

포크: 리소스를 일시적으로 사용할 수 없음 - CentOS 서버에서
fork

포크: 리소스를 일시적으로 사용할 수 없음 - CentOS 서버에서

더 이상 아무것도 실행할 수 없으며(거의 아무것도) 다음과 같은 오류 메시지가 계속 나타납니다. 명령을 실행하면 여러 번 오류가 발생할 수 있습니다.포크: 재시도: 하위 프로세스 없음, 몇 번 테스트해 보면 가끔 작동하는 경우가 있습니다. -bash: 포크: 재시도: 하위 프로세스 없음 -bash: 포크: 리소스를 일시적으로 사용할 수 없음 오류 메시지 예시: [user@server ~]$ sudo -i sudo: unable to fork: Resource temporarily unavaila...

Admin

double() - 왜요?
fork

double() - 왜요?

소스코드에서 다음 함수를 찾았습니다.고양이 눈(미니멀리스트 창 관리자): void spawn(const Arg arg) { if(fork() == 0) { if(fork() == 0) { if(dis) close(ConnectionNumber(dis)); setsid(); execvp((char*)arg.com[0],(char**)arg.com); } exi...

Admin

stdin을 stdout 및 stderr로 포크하시겠습니까?
fork

stdin을 stdout 및 stderr로 포크하시겠습니까?

표준 입력을 stdout 및 stderr로 분기할 수 있는지 궁금합니다. 이런 것들, $ echo "hi" | fork > std.out 2> std.err $ cat std.out hi $ cat std.err hi 아니면 입력을 서로 다른 두 대상으로 분기할 수 있는 기능이 누락된 것인가요? 이 tee명령은 내가 원하는 것과 비슷해 보이지만 파일에 쓰고 싶지 않습니다. 감사해요. ...

Admin

포크된 프로세스가 왜 종료되나요?
fork

포크된 프로세스가 왜 종료되나요?

저는 Red Hat RHEL 7.9 서버에서 실행 중입니다. 수백 개의 서로 다른 작은 C 기반 프로그램을 실행하기 위해 반복적으로 fork()를 호출하는 Perl 스크립트가 있습니다. 한 번에 약 10개의 프로그램을 실행한 다음(내 컴퓨터에는 16개의 코어가 있음) 이전 프로그램이 완료될 때까지 기다렸다가 새로운 프로그램을 시작하기 위해 fork()를 호출합니다. 대부분의 절차는 10초 이내에 완료됩니다. 몇 분 후에 많은 프로그램이 종료되었습니다. 외부 Perl 스크립트를 계속해서 실행하면 다른 ...

Admin

포크 시스템 호출은 어떻게 작동하나요?
fork

포크 시스템 호출은 어떻게 작동하나요?

이 예를 보면 #include <stdio.h> #include <unistd.h> void main(){ int pi_d ; int pid ; pi_d = fork(); if(pi_d == 0){ printf("Child Process B:\npid :%d\nppid:%d\n",getpid(),getppid()); } if(pi_d > 0){ pid = fork(); if(pid > 0){ printf("\nPa...

Admin

포크 지원 연결이 거부되면 socat에 중지하도록 지시
fork

포크 지원 연결이 거부되면 socat에 중지하도록 지시

나는 이 지시문을 사용하여 로컬 컴퓨터에서 포트를 다른 포트로 전달합니다. socat -d -d TCP4-LISTEN:80,reuseaddr,fork TCP4:127.0.0.1:8000 대상 포트가 닫히지 않는 한(연결 거부) 포트를 열어 두어야 합니다. 연결 거부 시 종료를 요구할 수 있습니까 socat(포킹 활성화)? ...

Admin