Linux用户及文件权限管理

Linux,用户,用户组,文件,权限

从一个小白开始,学习了一段时间Linux,感谢马哥,对Linux有了个初步的认识,上学时候学到的计算机方面的知识,也在脑袋里复活了,虽然实在算不上满血复活。 第一篇博客作业:用户及文件权限管理,Linux下的用户和文件权限系统,这方面与Windows区别还是比较大的,利用这个机会自己梳理下。

linux的权限系统主要是由用户、用户组和权限组成。

用户就是一个个的登录并使用linux的用户。linux内部用UID表示。

用户组就是用户的分组。linux内部用GID表示。

权限分为读、写、执行三种权限。

1、用户及用户组:

1.1用户:

储存用户和组的文件目录

用户:UID /etc/passwd

组  :GID /etc/group

Linux中,在储存用户和组信息的文件,不会直接将用户或组密码储存在其中,而是在其他文件中储存,但并不是直接以密码保存,而是保存加密后的文件,影子口令

用户:/etc/shadow

组  :/etc/gshadow

储存用户信息的文件:/etc/passwd

cuiyuzhe:x:1000:1000:cuiyuzhe:/home/cuiyuzhe:/bin/bash

docker:x:1001:1001::/home/docker:/bin/bash

archlinux:x:1002:1002::/home/archlinux:/bin/bash

通过上面示例可以看到,在/etc/passwd文件中,每个用户信息作为一行,而每一行分为7段,用 :分隔,分别表示:

用户名 :密码占位符 :UID :用户私有组(基本组)GID :注释 :用户家目录 :默认shell

1.2 用户组:

用户组分为(1)基本组,私有组:本组只有该用户自己,用户创建文件后,该文件的默认组为该用户的基本组

(2)附加组,额外组:基本组以外的其他组

在创建一个用户时,如果未指定用户私有组和家目录时,系统默认会为该用户创建一个以该用户名为组名的组,作为该用户的私有组组GID一般与用户UID相同。且会在/home目录下为该用户创建一个与该用户同名的目录作为该用户的家目录。

1.3 存储密码文件

储存密码信息文件:/etc/shadow

mysql:!:17301:0:99999:7:::

wangml:!!:17303:0:99999:7:::

各字段的含义:用户名 :加密后的密码 :最后一次密码修改时间 :密码最短使用时间 :用户过期时间 :修改密码警告时间。

 

1.4 用户及用户组管理命令

创建用户组: groupadd

NAME
groupadd – create a new group

SYNOPSIS
groupadd [options] group

参数:

-g:GID,手动指定ID号
-r:创建系统组:1-499,1-999,
每个进程的执行都代表了所在用户的身份

修改组命令:groupmod

NAME

groupmod – modify a group definition on the system

SYNOPSIS
groupmod [options] GROUP

-g :GID
-n: new name

删除组命令:groupdel

创建用户命令:useradd

NAME
useradd – create a new user or update default new user information

SYNOPSIS
useradd [options] LOGIN

useradd -D

useradd -D [options]

-u:–uid :指定uid号
-g:–gid: 指定基本组ID,此组需要事先存在
-G:–groups:GROUP1,GROUP2,GROUP3 指明用户所属的附加组,多个组之间用逗号分隔。
一个用户可以属于多个附加组。但是一个用户只能有一个基本组。
-c:–comment :指明注释信息

-d:以指定的路径为用户的家目录:创建方式通过复制/etc/skel/并重命名实现的,指定的家目录如果事先存在。则不会为用户复制环境配置文件。(一些隐藏文件)

-s:–shell:指明用户的默认shell SHELL:所有的可用shell别表为/etc/shells

-r:–system:创建系统用户。
-m:强制为用户创建主目录
-M:不为用户创建主目录
-f:–inactive :密码过期后账号被彻底禁用之前的天数,0,表示立即禁用,-1表示禁用这个功能

-r:–system:创建系统用户。
-m:强制为用户创建主目录
-M:不为用户创建主目录
-f:–inactive :密码过期后账号被彻底禁用之前的天数,0,表示立即禁用,-1表示禁用这个功能

修改用户属性命令:

usermod命令:修改用户属性

NAME
usermod – modify a user account

SYNOPSIS
usermod [options] LOGIN

-c:–comment:改注释
-l:–login:改用户名
-u:修改UID
-g:–gid :修改用户所属的基本组
-G:–groups :修改用户所属的附加组,原来的附加组会被覆盖
-a:–append:与-G一同使用,用于为用户添加新的附加组
-d:–home :修改用户的家目录:用户原有的配置文件不会转移到新文件-m配合使用
-m:–move-home:只能与-d选项一同使用,用于将原有的家目录移动为新的家目录
-s:–shell:修改用户的默认shell
-L:–lock :锁定用户密码:即在用户原来的密码字符串之前添加一个”!”
-U:–unlock:解锁用户密码

userdel命令:删除用户

NAME
userdel – delete a user account and related files

SYNOPSIS
userdel [options] LOGIN

-r :删除用户时,一并删除其家目录

 

2、文件权限管理

由于Linux的一切皆文件的基本思想,对于权限的管理更多的则体现在管理文件权限上。为了方便的指派权限,在Linux中定义了文件属主,文件属组,其他人这三类人的权限。对于计算机来说,这三类都是一个标识符。

Linux进程有安全上下文,程以其发起者的身份运行,

如果进程的属主与文件的属主是否相同:

如果相同则应用属主权限;

否则,则检查进程的属主与文件的属组是否相同:

如果相同,应用属组权限:

否则,应用other权限

 

通过 ls 命令我们可以看到文件的具体权限信息。

[root@localhost /]# ls -l /etc/issue

-rw-r–r–. 1 root root 23 Nov 30  2016 /etc/issue

文件权限信息一共有9位,每3位一组,分别表示属主,属组,其他人的权限信息

rw-r–r– :

左三位:定义user(owner)权限:对应u

中三位:定义group权限:对应g

右三位:定义other权限:对应o

 

权限:r  w  x

对于文件:

r:read:可读,可以使用cat等命令查看文件内容

w:wirte:可写,可以进行编辑修改,或删除操作

x:excute:可执行,可以在命令提示符下当做命令提交给内核运行

对于目录:

r:可以对此目录执行ls命令,列出内部所有文件

w:可以在此目录下创建文件

x:可以使用cd命令切换进此目录,也可以使用ls -l命令查看内部文件的详细信息

对于目录来说,一般会有执行权限,而对于文件来说,一般默认没有执行权限。

表示没有某个权限时,使用 –

在表示文件权限时,也可以使用八进制数字0,1,2,4…表示

0 000 —:无权限

1 001 –x:可执行

2 010 -w-:可写

4 100 r–:可读

7 111 rwx:可读可写可执行

修改文件权限:chmod MODE 文件

-R:递归修改

–reference=文件1 文件2… :将文件2…将文件2…的属性修改为与文件1相同

 

 

修改某类用户权限时:chmod 用户类别(u g o a) +(-) MODE,a表示所有用户,可以省略

我们都知道,在创建一个文件后,系统会默认给文件赋予权限,那么,默认权限是由什么决定的?

umask:遮罩码,不加参数时表示查看系统默认遮罩码,加八进制位表示修改遮罩码

创建文件后默认权限 666-umask

创建目录后默认权限 777-umask

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88119

(0)
cyzcyz
上一篇 2017-10-29
下一篇 2017-10-29

相关推荐

  • Linux文本搜索工具grep

    Linux文本搜索工具grep Linux文本搜索工具grep grep 基本正则表达式 egrep 扩展正则表达式 fgrep 简介 grep(全称Globally search a Regular Expression and Print,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,根据用户指定的“模式(pattern)”对目标文本进行匹…

    2016-04-05
  • N21天天第十六周课程练习

    1、源码编译安装LNMP架构环境; 一、安装Nginx 1、解决依赖 [root@localhost ~]# yum groupinstall 开发工具 服务器平台开发 -y 2、安装 [root@localhost ~]# tar xf pcre-8.37.…

    Linux干货 2016-12-14
  • linux运维

    linux运维大纲,学习路线图

    Linux干货 2017-10-21
  • N21 第八周 总有刁民想害朕

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。 集线器的英文称为“Hub”。主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它…

    Linux干货 2016-09-15
  • 日志SYSLOGD_OPTIONS 参数

    SYSLOGD_OPTIONS 参数

    Linux干货 2018-03-26
  • N26-博客作业-week16

    1、源码编译安装LNMP架构环境 IP:192.168.12.137 Nginx:1.8.1 MariaDB:5.5.57 PHP:5.6.31 安装开发环境包组 yum groupinstall “Development Tools” “Server Platform Development” -y 安装开发程序包 yum install pcre-dev…

    2017-08-04