前言:linux学习流程:
第一阶段:Linux环境下的基本操作命令,包括文件操作命令(rm mkdir chmod, chown)编辑工具的使用(vi vim)Linux用户管理(useradd userdel usermod)等。
第二阶段:Linux的各种配置(环境变量的配置,网路配置,服务配置)。
第三阶段:Linux下如何搭建对应语言的开发环境(大数据,JavaEE,Python等)。
第四阶段:能编写shell脚本,对Linux服务器继续维护。
第五阶段:能进行安全设置,防止攻击,保障服务器正常运行,能对系统调优。
第六阶段:深入理解Linux系统(对内核进行研究),熟练掌握大型网站应用架构组成 、并熟悉各个环节的部署和维护方法。
1)Linux是一款操作系统,免费,开源,安全,高效,稳定,处理高并发非常强悍,现在很多企业级的项目都部署到Linux/unix服务器运行
2)创始人----林纳斯
3)Linux主要的发行版本
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KTAwf7Hs-1642581879136)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220108143555955.png)]
4)目前主要的操作系统有:Windows,Android,Linux,
学习Linux需要安装一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个CentOS系统来学习
1)先安装virtual machine,vm12
2)再安装Linux(CentOS 6.8)
3)原理示意图,说明VM和CentOS的关系
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5eIuSC6l-1642581879137)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220108145726349.png)]
1.桥连接,Linux可以和其他的系统通信,但可能造成ip冲突。
2.NAT:网络地址转换方式,Linux可以访问到外网,不会造成ip冲突。
3.主机模式:Linux是独立的主机模式,不能访问到外网。
1)终端的使用,点击鼠标右键,即可选择打开终端
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TVw6jhHs-1642581879137)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220108224154716.png)]
2)配置网络,进行上网
点击上面右侧的两个计算机图标选择启用system eth0
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-amEmVHHA-1642581879137)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220108224518908.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zurD6XIP-1642581879138)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220108224548188.png)]
1)可以直接粘贴命令在windows和centos系统之间
2)可以设置windows和centos的共享文件夹
1)进入centos
2)点击vm菜单的install VMware tools
3)centos会出现一个vm的安装包
4)解压,得到安装文件
5)进入目录,该文件在/root/桌面/vmware-tools-distrib/下
6)安装./vmware-install.pl
7)全部使用默认设置即可
8)需要reboot重新启动即可生效
1)为了方便,可以设置一个共享文件夹,比如d:/share
2)一般来说都是使用远程方式完成
具体步骤:1)菜单->vm->setting
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IzcIb7L6-1642581879138)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220108231405660.png)]
2)window和centos可以共享共享文件夹了
3)在centos的/mnt/hgfs/下
linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后再次目录下再创建其他的目录。
一句经典话语:在Linux世界里,一切皆是文件。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CIGtmKh1-1642581879139)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220108232234745.png)]
1)**/bin ** 存放的是系统管理员最经常使用的命令
2)**/sbin ** 存放系统管理员最常用的系统管理程序
3)/home 存放普通用户的主目录,在Linux中每个用户都对应自已一个home目录,一般是以用户的用户名命名
4)**/root ** 该目录为系统管理员,也成为超级权限者的用户主目录
5)/lib 系统开机所需要的最基本的动态连接共享库,其作用类似于windows下的DLL文件,几乎所有应用程序都需要用到这个共享库
6)/lost+found 一般是空文件夹,当系统进行非法关机后,存放一些文件
7)/etc 所有的系统管理所需要的配置文件和子目录my.conf
8)/usr 非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于Windows下的program files目录
9)**/boot ** 存放启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
10)/temp 存放临时文件
11)**/dev ** 类似于Windows下的设备管理器,把所有硬件以文件的形式存储起来
12)/media Linux会自动识别一些设备,例如U盘,光驱等,当时别后,Linux会把识别的设备挂载到这个目录下
13)/mnt 系统提供该目录是为了让用户临时挂在别的文件系统,我么可以将外部的存储挂载在/mnt/上,进入该目录就可以查看里面的内容
14)/opt 这是给主机额外安装软件所摆放的目录,如安装ORACLE数据库就可放在该目录下
15)/usr/local 这是给主机安装软件的安装目录,一般是通过编译源码方式安装的程序
16)/var 这个目录存放着不断扩充着的东西,习惯将经常修改的目录放在这个目录下,包括各种日志文件
17)/selinux SELinux是一种安全子系统,他能控制程序只能访问特定的文件
总结:1)Linux只有一个更目录/
2)Linux的各个目录存放的内容都是规划好的,不用乱放文件
3)Linux是以文件的形式管理我们的设备
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q3tJpU5S-1642581879139)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109194207440.png)]
**特别说明:**Linux必须启动SSHD服务,开启22端口监听
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1CGubfVS-1642581879140)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109200654236.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q56eiaBd-1642581879140)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109200711849.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GxEIkXQ4-1642581879141)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109201329991.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vLTnZUeQ-1642581879141)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109201726456.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o12Enz8U-1642581879141)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109202023948.png)]
连接到Linux界面如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BLXxsXDs-1642581879142)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109202123587.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BBhXF2vg-1642581879142)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109202321914.png)]
所有的Linux系统都会内建vi文本编辑器。
Vim具有程序编辑的能力,可以看作时Vi的增强版本,可以主动的以字体的颜色辨别语法的正确性,方便程序设计,代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用
正常模式下,我们可以使用快捷键,以vim打开一个档案就直接进入一般模式(默认模式)。在这个模式下,你可以使用按键移动光标,可以使用删除字符****和删除整行**来处理档案内容
按下i,l,o,O,a,A,r,R等任何字母之后就会进入编辑模式,一般来说按i即可
在这个模式中,可以提供你相关命令,完成读取,存盘,替换、离开Vim,显示行号等的动作则是在此模式完成的
使用vim开发一个Hello.java程序,保存,步骤说明和演示:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lyzT4b3l-1642581879142)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109204114847.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tYuczcek-1642581879143)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109205419430.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oClcElqK-1642581879143)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220109205401890.png)]
1)拷贝当前行 【yy】,拷贝当前向下的5行(包括当前行) 【5yy】,并粘贴【p】
2)删除当前行 【dd】,删除当前行向下5行(包括当前行) 【5dd】
3)在文件中查找某个单词【命令行下【/关键字】,回车查找,输入n就是查找下一个】
4)设置文件的行号,取消文件的行号【命令行下:set nu和set nonu】
5)编辑一个文件/etc/profile,使用快捷键到底文档的最末行【G】和最首行【gg】,正常模式下进行
6)撤销输入 【u】在文件中输入hello然后撤销,正常模式下
7)编辑/etc/profile文件,将光标移动到第20行 【shift+g】
第一步:显示行号set nu【命令行模式下】
第二部:输入20这个数【正常模式下】
第三步:输入shift+g
1)shutdown
shutdown -h now:表示立即关机
shutdown -h 1:表示1分钟后关机
shutdown -r now:表示立即重启
2)halt:就是直接使用,等价于关机
3)reboot:就是重启
4)sync:把内存的数据同步到磁盘,在关机之前一定要执行,特别是管理员root
当我们关机或者重启的时候,都应该先执行sync指令,把内存的数据写入磁盘,防止丢失
1)登录时尽量少使用root账号登录,可以利用普通用户登录,登录后使用【su -用户名】切换成系统管理员身份
2)在提示符下输入【logout】即可注销用户,只是断开Xshell和Linux的连接
1)logout注销指令只能在Xshell中有用,在Linux图形界面中无效
1)Linux是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号进入系统。
2)Linux必须要属于至少一个组
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q1JMK9qQ-1642581879143)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110143008500.png)]
【useradd [选项] 用户名】
添加一个用户小明【xm】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RTSF6eJb-1642581879144)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110143921027.png)]
1)当创建用户成功后,会自动创建跟用户名同名的家目录(如果没有指定创建文件夹)
2)也可以指定【useradd -d 指定目录 新的用户名】,给新的创建的用户指定家目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6vtjDJ3O-1642581879144)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110144906989.png)]
【passwd 用户名】
1)给用户xm指定密码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Iv8yfmLn-1642581879144)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110145159701.png)]
2)给用户xm修改密码
【userdel 用户名】
1)删除用户xm,但是保存家目录【userdel 用户名】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QCKtUeDe-1642581879145)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110145633702.png)]
2)删除用户以及用户的主目录【userdel -r 用户名】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dmpxxkmZ-1642581879145)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110145738115.png)]
在删除用户的时候,一般不会删除家目录
【id 用户名】
案例1:查询root信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Qp0Ye8Kd-1642581879146)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110150241116.png)]
如果用户不存在,返回无信息
在操作Linux中,如果当前用户的权限不够,可以通过【su - 指令】,切换高权限用户,比如root
【su - 切换用户名】
1)创建一个用户zf,指定密码,然后切换到zf。【exit】切换回原来的用户
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JLo2mozV-1642581879146)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110150926673.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-729ZgeY5-1642581879147)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110151005436.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w2gcTnqr-1642581879147)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110151113067.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KrcyjOAM-1642581879147)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110151456170.png)]
1)从权限高的用户切换回权限低的用户,不需要密码,反之需要
2)当需要返回到原来的用户时,使用exit指令
基本语法:【whoami】
类似于角色,系统可以对其共性的多个用户进行统一的管理
指令【groupadd 组名】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-POHJTAf8-1642581879148)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110152751209.png)]
指令【groupdel 组名】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vTKU71PN-1642581879148)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110152944587.png)]
【useradd -g 用户组 用户名】
增加一个用户zwj,直接将他指定到wudang组里面
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T3H3LJ8p-1642581879149)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110153446444.png)]
【usermod -g 用户组 用户名】
创建一个shaolin组,将zwj修改为shaolin组
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cwwgeaCP-1642581879149)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110171616439.png)]
用户(user)的配置文件,记录用户的各种信息
每行的含义:用户名;口令(密码);用户标识号;组标识号;注释性描述;主目录;登录shell
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B044ncuM-1642581879150)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110174728069.png)]
口令的配置文件
每行的含义:登录名;加密口令;最后一次修改时间;最小间隔时间;最大时间间隔;警告时间;不活动时间;失效时间;标志
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WgSepd5T-1642581879150)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110174858869.png)]
组(group)的配置文件:记录Linux包含的组的信息
每行含义:组名;口令;组标识号;组内用户列表
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pwHHImzn-1642581879150)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110175621965.png)]
运行级别说明:
0:关机
1:单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户状态有网路服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用的运行级别是3和5,要修改默认的运行级别可改文件
/etc/inittab的id:5:initdefault:这一行的数字
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6QlxsKuM-1642581879150)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110202837110.png)]
【命令:init[0123456]】
示意图:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Dgp4RgGy-1642581879151)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110202508337.png)]
【init[0123456]】
通过init来切换不同的运行级别,比如5-》3,然后关机
如何找回root密码
思路:进入到单用户模式修改密码,因为进入单用户级别不需要密码
1.启动虚拟机的时候按enter键进入系统选择界面
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r744zEJI-1642581879151)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110203438771.png)]
2.选中系统输入e进入编辑模式
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tSDjjAze-1642581879151)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110203623181.png)]
3.再选中第二个输入e进入编辑模式
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tdDMlEpL-1642581879152)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110203738955.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w78E9RsS-1642581879152)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110203820201.png)]
4.输入1进入单用户级别
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1VBOmdtC-1642581879152)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220110203853067.png)]
5.在输入b进入命令行界面-----》修改密码
当我们对某个指令不熟悉时,可以使用Linux提供的帮助指令来了解这个指令的使用方法。
基本语法【man[命令配置文件]】功能描述,获取帮助信息
应用实例
案例:查看【ls命令】帮助信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pOGMQA65-1642581879152)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111131241123.png)]
基本语法【help命令】(功能描述:获取shell内置命令的帮助信息)
应用实例:查看cd命令的帮助信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sOuN0I3n-1642581879153)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111131541463.png)]
基本语法:【pwd】显示当前工作目录的绝对路径
应用案例:显示当前目录的绝对路径
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4VvFjKhZ-1642581879153)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111131908762.png)]
基本语法:【ls [选项] [目录或者文件]】
常用选项:
1)-a显示当前目录所有的文件和目录,包括隐藏的。
2)-l以列表的方式显示信息
应用案例:查看当前目录的所有内容信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WeDJxTBP-1642581879153)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111132521812.png)]
基本语法:【cd [参数] 】切换到指定目录
常用参数:
1)绝对路径和相对路径
2)【cd ~】或者【cd】,回到自己的家目录
3)【cd …】回到上一级目录
应用案例:
1)使用绝对路径回到root目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KdFaLSzz-1642581879153)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111133254124.png)]
2)使用相对路径到root
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X9AXRGrP-1642581879154)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111133359444.png)]
3)回到家目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EJ4bMO8J-1642581879154)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111133519219.png)]
mkdir用于创建目录
基本语法:【mkdir [选项] 要创建的目录名】
常用选项:-p 创建多级目录
应用案例:
1)创建一个目录/home/dog
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XBhhV11N-1642581879154)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111134020759.png)]
2)创建一个多级目录/home/animal/tiger
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pCMcDt8N-1642581879155)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111134217459.png)]
删除空目录
基本语法:【rmdir [选项] 要删除的空目录名】
应用案例:删除空目录/home/dog
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GwiFHGUQ-1642581879155)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111134949497.png)]
使用细节:rmdir删除的是空目录,如果文件下面有内容,无法删除
提示:如果删除非空目录:使用【rm -rf 要删除目录】
touch指令创建空文件,可以一次性创建多个文件
基本语法:【touch 文件名称】
应用案例:创建空文件hello.txt
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-swaB15wi-1642581879155)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111135453820.png)]
cp指令拷贝文件到指定目录
基本语法:【cp [选项] source dest】
常用选项:-r 递归复制整个文件夹
应用案例:
1)将/home/aaa.txt拷贝到 /home/bbb目录下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qfcZkxkI-1642581879155)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111223132568.png)]
2)递归整个文件夹,举例,将/home/test这个文件夹拷贝到/home/zwj目录下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vKeWAFyV-1642581879157)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111223529622.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VbOqRQSd-1642581879157)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111223948477.png)]
rm强制移除文件或者目录
基本语法:【rm [选项] 要删除文件或者目录】
常用选项:-r:递归删除整个文件夹
-f:强制删除
应用案例:
1)将/home/aaa.txt删除
2)递归删除整个/home/bbb
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Ygqomyh-1642581879157)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111224420838.png)]
mv移动文件与目录或者重命名
基本语法:【mv oldNameFile newNameFile】重命名
【mv /temp/movefile /targetFolder】移动文件
应用实例:
1)将/home/aaa.txt文件重命名为pig.txt
2)将/home/pig.txt文件移动到/root下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zXR69V6Z-1642581879158)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220111225913016.png)]
cat查看文件内容,只能查看,不能修改
基本语法:【cat [选项] 要查看的文件】查看文件内容
常用选项:-n 显示行号
应用实例:/etc/profile文件内容,并显示行号
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lSudLcAq-1642581879158)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112150504053.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qDLshPLg-1642581879158)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112150743953.png)]
more指令是基于vim编辑器的文本过滤器,他以全屏的方式按页显示文本内容,内置很多快捷键,详情见下表
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JOaw11pv-1642581879158)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112151119345.png)]
基本语法:【more 要查看文件名称】
应用案例:查看/etc/profile
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ir1W0H0m-1642581879159)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112151323362.png)]
less指令用分屏来查看文件内容,他的功能与more指令相似,但是比more指令更加强大,支持显示各种终端。less在显示文件的时候,并不是将文件整个全部加载后显示,而是根据需要加载内容,对于现实大型文件具有较高的效率
基本语法:【less 查看的文件】
快捷键:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4W0HvrT9-1642581879159)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112151847497.png)]
>输出重定向(覆盖)和>>追加
基本语法:【ls -l > 文件】列表的内容写入到a.txt中(覆盖写)
【ls -al >> 文件】列表的内容追加到aa.txt文件中的末尾
【cat 文件1 > 文件2】将文件1的内容覆盖到文件2
【echo “内容” >> 文件】
应用案例:
1)将/home目录下的文件列表写到/home/info.txt中
2)将当前日历信息追加到/home/mycal文件中【提示 cal】
echo输出内容到控制台
基本语法:【echo [选项] [输出内容]】
应用实例:
1)echo输出环境变量
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fXdqJvpj-1642581879159)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112231045786.png)]
2)使用echo输出hello,world!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ChA51vdZ-1642581879159)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112231232170.png)]
head用于显示文件的开头内容部分,默认情况下head指令显示文件的前10行内容
基本语法:【head 文件】显示文件的前10行
【head -n 5 文件】查看文件头5行内容,5可以是任意行数
实例:查看/etc/profile的前面5行
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JN6N1Rqp-1642581879160)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112231605459.png)]
tail用于输出文件的末尾的内容,默认情况下tail指令显示文件的最后10行
基本语法:【tail 文件】显示文件的末尾10行
【tail -n 5 文件】查看文件后5行,5可以是任意数
【tail -f 文件】实时追踪该文件的所有更新
应用案例:
1)查看/etc/profile的末尾5行
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LfMn8SRC-1642581879160)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220112232226131.png)]
2)实时监控mydate.txt,看到文件变化时,自动追加更新日期
软连接也叫符号链接,类似于windows里面的快捷方式,主要存放了连接其他文件的的路径
基本语法:【ln -s 原文件或者目录 软链接名】给源文件创建一个软连接
应用实例:案例一:在/home/目录下创建一个软链接linkToRoot,连接到/root目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HJloUlOt-1642581879160)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113135156347.png)]
案例二:删除软链接linkToRoot
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SEV6pJCh-1642581879160)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113135520576.png)]
查看已经执行过的指令,也可以执行历史指令
基本语法:【history】
应用案例:1)显示所有历史命令
2)显示最近使用过的10条命令
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G5Z7C5dN-1642581879161)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113135958523.png)]
3)执行历史编号为178的指令
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pNp63Scr-1642581879161)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113140100732.png)]
显示当前日期
基本语法:【date】显示当前时间
【date + %Y】显示当前年份
【date + %m】显示当前月份
【date + %d】显示当前日期
【date “+%Y-%m-%d %H:%M:%S”】显示年月日时分秒
应用案例:1)显示当前时间
2)显示当前年月日
3)显示当前年月日时分秒
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5mrx5Pqx-1642581879161)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113140833196.png)]
基本语法:【date -s 时间字符串】
应用案例:设置系统时间,比如设置为2020-11-11 11:22:22
基本语法:【cal [选项]】显示日历
应用案例:
1)显示当前日期
2)显示2020年日历
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X9GdF2by-1642581879162)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113231502253.png)]
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
基本语法:【find [搜索范围] [选项]】
选项说明:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xR5P5TEB-1642581879162)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113231912165.png)]
应用实例:
案例1:按文件名:根据名称查找/home目录下的hello.txt文件[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AW6seHXV-1642581879162)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113232348498.png)]
案例2:按拥有者:查找/opt目录下,用户名称为nobody的文件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6J7fqRfM-1642581879163)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113232603160.png)]
案例3:查找整个linux系统下大于20m的文件(+n大于 -n小于 n等于 )
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-06RnQOxn-1642581879163)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113232911007.png)]
locaate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的这件。Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。
基本语法:【locate 搜索文件】
特别说明:由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。
应用实例:案例1:请使用locate指令快速定位hello.txt文件所在目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y34yYA9J-1642581879163)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113234230569.png)]
grep过滤查找,管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
基本语法:【grep [选项] 查找内容源文件】
常用选项
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Fr8BfT5q-1642581879164)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113234541397.png)]
应用实例:案例1:请在hello.txt文件中,查找“yes”所在行,并且显示行号
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2qcNpFOa-1642581879164)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113234805201.png)]
gzip用于压缩文件,gunzip用于解压的·
基本语法:gzip文件(功能描述:压缩文件,只能将文件压缩为*.gz文件)
gunzip文件.gz(功能描述:解压缩文件命令)
应用实例
案例1: gzip压缩,将/home下的hello.txt文件进行压缩
案例2: gunzip压缩,将/home下的 hello.txt.gz 文件进行解压缩
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aeAIRWO3-1642581879164)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220113235352560.png)]
zip用于压缩文件,,unzip用于解压的,这个在项目打包发布中很有用的
基本语法
【zip[选项] xxX.zip 将要压缩的内容】(功能描述:压缩文件和目录的命令)
【unzip [选项] XXX.zip】 (功能描述:解压缩文件)
zip常用选项:-r:递归压缩,即压缩目录
unzip的常用选项:-d<目录>:指定解压后文件的存放目录
应用实例
案例1:将/home下的所有文件进行压缩成mypackage.zip
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zB3rjBQV-1642581879165)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114000041552.png)]
案例2:将 mypackge.zip解压到/opt/tmp目录下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qlKBk7La-1642581879165)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114000217673.png)]
tar指令是打包指令,最后打包后的文件是.tar.gz的文件。
基本语法【tar [选项] XXX.tar.gz 打包的内容】(功能描述:打包目录,压缩后的文件格式.tar.gz)
选项说明
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-acIZVSbp-1642581879165)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114000647391.png)]
应用实例
案例1:压缩多个文件,将/home/a1.txt和/home/a2.txt压缩成a.tar.gz
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kgAhsgMn-1642581879166)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114001041632.png)]
案例2:将/home的文件夹压缩成myhome.tar.gz
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6KpUEqD8-1642581879166)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114001229382.png)]
案例3:将a.tar.gz解压到当前目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lWimwDkH-1642581879166)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114001444632.png)]
案例4将myhome.tar.gz解压到/opt/tmp2自录下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GCDk0YyP-1642581879166)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114001648270.png)]
在Linux中的每个用户必须属于一个组,不能独立于组外。在Linux中的每个文件有所有者,所在组,其他组的概念。
1)所有者
2)所在组
3)其他组
4)改变用户所在组
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bInSTK18-1642581879167)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114213640674.png)]
一般为文件的创造者,谁创建了该文件,就自然的成为该文件的所有者
指令:【ls -ahl】
应用实例:创建一个组police,在创建一个用户tom,将tom放在police组里,然后用tom创建一个文件ok.txt,查看情况如何
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VtwsYPRR-1642581879167)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114214632831.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Lpt5UA5p-1642581879167)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114214654324.png)]
指令:【chown 用户名 文件名】
应用实例:使用root创建一个文件apple.txt,然后将其所有者修改为tom
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-28f59OFV-1642581879167)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114215107343.png)]
基本指令
【groupadd 组名】
应用实例
创建一个组,monster
创建一个用户fox,并放入monster
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e1qFOqr8-1642581879168)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114215535966.png)]
基本指令
【chgrp 组名 文件名】
应用实例
使用root创建文件orange.txt,看看当前文件属于哪个组,然后修改到police
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ab18Uj9I-1642581879168)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114220114084.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CFEWV3uI-1642581879174)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114220157044.png)]
除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组
在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在组
创建一个土匪组(bandit)将tom从原来的police修改为土匪组
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FTwHFlph-1642581879175)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114221425605.png)]
ls -s 中显示的内容如下:
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
0-9为的说明:
1)第0位确定文件类型(d,-,l,c,b)
2)第1-3位确定文件所有者的文件权限。----User
3)第4-6位所在同组其他用户的权限。----Group
4)第7-9位确定其他组用户对文件的权限----Other
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5QrX2aWR-1642581879175)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114222700625.png)]
[ r ]代表可读(read):可以读取,查看
[ w ]代表可写(write):可以修改,但是不代表可以删除该文件删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件.
[x ]代表可执行(execute):可以被执行
[ r ]代表可读(read):可以读取,ls查看目录内容
[ w ]代表可写(write):可以修改,目录内创建+册删除+重命名目录
[ x ]代表可执行(execute):可以进入该目录
通过chmod指令,可以修改文件或者目录的权限
u:所有者g:所有组o:其他人a:所有人(u、g、o的总和)
案例演示
给abc文件的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4ViPF9YC-1642581879175)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114224557548.png)]
给abc文件的所有者除去执行的权限,增加组写的权限
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o2aE4xxD-1642581879176)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114224724236.png)]
给abc文件的所有用户添加读的权限
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SrXZbRR1-1642581879176)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114224917569.png)]
【chown newowner file】改变文件的所有者
【chown newowner:newgroup file 】改变用户的所有者和所有组
-R如果是目录则使其下所有子文件或目录递归生效
请将/home/abc.txt文件的所有者修改成tom
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2vaEnCvx-1642581879176)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114225743915.png)]
请将/home/kkk目录下所有的文件和目录的所有者都修改成tom(使用root)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-izBbGgJ3-1642581879176)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114230108074.png)]
【chgrp newgroup file】改变文件的所有组
请将/home/abc.txt文件的所在组修改成bandit(土匪)
chgrp bandit /home/abc.txt
请将/home/kkk目录下所有的文件和目录的所在组都修改成bandit(少林)
chgrp -R bandit /home/kkk
police,bandit
jack,jerry:警察
xh,xq:土匪
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NWfsXANP-1642581879177)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114233000070.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wapliZvq-1642581879177)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220114233049122.png)]
crontab进行定时任务的设置
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yGefqGz1-1642581879177)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116134750505.png)]
任务调度:是指系统在某个时间执行特定的命令或者程序。
任务调度分类:
【crontab [选项]】
选项 | 功能 |
---|---|
-e | 编辑crontab定时任务 |
-l | 查询crontab任务 |
-r | 删除当前用户所有的crontab任务 |
任务要求:
五个占位符的说明
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mAxyJh80-1642581879177)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116140906505.png)]
特殊符号说明
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ns1mb3KM-1642581879178)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116141053632.png)]
特定时间执行案例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8KI0j0uN-1642581879178)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116141200464.png)]
案例一:每隔1分钟,就将当前的日期信息,追加到/tmp/mydate文件中
先编写一个文件/home/mytask1.sh
data >> /tmp/mydate
给mytask1.sh一个可执行权限
crontab -e
*/1 * * * * /home/mytask1.sh
案例二:每隔1分钟,就将当前日期和日历追加到/home/mycal文件中
先编写一个文件/home/mytask2.sh
data >> /tmp/mydate
cal >> /tmp/mycal
给mytask2.sh一个可执行权限
crontab -e
*/1 * * * * /home/mytask2.sh
案例三:每天凌晨2:00将mysql 数据testdb,备份到文件中mydb.bak
先编写一个文件/home/mytask3.sh
/user/local/mysql/bin/mysqldump -u -root -proot testdb > /tmp/mydb.bak
给mytask3.sh一个可执行权限
crontab -e
0 2 * * * /home/mytask3.sh
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2nkeZYZd-1642581879178)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116210920129.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gvMCwPOE-1642581879179)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116211026687.png)]
需求是给Linux系统增加一块新的硬盘,并且挂载到/home/newdisk目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XJPsjQvg-1642581879179)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116214611079.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aoEB5pRT-1642581879179)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116221749175.png)]
基本语法
【du -h /目录】
查询指定目录的磁盘占用情况,默认位当前目录
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
–max-depth=1 子目录深度
-c 列出明细的同时,增加汇总量
应用实例
查询/opt目录的磁盘占用情况。深度为1
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oMDBeZM9-1642581879180)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116222424956.png)]
统计/home文件夹下文件的个数
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LRzp08sQ-1642581879180)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116223013612.png)]
统计/home文件夹下目录的个数
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-svz0pnM6-1642581879180)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116223037378.png)]
统计/home文件夹下文件的个数,包括子文件夹里的
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wgJspE7P-1642581879181)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116223115740.png)]
统计文件夹下目录的个数,包括子文件夹里的
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rxJ1kzug-1642581879181)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116223132916.png)]
树状显示目录结构
目前我们采用的是nat网络配置
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7U6qEPJ6-1642581879181)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116230158030.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o4aH6PpG-1642581879181)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116230430993.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qRstHZSE-1642581879181)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116230600113.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xWc4VTZN-1642581879182)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116230751369.png)]
【ping 目的主机 】(功能描述:测试当前服务器是否可以连接目的主机)
测试当前服务器是否可以连接百度
[root@hadoop100 桌面]# ping www.baidu.com
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r4fCNFhv-1642581879182)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116231745919.png)]
缺点:每次自动获取的ip地址不一样,不适用于做服务器
说明
直接修改配置文件来指定IP,并可以连接到外网(程序员推荐),编辑 vim /etc/sysconfig/network-scripts/ifcfg-eth0,要求:将ip地址配置的静态的,ip地址为192.168.184.130
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4NjxM3IJ-1642581879182)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220116232923272.png)]
查看进行使用的指令是【ps】一般说使用的参数是【ps -aux】
ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。
可以不加任何参数
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V2pUo6Hh-1642581879182)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117222250203.png)]
指令:ps –aux|grep xxx ,比如我看看有没有sshd服务
指令说明
System V展示风格
USER:用户名称
PID:进程号
%CPU:进程占用CPU的百分比
%MEM:进程占用物理内存的百分比
VSZ:进程占用的虚拟内存大小(单位:KB)
RSS:进程占用的物理内存大小(单位:KB)
TT:终端名称,缩写 .
STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通
优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
STARTED:进程的启动时间
TIME:CPU时间,即进程使用CPU的总时间
COMMAND:启动进程所用的命令和参数,如果过长会被截断显示
要求:以全格式显示当前所有的进程,查看进程的父进程。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dwmHChGI-1642581879183)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117223857730.png)]
若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该
进程。使用kill命令来完成此项任务。
kill [选项] 进程号(功能描述:通过进程号杀死进程)
killall 进程名称(功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
-9 :表示强迫进程立即停止
最佳实践:
案例1:踢掉某个非法登录用户
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IH8yxWo6-1642581879183)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117224643122.png)]
案例2: 终止远程登录服务sshd, 在适当时候再次重启sshd服务
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lPUNPrFr-1642581879183)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117224945474.png)]
案例3: 终止多个gedit 编辑器
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D2txgrYZ-1642581879184)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117225136528.png)]
案例4:强制杀掉一个终端
pstree [选项] ,可以更加直观的来看进程信息
-p :显示进程的PID
-u :显示进程的所属用户
应用实例
案例1:请你树状的形式显示进程的pid
案例2:请你树状的形式进程的用户id
服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。
【service 服务名 [start | stop | restart | reload | status]在CentOS7.0后 不再使用service ,而是 systemctl】
查看当前防火墙的状况,关闭防火墙和重启防火墙。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l5YxfPWQ-1642581879184)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117230224095.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i6LiEShJ-1642581879184)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117230258353.png)]
13.5.5 查看服务名
查看或者修改默认级别: vi /etc/inittab
Linux系统有7种运行级别(runlevel):常用的是级别3和5
介绍
通过chkconfig 命令可以给每个服务的各个运行级别设置自启动、关闭
基本语法
查看服务 chkconfig --list|grep xxx
chkconfig 服务名 --list
chkconfig --level 5 服务名 on/off
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m1jzZYb9-1642581879184)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117234425567.png)]
chkconfig重新设置服务后自启动或关闭,需要重启机器reboot才能生效
top与ps命令很相似。它们都用来显示正在执行的进程。Top与ps最大的不同之处,在于top
在执行一段时间可以更新正在运行的的进程。
【top [选项]】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-esk6GTxE-1642581879185)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117234816079.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yfNpc4AU-1642581879185)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220117234846321.png)]
案例1.监视特定用户
top:输入此命令,按回车键,查看执行的进程。
u:然后输入“u”回车,再输入用户名,即可
案例2:终止指定的进程。
top:输入此命令,按回车键,查看执行的进程。
k:然后输入“k”回车,再输入要结束的进程ID号
案例3:指定系统状态更新的时间(每隔10秒自动更新,默认3秒):
bash > top -d 10
基本语法
netstat [选项]
选项说明
-an 按一定顺序排列输出
-p 显示哪个进程在调用
应用案例
请查看服务名为 sshd 的服务的信息。
一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的。
Linux的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标准了。
查询已安装的rpm列表 【rpm –qa|grep xx】
一个rpm包名:firefox-45.0.1-1.el6.centos.x86_64.rpm
名称:firefox
版本号:45.0.1-1
适用操作系统: el6.centos.x86_64
表示centos6.x的64位系统
如果是i686、i386表示32位系统,noarch表示通用。。
rpm -qa :查询所安装的所有rpm软件包
rpm -qa | more
rpm -qa | grep X [rpm -qa | grep firefox ]
rpm -q 软件包名 :查询软件包是否安装
rpm -q firefox
rpm -qi 软件包名 :查询软件包信息
rpm -qi file
rpm -ql 软件包名 :查询软件包中的文件
rpm -ql firefox
rpm -qf 文件全路径名 查询文件所属的软件包
rpm -qf /etc/passwd
rpm -qf /root/install.log
基本语法
【rpm -e RPM包的名称 】
应用案例
删除firefox 软件包
细节讨论
如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息。
如: $ rpm -e foo
removing these packages would break dependencies:foo is needed by bar-1.0-1
如果我们就是要删除 foo这个rpm 包,可以增加参数 –nodeps ,就可以强制删除,但是一
般不推荐这样做,因为依赖于该软件包的程序可能无法运行
如:$ rpm -e --nodeps foo
基本语法
rpm -ivh RPM包全路径名称
参数说明
i=install安装
v=verbose 提示
h=hash 进度条
应用实例
演示卸载和安装firefox浏览器
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Hzd3pdpw-1642581879185)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118002028197.png)]
Yum 是一个Shell前端软件包管理器。基于RPM包管理,能够从指定 的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并 且一次安装所有依赖的软件包。
查询yum服务器是否有需要安装的软件
yum list|grep xx软件列表
安装指定的yum包
yum install xxx 下载安装
案例:请使用yum的方式来安装firefox
先查询firefox rpm在yum服务器上有没有
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-czB6oDjr-1642581879186)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118003911800.png)]
安装
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-knYtHybf-1642581879186)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118004056032.png)]
如果需要在Linux下进行JavaEE的开发,我们需要安装如下软件:
示意图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KOwSoKks-1642581879186)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118130708488.png)]
先将软件通过xftp5 上传到 /opt 下
解压缩到 /opt
配置环境变量的配置文件vim /etc/profile
JAVA_HOME=/opt/jdk1.7.0_79
PATH=/opt/jdk1.7.0_79/bin:$PATH
export JAVA_HOME PATH
编写一个简单的Hello.java 输出"hello,world!"
在windows、Linux 下 访问 http://linuxip:8080
1.在 /use/local下 创建mysql文件夹
mkdir mysql
2.切换到mysql文件夹下
cd mysql
3.下载mysql
```wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz``
也可以直接在官方下载最新版本 官方下载 选择linux
4.解压mysql
tar xvJf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
5.重命名文件夹
mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql-8.0
5.创建data文件夹 存储文件
mkdir data
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Frigc80s-1642581879187)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118221926552.png)]
6.创建用户组以及用户和密码
groupadd mysql
useradd -g mysql mysql
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pIZYNkA3-1642581879187)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118221936065.png)]
7.授权用户
chown -R mysql.mysql /usr/local/mysql-8.0
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oTxua4EH-1642581879187)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118221944953.png)]
8.切换到bin目录下
cd bin
9.初始化基础信息
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B7hWTYbB-1642581879187)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118222002802.png)]
得到临时密码
10.编辑my.cnf文件
vi /etc/my.cnf
注释mysqld_safe 修改信息
basedir=/usr/local/mysql-8.0/
datadir=/usr/local/mysql-8.0/data/
socket=/tmp/mysql.sockcharacter-set-server=UTF8MB4
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GQ8RkGHw-1642581879187)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118221707773.png)]
11.添加mysqld服务到系统
cp -a ./support-files/mysql.server /etc/init.d/mysql
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dHTNLByd-1642581879188)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118222031193.png)]
12.授权以及添加服务
chmod +x /etc/init.d/mysql
chkconfig --add mysql
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2y8RRa51-1642581879188)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118222043001.png)]
13.启动mysql
service mysql start
14.查看启动状态
service mysql status
15.将mysql命令添加到服务
ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin
16.登录mysql mysql -uroot -p 密码使用之前随机生成的密码
17.修改root密码 其中123456是新的密码自己设置
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
18.执行 使密码生效
flush privileges;
19.选择mysql数据库
use mysql;
20.修改远程连接并生效
update user set host='%' where user='root';
flush privileges;
步骤:
在windows下使用idea编写SpringBoot项目,运行端口为9002
使用Maven工具将项目package,打包成jar包
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oWjw5f7k-1642581879188)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118225248495.png)]
使用Xftp将打包好的jar包发送到Linux系统上
将端口号9002从防火墙中放行
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z1r125b0-1642581879188)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118225522834.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RGFLVxP1-1642581879189)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118225638361.png)]
重启防火墙服务
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8UP9Wnxc-1642581879189)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118225734200.png)]
Linux命令运行java -jar 发送的jar包名称
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EfatiKUt-1642581879189)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118230346435.png)]
运行成功,在windows系统访问http://LinuxIp地址/端口号(9002)/项目名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sMJO21kY-1642581879189)(C:\Users\Rotry\AppData\Roaming\Typora\typora-user-images\image-20220118230403882.png)]
注意:
在使用maven打包的时候需要在pom.xml文件里加入
<plugins>
<plugin>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-maven-pluginartifactId>
plugin>
<plugins>