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

       本节我们主要学习在Linux中创建、删除用户,及用户组等操作;以及Linux 中的文件权限设置。

Linux用户管理:    

       多个用户可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件。但实际上他们的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,但是由于 Linux 的 用户管理 和 权限机制,不同用户不可以轻易地查看、修改彼此的文件。

1.查看用户:      


输出的第一列表示打开当前伪终端的用户的用户名(要查看当前登录用户的用户名,去掉空格直接使用 whoami 即可),第二列的 pts/0 中 pts 表示伪终端,所谓伪是相对于 /dev/tty 设备而言的   

                              who 命令其它常用参数

                             -a 打印能打印的全部

                             -d 打印死掉的进程

                             -m 同am i,mom likes

                             -q 打印当前登录用户数及用户名

                             -u 打印当前登录用户登录信息

                             -r 打印运行等级

        现在我们新建一个叫 lilei 的用户:然后是给 lilei 用户设置密码,后面的选项的一些内容你可以选择直接回车使用默认值:这个命令不但可以添加用户到系统,同时也会默认为新用户创建 home 目录:  


第三节:用户及文件权限管理_第1张图片

       这个命令不但可以添加用户到系统,同时也会默认为新用户创建 home 目录:现在你已经创建好一个用户,并且你可以使用你创建的用户登录了,使用如下命令切换登录用户:

输入刚刚设置的 lilei 的密码:    


第三节:用户及文件权限管理_第2张图片

     退出当前用户跟退出终端一样可以使用 exit 命令或者使用快捷键 Ctrl+d。

用户组:

(1).查询自己的用户组:    groups +用户。

       若回复shiyanlou:shiyanlou,其中冒号之前表示用户,后面表示该用户所属的用户组。这里可以看到 shiyanlou 用户属于 shiyanlou 用户组,每次新建用户如果不指定用户组的话,默认会自动创建一个与用户名相同的用户组。

(2).查看/ect/group文件   

       这里 cat 命令用于读取指定文件的内容并打印到终端输出,后面会详细讲它的使用。 | sort 表示将读取的文本进行一个字典排序再输出,然后你将看到如下一堆输出,你可以在最下面看到 shiyanlou 的用户组信息。

(3).将其他用户加入sudo用户组:

        默认情况下新创建的用户是不具有 root 权限的,也不在 sudo 用户组,可以让其加入 sudo 用户组从而获取 root 权限:

       使用 usermod 命令可以为用户添加用户组,同样使用该命令你必需有 root 权限,你可以直接使用 root 用户为其它用户添加用户组,或者用其它已经在 sudo 用户组的用户使用 sudo 命令获取权限来执行该命令。

        这里我用 shiyanlou 用户执行 sudo 命令将 lilei 添加到 sudo 用户组,让它也可以使用 sudo 命令获得 root 权限:

 (4).删除用户:sudo deluser lilei --remove-home即可。

2.Linux文件权限:

输入ls-l:


第三节:用户及文件权限管理_第3张图片


(1).文件类型:   

        Linux 里面一切皆文件,正因为文件类型才有了设备文件( /dev 目录下有各种设备文件,大都跟具体的硬件设备相关)这一说。例如 socket:网络套接字,pipe :管道。软链接文件:链接文件是分为两种的,另一种当然是“硬链接”(硬链接不常用,具体内容不作为本课程讨论重点,而软链接等同于 Windows 上的快捷方式)。

(2).文件权限:

       读权限,表示你可以使用 cat之类的命令来读取某个文件的内容,执行权限,通常指可以运行的二进制程序文件或者脚本文件,如同 Windows 上的 exe 后缀的文件,不过 Linux 上不是通过文件后缀名来区分文件的类型。一个目录同时具有读权限和执行权限才可以打开并查看内部文件,而一个目录要有写权限才允许在其中

      创建其它文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息。

(3).ls 命令的一些其它常用的用法:

       同时使用-A和-l参数查看一个目录的完整属性;ls-dl<目录名>显示所有文件大小并呈现;ls-AsSh:其中小 s 为显示文件大小,大 S 为按文件大小排序。

(4).变更文件所有者:

      假设目前是 lilei 用户登录,新建一个文件,命名为 “ iphone6 ”:输入touch iphone6,

换回到 shiyanlou 用户身份,使用以下命令变更文件所有者为 shiyanlou ;输入

Cd/home/lilei

Ls iphone6

Sudo chown shiyanlou iphone6

查看后发现文件所有者成功修改成shiyanlou。

(5).修改文件权限:

        每个文件的三组权限(拥有者,所属用户组,其他用户,记住这个顺序是一定的)对应一个 " rwx ",也就是一个 “ 7 ” ,所以如果我要将文件“ iphone6 ”的权限改为只有我自己可以用那么就这样

方法一:chmod 700 iphone6;

方法二:加减赋值操作:chmod go-rw iphone6g、o 还有 u 分别表示 group、others 和 user,+ 和 - 分别表示增加和去掉相应的权限。

4.adduser 和 useradd 的区别是什么?

     useradd 只创建用户,创建完了用 passwd lilei 去设置新用户的密码。adduser 会创建用户,创建目录,创建密码(提示你设置),做这一系列的操作。其实 useradd、userdel 这类操作更像是一种命令,执行完了就返回。而 adduser 更像是一种程序,需要你输入、确定等一系列操作

你可能感兴趣的:(第三节:用户及文件权限管理)