执行命令:
ls .
,查看当前目录的内容
文章目录
零、学习目标
一、导入新课
二、新课讲解
(一)常用权限操作
1、常用权限操作
(1)chgrp命令
(2)chown命令
(3)chmod命令
2、权限操作实战
任务1、创建文件,设置其用户组
任务2、修改文件的所有者
任务3、修改文件所有者与用户组
任务4、修改文件操作权限
(二)常用目录操作
1、常用目录操作
2、目录操作实战
任务1、获取命令帮助信息
任务2、查看当前目录
任务3、显示目录(文件)
任务4、创建目录
任务5、切换目录
任务6、统计目录及文件空间占用情况
任务7、复制目录(文件)
任务8、移动目录(文件)
任务9、删除目录(文件)
三、归纳总结
四、上机操作
零、学习目标
了解文件目录权限
掌握文件目录权限操作
熟悉常用文件目录操作
一、导入新课
Linux是一款安全性十分良好的操作系统。不仅有用户层面的安全性,还有目录操作层面的安全性,本次课我们要学习Linux的目录权限操作:读权限、写权限和执行权限。另外,常用目录操作也应该掌握,对于我们学习Hadoop奠定一个良好的Linux操作基础。
二、新课讲解
(一)常用权限操作
1、常用权限操作
(1)chgrp命令
功能:修改文件所属组
语法格式:chgrp 用户组 文件
说明:ch - change;grp - group
(2)chown命令
功能:改变文件所有者
语法格式:chown 用户 文件
说明:ch - change;own - owner
(3)chmod命令
功能:改变文件权限
语法格式:chmod 权限 文件
说明:ch - change;mod - mode
三种角色(role)
字母 | 角色 |
---|---|
u | 所有者(user) |
g | 用户组(group) |
o | 其他人(other) |
- 三种权限(permission | authority)
字母 | 权限 |
---|---|
r | 可读(readable) |
w | 可写(writable) |
x | 可执行(executable) |
- 两种权限设置方式
方式 | 说明 | 实例 | 实例 | 实例 | 实例 |
---|---|---|---|---|---|
字母方式 | r-w-x | rwx | r | rw | rx |
数字方式 | 4-2-1 100-010-001 | 4+2+1=7 | 4+0+0=4 | 4+2+0=6 | 4+0+1=5 |
chmod 756 love.txt
相当于chmod u=rwx, g=rx, o=rw love.txt
2、权限操作实战
- 创建文件的方法很多,比如用vim、touch、echo……
- root用户创建新文件
love.txt
(echo
是输出命令,默认是输出到屏幕;>
是重定向命令
- 查看文件
love.txt
的用户及用户组
- 将其用户组改为lzy用户组(在1.2节曾创建了lzy用户组),执行命令:chgrp lzy love.txt(love.txt→ \rightarrow→lzy)
- 查看文件
love.txt
的用户及用户组
任务2、修改文件的所有者
- 将root用户所建文件
love.txt
的所有者改变成alice
(在1.2节里创建的普通用户) - 执行命令:chown alice love.txt (love.txt ∈ \in∈ alice)
- 查看文件
love.txt
的所有者信息
任务3、修改文件所有者与用户组
- 将
love.txt
文件所有者改为smith
,用户组改为luzhou
- 查看文件
love.txt
的用户及用户组信息
任务4、修改文件操作权限
- 针对文件
love.txt
,权限字符串:-rw-r--r-
- 权限字符串有10位,分为四个部分。
-
第1位:表示文件类型;
-
表示文件,d
表示目录,l
表示链接 -
第234位:表示文件所有者(user)的读写可执行权限
-
第567位:表示文件所在组(group)的读写可执行权限
-
第89X位:表示文件其他人(other)的读写可执行权限
-
修改文件所有者权限为可读可写可执行(rwx),文件所在组的权限改为可读可执行但是不可写(r-x),文件其他人的权限设置为可读可执行但是不可写(r-x)
-
执行命令:
chmod u=rwx,g+x,o=rx love.txt
(g+x:表明在原来权限基础上添加可执行权限)
- 查看文件
love.txt
的操作权限
- 其实,执行
chmod 755 love.txt
效果完全相同
- 课堂练习:减去love.txt文件的用户组和其他人的可执行权限(字母方式或数字方式
- 采用字母方式,执行命令:
chmod g-x,o-x love.txt
- 查看love.txt的详细信息
- 采用数字方式,执行命令:
chmod 744 love.txt
- 查看love.txt的详细信
(二)常用目录操作
1、常用目录操作
命令 | 功能 |
---|---|
help, man, info | 获得命令帮助 |
pwd | 查看当前的工作目录 |
cd | 切换工作目录 |
ls -l | 以长格式显示文件和目录的列表,包括权限,大小,最后更新时间等信息 |
ls -a | 显示所有子目录和文件的信息,包括以“.”开头的隐藏目录和隐藏文件 |
ls -d | 显示目录属主的属性,而不是显示目录内容 |
ls -R | 以递归的方式显示指定目录及其子目录的内容 |
mkdir | 命令创建新的目录,使用“-p”创建嵌套的多层目录结构。 |
du | 统计目录及文件的空间占用情况 |
du -a | 统计磁盘空间占用时包括所有的文件,而不仅仅统计目录 |
du -h | 以K,M单位显示显示统计结果 |
du -s | 只统计每个参数所占空间总大小,而不是统计每个子目录和文件的大小 |
cp | 拷贝目录或文件,允许使用通配符 |
mv | 移动目录或文件 |
rm | 删除目录或文件(rm -rf 强制删除) |
2、目录操作实战
- 执行命令:
help pwd
,查看pwd
命令帮助信息
- 执行命令:
man pwd | head -20
,查看pwd
命令帮助信息(print working dirctory)
- 执行命令:
info pwd | head -20
,查看pwd
命令帮助信息
任务2、查看当前目
- 执行命令:
pwd
(pwd: print working directory)
- 在后续搭建Hadoop环境时,经常会复制当前目录到配置文件里去使用。
任务3、显示目录(文件)
- 执行命令:
ls
,显示当前目录下的目录文件名(ls - list
- 执行命令:
ls /home
,显示/home
目录下的目录文件名
- 执行命令:
ls -l
,显示当前目录下的目录文件详细信息
- 说明:
ls -l
相当于ll
命令
- 执行命令:
ls -a
,显示所有子目录和文件的信息,包括以“.”开头的隐藏目录和隐藏文件(.
- 当前目录;..
- 父目录)
- 执行命令:
ls .
,查看当前目录的内容
- 执行命令:
ls ..
,查看父目录的内容
- 执行命令:
ls -d
与ls -d /home
,显示目录属主的属性,而不是显示目录内容
- 执行命令:
ls -R /home
,以递归的方式显示指定目录及其子目录的内容(R - recursive)
- 我们换一个目录来试,执行命令:
ls -R /etc/sysconfig
- 注意选项参数是
-R
,不是-r
,用-r
,查看结果是不同的,并没有递归
- 执行命令:
ls -h /etc/sysconfig
任务4、创建目录
- 创建单个目录:mkdir 目录名,在当前目录下创建
test
目录(mkdir - make directory)
- 创建多层目录:mkdir -p 多层目录,在当前目录下创建hw/yl/lzy
- 如果不加参数
-p
,就不能创建原本不存在的多级目录
- 创建平行的多个目录:mkdir 目录1 目录2 目录3……
- 课堂练习:创建下图所示目录结构(可以有不同的方法来完成任务)
- 方法一:采用参数
-p
直接创建
- 采用递归方式查看刚才创建的目录结构
- 执行命令:
yum -y install tree
,安装tree
,查看目录树
- 修改网卡配置文件,执行命令:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
- 存盘退出,重启网络服务,执行命令:
systemctl restart network
- 执行命令:
yum -y install tree
- 执行命令:
tree /lzy
,查看目录结构
- 为了演示第二种方法,先把
/lzy
目录彻底删除
- 方法二:逐层创建每一级目录
- 逐层创建,需要用到两个命令:mkdir和cd(切换目录)
- 执行命令:
tree /lzy
,查看目录树
任务5、切换目录
- 执行命令:
cd /
,返回根目录
- 执行命令:
cd ~
(~
省掉也是一样的),返回当前用户的主目录,当前用户是root
用户,其主目录是/root
- howard用户的主目录就是
/home/howard
,由root用户切换到howard用户,当前目录依然是root用户的主目录,即/root
,发布cd ~
命令,切换到howard用户的主目录,即/home/howard
。
- 返回上一级目录:cd …
- 说明:本来当前目录在
/home/howard
,发布cd..
命令,返回到/home
目录。\ - 返回上一次的目录:cd -
- 说明:刚才由
/home/howard
目录,发布cd ..
命令,返回到父目录/home
,紧接着发布cd -
命令,返回上一次的目录,那就是/home/howard
任务6、统计目录及文件空间占用情况
- 执行命令:
du
- 执行命令:
du -a
- 执行命令:
du -h
任务7、复制目录(文件)
- 拷贝单个文件到当前目录
- 拷贝单个文件到指定目录
- 退出普通用户环境,返回根用户环境
- 拷贝单个文件到指定目录
- 拷贝多个文件到指定目录
- 拷贝目录(包括一切子目录的内容),需要一个参数
-r
。
任务8、移动目录(文件)
- 移动文件:将
hw1
目录下的CentOS-Base.repo
文件移到当前目录
- 移动目录:将
hw2
目录下的yum
目录移到hw1
目录
任务9、删除目录(文件)
- 删除文件:将
hw1
目录下以Cent
打头的文件全部删除
- 删除目录:删除
hw1
目录下的yum
目录
- 如果用这种方式来删除一个目录,那是很麻烦的,尤其当目录里有很多子目录或文件
- 强制删除目录:
rm -rf hw1/yum