《The Linux Command Line》 读书笔记04 Linux用户以及权限相关命令
Linux用户以及权限相关命令
查看身份
id:Display user identity.
这个命令的输出会显示uid,gid和用户所属的组。
uid即user ID,这是账户创建时被赋予的。
gid是primary group ID,是主要的组的id。当然这个用户也可以属于其他更多的组。
用户账户信息被定义在 /etc/passwd文件中,组信息被定义在/etc/group文件中。
chmod
命令名称:chmod
命令英文原意:change the permissions mode of a file
命令所在路径:/bin/chmod
语法:chmod [{ugo}{+-=}{rwx}][文件或目录][mode=421][文件或目录]
功能描述:改变文件或目录权限。
用户类型:
u:user,实际上指所有者
g:group所属组
o:others其他人
a:all所有人,即ugo的组合,如果不指定用户类型,默认是all。
+增加权限,-去掉权限,=直接赋予权限
r可读,w可写,x可执行。
具体对文件和文件夹有不同意义,参见:http://www.cnblogs.com/mengdd/p/3557441.html
比如一个叫doc的文件,给所有者加上wx权限:chmod u+wx doc
用数字表示权限
r-4
w-2
x-1
将每一组的权限数字加起来作为整组的权限,比如:
rwx是7,r-x是5,r--是4
那么rwxr-xr--可以表示为754
比较常用的数字:7 (rwx), 6 (rw-), 5 (r-x), 4 (r--), 0 (---)
umask命令
umask命令功能:显示、设置文件的缺省权限。
umask命令语法:umask [-S]
-S:以rwx形式显示新建文件或目录的缺省权限。
执行umask:
显示0022
第一个0:特殊权限位
022用户权限位,权限掩码值。
需要用777减去022,得到755,三个数字分别表示ugo(user,group,others)的权限。
umask –S:
u=rwx,g=rx,o=rx
Linux权限规则:
缺省创建的文件不能授予可执行x权限,这点是为了安全着想,文件默认是不能执行的。
可以用umask改变默认权限,用umask加上掩码值的形式。
比如想把权限改为750,要用777减去750,及umask 027命令。
改变身份Changing Identities
在Linux中可以用三种方式改变自己当前的身份:
1.登出,然后用另一个账号登入(…orz…)。
2.使用su命令。
3.使用sudo命令。
su
su:Run a Shell with Substitute User and Group IDs.
su [-[l]] [user]
如果使用了-l选项(经常被简写为-),结果就是一个login shell。
意思是用户user的环境会被载入,当前的工作路径会被换为这个用户的home路径。如果没有指定用户,默认是superuser。
当执行su –之后,需要输入superuser的密码,输入成功之后,会开启一个新的shell,命令提示符将会变为#(之前是$),并且当前的工作目录变为superuser的home目录(/root),结束后如果要退出,输入exit,就会回到之前的shell。
也可以直接执行一条命令:
su –c ‘command’
需要把命令放在引号里,以作区分。
sudo
sudo:Execute a Command as Another User.
sudo和su类似,有一些附加的属性,管理员可以配置sudo,在良好的控制下,让普通用户以不同的身份执行命令。
一个用户可能被限制在一些特定的命令中,不能执行其他。
另一个不同就是sudo不要求知道superuser的密码,只需要知道当前用户的密码,输入密码后,完成认证,sudo不会新开一个shell,也不会载入另一个用户的环境,命令也不需要被引号括起来。这种行为可以通过各种选项覆写,可以查看sudo的man page。
sudo –l可以查看sudo所赋予的权限。
改变所有者和所属组
改变所有者:chown
命令英文原意:change file ownership
语法:chown [用户] [文件或目录]
功能:改变文件或目录的所有者。
改变所属组:chgrp
命令英文原意:change file group ownership
语法:chown [用户组] [文件或目录]
功能:改变文件或目录的所属组。
chown命令也可以用于改变所属组。
chown [owner][:[group]] file...
更改密码
passwd [user]
重置密码时,需要输入旧的密码。
如果你有superuser的权限,你还可以设置其他用户的密码。
另一些选项可以设置账户锁定,密码过期等,详细信息可以查看passwd的man page。
参考资料
《The Linux Command Line》
视频教程:LAMP兄弟连李明老师讲Linux
相关博文:
ls –l显示文件权限:
http://www.cnblogs.com/mengdd/p/3557441.html
《The Linux Command Line》 读书笔记04 Linux用户以及权限相关命令的更多相关文章
- 18 Command Line Tools to Monitor Linux Performance
By Ravi Saive Under: Linux Commands, Monitoring Tools On: December 26, 2013 http://www.tecmint.com/c ...
- 《The Linux Command Line》 读书笔记02 关于命令的命令
<The Linux Command Line> 读书笔记02 关于命令的命令 命令的四种类型 type type—Indicate how a command name is inter ...
- 《The Linux Command Line》 读书笔记01 基本命令介绍
<The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...
- [笔记]The Linux command line
Notes on The Linux Command Line (by W. E. Shotts Jr.) edited by Gopher 感觉博客园是不是搞了什么CSS在里头--在博客园显示效果挺 ...
- Linux Command Line Basics
Most of this note comes from the Beginning the Linux Command Line, Second Edition by Sander van Vugt ...
- Linux Command Line 解析
Linux Command Line 解析 0 处理模型 Linux kernel的启动包括很多组件的初始化和相关配置,这些配置参数一般是通过command line进行配置的.在进行后续分析之前,先 ...
- 15 Examples To Master Linux Command Line History
When you are using Linux command line frequently, using the history effectively can be a major produ ...
- 10 Interesting Linux Command Line Tricks and Tips Worth Knowing
I passionately enjoy working with commands as they offer more control over a Linux system than GUIs( ...
- Reso | The Linux Command Line 的中文版
http://book.haoduoshipin.com/tlcl/book/zh/ 本书是 The Linux Command Line 的中文版, 为大家提供了多种不同的阅读方式. 中英文双语版- ...
随机推荐
- QT学习笔记3
对话框 新建了一个对话框,在新建项目选择类型时是Dialog即可. 添加的代码如下,注意QCheckBox 并没有添加头文件定义,只是加了类的前向声明.因为我们仅仅使用的是指针,并不涉及到这些类的函数 ...
- Windows Server 2012安装时所需要的KEY
Windows Server 2012不像Server 2008和2008 R2那样可以先装系统再输入序列号,而是在一开始就必须输入Server 2012 cdkey,目前在网上找到两枚序列号,标准版 ...
- C# Winform 通过FlowLayoutPanel及自定义的编辑控件,实现快速构建C/S版的编辑表单页面
个人理解,开发应用程序的目的,不论是B/S或是C/S结构类型,无非就是实现可供用户进行查.增.改.删,其中查询用到最多,开发设计的场景也最为复杂,包括但不限于:表格记录查询.报表查询.导出文件查询等等 ...
- Maven提高篇系列之(六)——编写自己的Plugin(本系列完)
这是一个Maven提高篇的系列,包含有以下文章: Maven提高篇系列之(一)——多模块 vs 继承 Maven提高篇系列之(二)——配置Plugin到某个Phase(以Selenium集成测试为例) ...
- codeMirror插件使用讲解
codeMirror是一款十分强大的代码编辑插件,提供了十分丰富的API,最近在项目中用到了这款插件,于是在这里给大家分享下使用方法和心得: codeMirror调用非常方便 首先在页面中载入插件CS ...
- ES6模块的import和export用法总结
ES6之前以前出现了js模块加载的方案,最主要的是CommonJS和AMD规范.commonjs前者主要应用于服务器,实现同步加载,如nodejs.AMD规范应用于浏览器,如requirejs,为异步 ...
- Linq查询操作之聚合操作(count,max,min,sum,average,aggregate,longcount)
在Linq中有一些这样的操作,根据集合计算某一单一值,比如集合的最大值,最小值,平均值等等.Linq中包含7种操作,这7种操作被称作聚合操作. 1.Count操作,计算序列中元素的个数,或者计算满足一 ...
- Kosaraju算法---强联通分量
1.基础知识 所需结构:原图.反向图(若在原图中存在vi到vj有向边,在反向图中就变为vj到vi的有向边).标记数组(标记是否遍历过).一个栈(或记录顶点离开时间的数组). 算法描叙: :对 ...
- 在吉日嘎拉DotNet.WebForm中使用FluentScheduler调度任务
有些用户一直说系统发送的邮件一直收不到,投诉系统不正常,这时候怎么洗刷冤屈呢?将发送的每一封Email都保存到数据库中,并记录发送的日志,让用户无话可说. 自己创建3个表: MessageFailed ...
- EC笔记,第一部分:1.视C++为一个语言联邦
C++可看作由以下四种次语言组合而成1.C语言 高效,内置数据类型,数组,区块,语句,指针,预处理器,没有重载.异常.模板2.类 构造,析构,封装,继承,多态,迟绑定3.模板 模板元 ...