服务器用的时间长了总会出些问题,需要解决。在此将比较常用的几个命令贴出来,以便自己及小伙伴们查阅。
在此说一下我用的服务器版本:(阿里云服务器)
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core) Release: 7.4.1708
Codename: Core
一般情况下,网站(PHP后端)突然无法打开可以尝试重启服务
1.服务器重启命令:reboot
2.php-fpm重启命令:service php-fpm restart
使用nginx的服务器,有时候网站配置后,出现ngnix报错可以先检查下网站的Nginx配置文件是否出现错误,然后针对错误详情找出解决办法
1.检查nginx语法 : nginx -tc 目录/配置文件.conf
例子:nginx -tc /etc/nginx/nginx.conf
文件解、压缩
1.压缩打包命令:tar -zcvf /data/wwwroot/###.tar.gz 目标文件夹名
2.解压命令:tar -xzvf file.tar.gz
例子:
(将abc文件夹打包压缩为abc.tar.gz):tar -zcvf /data/wwwroot/abc.tar.gz abc
(将abc.tar.gz解压) tar -xzvf abc.tar.gz
服务器之间拷贝文件
1.将文件拷贝到另一台服务器:
scp /data/wwwroot/666.tar.gz root@111.11.11.111:/data/wwwroot/
2.从另一台服务器拷贝文件:
scp root@222.22.22.222:/data/wwwroot/weixin.tar.gz /data/wwwroot
数据库导出(mysqldump命令)
导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u linuxde -p data > 目录/linuxde.sql
导出一个表
mysqldump -u 用户名 -p 数据库名 表名 > 导出的文件名
mysqldump -u linuxde -p data users > linuxde_users.sql
基本命令格([xxx]中的内容根据实际情况改动)
mysqldump -u [username] -p -d [databaseName] [tableName] >
[路径及导出的sql文件名];
1、导出数据库dbname的表结构
mysqldump -u root -p -d dbname >db.sql;
2、导出数据库dbname所有表结构及表數據(不加-d)
mysqldump -u root -p dbname >db.sql;
3、导出数据库dbname某张表的结构
mysqldump -uroot -pdbpasswd -d dbname test>db.sql;
4、导出数据库dbname某张表(test)结构及表数据(不加-d)
mysqldump -u root -p dbname test>db.sql;
mysql开启远程连接>>>详细解答
关闭防火墙
centos从7开始默认用的是firewalld,这个是基于iptables的,虽然有iptables的核心,但是iptables的服务是没安装的。所以你只要停止firewalld服务即可:
sudo systemctl stop firewalld.service && sudo systemctl disable firewalld.service
如果你要改用iptables的话,需要安装iptables服务:
sudo yum install iptables-services
sudo systemctl enable iptables && sudo systemctl enable ip6tables
sudo systemctl start iptables && sudo systemctl start ip6tables
搜索文件,查看文件内容
find . -name ‘srm*’ #表示当前目录下查找文件名开头是字符串‘srm’的文件
grep -A 5 foo file 显示file文件里匹配foo字串那行以foo及后5行
grep -B 5 foo file 显示file文件里匹配foo字串那行以foo及前5行
grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行
1、查看最后1000行的数据
cat filename | tail -n 1000
2、查看1000到3000行的数据
cat filename | head -n 3000 | tail -n +1000
注:管道符的作用 | 将前面的结果作为后面结果的输出。
3、打印文件所有内容
cat filename
4、打印文件最后1000行的数据
tail -n 1000
5、打印文件第1000行开始以后的内容
tail -n +1000
6、打印前1000的内容
head -n 1000
7、显示1000到300行的数据
sed -n ‘1000,3000p’ filename
创建软连接(ln -s 命令)
具体用法:ln -s 源文件 软连接的位置
例:安装maven后直接使用mvn会出现 -bash: mvn: command not found的错误,这就需要增加一个软连接:
ln -s /home/maven/bin/mvn /usr/bin/mvn
执行完,即可使用mvn命令。
查看服务器硬件资源信息
内存:free -m
total used free shared buff/cache available
Mem: 31912(总内存 单位:M)9888(已使用)14859(空余) 99 7164 21670
Swap: 11447 0 11447
硬盘:df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/cl-root 50G 42G 8.4G 84% /
/dev/mapper/cl-home 49G 2.4G 47G 5% /home
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 82M 16G 1% /run
负载:top(进入后 按Q键退出) 或者 w (此处使用w)
16:40:08 up 3 days, 7:15, 3 users, load average: 0.70, 0.21, 0.13
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 43.254.221.110 Mon09 0.00s 0.03s 0.00s w
root pts/2 43.254.221.110 Tue15 2days 0.00s 0.00s -bash
root pts/3 43.254.221.110 Tue15 47:45m 0.02s 0.02s -bash
load average 后的三个值表示最近一分钟、最近五分钟、最近15分钟的负载。若接近1,服务器就满负荷运载了。
查看cpu信息:cat /proc/cpuinfo
linux终端发送消息
使用w, who, who am i 命令查出对应终端, 然后使用如下命令发送
tty指令:查看当前使用设备
echo hello > /dev/pts/8 :向/dev/pts/8设备用户发送hello消息
wall hello :向所有用户发送hello消息