Linux常用命令和系统中项目部署(保姆级教程)#Linux

468 阅读9分钟

Linux常用命令

1.查看目录内容--ls

环境:查看目录内容时

格式:ls [-lah(选项)] [文件或目录]

-l:以列表方式详细显示内容信息

-a: 显示所有文件,包含隐藏文件及目录

-h: 配合-l显示出文件的大小

通配符

*: 表示0到多个任意字符

? : 表示一个任意字符

[abcd] :表示可以匹配a、b、c、d中的任何一个字符

[a-z] :匹配从a到z范围内的的任意一个字符

2.切换目录--cd

格式:cd 目录或文件名

cd或者cd~:切换到当前用户的主目录

cd.:切换到当前目录

cd..:切换到上一级目录

cd-:切换到上一次所在的目录

3.创建文件--touch

格式:touch 文件名

4.创建目录--mkdir

格式:mkdir 目录名称

可以跟上 -p 选项,实现多个级层目录创建

5.删除文件或目录--rm

格式:rm 选项(-ifr) 目录或文件名

-i:测试前会提示

-f:删除前不会提示

-r:删除文件及文件夹以下所有的内容

6.复制文件或者目录--cp

格式:cp 原文件 目标文件

7.移动文件或目录--mv

格式:mv 原文件 目标文件

8.查看文件命令--cat、more、grep

cat 文件名: 适用于查看较少内容的文件

more 文件名: 适用于查看内容较多的文件,用于分屏显示文件内容

空格键:下一页 , b:上一页 , q:退出

grep 文件名: 适用于查看内容较多的文件,用于搜索文件内容

^a : 搜索行首内容以a文本开头的行

ke$: 搜索行尾内容以ke文本结尾的行

[Ss]igna[Ll]: 匹配[]中的任意一个字符,搜寻匹配单词为 SignaL、Signal、signaL、signal的行

9.重定向>、>>

执行的结果传递给文件中

格式:执行结果(屏幕展示内容)> >>指定保存的文件

10.管道符--|

一个命令的输出结果可以通过管道符做为另一个命令的输入

格式:输出结果 | 额外处理

more : 分屏显示执行结果

grep : 通过grep过滤执行结果的内容

信息系统相关命令

1.关机命令---shutdown

shutdown –r now :重新启动操作系统,shutdown会给别的用户提示

shutdown -h now : 立刻关机,其中now相当于时间为0的状态

shutdown -h 20:25 :系统在今天的20:25 会关机

shutdown -h +10 :系统再过十分钟后自动关机

2.查看系统进程--ps

场景:当某一个程序卡死时,需要将其进程杀死,那么首先要查到他的进程号

格式:ps -aux

-a : 显示终端上的所有进程,包括其他用户的进程

-u : 显示进程的详细状态

-x :显示没有控制终端的进程

ps命令一般会结合 grep使用,来查找特定应用程序的进程

ps –aux|grep 程序名

3.查看系统进程--top

场景::1.性能测试过程中,监控软件的服务器资源占用情况

2.当服务器运行缓慢,查看当前程序的服务器资源占用情况,确认是否将使用高的进程

给杀死

格式:top

M :根据内存的大小降序显示进程信息

P :根据CPU使用率大小降序显示进程信息

q : 退出top命令 或者按 ctrl+c也可以退出

4.关闭进程号--kill

使用场景:某一个软件(系统)卡死,需要将其进程杀死

命令:kill -9 进程号

5.查看系统监听端口--netstat

使用场景:查看某一个程序在服务器中运行时的端口号(访问某一个程序时,需要设置端口号)

命令:netstat -anp

6.查看系统监听端口--losf

使用场景:启动服务器中某一个程序,发现启动失败。查看其中程序使用的默认端口号是否被占用

httpd(http协议):80

mysql:3306

https协议:443

命令:lsof -i:端口号

7.查看日志信息命令--head

使用场景:开启文件,在系统中复现BUG,获取系统日志信息。将信息发给开发就可以进行问题定位

实时查看日志:tail -f 文件名

tail –f 文件名 | grep 关键字 实时显示日志并过滤关键字

用户权限和管理

1.查看权限

命令格式:ls -l 目录名称

权限分类

读:r--4

写:w--2

执行:x--1

角色分类:

拥有者:创建该文件/目录的人(角色)

组权限:拥有者所在分组的其他用户

其他用户:与拥有者不在同一个组的其他角色

类型

文件(-)

目录(d)

软连接(l)

2.修改权限

使用场景:测试环境部署项目时,将项目的安装包放入到Linux服务器之后,需要设置权限。不然没有办法完成数据的读、写、执行

命令格式:chmod 权限数字 文件名

注:更改目录下所有文件的权限,加入选项 -R

3.用户管理

使用场景:公司中,每一个linux服务器账号都有对应的权限。如果你的账号操作某一个程序/文件

没有权限,要么申请权限,要么换一个有权限的账号

查看当前用户:whoami

切换用户:su 用户名

4.用户退出

命令:exit

注意:如果切换过用户,那么退到上次切换前的用户

其他常用命令

1.查找指定文件

使用场景:进行环境部署时,将安装包解压之后需要针对某一个配置文件进行修改,但找不到该文件时,使用Linux提供查询文件的命令

命令格式:fifind 路径 -name 查找文件/目录名称

2.软连接--ln -s

命令格式: ln -s 源文件 链接文件

3.打包和解包

打包命令:tar -cvf 打包名称.tar 被打包的文件/路径

-c:create创建

-v:进度

-f:fifiles文件

强调:f选项,必须放在最后面

解包命令(解在当前目录):tar -xvf 打包的名称.tar

解包命令(解在指定目录):tar -xvf 打包的名称.tar -C 路径名称

注意:选项C必须大写

4.压缩和解压缩

gzip

压缩命令:tar -zcvf 压缩名称.tar.gz 被压缩的文件/路径

解压缩文件到当前目录:tar -zxvf 压缩包的名称.tar.gz

解压缩文件到指定目录:tar -zxvf 压缩包的名称.tar.gz -C 路径名称

zip

压缩命令:zip -r 压缩名称.zip 被压缩的文件/路径

解压缩文件:unzip -d 解压后的目录 压缩包的名称.zip

vi编辑器

目标:打开文件,编辑文件,保存文件

  1. 使用vi编辑器打开文件:vi 文件名

注意:文件名必须带上后缀,不然编辑的就是全新的文件

  1. 编辑文件:
  2. 默认不能编辑。因为默认的模式是命令模式,只能写命令
  3. 按a/i/o,进行"插入(insert)"模式,这时候才可以编辑
  4. 保存文件
  5. 按"exc"退出插入模块
  6. 进入末行模式:按键"shit"加上":"
  7. 末行模式中输入:

wq:保存后退出

q!:不保存直接退出

Linux系统中项目部署

1.项目部署前的准备工作

-安装服务器操作系统——Linux

-安装项目运行需要的软件

软件安装套装连接:lnmp.org/auto.html image.png

2.软件状态检查

  • 检查软件是否安装成功,版本号是否与要求一致
MySQL:mysql --version
Nginx:nginx -v
PHP:php -v

image.png

3.检查软件服务是否正常启动

MySQL:systemctl status mysqld
Nginx:systemctl status php-fpm
PHP:systemctl status nginx

image.png

----异常情况处理----

1.程序服务无法正常启动

重启服务:服务名称 restart
关闭服务:服务名称 stop
开启服务:服务名称 start

2.服务启动、运行过程中,卡死情况

a.查看服务的进程号
	ps -aux  |  grep  服务名称
b.结束该服务的进程
	kill  -9   进程号
            

3.安装、启动服务时,提示端口号被占用

a.查看占用端口号的程序名称
	lsof  -i:端口号

4.访问、设置服务程序时(远程工具连接MySQL),需要获取服务端口号

netstat -anp | grep 程序名称

4.上传项目包

1.切换到指定目录
	cd  指定路径
2.查看当前目录地址是否正确
	pwd
3.文件上传
	rz
4.确认文件上传是否成功
	ls -l

5.解压并修改权限

1.将压缩文件进行解压-zip
	原始解压命令:unzip  -d  ./   压缩文件.zip
	简化命令:unzip  压缩文件.zip
 2.将解压后目录下的所有文件和目录修改权限为满权限
	chmod  -R  777  解压后目录名称
3.确认权限修改成功
	ls  -l   目录地址

6.修改文件并重启服务

1.找到修改文件
	find  /  -name  配置文件名称
2.切换到文件所在目录
	cd  。。。。
3.删除配置文件
	rm  -rf   配置文件名称
4.上传配置文件	
	rz
5.重启服务(重启服务器)
	shutdown  -r   now
6.查看Nginx启动状态
	systemctl  status  程序服务名称

7.异常处理:配置完成之后查看Nginx状态异常处理

image.png 异常产生的原因: 原因是Nginx 启动时 PID 文件并未生成,导致文件无法读取

处理方法: 在 /usr/lib/systemd/system/nginx.service 中添加如下语句即可,作用是在执行可执行文件前等待 0.1s

ExecStartPost=/bin/sleep 0.1
初始化数据库
  • 在浏览器中输入虚拟机ip地址,然后在可视化界面完成项目的数据初始化
确认项目部署成功
  • 前台商城系统URL:http://虚拟机ip地址/index.php
  • 后台管理系统URL:http://虚拟机ip地址/index.php/Admin/Admin/login.html

就是这么简单,还不会把电脑拿过来手把手教你