[Linux] 常用服务器命令(持续更新)

文件操作

# 显示文件系统的磁盘空间使用情况
df -h

全局查找文件

find / -type f -iname "java"


find / -name 'libncurses*'

拷贝整个文件夹

cp -r /home/a/ /home/b/ 

解压,撤销解压

撤销zip解压
zipinfo -1 path/xx.zip | xargs rm -rf
撤销tar解压
tar -tf xx.tar | xargs rm -rf

创建软连接(快捷方式)

创建一个软连接

将/data/logs文件夹,创建一个快捷方式到/logs中,从此存放在/logs的文件,真实的存储地址是/data/logs

bash 复制代码
ln -s /data/logs /

查看软连接

因为logs在/目录下进行的软连接,故这样查看

bash 复制代码
ls -l /

删除软连接

bash 复制代码
rm /logs

查看实时日志

tail -f log_info.log

查找日志文件

cat log_info.log | grep -C 10 '名称'

系统

查看系统内核

less /proc/version

uname -a

# 只查看发行版信息
lsb_release -a

查看系统版本

# 检查当前 CentOS 系统版本
cat /etc/redhat-release
# 检查当前 CentOS 系统内核版本
uname -sr

配置相关

# 查看硬盘文件系统
df -h

# cpu信息
cat /proc/cpuinfo
# cpu型号
cat /proc/cpuinfo | grep name | sort | uniq

# CPU 的配置
lscpu
得到如下结果:
  Architecture:          x86_64
  CPU op-mode(s):        32-bit, 64-bit
  Byte Order:            Little Endian
  CPU(s):                4
  On-line CPU(s) list:   0-3
  Thread(s) per core:    2
  Core(s) per socket:    2
  Socket(s):   					 2
  
  2个cpu(Core(s) per socket)
  4个CPU核心(CPU(s):)
  支持超线程(Thread(s) per core)

# 直接查看总核心数
nproc --all


# 内存总数
grep MemTotal /proc/meminfo

# 可用内存
grep MemFree /proc/meminfo

# 查看磁盘分区
sudo fdisk -l

# chakan

# 查看内核
uname -r

网络配置

# 查看所有的端口
netstat -aptn

# 查看端口是否被占用
lsof -i:3306

防火墙

1、开启防火墙 
systemctl start firewalld

2、开放指定端口
firewall-cmd --zone=public --add-port=9000/tcp --permanent

 命令含义:
--zone #作用域
--add-port=1935/tcp  #添加端口,格式为:端口/通讯协议
--permanent  #永久生效,没有此参数重启后失效

3、重启防火墙
firewall-cmd --reload

4、查看端口号
netstat -ntlp   //查看当前所有tcp端口·

netstat -ntulp |grep 1935   //查看所有1935端口使用情况·

永久关闭防火墙

查看防火墙状态

systemctl status firewalld.service

关闭防火墙

systemctl stop firewalld.service

开机禁用防火墙自启命令

 systemctl stop firewalld.service

rpm

查看rpm包的版本

yum list|grep glibc-common



rpm -qa|grep

开关机

# 重启机器
reboot

1、halt 立刻关机(不管用,最好不要使用)
2、poweroff 立刻关机
3、shutdown -h now 立刻关机(root用户使用)
4、shutdown -h 10 10分钟后自动关机 如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启

端口

查看端口

lsof -i:9808

netstat -anl | grep "37700"

yum install lsof -y

查看所有端口占用情况

netstat -ntlp

请求

curl "http://127.0.0.1:9000"

带有请求头的

curl -X POST "http://127.0.0.1:9800/auth/login?password=111&username=111" -H "accept: */*" -H "Authorization: 123"

硬盘挂载

查看磁盘分区

bash 复制代码
sudo fdisk -l

挂载硬盘

这里"/dev/sdb1″是要挂载的设备,"/mnt/data"是挂载点。

bash 复制代码
mount /dev/sdb1 /mnt/data

卸载硬盘

bash 复制代码
umount /mnt/data

查看文件夹中存储大小

bash 复制代码
du -h --max-depth=1 /logs | sort -hr | head

自动挂载

/dev/sdb1  /data/one  NTFS  defaults  0  0
/dev/sdb2  /data/two  NTFS  defaults  0  0

开机启动

rc.local

vi /etc/rc.d/rc.local

查看执行权限

ls -l /etc/rc.d/rc.local

添加执行权限

chmod +x /etc/rc.d/rc.local

systemctl enable

在/lib/systemd/system 下创建nacos.service文件并输入一下内容,保存退出

[Unit]
Description=nacos
After=network.target
 
[Service]
Environment="JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64"
Type=forking
ExecStart=/usr/local/nacos/bin/startup.sh -m standalone
ExecReload=/usr/local/nacos/bin/shutdown.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

添加执行权限
chmod +x 

cd /lib/systemd/system

检查服务的状态
systemctl status fir-home.service

查看服务的日志
sudo journalctl -u fir-home.service

重新加载所有service服务
systemctl daemon-reload
开机启动nacos.service
systemctl enable nacos.service
查看该service是否开机启用
systemctl is-enabled nacos.service
启动该服务
systemctl start nacos.service
查看该服务状态
systemctl status nacos.service

脚本内容

[Unit]
Description=fir-home
After=network.target

[Service]
WorkingDirectory=/fir/home/
Type=forking
ExecStart=/bin/bash ./start.sh
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Restart=always: 只要不是通过systemctl stop来停止服务,任何情况下都必须要重启服务,默认值为no

RestartSec=5: 重启间隔,比如某次异常后,等待5(s)再进行启动,默认值0.1(s)

StartLimitInterval: 无限次重启,默认是10秒内如果重启超过5次则不再重启,设置为0表示不限次数重启

另外:

StartLimitInterval和StartLimitBurst两个参数决定了对该服务重启次数的限制

默认情况下,一个服务在10秒内最多允许启动5次。当超过5次后,会报如下错误

Job for xx.service failed because start of the service was attempted too often. See "systemctl status xxx.service" and "journalctl -xe" for details.

To force a start use "systemctl reset-failed xxx.service" followed by "systemctl start xxx.service" again.

可以通过以下两个选项来设置服务启动的频率:

StartLimitIntervalSec=, StartLimitBurst=

设置单元的启动频率限制。 StartLimitIntervalSec= 用于设置时长, 默认值等于 DefaultStartLimitIntervalSec= 的值(默认为10秒),设为 0 表示不作限制。

StartLimitBurst= 用于设置在一段给定的时长内,最多允许启动多少次, 默认值等于 DefaultStartLimitBurst= 的值(默认为5次)。 虽然此选项通常与 Restart= 一起使用, 但实际上,此选项作用于任何方式的启动(包括手动启动), 而不仅仅是由 Restart= 触发的启动。

Unit]
Description=fir-home
After=network.target

[Service]
WorkingDirectory=/fir/home/
Type=forking
Restart=always
RestartSec=5
StartLimitInterval=0
StartLimitBurst=5
ExecStart=/bin/bash ./start.sh
PrivateTmp=true

[Install]
WantedBy=multi-user.target
相关推荐
秦jh_14 分钟前
【Linux】多线程(概念,控制)
linux·运维·前端
扣得君1 小时前
C++20 Coroutine Echo Server
运维·服务器·c++20
keep__go2 小时前
Linux 批量配置互信
linux·运维·服务器·数据库·shell
矛取矛求2 小时前
Linux中给普通账户一次性提权
linux·运维·服务器
Fanstay9852 小时前
在Linux中使用Nginx和Docker进行项目部署
linux·nginx·docker
大熊程序猿2 小时前
ubuntu 安装kafka-eagle
linux·ubuntu·kafka
jieshenai2 小时前
使用VSCode远程连接服务器并解决Neo4j无法登陆问题
服务器·vscode·neo4j
渗透测试老鸟-九青2 小时前
通过投毒Bingbot索引挖掘必应中的存储型XSS
服务器·前端·javascript·安全·web安全·缓存·xss
Gentle5862 小时前
labview连接sql server数据库
服务器·数据库·labview
co0t3 小时前
计算机网络(11)和流量控制补充
服务器·网络·计算机网络