第4章 目录与文件管理
全部都需要掌握,谢谢
Linux远程连接
1.为什么需要远程连接Linux系统
在实际工作中,我们很少有机会实际物理接触服务器,因为服务器一般都是托管在IDC机房的,而我们运维人员则是坐在办公室办公。所以这就需要使用工具来远程连接我们的Linux系统。
2.什么是IP地址
互联网上的计算机都会有一个唯一的32位地址,即IP地址,这个IP地址就相当于服务器所在的位置。
我们找人时,要知道这个人的具体地址,同理,如果要访问连接服务器,那就必须通过服务器的IP地址来实现,服务器的IP地址就相当于是服务器的具体地址。
局域网(只在我们目前的环境里生效)里也有预留的IP地址,通常以192.168.0.0、172.16.开头,每个局域网内的IP地址也是唯一的。
说明:
外网IP地址: 就是在全世界哪里都可以访问的IP地址。
内网IP地址: 就是只能在一个范围内访问的IP地址,例如,一个企业、一个教室,但也不是绝对的,这里可以就这样先简单地理解一下, 后文会深入讲解网络知识。
3.什么是端口
前面介绍了什么是IP地址,但是只有IP地址还不够,我们还需要一个连接端口。
举个例子:
如果IP地址是一栋大楼,那么端口号就是具体的哪个办公室。如果我们想寄快递到教室,那么还必须知道办公室的号码。
室外桃园创意园 A栋311
IP 端口
常见互联网服务的端口:
SSH 22
HTTP 80
HTTPS 443
MySQL 3306
4.什么是协议
一台服务器上可以启动多个协议和多个端口,每个协议都有自己固定的端口。
依然拿上面寄快递的举例。不同的协议有不同的端口,就好比不同的办公室是不同的公司租的。
举例:
室外桃园创意园 A栋311 老男孩教育
IP 端口 协议
服务器地址 端口 协议
10.0.0.100 22 SSH
5.什么是SSH服务
SSH服务就是专门用来提供Linux远程连接的服务,当然也有其他的协议支持远程连接,但是SSH的传输过程中是加密的,所以更安全,这要是为什么大家都使用SSH连接Linux的原因。
我们已经知道了Linux服务器的IP地址,端口号和协议,这样我们就可以远程连接了吗?
这样还是不够的,为什么?因为我们还需要知道服务器的账号密码才行。
所以,远程连接服务器的所有条件如下:
服务器地址 端口 协议 账号 密码
10.0.0.100 22 SSH root 123
远程连接命令如下:
ssh root@10.0.0.100
为什么没有写端口号呢?因为如果不加端口号,默认SSH就是使用22连接的,所以也可以不填写。
那么密码在哪里呢?密码是交互式的输入,因为直接写在命令行里并不安全。
6.远程连接Linux的工具推荐
Windows: xhshell crt
mac: crt
Linux命令行入门
1.Linux命令行的作用与意义
Linux是一个主要通过命令行来进行管理的操作系统,与Windows的可视化管理区别非常大。
Windows的可视化虽然简单容易上手,但是不能快速批量自动化的管理系统。
运维平时工作主要都是在命令行完成的,大多数互联网公司安装系统时都不会安装图形管理软件包,而是直接文本模式安装,登陆后直接就是命令行界面。
简单来说,就是Linux+命令酷炫吊炸天,可以干很多魔术般的事情。
2.命令行字符的含义
[ root @ oldboy ~ ] #
当前用户名 分隔符 主机名 当前用户登陆后的位置 提示符,root用户是# 普通用户是$
Linux系统目录结构
1.Linux与Windows的目录结构对比
Linux下所有的文件都是从/开始的,/是所有目录共有的爸爸,其他目录都是挂载在/下的子子孙孙。
2.Linux相对路径与绝对路径
绝对路径就是以/为起点,完整的目录路径。
相对路径就是以当前所在目录为起点,表示相对于其他目录的路径。
3.Linux目录结构的特点小结
1."/"根是所有目录的顶点,对于Linux目录来说,一切从根开始。
2.新设备可以挂载到任何目录上使用。
3.所有的目录都是按照一定的类别有规律的进行组织和命名的。
4.磁盘必须被挂载才能使用,没有挂载的磁盘相当于没有门窗的监狱,是不能被使用的。
5.目录路径分为相对路径和绝对路径。
Linux文件目录命令
1.pwd 显示当前所在位置的信息
举例
pwd
2.cd 切换目录
语法格式
cd [option] [dir]
cd [选项] [目录]
重要选项
- #切换到用户上一次所在的目录路径,游戏来说就是解锁一个传送点,然后传送到上一个存档位置。
~ #切换到当前用户的家目录,默认不接参数,直接执行cd也会达到相同的效果。游戏来说就是直接用回城卷回城了。
.. #切换到当前目录的上一级目录,游戏来说就是返回上一个地图。
技巧
1.当使用cd命令切换目录时,多用tab补全键可以补全路径,可以提高输入速度和准确度。
2.相对路径和绝对路径区别:
相对路径是以当前所在的目录为起点,而不是以"/"为起点
绝对路径是以"/"为起点,例如 /etc/ /data/
练习题
1.进入一个目录
2.切换上一次的目录
3.切换到上一级目录
4.切换到家目录
3.tree 以树状目录结构显示目录下的内容
语法格式
tree [option] [directory]
tree [选项] [目录]
重要选项
-d #只显示目录
-L N #遍历目录的最大层数,N为大于0的正整数
练习题
1.只列出根目录下第一层的目录结构
2.使用tree命令区分目录和文件的方法
3.只显示目录
4.mkdir 创建目录
语法格式
mkdir [option] [directory]
mkdir [选项] [目录]
重要选项
-p #1.递归创建目录,递归的意思就是指目录下面还有目录
#2.默认不加参数时如果要创建的目录已经存在,就会报错提示。使用-p参数后即使需要创建的目录已经存在了,也不会提示报错。
练习题
1.创建一个目录
2.递归创建目录
5.touch 创建文件或更改文件时间戳
语法格式
touch [option] [file]
touch [选项] [文件]
重要选项
-a #更改指定文件的最后访问时间
-m #更改指定文件的最后修改时间
拓展
Linux文件中包含了3种类型的时间戳
练习题
1.批量创建多个空文件
2.更改时间戳
touch oldboy.txt
stat oldboy.txt
touch -a oldboy.txt
stat oldboy.txt
touch -m oldboy.txt
stat oldboy.txt
3.指定时间属性创建/修改文件
ls -lh oldboy.txt
touch -d 20201131 oldboy.txt
ls -lh oldboy.txt
6.ls 显示目录下的内容及属性信息
语法格式
ls [option] [file]
ls [选项] [文件或目录]
重要选项
-l #详细的列出文件及目录的信息
-a #显示目录下所有的文件,包含以"."开头的隐藏文件
-h #以人类可读的信息显示文件或目录大小
-d #显示目录本身的信息,而不是目录里面的文件的信息
-r #反向排序
-t #根据最后修改时间进行排序
-i #显示inode节点信息
练习题
1.切换目录,批量创建文件,显示文件内容
2.显示目录文件的详细内容
3.显示目录下的所有文件,包括隐藏文件
4.只显示目录的信息,而不是目录下的文件的信息
5.查找最近更新过的文件
6.以人类可读信息输出
拓展
ls命令输出信息解读:
7.cp 复制文件或目录
语法格式
cp [option] [source] [dest]
cp [选项] [源文件] [目标文件]
重要选项
-p #复制文件时保持源文件。
-d #如果复制的源文件是符号链接,则仅复制符号链接本身,而且保留符号链接所指向的目标文件或目录。
-r #递归复制目录,即复制目录下的所有层级的子目录及文件
-a #等同于上面的p,d,r这3个选项的功能总和。
-i #如果复制的文件已经存在,覆盖前提示用户确认。
-t #默认情况下命令格式是"cp 源文件 目标文件",使用-t参数可以颠倒顺序,格式变成"cp -t 目标文件 源文件"。
练习题
1.将 file1.txt 复制为 file2.txt
2.强制复制 file1.txt 为 file2.txt
3.复制/etc目录及其目录里的所有文件到/opt目录下
4.一条命令备份file1.txt为file1.txt.bak
8.mv 移动或重命名文件
语法格式
mv [option] [source] [dest]
mv [选项] [源文件] [目标文件]
重要选项
-i #若目标已经存在,则会询问是否覆盖
-t #与cp命令的-t参数一样,作用是颠倒源目录和目标目录的参数顺序 mv -t 目标目录 源目录
练习题
1.将 file6.txt 重命名为 file7.txt
2.移动的文件如果已经存在不提示报错
3.将file7.txt 移动到 /opt目录下
4.将源文件与目标文件参数顺序调换
5.将目录 dir1 重命名为 dir2
9.⚠️rm⚠️ 删除文件或目录
⚠️警告⚠️
这是Linux最危险的命令之一,跪求谨慎使用。
语法格式
rm [option] [file]
rm [选项] [文件或目录]
重要选项
-f #强制删除,忽略不存在的文件,不提示确认
-r #递归删除目录及其内容
-i #删除前需要确认
练习题
0.创建测试文件:
mkdir -p /data/\{dir1,dir2,dir3\}
touch /data/\{file1.txt,file2.txt,file3.txt\}
tree /data
cd /data
1.删除file1文件
2.删除dir1目录
拓展
10.help/man 查看命令帮助
语法格式
命令 --help
man 命令
练习题
1.查看shutdown命令的帮助说明
11.Linux下常见关机/重启/注销命令
1.关机命令
shutdown -h now
shutdown -h +1
halt
init0
poweroff
2.重启命令
reboot
shutdown -r now
shutdown -r +1
init 6
3.注销命令
logot
exit
更新: 2024-09-21 19:36:18