您的位置:首页 > 运维架构 > Linux

Linux基础入门(1):用户及文件权限管理

2016-04-22 12:09 417 查看

一、Linux 用户管理

1、查看用户

$ who am i


或者

$ who mom likes


输出内容如下

yyg      pts/0        2016-04-21 08:28 (:0)


其中第一列表示打开当前伪终端的用户的用户名(可直接使用whoami)

第二列的 pts/0 中 pts 表示伪终端,所谓伪是相对于 /dev/tty 设备而言,即使用 [Ctrl]+[Alt]+[F1]~[F7] 进行切换的 /dev/tty 设备(“真终端”)

pts/0后面的0表示伪终端序号,再开一个终端即为1

who 命令其它常用参数

参数  说明
-a  打印能打印的全部
-d  打印死掉的进程
-m  同am i,mom likes
-q  打印当前登录用户数及用户名
-u  打印当前登录用户登录信息
-r  打印运行等级


2、创建用户

root是 Linux 和 UNIX 系统中的超级管理员用户帐户,拥有至高无上的权利,比如新建/添加用户

su,su-与sudo

su 可以切换到用户user,密码

$ su yyg


su - <user>命令也是切换用户,同时环境变量也会跟着改变成目标用户的环境变量。

$ su - cody


sudo <cmd>可以以特权级别运行cmd命令,需要当前用户属于sudo组,且需要密码。(此处cmd不是win下的cmd,指的是命令)

$ sudo install


登陆时是以普通账户登陆,如果要创建用户需要root权限,需要用到sudo命令,使用有以下两个前提

- 知道当前登陆用户的密码

- 当前用户必须在sudo用户组里

新建用户

这个命令不但可以添加用户到系统,同时也会默认为新用户创建 home 目录

$ sudo adduser cody


切换登陆用户,可以发现从yyg@ubuntu变成了cody@ubuntu

$ su - cody


3、用户组

使用groups命令

$ groups - cody


输出的冒号之前表示用户,后面表示该用户所属的用户组。默认会创建一个和用户名相同的用户组。

查看/etc/group文件

$ cat /etc/group | sort


可以使用过滤,grep -E 将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。

$ cat /etc/group | grep -E "yyg"


/etc/group 的内容包括用户组(Group)、用户组口令、GID 及该用户组所包含的用户(User),每个用户组一条记录。格式如下:

group_name:password:GID:user_list


其中password字段’x’表示密码不可见

将其它用户加入 sudo 用户组

默认添加的用户是不在sudo用户组的,使用usermod添加用户组

- 必须有root权限,可以直接使用 root 用户为其它用户添加用户组

- 或者是已经在 sudo 用户组的用户使用 sudo 命令获取权限来执行该命令

$ sudo usermod -G sudo cody
$ groups cody


usermod -G<群组>;修改用户所属的附加群组

4、删除用户

$ sudo deluser cody --remove-home


–remove-home,移除home目录

二、Linux文件权限

1、查看文件权限





文件类型

Linux 里面一切皆文件,其中软链接等同于 Windows 上的快捷方式

文件权限

一个目录要同时具有读权限和执行权限才可以打开,而一个目录要有写权限才允许在其中创建其它文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息,不过 Linux 上不是通过文件后缀名来区分文件的类型。

链接数

链接到该文件所在的 inode 结点的文件名数目

文件大小

以 inode 结点大小为单位来表示的文件大小,你可以给 ls 加上 -lh 参数来更直观的查看文件的大小(h以k作为单位显示大小)。

显示除了 ‘.’(当前目录),’..’ 上一级目录之外的所有包含隐藏文件(Linux 下以 ‘.’ 开头的文件为隐藏文件)

$ ls -A


显示所有文件(包含‘.’和‘..’)

$ ls -a


查看某一个目录的完整属性,而不是显示目录里面的文件属性:

$ ls -dl <目录名>


按时间排序

$ ls -t


显示所有文件大小,并以普通人类能看懂的方式呈现:

$ ls -AsSh


其中A显示除’.”..’的所有文件,小 s 为显示文件大小,大 S 为按文件大小排序,h以k作为单位显示大小。

2、变更文件所有着

$ sudo chown <用户> <文件名>
$ sudo chown yyg iphones


3、修改文件权限

方式一:二进制数字表示



每个文件的三组权限(拥有者,所属用户组,其他用户,记住这个顺序是一定的)就对应这一个 “rwx”,也就是一个 ‘7’ 。

往文件里加点内容:

$ echo "echo \"Hello World\"" > iphones


修改权限

$ chmod 700 iphones


想在只有拥有者有读写权利,其他用户都不可以了。

方式二:加减赋值操作

$ chmod go-rw iphone


‘g”o’还有’u’,分别表示group,others,user,’+’,’-’ 就分别表示增加和去掉相应的权限。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: