[root@datacenteronline ~]# ssh [email protected]
Last login: Wed Apr 17 09:55:45 2013 from 192.168.1.187
[root@localhost ~]# ls /proc/ | grep 2266
[root@localhost ~]# cd /proc/2266
[root@localhost 2266]# ls
attr cpuset limits net root statm
autogroup cwd loginuid numa_maps sched status
auxv environ maps oom_adj schedstat syscall
cgroup exe mem oom_score sessionid task
clear_refs fd mountinfo oom_score_adj smaps wchan
cmdline fdinfo mounts pagemap stack
coredump_filter io mountstats personality stat
[root@localhost 2266]# ls -al /proc/2266
total 0
dr-xr-xr-x 7 apache apache 0 Apr 17 09:45 .
dr-xr-xr-x 266 root root 0 Apr 17 09:11 ..
dr-xr-xr-x 2 apache apache 0 Apr 17 09:45 attr
-rw-r--r-- 1 root root 0 Apr 17 09:45 autogroup
-r-------- 1 root root 0 Apr 17 09:45 auxv
-r--r--r-- 1 root root 0 Apr 17 09:45 cgroup
--w------- 1 root root 0 Apr 17 09:45 clear_refs
-r--r--r-- 1 root root 0 Apr 17 09:45 cmdline
-rw-r--r-- 1 root root 0 Apr 17 09:45 coredump_filter
-r--r--r-- 1 root root 0 Apr 17 09:45 cpuset
lrwxrwxrwx 1 root root 0 Apr 17 09:45 cwd -> /
-r-------- 1 root root 0 Apr 17 09:45 environ
lrwxrwxrwx 1 root root 0 Apr 17 09:45 exe -> /usr/local/apache2/bin/httpd
dr-x------ 2 root root 0 Apr 17 09:45 fd
dr-x------ 2 root root 0 Apr 17 09:45 fdinfo
-r-------- 1 root root 0 Apr 17 09:45 io
-rw------- 1 root root 0 Apr 17 09:45 limits
-rw-r--r-- 1 root root 0 Apr 17 09:45 loginuid
-r--r--r-- 1 root root 0 Apr 17 09:45 maps
-rw------- 1 root root 0 Apr 17 09:45 mem
-r--r--r-- 1 root root 0 Apr 17 09:45 mountinfo
-r--r--r-- 1 root root 0 Apr 17 09:45 mounts
-r-------- 1 root root 0 Apr 17 09:45 mountstats
dr-xr-xr-x 6 apache apache 0 Apr 17 09:45 net
-r--r--r-- 1 root root 0 Apr 17 09:45 numa_maps
-rw-r--r-- 1 root root 0 Apr 17 09:45 oom_adj
-r--r--r-- 1 root root 0 Apr 17 09:45 oom_score
-rw-r--r-- 1 root root 0 Apr 17 09:45 oom_score_adj
-r--r--r-- 1 root root 0 Apr 17 09:45 pagemap
-r--r--r-- 1 root root 0 Apr 17 09:45 personality
lrwxrwxrwx 1 root root 0 Apr 17 09:45 root -> /
-rw-r--r-- 1 root root 0 Apr 17 09:45 sched
-r--r--r-- 1 root root 0 Apr 17 09:45 schedstat
-r--r--r-- 1 root root 0 Apr 17 09:45 sessionid
-r--r--r-- 1 root root 0 Apr 17 09:45 smaps
-r--r--r-- 1 root root 0 Apr 17 09:45 stack
-r--r--r-- 1 root root 0 Apr 17 09:45 stat
-r--r--r-- 1 root root 0 Apr 17 09:45 statm
-r--r--r-- 1 root root 0 Apr 17 09:45 status
-r--r--r-- 1 root root 0 Apr 17 09:45 syscall
dr-xr-xr-x 29 apache apache 0 Apr 17 09:45 task
-r--r--r-- 1 root root 0 Apr 17 09:45 wchan
¿Alguien puede decirme qué es?
ls
un alias para algo? se/bin/ls -1 | grep 2266
comporta de la misma manera?Respuestas:
Es probable que esto sea un hilo. En Linux, los hilos tienen una ID de proceso diferente a los otros hilos en el proceso. Cuando observa la columna PID, en
ps
realidad está viendo el ID del grupo de subprocesos (TGID), que es común entre todos los subprocesos en un proceso. Esto se debe a razones históricas debido a la forma en que los hilos evolucionaron en Linux.Por ejemplo, en mi sistema, el cromo tiene varios hilos en un proceso (también en varios procesos):
La segunda columna es el TGID (aunque está etiquetado como PID) y la cuarta columna es LWP (proceso ligero).
Puede ver que el proceso 10929 no aparece
/proc
, pero puedecd
hacerlo. Si observa elstatus
archivo, verá que es parte del "proceso" (grupo de subprocesos) 10927, y de la salida anterior, ese proceso sí aparece/proc
.fuente
ps … | grep …
línea en realidad no imprimirá el encabezado ... ¡Ojalá grep tuviera la opción de imprimir siempre la primera línea! Creo que haré una pregunta al respecto.Es un hilo apache.
Puedes deducir de esto:
La documentación del kernel de Linux para el sistema de archivos proc aparentemente no explica por qué la ID del hilo es un directorio pero está oculto
ls
.Sin embargo, los hilos se ven en
/proc/<pid>/task/<threadid>
.fuente