Linux之用户及文件权限管理

Linux之用户及文件权限管理


前言:Linux 是一个多用户的操作系统;Linux哲学思想之一—“一切皆文件”。说明在学习Linux过程中,用户及文件权限的管理是非常重要滴。本文主要是引用了CentOs/RedHat 7.1的命令。

一.用户、组管理

1).用户、组类型:

超级用户(管理员):root用户具有一切权限,只有在进行系统维护(如创建用户、分配权限)时用到;由于root用户权限过大,为了避免管理员的误操作导致不可逆的后果,所以在非必要的情况下不用root用户登录。

普通用户:为了能让使用者能调用系统资源以及使用某些应用程序时建立的,一般情况下都使用普通用户登录系统。

管理员组:管理的专用组,指root组

普通用户组:普通用户的组,容器,一个组可包含多个用户,一个用户可对应多个组

系统组:系统自动创建的组

私有组:即基本组,在创建用户时未指定用户组的时候自动创建的与用户名的组。

2).用户、组标识:

UID(UserID):Linux系统不认识用户名,只认识用户ID号;所以每个用户都具有一个ID号。

UID表示为16bits二进制数字:0-65535

管理员的ID号:0

普通用户:1-65535

系统用户:1-999

登录用户:1000-60000

用户与ID号可以在/etc/passwd中查看。

组标识:

GID(GroupID):每个组对应的ID号。

管理员组:0

普通用户组:1-65535

系统用户组:1-999

登录用户组:1000-60000

组和组ID号可以在/etc/group中查看。

3).用户、组配置文件:/etc/passwd、/etc/group

passwd中每行共有7列,分别是:用户名:密码:UID:GID:说明信息:组目录:用户登录shell。

group中每行共有4列,分别是:组名:密码:GID:该组用户成员。

4).用户、组密码文件:/etc/shadow、/etc/gshadow

shadow中每行共有7列,分别是:用户名:加密的密码:最近一次修改密码的时间:最短使用期限:最长使用期限:警告期限:过期期限:保留时间

gshadow中每行共有4列,分别是:组名:加密的密码:管理组:该组用户成员

5).用户、组管理命令总结:

useradd、usermod、userdel、groupadd、groupmod、groupdel、passwd、gpasswd、chage、chsh、id、su、who、w、whoami

注:下文只包含以上命令的常用选项说明,若需要具体说明信息请查看man file

useradd:创建用户

useradd [选项] 登录名

-u:指定UID

-g:指定基本组ID,基本组必须存在

-G:指定附加组ID

-s:指定用户登录shell

usermod:修改用户信息

usermod [选项] 登录名

-u:修改用户UID号

-g:修改用户所属基本组

-G:覆盖原来所属的附加组

-aG:追加附加组

-L,-U:锁定与解锁用户密码

userdel:删除用户

userdel [选项] 登录名

-r:删除用户及其家目录

groupadd:添加组

groupadd [选项] 组名

-g:指定GID

groupmod:修改组信息

groupmod [选项] 组名

-g:修改GID

-n:修改组名

groupdel:删除组

groupdel [选项] 组名

passwd:设置用户密码

passwd [选项...] <帐号名称>

-d:删除已命名帐号的密码

-l:锁定指名帐户的密码

-u:解锁指名账户的密码

-e:过期期限,日期

-i:非活动期限

-n:密码的最短使用期限

-x:密码的最长使用期限

-w:警告期限

--stdin:从标准输入读取密码

gpasswd:设置组密码

gpasswd [选项] 组

-a:向组中添加用户

-d:从组中移除用户

chage:更改用户密码过期信息

chage [选项] 登录名

-d:将最近一次密码设置时间设为“最近日期”

-m:将两次改变密码之间相距的最小天数设为“最小天数”

-M:将两次改变密码之间相距的最大天数设为“最大天数”

-W:将过期警告天数设为“警告天数”

chsh:改变登录shell

chsh [选项] [用户名]

-s:指定登录 shell

id:显示用户的有效ID

id [OPTION]... [USER]

-u: 显示有效的UID

-g: 显示用户的基本组ID

-G:显示用户所属的所有组的ID

su:切换用户

su [选项] [-] [USER [参数]...]

-,-l:登录式切换

who:显示当前已登录的用户信息

who [选项]... [ 文件 | 参数1 参数2 ]

-b:上次系统启动时间

-d:显示已死的进程

-q:列出所有已登录用户的登录名与用户数量

-r:显示当前的运行级别

w:显示登录用户和正在执行的程序

w [options]

whoami:显示与当前的有效用户ID 相关联的用户名

whoami [选项]...

二.文件权限管理


        1).Linux文件类型

-:常规文件

d:目录文件

b:块设备文件,支持以“block”为单位进行随机访问

c:字符设备文件,支持以“character”为单位进行线性访问

l:符号链接文件

p:命名管道

s:套接字文件

2).Linux文件属性

例:ls -l(以长格式查看当前目录下的文件信息)出现下面内容

“drwxrwxrwx”

含义:

我们把以上的字段切割为4个部分

第一部分:第一个字符d,表示Linux文件类型,上面有说明

第二部分:第一组rwx三个字符,代表用户权限

第三部分:第二组rwx三个字符,代表用户所属组的权限

第四部分:第三组rwx三个字符,代表其它用户的权限

权限说明:

r:read 读取权限;w:write 写入权限 x:excutable 执行权限

在8进制中,r、w、x、分别代表:4、2、1;记住就行

针对文件:

r:可获取文件的数据

w: 可修改文件的数据

x:可将此文件运行为进程

针对目录:

r:可使用ls命令获取其下的所有文件列表

w: 可修改此目录下的文件列表;即创建或删除文件

x: 可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息

3).文件操作命令简述:

ls、mkdir、touch、rmdir、rm、mv、cd、cp、more、less、head、tail、                                        cat、tac ......

ls:列出文件或目录相关信息

ls [选项]... [文件]...

-a: 显示所有文件,包括隐藏文件

-A:显示除.和..之外的所有文件

-l: --long, 长格式列表,即显示文件的详细属性信息

-h, --human-readable:对文件大小单位换算;换算后结果可能会非精确值

-d:查看目录自身而非其内部的文件列表

-r: reverse, 逆序显示

-R: recursive,递归显示

mkdir:创建目录

                  mkdir [选项]... 目录...                                         

-p: 自动按需创建父目录

-v:显示详细过程

-m:直接给定权限

touch:创建文件

touch [选项]... 文件...

-c: 指定的文件路径不存在时不予创建

-a: 修改access time

-m:修改modify time

rmdir:删除指定的空目录                

rmdir [选项]... 目录...

-p:如果父目录为空,一并删除;

-v: 详细执行过程;

                              rm:删除文件或目录

rm [选项]... 文件...

-i:删除前提示

-f:强制删除

-r: 递归删除

                    -rf:请慎用
                                  mv:移动

mv  [源文件或目录] [ 目的目录]

-i:交互式

-f:强制

cd:切换目录

cd [ 目录]

cp:复制

cp [选项]...源...目标

-i:交互式复制,即覆盖之前提醒用户确认

-f:强制覆盖目标文件

-r, -R:递归复制目录

more:分页浏览文本文件

more 文件名

less:分页浏览文本文件

less 文件名

head:查看文本首部

head [选项] 文件名

-n:指定行数

tail:查看文本尾部

tail [选项] 文件名

-n:指定行数

cat:查看文本内容

cat [选项]... [文件名]...

-n:给显示的文本行编号

tac:查看文本内容倒序

tac [选项]... [文件名]...

-n:给显示的文本行编号

4).文件目录权限管理命令:

chmod、chown、chgrp

                  chmod:用于改变文件或目录的访问权限,用它控制文件或目录的访问权限

命令格式三个:

1.chmod [选项]...模块[,模块]...文件名...

2.chmod [选项]...八进制-模块 文件名...

3.chmod [选项]...--reference=参照文件名 目标文件名...

举例说明:

1.chmod  [u、g、o、a] [=、+、-] [r、w、x]  文件名

u:属主、g:属组、o:其他用户、a:所有

2.chmod  [777] 文件名

777=rwx:上面有说明

3.chmod --reference=源文件(想要参照的文件路径) 目标文件名

--reference :参考,引用

chown:用于改变用户属主、属组                                                                                      1.chown [选项]... [属主][:[属组]] 文件名...

2.chown [选项]... --reference=参照文件名 目标文件名...

-R:递归修改

举例说明:

1.chown root:root 文件名 
            2.chown --reference= 源文件(想要参照的文件路径) 目标文件名

chgrp:修改文件用户组

chgrp [选项]... 属组 文件名...

chgrp [选项]...--reference=参照文件名 目标文件名...

以上是个人暂时总结出来的命令,如有遗漏请补充;谢谢。

时间: 2024-12-24 19:27:04

Linux之用户及文件权限管理的相关文章

Linux用户及文件权限管理

用户及文件权限管理 一.实验介绍 1.1 实验内容 Linux 中创建.删除用户,及用户组等操作. Linux 中的文件权限设置. 1.2 实验知识点 Linux 用户管理 Linux 权限管理 二.Linux 用户管理 通过第一节课程的学习,你应该已经知道,Linux 是一个可以实现多用户登陆的操作系统,比如"李雷"和"韩梅梅"都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件.但实际上他们的文件都是放在同一个物理磁

Linux 基础入门----用户及文件权限管理

用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李雷”和“韩梅梅”都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件.但实际上他们的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,但是由于 Linux 的 用户管理 和 权限机制 ,不同用户不可以轻易地查看.修改彼此的文件. 下面我们就来学

centos6.5的用户和文件权限管理

用户和文件权限管理 实验环境 公司的Linux主机即将提供给技术部作为开发服务器使用,根据部门内项目组的构成情况,首先需要建立相应的组账户.用户账户,并为相关目录设置权限:还需要设置一个共用的数据存储目录,便于同事之间的数据交换. 需求描述 建立用户目录 创建目录/tech/benet和/tech/accp,分别用于存放各项目组中用户账号宿主文件夹.例如,kylin用户的宿主目录应位于/tech/benet/kylin. 添加组账户 为两个项目组添加组账号benet.accp.GID号分别设置为

Linux 系统管理 01:文件权限管理

这篇文章主要包括如下主题: 一.基础概念 二.安全上下文 三.基本权限 四.特殊权限 五.文件访问控制列表 一.基础概念 1.文件拥有者:属主 2.文件拥有组:属组 二.安全上下文 1.进程是以某用户发起从而运行的,故进程会以运行其用户的权限完成所有操作 2.进程访问文件的权限应用模型 (1)如果"进程的属主 == 被访问文件的属主",则应用属主的权限,否则进入(2) (2)如果"进程的属主 in 被访问文件的属组中",则应用属组的权限,否则进入(3) (3)直接应

Linux命令详解-文件权限管理

1.文件权限管理 1.切换用户身份: su命令 如果从管理员到普通用户,不用使用密码,但是从普通用户到管理员用户,则需要输入密码.该命令只是转换身份,家目录和环境变量是不会变的. su – root  完全转换身份,包括家目录 2.只允许root登录: 在/etc/下面建一个名字为 nologin的文件,不需要写入任何内容. touch nologin 3.权限管理: chmod   用户:a u o g   加减权限 : + – =  读写执行权限:r w x 八进制数字:0:无权限  1:x

linux 用户及文件权限管理

Linux 是一个可以实现多用户登陆的操作系统,比如"李雷"和"韩梅梅"都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件.但实际上他们的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,但是由于 Linux 的 用户管理 和 权限机制,不同用户不可以轻易地查看.修改彼此的文件. 下面我们就来学习一下 Linux 下的账户管理的基础知识. 1.首先查看用户的指令: who am i/whoami 输出的第一列

第三节 用户及文件权限管理

一.Linux用户管理 由于 Linux 的 用户管理 和 权限机制 ,不同用户不可以轻易地查看.修改彼此的文件. (1)查看用户 打开终端,输入命令: 第一列表示打开当前伪终端的用户的用户名(要查看当前登录用户的用户名,去掉空格直接使用 whoami 即可). 第二列的 pts/0 中 pts 表示伪终端,所谓伪是相对于 /dev/tty 设备而言的,上一节讲终端时的那七个使用 [Ctrl]+[Alt]+[F1]-[F7] 进行切换的 /dev/tty 设备是“真终端”,伪终端就是当在图形用户

用户及文件权限管理

一.Linux用户管理 1.1 查看用户 在终端中输入如下命令: $ who am i 或者 $ who mom likes 去掉空格直接使用 whoami 可以查看当前登录用户的用户名. who 命令其它常用参数: 参数 说明 -a 打印能打印的全部 -d 打印死掉的进程 -m 同am i,mom likes -q 打印当前登录用户数及用户名 -u 打印当前登录用户登录信息 -r 打印运行等级 1.2 创建用户 在 Linux 系统里, root 账户拥有整个系统至高无上的权利,比如 新建/添

用户和文件权限管理

  实验环境: 公司的Linux主机即将提供给技术部作为开发服务器使用,根据部门内项目组的构成情况,首先需要建立相应的组账号.用户账号,并为相关目录设置权限:还需要设置一个共用的数据存储目录,便于同事之间的数据交换. 需求描述: 一.建立用户目录. 创建目录/tech/benet和/tech/accp,分别用于存放各项目组中用户账号的宿主文件夹.例如kylin用户的宿主目录应位于/tech/benet/kylin. Mkdir  -p  /tech/benet Mkdir  -p  /tech/