笔记:
查看用户:
$ who am i
或者
$ who mom likes
输出的第一列表示打开当前伪终端的用户的用户名,要查看当前登录用户的用户名,去掉空格直接使用 whoami 即可,pts 表示伪终端,伪是相对于 /dev/tty 设备而言的,pts/0 后面那个数字就表示打开的伪终端序号。
who 命令其它常用参数:(不知道该怎么用???)
-a:打印能打印的全部
-d:打印死掉的进程
-m:同am i,mom likes
-q:打印当前登录用户数及用户名
-u:打印当前登录用户登录信息
-r:打印运行等级
创建用户:
要创建用户需要 root 权限,要用到 sudo 这个命令。使用前提:要知道当前登录用户的密码,当前用户必须在sudo使用组。
$sudo adduser lilei:新建一个lilei的用户;
$ ls /home:添加用户到系统,同时也默认为新用户创建home目录;
$su-1 lilei:已经创建好一个用户,并且可以使用创建的用户登录了,使用这个命令切换登录用户。
退出登录程序跟退出终端一样,可以使用exit命令或Ctrl+d。
用户组:
简单理解就是一组用户的集合,他们共享一些资源和权限,同时拥有私有资源。
如何知道自己属于哪些用户组:
1、使用groups命令。
冒号之前表示用户,冒号之后表示用户所属的用户组。每次新建用户如果不指定用户组的话,默认会自动创建一个与用户名相同的用户组。默认情况下, sudo 用户组里的可以使用sudo命令获得root权限。
2、 查看/etc/group文件
cat命令用于读取指定文件的内容并打印到终端输出。| sort 表示将读取的文本进行一个字典排序再输出。
利用命令过滤掉不想看到的:
/etc/group 的内容包括用户组(Group)、用户组口令、GID 及该用户组所包含的用户(User),每个用户组一条记录。格式如下:
group_name:password:GID:user_list
3、将其他用户加入sudo用户组:
$su-1 lilei
$sudo ls
使用 usermod 命令可以为用户添加用户组,但必需有 root 权限,可以直接使用 root 用户为其它用户添加用户组,或者用其它已经在 sudo 用户组的用户使用 sudo 命令获取权限来执行该命令。
删除用户:
$ sudo deluser lilei --remove-home
查看文件权限:
$ ls -1
ls 命令的一些其它常用的用法:
显示除了 .(当前目录)和 ..(上一级目录)之外的所有文件,包括隐藏文件(Linux 下以 . 开头的文件为隐藏文件)。
$ ls -A(也可以使用$ ls -A1)
查看某一个目录的完整属性,而不是显示目录里面的文件属性:
$ ls -dl <目录名>
显示所有文件大小,并以普通人类能看懂的方式呈现:
$ ls -AsSh
其中小 s 为显示文件大小,大 S 为按文件大小排序。
变更文件所有者:(这个地方没看懂)
换回到 shiyanlou 用户身份,使用以下命令变更文件所有者为 shiyanlou :
$ cd /home/lilei
$ ls iphone6
$ sudo chown shiyanlou iphone6
修改文件权限:(同上,没看懂)
1、二进制数字表示
每个文件的三组权限(拥有者,所属用户组,其他用户,记住这个顺序是一定的)对应一个 " rwx ",也就是一个 “ 7 ” ,所以如果我要将文件“ iphone6 ”的权限改为只有我自己可以用那么就这样:
为了演示,我先在文件里加点内容:
$ echo "echo \"hello shiyanlou\"" > iphone6
然后修改权限:
$ chmod 700 iphone6
现在,其他用户已经不能读这个“ iphone6 ”文件了
2、 加减赋值操作
完成上述相同的效果,可以:
$ chmod go-rw iphone6
g、o 还有 u 分别表示 group、others 和 user,+ 和 - 分别表示增加和去掉相应的权限。
adduser 和 useradd 的区别:
useradd 只创建用户,创建完了用 passwd lilei 去设置新用户的密码。adduser 会创建用户,创建目录,创建密码(提示你设置),做这一系列的操作。其实 useradd、userdel 这类操作更像是一种命令,执行完了就返回。而 adduser 更像是一种程序,需要你输入、确定等一系列操作。
作业:
一开始做错了。。。。。。
正确的(后来改的)
步骤:
sudo adduser loutest 2.加入sudo组; sudo usermod sudo -G sudo loutest 3.使用sudo创建文件: sudo touch /opt/forloutest 4.设置成用户loutest可以读写: sudo chmod 600 /opt/forloutest