10-Linux基础入门-文件和目录的属性及权限之用户与组和时间戳基础

Posted 张雨嘉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了10-Linux基础入门-文件和目录的属性及权限之用户与组和时间戳基础相关的知识,希望对你有一定的参考价值。

一、概述

Linux是一个多用户、多任务的操作系统,对于Linux系统来说,由于角色不同,权限和所完成的任务也不同。用户的角色是通过UID和GID识别的,用户的UID就相当于我们的身份证一样,用户名就相当于我们的名字。其中包含:

UID(User Identity),用户ID,相当于各位的身份证,在系统中是唯一的。

GID(Group Identity),组ID,相当于各位的家庭或者你们的学校ID。

二、用户

1、超级用户

默认是root用户,其UID和GID均为0。root用户在每台Linux操作系统中都是唯一且真实存在的,通过他可以登录系统,可以操作系统,可以操作系统中任何文件和命令,拥有最高的管理权限。

在生产环境中,一般会禁止root账号通过SSH远程连接服务器,也可以通过更改默认的SSH端口来增强系统安全。

2、普通用户

是具备系统管理员root的权限的运维或系统管理人员添加的,这样的用户可以登录,但是权限很小。他可以操作自己的家目录里的文件,别的干不了。

3、虚拟用户

与真实普通用户区分开来,这类用户最大的特点是安装系统后默认就会存在,且默认情况大多数不能登录系统。

补充:Linux安全优化

①安装系统后可以删除用不到的虚拟用户,但最好不删而是注释掉,万一出问题可以恢复过来。

②我们自己部署服务的时候,也会创建虚拟用户,满足服务的需求。

例如:apache、nginxmysql、nfs、rsync、nagios、zabbix、redis

4、Linux系统中不同用户角色对应的UID说明

0 超级用户

1-499 虚拟用户

500-65535普通用户

三、用户组

每个用户也要属于一个组,如果用户没添加组就是跟用户相同名称的组,用户与组的关系分为一对一、一对多、多对一、多对多。

四、用户和组的配置文件

1、用户配置文件/etc/passwd

/etc/passwd文件中每行定义一个用户账号,有多少行就表示多少个账号,在一行中可以清晰的看出,各内容之间用通过“:”号划分了多个字符,共7部分,这7部分分别定义了账号的属性,passwd文件实际内容如下:

[root@centos~]# head -5 /etc/passwd            #通过head命令查看/etc/passwd的前5行

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

每一列的意思如下:

root

:x

:0

:0

:root

:/root

:/bin/bash

账号名称

:账号密码

:账号UID

:账号GID

:用户说明

:用户家目录

:shell解释器

注意:

①账号名称是唯一,不能重名。

②密码由于不安全,转到/etc/shadow里去了。

2、用户影子口令文件/etc/shadow

由于passwd文件必须要被所有的用户可读,所以会带来安全隐患。而shadow文件就是为了解决这个安全隐患而增加的。可以通过ls -l查看/etc/shadow文件的权限。

[root@centos ~]# ls -l/etc/shadow

----------. 1 root root699 2月   5 04:28 /etc/shadow

小结论:

①useradd是添加用户命令,它会更改/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow。

②passwd是设置用户密码命令,它会更改/etc/shadow。

五、与用户组相关的配置文件

/etc/group         #用户组配置文件

/etc/gshadow    #用户组影子文件

小结论:

①groupadd添加用户会更改/etc/group、/etc/gshadow。

②使用id 用户名可以查看用户信息。

六、时间戳

1、概述

用ls -lhi可得知,第7、8、9三列是时间(默认是修改时间),一般分为三类:

modify修改时间 -mtime 一般是修改文件内容

change改变时间 -ctime 文件属性改变

access访问时间 -atime 访问文件内容

2、格式化显示时间属性

[root@centos ~]# ls -l--time-style=long-iso /root

总用量 40

-rw-------. 1 rootroot  1140 2018-02-05 04:28anaconda-ks.cfg

-rw-r--r--. 1 root root21736 2018-02-05 04:28 install.log

-rw-r--r--. 1 rootroot  5890 2018-02-05 04:25install.log.syslog

3、查看文件的时间属性

[root@centos ~]# stat/root

  File: "/root"

  Size: 4096            Blocks: 8          IO Block: 4096   目录

Device: 803h/2051d      Inode: 2359297     Links: 3

Access:(0550/dr-xr-x---)  Uid: (    0/   root)   Gid: (    0/   root)

Access: 2018-02-0620:18:54.888133301 +0800

Modify: 2018-02-0505:54:15.286465595 +0800

Change: 2018-02-0505:54:15.286465595 +0800

七、其它

第10列文件名,不在inode里,而是在上机目录的block里。

 


欢迎关注
新浪微博:https://weibo.com/yougazhang0506
微信公众平台:张雨嘉

我的网站:http://www.zhangyujia.cn
51CTO博客:http://blog.51cto.com/11099293
CSDN博客:http://blog.csdn.net/u013260195
GitHub:https://github.com/zhangyujia0506/

以上是关于10-Linux基础入门-文件和目录的属性及权限之用户与组和时间戳基础的主要内容,如果未能解决你的问题,请参考以下文章

08-Linux基础入门-文件和目录的属性及权限之文件类型文件扩展名及文件权限基础

06-Linux基础入门-文件和目录的属性及权限之inode与block

09-Linux基础入门-文件和目录的属性及权限之链接(综合网络整理)

13-Linux基础入门-Linux中的文件及目录权限(综合网络整理)

linux 文件属性

< Linux入门 > shell运行原理及Linux权限的理解