一.Linux用户管理
由于 Linux 的 用户管理 和 权限机制 ,不同用户不可以轻易地查看、修改彼此的文件.
(1)查看用户
打开终端,输入命令:
第一列表示打开当前伪终端的用户的用户名(要查看当前登录用户的用户名,去掉空格直接使用 whoami
即可).
第二列的 pts/0
中 pts
表示伪终端,所谓伪是相对于 /dev/tty
设备而言的,上一节讲终端时的那七个使用 [Ctrl]
+[Alt]
+[F1]~[F7]
进行切换的 /dev/tty
设备是“真终端”,伪终端就是当在图形用户界面使用 /dev/tty7
时每打开一个终端就会产生一个伪终端, pts/0
后面那个数字就表示打开的伪终端序号,第三列则表示当前伪终端的启动时间.
who
命令其它常用参数
(2)创建用户
在 Linux 系统里, root
账户拥有整个系统至高无上的权利,比如 新建/添加 用户.
一般登录系统时都是以普通账户的身份登录的,要创建用户需要 root 权限,就要用到sudo
这个命令.
使用这个命令有两个大前提,一是你要知道当前登录用户的密码,二是当前用户必须在 sudo
用户组。shiyanlou 用户的密码就是 “shiyanlou” .
新建一个叫 lilei 的用户:
(Linux 下密码输入通常都是不可见的)
(3)用户组
在 Linux 里面每个用户都有一个归属(用户组),用户组简单地理解就是一组用户的集合,它们共享一些资源和权限,同时拥有私有资源.
就跟家的形式差不多,你的兄弟姐妹(不同的用户)属于同一个家(用户组),你们可以共同拥有这个家(共享资源),爸妈对待你们都一样(共享权限),你偶尔写写日记,其他人未经允许不能查看(私有资源和权限).
一个用户是可以属于多个用户组的,正如你既属于家庭,又属于学校或公司.
方式1.使用groups命令
方式2.查看/etc/group文件
/etc/group文件格式说明:
/etc/group 的内容包括用户组(Group)、用户组口令、GID 及该用户组所包含的用户(User),每个用户组一条记录。格式如下:
group_name:password:GID:user_list
你看到上面的 password 字段为一个 ‘x‘ 并不是说密码就是它,只是表示密码不可见而已。
将其他用户加入sudo用户组:
默认情况下新创建的用户是不具有 root 权限的,也不在 sudo 用户组,可以让其加入sudo用户组从而获取 root 权限。
(4)删除用户
二.Linux文件权限
(1)查看文件权限
文件类型:
关于文件类型必需时刻牢记Linux 里面一切皆文件,正因为这一点才有了设备文件这一说,还有 socket
和 pipe
.
软链接文件,链接文件是分为两种的,另一种是“硬链接”(不常用).
文件权限:
读权限可以使用 cat <file name>
之类的命令来读取某个文件的内容.
写权限,表示你可以编辑和修改某个文件.
执行权限,通常指可以运行的二进制程序文件或者脚本文件,如同 Windows 上的 ‘exe‘ 后缀的文件,不过 Linux 上不是通过文件后缀名来区分文件的类型.
一个目录要同时具有读权限和执行权限才可以打开,而一个目录要有写权限才允许在其中创建其它文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息所有者权限.
所属用户组权限,是指你所在的用户组中的所有其它用户对于该文件的权限,比如,你有一个iPad,那么这个用户组权限就决定了你的兄弟姐妹有没有权限使用它破坏它和占有它.
(2)变更文件所有者
(3)修改文件权限
方式1.二进制数表示
方式2.加减赋值操作