w
두 컴퓨터 모두에서 명령을 실행하고 있습니다 . 둘 다 정확히 동일한 시스템(Ubuntu 16.04.3 LTS(GNU/Linux 4.4.0-87-generic x86_64))이 설치되어 있습니다. SSH를 통해 두 컴퓨터 모두에 hans로 로그인했습니다.
풍부한 기계:
$ w
13:18:20 up 26 days, 6:02, 1 user, load average: 0.02, 0.03, 0.01
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
hans pts/0 10.xxx.xxx.xxx 10:14 1.00s 0.08s 0.00s w
기계 열:
$ w
13:11:17 up 46 days, 46 min, 1 user, load average: 0.02, 0.04, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
hans pts/0 10.xxx.xxx.xxx 10:14 0.00s 0.02s 0.02s sshd: hans [priv]
열의 출력이 다른 이유는 무엇입니까 WHAT
? on foo I see it w
, on bar: I see it sshd: hans [priv]
. 이 비대칭성은 어디서 오는 걸까요?
답변1
이 w
명령은 경험적 방법을 사용하여 현재 프로세스로 표시할 프로세스를 결정합니다. Linux 매뉴얼 페이지에서는 작동 방식을 설명하지 않지만 내 OS X 시스템에서는 다음과 같이 말합니다.
"현재 프로세스"라는 개념이 모호합니다. 현재 알고리즘은 "인터럽트를 무시하지 않는 터미널에서 가장 높은 번호가 지정된 프로세스이거나, 없는 경우 터미널에서 가장 높은 번호가 지정된 프로세스"입니다. 예를 들어, 셸 및 편집기와 같은 프로그램의 중요한 섹션에서 또는 잘못된 프로그램이 백그라운드 포크에서 실행 중이고 중단을 무시할 수 없는 경우 실패할 수 있습니다. (프로세스가 발견되지 않으면 w가 인쇄됩니다
-
.)
거기에 설명된 실패 모드는 현재 보고 있는 일관되지 않은 동작을 설명할 수 있습니다.