日志文件 - 使用 sudo 与不使用 sudo 的区别

日志文件 - 使用 sudo 与不使用 sudo 的区别

首先使用 cd /var/log 进入日志

然后你需要查看 kern.log

我首先使用 sudo less kern.log,然后使用 less kern.log

两次输出相同。

那么,使用 sudo 执行命令和不使用 sudo 执行命令到底有什么区别呢?

答案1

sudo您可以访问文件夹和文件,无论是读取(如您的情况)还是写入,而不管这些文件夹或文件的所有权状态或权限状态如何。

在这种情况下,/var/log这些文件通常不需要您成为 才能root user读取,因此大多数用户都可以访问日志文件,至少可以读取部分。但是我们有一些进程会产生日志条目,只有system user(创建这些日志的) 或root user才能从这些文件中读取,例如auth.logmail.logphp7.2-fpm.log。这些是我从自己的/var/log文件夹中挑选出来的。

运行命令ls -l /var/log查看这些文件及其相关权限,包括其所有权。从那里您可以确定何时需要使用sudo以及何时不需要使用。

答案2

为了成功使用 -command,less您需要读取权限。让我们检查一下文件的权限:

~$ ll /var/log/kern.log
-rw-r----- 1 syslog adm 1366232 1 月 3 日 19:50 /var/log/kern.log

syslog该文件的所有者是具有读写权限的用户。该文件还与adm具有读取权限的组相关联。由于您能够以普通(非 root)用户的身份读取该文件,因此您显然是 -group 的成员adm。您可以使用 -command 进行检查groups

~$ 组
mook adm cdrom sudo audio dip plugdev lpadmin sambashare

答案3

sudo命令允许您以另一个用户的安全权限运行命令,默认情况下为superuser或。在使用之前,root user您不能以普通用户的身份运行该命令,就像有很多其他管理命令和操作必须使用才能执行这些操作一样,我们使用有很多安全原因。initsudosudosudo

相关内容