su 切换用户
su: swith user 切换用户
基本语法
su 用户名称 (功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量)
su - 用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限)
案例实操
(1)切换用户
[root@hadoop101 ~]#su tangseng [root@hadoop101 ~]#echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin [root@hadoop101 ~]#exit [root@hadoop101 ~]#su - tangseng [root@hadoop101 ~]#echo $PATH (看查环境变量) /usr/lib64/qt3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/tangseng/bin
userdel 删除用户
基本语法
(1)userdel 用户名 (功能描述:删除用户但保存用户主目录)
(2)userdel -r 用户名 (功能描述:用户和用户主目录,都删除)
选项说明
-r 删除用户的同时,删除与用户相关的所有文件。
案例实操
(1)删除用户但保存用户主目录
[root@hadoop101 ~]#userdel tangseng [root@hadoop101 ~]#ll /home/
(2)删除用户和用户主目录,都删除
[root@hadoop101 ~]#useradd zhubajie [root@hadoop101 ~]#ll /home/ [root@hadoop101 ~]#userdel -r zhubajie [root@hadoop101 ~]#ll /home/
who 查看登录用户信息
基本语法
(1)whoami (功能描述:显示自身用户名称)
(2)who am i (功能描述:显示登录用户的用户名以及登陆时间)
案例实操
(1)显示自身用户名称
[root@hadoop101 opt]# whoami
(2)显示登录用户的用户名
[root@hadoop101 opt]# who am i
sudo 设置普通用户具有 root 权限
添加 atguigu 用户,并对其设置密码。
[root@hadoop101 ~]#useradd atguigu [root@hadoop101 ~]#passwd atguigu
修改配置文件
[root@hadoop101 ~]#vi /etc/sudoers 修改 /etc/sudoers 文件,找到下面一行(91 行),在 root 下面添加一行,如下所示: ## Allow root to run any commands anywhere root ALL=(ALL) ALL atguigu ALL=(ALL) ALL 或者配置成采用 sudo 命令时,不需要输入密码 ## Allow root to run any commands anywhere root ALL=(ALL) ALL atguigu ALL=(ALL) NOPASSWD:ALL 修改完毕,现在可以用 atguigu 帐号登录,然后用命令 sudo ,即可获得 root 权限进行 操作。
案例实操
(1)用普通用户在/opt 目录下创建一个文件夹
[atguigu@hadoop101 opt]$ sudo mkdir module [root@hadoop101 opt]# chown atguigu:atguigu module/
usermod 修改用户
基本语法
usermod -g 用户组 用户名
选项说明
-g 修改用户的初始登录组,给定的组必须存在。默认组 id 是 1。
案例实操
(1)将用户加入到用户组
[root@hadoop101 opt]# usermod -g root zhubajie
用户组管理命令
每个用户都有一个用户组(文件夹),系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同, 如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。 用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 /etc/group文件的更新。
groupadd 新增组
基本语法
groupadd 组名
案例实操
(1)添加一个xitianqujing组
[root@hadoop101 opt]#groupadd xitianqujing
groupdel 删除组
基本语法
groupdel 组名
案例实操
(1)删除xitianqujing组
[root@hadoop101 opt]# groupdel xitianqujing
groupmod 修改组
基本语法
groupmod -n 新组名 老组名
选项说明
-n<新组名> 指定工作组的新组名
案例实操
(1)修改atguigu组名称为atguigu1
[root@hadoop101 ~]#groupadd xitianqujing [root@hadoop101 ~]# groupmod -n xitian xitianqujing
cat /etc/group 查看创建了哪些组
基本操作
[root@hadoop101 atguigu]# cat /etc/group
文件权限类
文件属性
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。
为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做 了不同的规定。在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属 的用户和组。
从左到右的 10 个字符表示
如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:
(1)0 首位表示类型
在Linux中第一个字符代表这个文件是目录、文件或链接文件等等
- 代表文件
d 代表目录
l 链接文档(link file);
(2)第1-3位确定属主(该文件的所有者)拥有该文件的权限。---User
(3)第4-6位确定属组(所有者的同组用户)拥有该文件的权限,---Group
(4)第7-9位确定其他用户拥有该文件的权限 ---Other
rwx 作用文件和目录的不同解释
(1)作用到目录:
[ r ]代表可读(read): 可以读取,ls查看目录内容
[ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
[ x ]代表可执行(execute):可以进入该目录
(2)作用到文件:
[ r ]代表可读(read): 可以读取,查看
[ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前 提条件是对该文件所在的目录有写权限,才能删除该文件
[ x ]代表可执行(execute):可以被系统执行
案例实操
[root@hadoop101 ~]# ll
总用量 104
-rw-------. 1 root root 1248 1 月 8 17:36 anaconda-ks.cfg drwxr-xr-x. 2 root root 4096 1 月 12 14:02 dssz lrwxrwxrwx. 1 root root 20 1 月 12 14:32 houzi -> xiyou/dssz/houge.tx
文件基本属性介绍
(1)如果查看到是文件:链接数指的是硬链接个数。
(2)如果查看的是文件夹:链接数指的是子文件夹个数。
chmod 改变权限
基本语法
第一种方式变更权限
chmod [{ugoa}{+-=}{rwx}] 文件或目录
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o 的总和)
第二种方式变更权限
chmod [mode=421 ] [文件或目录]
x=1 w=2 xw=3 r=4 xr=5 wr=6 rwx=7
(用了二进制的表达方式 x=1=001 w=2=010 xr=5=101 rwx=7=111)
案例实操
(1)修改文件使其所属主用户具有执行权限
[root@hadoop101 ~]# cp xiyou/dssz/houge.txt ./ [root@hadoop101 ~]# chmod u+x houge.txt
(2)修改文件使其所属组用户具有执行权限
[root@hadoop101 ~]# chmod g+x houge.txt
(3)修改文件所属主用户执行权限,并使其他用户具有执行权限
[root@hadoop101 ~]# chmod u-x,o+x houge.txt
(4)采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权 限。
[root@hadoop101 ~]# chmod 777 houge.txt
(5)修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可
执行权限。
[root@hadoop101 ~]# chmod -R 777 xiyou/
chown 改变所有者
基本语法
chown [选项] [最终用户] [文件或目录] (功能描述:改变文件或者目录的所有 者)
选项说明
-R 递归操作 (特殊)
案例实操
(1)修改文件所有者
[root@hadoop101 ~]# chown atguigu houge.txt [root@hadoop101 ~]# ls -al -rwxrwxrwx. 1 atguigu root 551 5 月 23 13:02 houge.txt
(2)递归改变文件所有者和所有组
[root@hadoop101 xiyou]# ll drwxrwxrwx. 2 root root 4096 9 月 3 21:20 xiyou [root@hadoop101 xiyou]# chown -R atguigu:atguigu xiyou/ [root@hadoop101 xiyou]# ll drwxrwxrwx. 2 atguigu atguigu 4096 9 月 3 21:20 xiyou
chgrp 改变所属组
基本语法
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)
案例实操
(1)修改文件的所属组
[root@hadoop101 ~]# chgrp root houge.txt [root@hadoop101 ~]# ls -al -rwxrwxrwx. 1 atguigu root 551 5 月 23 13:02 houge.txt
搜索查找类
find 查找文件或者目录
find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
基本语法
find [搜索范围] [选项]
选项说明
-name<查询方式> 按照指定的文件名查找模式查找文件
-user<用户名> 查找属于指定用户名所有文件
-size<文件大小> 按照指定的文件大小查找文件,单位为:
b —— 块(512 字节)
c —— 字节
w —— 字(2 字节)
k —— 千字节
M —— 兆字节
G —— 吉字节
案例实操
(1)按文件名:根据名称查找/目录下的filename.txt文件。
[root@hadoop101 ~]# find xiyou/ -name "*.txt"
(2)按拥有者:查找/opt目录下,用户名称为-user的文件
[root@hadoop101 ~]# find xiyou/ -user atguigu
(3)按文件大小:在/home目录下查找大于200m的文件(+n 大于 -n小于 n等于)
[root@hadoop101 ~]find /home -size +204800
locate 快速定位文件路径
locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给 定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确 度,管理员必须定期新 locate 时刻。
基本语法
locate 搜索文件
经验技巧
由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创 建 locate 数据库。
案例实操
(1)查询文件夹
[root@hadoop101 ~]# updatedb [root@hadoop101 ~]#locate tmp