CentOS+Nginx服务器常用的命令

文章归档 许多多 3年前 (2021-01-27) 2577次浏览 扫描二维码
文章目录[隐藏]

最近因为某些原因需要使用CentOS服务器,但是我之前从来没有接触过CentOS,用惯了Windows的图形界面真的是看到Linux这种全靠命令行操作的东西就头大,还要有万能的搜索。

这次需要解决的问题是,某台CentOS服务器上放着一个PHP的网站程序,现在需要将它打包下载下来。但是因为之前的技术走的时候没有交接清楚,现在不知道WEB环境是什么、不知道程序存放的路径、不知道绑定了哪些域名……

解决思路:查询WEB环境及版本、查看WEB环境的配置文件查看存放的路径和绑定的域名、打包并下载。

下面是在操作以及搜索的过程中使用到的命令:

0、检查服务器系统版本

cat /etc/redhat-release

0.1、检查服务器的WEB环境

Apache

find / -name httpd.conf

Nginx

find / -name nginx.conf

PHP

find / -name php.ini

MySQL数据库

find / -name my.cnf

运行上面的命令会就可以查看对应的信息了,如果运行上面的命令后没有返回任何结果,那就说明服务器里没有相应的环境。我因为不知道这台服务器到底是用的什么WEB环境,所以只能上面的每一条都运行一下来查询。

用这个方法之后,最后确定这台服务器的WEB环境是Nginx+PHP+MySQL,接下来就要查Nginx的配置环境来看网站存放在什么目录,以及都绑定了哪些域名了,

1、找到Nginx的配置文件

首先要找到Nginx配置文件的路径

nginx -t

有的可以直接用这个命令得到Nginx的配置文件路径,也不知道为什么,有的服务器上用上面这个命令会无效,返回“nginx: command not found”。

所以我就用了下面两个find查找的命令,Linux服务器查找文件的速度还挺快。但这种方法可能会找出来很多文件、文件夹,需要再去查看.conf的配置文件。

find / -name nginx

查找所有Nginx的文件夹路径,某些奇葩的配置可以通过路径的文件夹名能大概的猜到是不是网站目录了,比如文件夹名是www这种,甚至有的人文件夹名直接就是域名的。

find / -name *.conf

查找所有后缀为.conf的文件,这个方法比较笨,但也比较有效。这样可以会列出来所有的配置文件,但也可能会有很多,就需要靠经验去判断哪个是Nginx的配置文件了,一般Nginx的配置文件路径上都会有一个Nginx的文件夹。

2、查看文件内容

打开Nginx配置文件并查找绑定的域名及对应的目录

cat -n <文件路径>

这个命令是打开文件的意思,打开Nginx配置文件之后就可以看到端口、域名、WEB目录等信息了。

但是如果这个配置文件里的最后有include参数,类似于

include vhost/*.conf

说明这个服务器上用了虚拟化绑定了多个域名和网站,那就需要再打开这些配置文件看了。

3、打开文件对应目录关系

ls -l -R <目录路径>

列出该路径下的所有文件夹和目录的详细资料(路径以/开头,末尾不用/,文件很多的慎用)

ls -F <目录路径> |grep /$

只列出目录里面的文件夹(路径以/开头,末尾不用/)

计算当前目录下的文件数和目录数

文件个数

ls -l * |grep "^-"|wc -l

目录个数

ls -l * |grep "^d"|wc -l

4、修改文件内容并保存

vim <文件路径>

输入上面命令后即可进入修改文件模式,输入以上命令后,需要先按“ESC” 键进入命令模式,然后输入“:” 进入末行模式才能进行编辑。

编辑时的操作方法为

  • :q 是直接退出;
  • wq 保存后退出;
  • :q! – 不保存内容, 强制退出。

5、将网站目录打包,并下载

使用tar压缩:

tar -czvf <压缩包命名,以.tar.gz结尾> <要打包的文件/文件夹路径>

最后压缩包一般保存在root目录,也可以用find名称查询具体存放在哪个目录。压缩方式也可以使用zip将文件压缩成zip的压缩包,具体命令自行搜索。

下载文件:

sz <文件路径>

这个方法下载文件只能下载4G以内的文件(如果无效需要检查是否有安装rz,没有安装rz的话需要先安装rz,安装方法自行搜索。sz,只能传输4G以内的文件)。

如果文件大小超过4G,可以使用Xshell的“新建文件传输功能”(快捷键:Ctrl+Alt+F,在工具栏处有个绿色的文件传输标志),然后用下面的命令即可

get <文件路径>

以上两种文件下载方式,都支持同时下载多个文件,只要在命令行里输入多个要下载的文件路径即可(多个文件用空格隔开)。

6、启动Nginx

6.1、通过路径启动,例如路径在/usr/local/nginx/sbin/nginx

启动

/usr/local/nginx/sbin/nginx

平滑重载

/usr/local/nginx/sbin/nginx -s reload

重启

/usr/local/nginx/sbin/nginx -s restart

停止

/usr/local/nginx/sbin/nginx -s stop

6.2、通过系统命令启动

启动Nginx

systemctl start nginx.service

重载Nginx

systemctl reload nginx.service

重启nginx

service nginx restart

停止Nginx

systemctl stop nginx.service

查看Nginx的状态及进程与端口(启动后)

systemctl status nginx.service

7、其他命令

查看80端口被哪个服务占用

netstat -antp | grep :80

查看所有端口占用情况

netstat -antp | grep :

查看Nginx进程运行状态

ps aux | grep nginx

查看Nginx版本

nginx -V

许多多 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:CentOS+Nginx服务器常用的命令
喜欢 (359)
[iyaopeng@qq.com]
分享 (0)
许多多
关于作者:
中年秃头运营。