linux:用户及文件权限管理
学习内容来自实验楼、莫烦python、CSDN
一、Linux 用户管理
1. 查看用户
who am i 或者who mom likes
who -a:打印所有能打印的 who -d :打印死掉的进程 who -m:同who am i; who mom likes
who -q:打印当前用户数及用户名 who -u:打印当前用户信息 who -r: 打印当前运行等级
2. 创建用户
root
账户拥有整个系统至高无上的权利
su,su- 与 sudo:su <user>
可以切换到用户user;do <cmd>
可以以特权级别运行cmd命令;su - <user>
命令也是切换用户
新建一个叫 lilei 的用户:sudo adduser lilei ,同时也为新用户创建 home 目录。
切换登录用户: sudo -l lilei
退出当前用户跟退出终端一样可以使用 exit
命令或者使用快捷键 Ctrl+d
3.用户组
在 Linux 里面如何知道自己属于哪些用户组呢?
1.使用groups命令
group shiyanlou==>shiyanlou(用户名):shiyanlou(所属组)
2. 查看/etc/group文件
cat /etc/group |sort (表示输出按字典序排序)
cat /etc/group |grep -E "shiyanlou"==>shiyanlou:x:5000
内容包括用户组(Group)、用户组口令、GID 及该用户组所包含的用户(User),每个用户组一条记录, 'x'表示不可见
#将其它用户加入 sudo 用户组: su -l lilei #使用 usermod 命令可以为用户添加用户组: sudo usermod -G sudo lilei groups lilei ==>lilei:lilei sudo
二、Linux 文件权限
1、ls -l:查看文件权限
Linux 里面一切皆文件
一个目录要同时具有读权限和执行权限才可以打开,而一个目录要有写权限才允许在其中创建其它文件。
- 链接数:链接到该文件所在的 inode 结点的文件名数目
- 文件大小:以 inode 结点大小为单位来表示的文件大小
显示除了 '.'(当前目录),'..' 上一级目录之外的所有包含隐藏文件: ls -a
查看某一个目录的完整属性,而不是显示目录里面的文件属性:ls -dl <目录名>
显示所有文件大小,并以普通人类能看懂的方式呈现:ls
-AsSh
例子如下:
$ ls -l
total 16
----rw-r-- 1 morvan morvan 34 Oct 12 09:51 t1.py
-rw----r-- 1 morvan morvan 80 Oct 12 09:57 t2.py
-rw-rw-r-- 1 morvan morvan 12 Oct 12 09:56 t3
-rwxrw-r-- 1 morvan morvan 55 Oct 13 17:28 t.py
在这里, 像-rw-rw-r--
这种, 就是权限的说明. 细节展示在下面的图中. 在下图中, 这串字符得拆成4个部分,
Type
: 很多种 (最常见的是-
为文件,d
为文件夹, 其他的还有l
,n
… 这种东西, 真正自己遇到了, 网上再搜就好, 一次性说太多记不住的).User
: 后面跟着的三个空是使用 User 的身份能对这个做什么处理 (r
能读;w
能写;x
能执行;-
不能完成某个操作).Group
: 一个 Group 里可能有一个或多个 user, 这些权限的样式和 User 一样.Others
: 除了 User 和 Group 以外人的权限.
如果对 User, group, others 这几个没什么概念的话, 这里补充一下. User 一般就是指你, 这个正在使用电脑的人. Group 是一个 User 的集合, 最开始创建新 User 的时候, 他也为这个 User 创建了一个和 User 一样名字的 Group, 这个新 Group 里只有这个 User. 一般来说, 像一个企业部门的电脑, 都可以放在一个 Group 里, 分享了一些共享文件和权限. Others 就是除了上面提到的 User 和 Group 以外的人.
好了, 有了这些理解, 我们拿上面的 t1.py
来举例. 我们可以将 ----rw-r--
拆成 -
(这是文件), ---
(这个 user 没有任何权限), rw-
(这个 Group 里可以读,写), r--
(其他人只能读)
如果我双击这个 t1.py
上面就弹出这个说我们权限的窗口.
2.变更文件所有者
建立一个文件:$sudo chown shiyanlou ii;将属于lilei 的文件改成属于shiyanlou
3.修改文件权限
每个文件的三组权限(拥有者,所属用户组,其他用户,记住这个顺序是一定的)就对应这一个 "rwx",也就是一个 '7'
由以上数字权限可以推出”r=4, w=2 , x=1”的用户拥有可度可写可执行的最高权限。
r: 表示读权限, w:表示写权限,x:表示可执行权限
- 度权限(r)
- 权限二进制100, 转为十进制4;
- 写权限(w)
- 权限二进制010, 转为十进制2;
- 执行权限(x)
- 权限二进制001, 转为十进制1;
由以上可推出如下:
若要 rwx 则 4+2+1=7
若要 rw- 则 4+2+0=6
若要 r-w 则 4+0+1=5
若要 r— 则 4+0+0=4
若要 -wx 则 0+2+1=3
若要 -w- 则 0+2+0=2
若要 - -x 则 0+0+1=1
若要 - - - 则 0+0+0=0
注意:“ - ”表示没权限
chmod
700 t1.py; 现在除拥有者外,其他人对t1.py这个文件都没有权限了。
(2)加减赋值操作
g''o'还有'u',分别表示group,others,user,'+','-'
就分别表示增加和去掉相应的权限。
通常的修改形式是
$ chmod [谁][怎么修改] [哪个文件]
举个最简单的例子, 现在的 t1.py
是 ----rw-r--
, 如果我们想让你(user)有读的能力. 下面这样改就行了.
$ chmod u+r t1.py
$ ls -l
-r--rw-r-- 1 kumata kumata 34 Apr 12 09:51 t1.py
这里的 u+r
很形象, User + read, 给 t1.py 这个修改. 所以我们的修改形式就能总结出下面这样.
[谁]
u
: 对于 User 修改g
: 对于 Group 修改o
: 对于 Others 修改a
: (all) 对于所有人修改
[怎么修改]
+
,-
,=
: 作用的形式, 加上, 减掉, 等于某些权限r
,w
,x
或者多个权限一起, 比如rx
[哪个文件]
- 施加操作的文件, 可以为多个
再举几个例, 巩固一下.
-rw----r-- 1 kumata kumata 80 Apr 12 09:57 t2.py
-rw-rw-r-- 1 kumata kumata 12 Apr 12 09:56 t3
-rwxrw-r-- 1 kumata kumata 55 Apr 13 17:28 t.py $ chmod u-r t2.py
$ ls -l t2.py
--w----r-- 1 kumata kumata 80 Apr 12 09:57 t2.py $ chmod g+x-w t3
$ ls -l t3
--w-r-xr-- 1 kumata kumata 12 Apr 12 09:56 t3
linux:用户及文件权限管理的更多相关文章
- Linux用户及文件权限管理
Linux用户及文件权限管理
- Linux——用户及文件权限管理
2019-07-31 用户管理 查看用户 who am i:打开当前伪终端的用户的用户名 pts/0 后面那个数字就表示打开的伪终端序号,你可以尝试再打开一个终端,然后在里面输入 who am i , ...
- Linux用户和文件权限管理
本文为原创文章,转载请标明出处 目录 用户管理 系统用户文件 添加用户 useradd 设置用户密码 passwd 删除用户 userdel 用户管理 usermod 用户组管理 系统用户组文件 添加 ...
- Linux 用户和文件权限管理
Linux —— 用户权限管理 权限: 为什么需要权限管理? 1.计算机资源有限,我们需要合理的分配计算机资源. 2.Linux是一个多用户系统,对于每一个用户来说,个人隐私的保护是十分重 ...
- 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 ...
随机推荐
- Git Step by Step – (1) Git 简介
由于工作的需要,代码版本控制工具要从Perforce换成Git.说实话,刚开始真的很不适应,要从一个可以很好的支持用户界面的工具转到一个命令行工具,而且Git中有几百个命令,一下子就傻眼了. 但是经过 ...
- SpringBoot(二)-- 支持JSP
SpringBoot虽然支持JSP,但是官方不推荐使用.看网上说,毕竟JSP是淘汰的技术了,泪奔,刚接触 就淘汰.. SpringBoot集成JSP的方法: 1.配置application.prope ...
- C++ template —— template metaprogram(九)
metaprogramming含有“对一个程序进行编程”的意思.换句话说,编程系统将会执行我们所写的代码,来生成新的代码,而这些新代码才真正实现了我们所期望的功能.通常而言,metaprogrammi ...
- C++ template —— 实例化和模板实参演绎(四)
本篇讲解实例化和模板实参演绎-------------------------------------------------------------------------------------- ...
- 《C++ Primer Plus》16.1 string类 学习笔记
16.1.1 构造字符串程序清单16.1使用了string的7个构造函数.程序清单16.1 str1.cpp---------------------------------------------- ...
- 《转》windows下通过cmd切换python2和python3版本
当电脑中同时安装了python2和python3时,往往会由切换版本的需求.那么如何通过cmd命令行做到呢? 方法:修改python.exe的文件名 举个栗子: 我的电脑中同时安装了py2.7.10和 ...
- 命令行连接mysql服务器时 报Can't connect to local MySQL server through socket 'xxx.sock'错误
本来之前用的好好的mysql服务器,突然就报Can't connect to local MySQL server through socket 'xxx.sock'错误了 遇到该问题思路首先是:检查 ...
- opencv3——ANN算法的使用
最近刚转用opencv3,使用ANN算法时遇到了一些问题,记录下来. 训练神经网络的代码如下: //创建ANN Ptr<ANN_MLP> bp = ANN_MLP::create(); 设 ...
- PHP多种序列化/反序列化的方法
序列化是将变量转换为可保存或传输的字符串的过程:反序列化就是在适当的时候把这个字符串再转化成原来的变量使用.这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性. 1. serialize和 ...
- WP8.1学习系列(第八章)——透视Pivot设计指南
在本文中 描述 应做事项和禁止事项 其他使用指南 相关主题 重要的 API Pivot class (XAML) PivotItem class (XAML) Windows Phone 应用:具有透 ...