I just performed a fresh ubuntu install and i am seeing the following in lsof:
userA@az1:~$ lsof
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
init 1 root cwd unknown /proc/1/cwd (readlink: Permission denied)
init 1 root rtd unknown /proc/1/root (readlink: Permission denied)
init 1 root txt unknown /proc/1/exe (readlink: Permission denied)
init 1 root NOFD /proc/1/fd (opendir: Permission denied)
kthreadd 2 root cwd unknown /proc/2/cwd (readlink: Permission denied)
kthreadd 2 root rtd unknown /proc/2/root (readlink: Permission denied)
kthreadd 2 root txt unknown /proc/2/exe (readlink: Permission denied)
kthreadd 2 root NOFD /proc/2/fd (opendir: Permission denied)
Is this normal? If not how do I fix it? Trying to search for this particular error has lead me nowhere.
I am concerned that something is wrong because root is getting Permission denied
errors.
ls -la result for the proc folder:
dr-xr-xr-x 145 root root 0 Jan 13 17:33 proc
ls -la results for contents are:
dr-xr-xr-x 9 root root 0 Jan 13 17:34 1
and for the contents of process 1.
sudo ls -la /proc/1/
total 0
dr-xr-xr-x 9 root root 0 Jan 13 17:34 .
dr-xr-xr-x 145 root root 0 Jan 13 17:33 ..
dr-xr-xr-x 2 root root 0 Jan 13 17:42 attr
-rw-r--r-- 1 root root 0 Jan 13 17:42 autogroup
-r-------- 1 root root 0 Jan 13 17:42 auxv
-r--r--r-- 1 root root 0 Jan 13 17:34 cgroup
--w------- 1 root root 0 Jan 13 17:42 clear_refs
-r--r--r-- 1 root root 0 Jan 13 17:34 cmdline
-rw-r--r-- 1 root root 0 Jan 13 17:42 comm
-rw-r--r-- 1 root root 0 Jan 13 17:42 coredump_filter
-r--r--r-- 1 root root 0 Jan 13 17:42 cpuset
lrwxrwxrwx 1 root root 0 Jan 13 17:35 cwd
-r-------- 1 root root 0 Jan 13 17:35 environ
lrwxrwxrwx 1 root root 0 Jan 13 17:34 exe
dr-x------ 2 root root 0 Jan 13 17:35 fd
dr-x------ 2 root root 0 Jan 13 17:42 fdinfo
-r-------- 1 root root 0 Jan 13 17:42 io
-r--r--r-- 1 root root 0 Jan 13 17:42 latency
-r--r--r-- 1 root root 0 Jan 13 17:35 limits
-rw-r--r-- 1 root root 0 Jan 13 17:42 loginuid
dr-x------ 2 root root 0 Jan 13 17:42 map_files
-r--r--r-- 1 root root 0 Jan 13 17:35 maps
-rw------- 1 root root 0 Jan 13 17:42 mem
-r--r--r-- 1 root root 0 Jan 13 17:42 mountinfo
-r--r--r-- 1 root root 0 Jan 13 17:42 mounts
-r-------- 1 root root 0 Jan 13 17:42 mountstats
dr-xr-xr-x 5 root root 0 Jan 13 17:42 net
dr-x--x--x 2 root root 0 Jan 13 17:42 ns
-r--r--r-- 1 root root 0 Jan 13 17:42 numa_maps
-rw-r--r-- 1 root root 0 Jan 13 17:42 oom_adj
-r--r--r-- 1 root root 0 Jan 13 17:42 oom_score
-rw-r--r-- 1 root root 0 Jan 13 17:42 oom_score_adj
-r--r--r-- 1 root root 0 Jan 13 17:42 pagemap
-r--r--r-- 1 root root 0 Jan 13 17:42 personality
lrwxrwxrwx 1 root root 0 Jan 13 17:35 root
-rw-r--r-- 1 root root 0 Jan 13 17:42 sched
-r--r--r-- 1 root root 0 Jan 13 17:42 schedstat
-r--r--r-- 1 root root 0 Jan 13 17:42 sessionid
-r--r--r-- 1 root root 0 Jan 13 17:42 smaps
-r--r--r-- 1 root root 0 Jan 13 17:42 stack
-r--r--r-- 1 root root 0 Jan 13 17:35 stat
-r--r--r-- 1 root root 0 Jan 13 17:42 statm
-r--r--r-- 1 root root 0 Jan 13 17:35 status
-r--r--r-- 1 root root 0 Jan 13 17:42 syscall
dr-xr-xr-x 3 root root 0 Jan 13 17:35 task
-r--r--r-- 1 root root 0 Jan 13 17:42 timers
-r--r--r-- 1 root root 0 Jan 13 17:42 wchan
Best Answer
It appears that you did not run
lsof
as root, given that you show a prompt with$
. Runsudo lsof
to execute thelsof
command as root.Some information about a process, such as its current directory (
pwd
), its root directory (root
), the location of its executable (exe
) and its file descriptors (fd
) can only be viewed by the user running the process (or root). That's normal behavior. Sometimes the permission to access files in/proc
doesn't match the permission in the directory entries, it's finer-grained (for example, it depends on processes' effective UID as well as real UID).You might get “permission denied” as root in some unusual circumstances, when you're root only in a namespace. If you just installed a new machine, you won't be seeing this.