Linux 用户和文件权限管理
Linux —— 用户权限管理
权限:
为什么需要权限管理?
1.计算机资源有限,我们需要合理的分配计算机资源。
2.Linux是一个多用户系统,对于每一个用户来说,个人隐私的保护是十分重要的
由于Linux的一切皆文件的基本思想,对于权限的管理更多的则体现在管理文件权限上。为了
方便的指派权限,在Linux中定义了文件属主,文件属组,其他人这三类人的权限。
对于计算机来说,这三类都是一个标识符。
通过 ls 命令我们可以看到文件的具体权限信息。
drwxrwxr-x 2 linlin linlin 4096 Jun 5 02:29 .
drwxrwxr-x 5 linlin linlin 4096 May 29 02:38 ..
-rw-rw-r-- 1 linlin linlin 0 Jun 5 02:29 file
文件权限信息一共有9位,每3位一组,分别表示属主,属组,其他人的权限信息
权限:r w x
对于文件:
r:可读,可以使用cat等命令查看文件内容
w:可写,可以进行编辑修改,或删除操作
x:可执行,可以在命令提示符下当做命令提交给内核运行
对于目录:
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:可读可写可执行
储存用户和组的文件
用户:UID /etc/passwd
组 :GID /etc/group
Linux中,在储存用户和组信息的文件,不会直接将用户或组密码储存在其中,而是
在其他文件中储存,但并不是直接以密码保存,而是保存加密后的文件,影子口令
用户:/etc/shadow
组 :/etc/gshadow
储存用户信息的文件:/etc/passwd
linlin@ubuntu:~/linlin$ tail -3 /etc/passwd
linlin:x:1000:1000:linlin's ubunto,,,:/home/linlin:/bin/bash
mysql:x:121:129:MySQL Server,,,:/nonexistent:/bin/false
wangml:x:1002:1002:wangml:/home/wangml:/bin/bash
通过上面示例可以看到,在/etc/passwd文件中,每个用户信息作为一行,而每一行分
为7段,用 :分隔,分别表示:
用户名 :密码占位符 :UID :用户私有组(基本组)GID :注释 :用户家目录 :默认shell
储存组信息文件:/etc/group
linlin@ubuntu:~/linlin$ tail -3 /etc/group
mysql:x:129:
xiaolinlin:x:1001:wangml
wangml:x:1002:
表示为 组名 :密码占位符 :GID :
UID:根据用户类别分类
管理员ID号永远为0
普通用户ID号1~65535,16位表示用户
系统用户ID号1~499
一般用户ID号500开始
在/etc/passwd文件中,添加一般用户时,用户ID一般为该文件中最大的一般用户ID+1
用户组:
基本组,私有组:本组只有该用户自己,用户创建文件后,该文件的默认组为该用户的基本组
附加组,额外组:基本组以外的其他组
在创建一个用户时,如果未指定用户私有组和家目录时,系统默认会为该用户创建一个以该用户名为
组名的组,作为该用户的私有组组GID一般与用户UID相同。且会在/home目录下为该用户创建一个与
该用户同名的目录作为该用户的家目录。
对于系统用户来说,没有默认shell,即系统用户不允许登陆
储存密码信息文件:/etc/shadow
mysql:!:17301:0:99999:7:::
wangml:!!:17303:0:99999:7:::
用户名 :加密后的密码 :最后一次密码修改时间 :密码最短使用时间 :用户过期时间 :修改密码警告时间 :;:
可以使用 man shadow 命令查看具体信息
只有管理员root可以查看/etc/shadow文件
root@ubuntu:/home/linlin/linlin# ls -l /etc/shadow
-rw-r----- 1 root shadow 1336 Jun 4 02:52 /etc/shadow
通过以上内容可以知道,没添加一个用户,就是在 /etc/passwd /etc/shadow /etc/group 这三个文件中各加
入一行信息,所以,我们可以直接通过修改这是三个文件来添加用户,而不需要使用命令
用户管理:
添加用户:useradd 用户名,有事也可以使用 adduser,adduser是一个软链接
-u:手动指定UID
-g:指定基本组GID
-G:指定额外组,附加组
-c:指定注释信息
-d:指定某个目录为家目录
-s:指定用户默认shell
在/etc/shells下指定了当前系统下的可用的安全shell
-m -k:给用户强制创建家目录,并将/etc/skel下的文件复制到家目录下
-M:不给用户创建家目录
-r:添加系统用户
删除用户:userdel 选项 用户名
默认在删除用户时不会删除用户家目录
-r:删除用户的同事删除用户家目录
查看用户账号的基本信息:id
linlin@ubuntu:~/linlin$ id
uid=1000(linlin) gid=1000(linlin) groups=1000(linlin),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),128(sambashare)
检索用户信息:finger 用户名
linlin@ubuntu:~/linlin$ finger linlin
Login: linlin Name: linlin's ubunto
Directory: /home/linlin Shell: /bin/bash
On since Thu May 18 01:32 (PDT) on tty7 from :0
18 days 20 hours idle
No mail.
No Plan.
修改用户账号信息:usermod 选项 内容 用户名
-u:修改UID
-g:修改基本组
-G:修改附加组,如果此前用户已有附加组,则使用-G后,该附加组会被覆盖,如果需要添加
附加组,则使用 -G -a
-c:修改注释
-d:指定新家目录,一般与-m一起使用,表示在创建新家目录的同时,将原来家目录下的内容
复制到新的家目录中
-e:指定用户过期时间
-L:锁定账号
-U:解锁账号
chsh:修改用户默认shell
chfn:修改用户注释信息
修改用户密码:passwd 用户名
--stdin:从标准输入读取
-l:锁定用户账号
-u:解锁
-d:删除用户密码
Linux中,禁止空密码用户登录
pwck:检查用户账号完整性
组管理:
创建组:groupadd
-g:指定GID
-r:添加系统组
删除组:groupdel
修改组属性:groupmod
-g:修改 GID
-n:修改组名
gpasswd:为组设定密码
newgrp:登录到一个新组,exit退出
改变用密码过期时间:chage
-d:最近一次的修改时间
-E:过期时间
-r:非活动时间
-m:最短使用期限
-M:最长使用期限
-W:警告时间
改变文件属主:chown 用户名 files
只有管理员才可以改变文件属主
-R:修改目录文件属性时将目录内的文件一起修改
--reference=文件1 文件2... :将文件2...的属主、属组修改为与文件1相同
修改文件属组:chgrp
只有管理员才可以使用,使用方法和chown一样、
使用chown 用户名:组名 文件 或 chown 用户名.组名 文件 可以同时修改文件的属主属组
chown 组名 文件:只改属组
修改文件权限:chmod MODE 文件
-R:递归修改
--reference=文件1 文件2... :将文件2...将文件2...的属性修改为与文件1相同
root@ubuntu:/home/linlin/linlin/test# ls -l file
-rw-rw-r-- 1 linlin linlin 0 Jun 5 02:29 file
root@ubuntu:/home/linlin/linlin/test# chmod 600 file
root@ubuntu:/home/linlin/linlin/test# ls -l file
-rw------- 1 linlin linlin 0 Jun 5 02:29 file
修改某类用户权限时:chmod 用户类别(u g o a) +(-) MODE,a表示所有用户,可以省略
root@ubuntu:/home/linlin/linlin/test# ls -l file
-rw------- 1 linlin linlin 0 Jun 5 02:29 file
root@ubuntu:/home/linlin/linlin/test# chmod g+r file
root@ubuntu:/home/linlin/linlin/test# ls -l file
-rw-r----- 1 linlin linlin 0 Jun 5 02:29 file
我们都知道,在创建一个文件后,系统会默认给文件赋予权限,那么,默认权限是由什么决定的?
umask:遮罩码,不加参数时表示查看系统默认遮罩码,加八进制位表示修改遮罩码
root@ubuntu:/home/linlin/linlin/test# umask
0044
root@ubuntu:/home/linlin/linlin/test# umask 0022
root@ubuntu:/home/linlin/linlin/test# umask
0022
创建文件后默认权限 666-umask
创建目录后默认权限 777-umask
Linux 用户和文件权限管理的更多相关文章
- Linux用户及文件权限管理
Linux用户及文件权限管理
- Linux——用户及文件权限管理
2019-07-31 用户管理 查看用户 who am i:打开当前伪终端的用户的用户名 pts/0 后面那个数字就表示打开的伪终端序号,你可以尝试再打开一个终端,然后在里面输入 who am i , ...
- Linux用户和文件权限管理
本文为原创文章,转载请标明出处 目录 用户管理 系统用户文件 添加用户 useradd 设置用户密码 passwd 删除用户 userdel 用户管理 usermod 用户组管理 系统用户组文件 添加 ...
- linux 用户及文件权限管理
Linux 是一个可以实现多用户登陆的操作系统,比如“李雷”和“韩梅梅”都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件.但实际上他们的文件都是放在同 ...
- (大数据工程师学习路径)第一步 Linux 基础入门----用户及文件权限管理
用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李 ...
- 实验楼学习linux第一章第三节用户及文件权限管理
用户及文件权限管理 常用命令 查看用户 whoami 创建用户 sudo adduser 用户名 切换账户 su 用户名 删除账户 sudo deluser 用户名 --remove-home 查看用 ...
- solaris用户与文件权限管理
此文章已于 20:45:28 2015/3/22 重新发布到 zhuxuekui3 solaris用户与文件权限管理1 类别 「网站分类」Oracle 一.用户与用户组管理 三种用户:超级用户. ...
- Lniux 入门:03 用户及文件权限管理
1.1 实验内容 Linux 中创建.删除用户,及用户组等操作. Linux 中的文件权限设置. 1.2 实验知识点 Linux 用户管理 Linux 权限管理 通过第一节课程的学习,你应该已经知道, ...
- linux下的文件权限管理
权限管理有两个层面 第一层区分用户:文件属主(u), 组用户(g), 其它(o) 第二层区分权限:读(r),写(w),可执行(x) 这两个层次构成文件权限管理的二维结构 u g ...
随机推荐
- Visual studio 新建网站出现序号(x)
参考链接: http://www.zhongdaiqi.com/vs2012-new-website-name-bug/ 现象: 分析: VS新建网站出现(1) 这个问题很神秘,把网站删除掉,再创建, ...
- Linux之crontab定时任务
****crontab简介**** 简而言之呢,crontab就是一个自定义定时器. ****crontab配置文件**** 其一:/var/spool/cron/ 该目录下存放的是每个用户(包括ro ...
- J2EE 中间件 JVM 集群
[转]J2EE 中间件 JVM 集群 博客分类: 企业应用面临的问题 Java&Socket 开源组件的应用 jvm应用服务器weblogicjvm集群 1 前言 越来越多的关键任务和大型应用 ...
- POJ 1067: Wythoff Game【博弈】
经典的威佐夫博奕把黄金分割常数乘以k(k=m-n)即为奇异点,此时奇异点是用小数据观察出来的,具体的数学证明,观察到黄金分割常数是无理数,再加上高斯函数[kφ]的形势将自然数分割成两个等价类很容易想到 ...
- LoadBitmap(IDB_BITMAP1) -- 未定义标识符 IDB_BITMAP1
错误原因:1:头文件没有加入 #include"resource.h" 2:没有导入该资源或者资源ID错误
- POJ2167 Irrelevant Elements
Time Limit: 5000MS Memory Limit: 65536KB 64bit IO Format: %lld & %llu Description Young cryp ...
- 【2017YYHS WC】
因为本葳蕤分数太低去不了WC,只能同去WC的各位大爷一起训练一波,就称作是YYHS WC吧,其实就是WC难度的多校 day1:早上8:30考的试,下午1:00去吃中饭 T1:考场打得暴力结果矩阵乘法后 ...
- 标准C程序设计七---23
Linux应用 编程深入 语言编程 标准C程序设计七---经典C11程序设计 以下内容为阅读: <标准C程序设计>(第7版) 作者 ...
- Linux c内存泄漏检测
在Linux下些C语言程序,最大的问题就是没有一个好的编程IDE,当然想kdevelop等工具都相当的强大,但我还是习惯使用kdevelop工具,由于没有一个习惯的编程IDE,内存检测也就成了在Lin ...
- iOS 取应用版本
// 应用网址 返回字典中有多种数据 NSString *urlString2 = [NSString stringWithFormat: @"%@", @"http: ...