1、文件大小排序
du -h --max-depth=1 | sort -hr
2、防火墙
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
添加:firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入:firewall-cmd --reload
查看:firewall-cmd --zone=public --query-port=80/tcp
删除:firewall-cmd --zone=public --remove-port=80/tcp --permanent
查看所有已开启端口:firewall-cmd --zone=public --list-ports
3、端口查询
命令参数
-t : 指明显示TCP端口
-u : 指明显示UDP端口
-l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
-p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
-n : 不进行DNS轮询,显示IP(可以加速操作)
更多参数请使用 netstat --help查看
常用命令说明
1.netstat -ntlp //查看当前所有tcp端口·
2.netstat -ntulp |grep 80 //查看所有80端口使用情况·
3.netstat -an | grep 3306 //查看所有3306端口使用情况·(与上面不一样之处在该命令不会显示进程名称)
4.netstat -lanp 查看一台服务器上面哪些服务及端口.
5.ps -ef |grep mysqld 查看某一端口的连接数量,比如3306端口
6.netstat -anp |grep 3306 查看某一端口的连接数量,比如3306端口
4、linux服务器规范化
1.创建普通用户
#创建普通用户pengrui
useradd devadmin
#设置普通用户密码
passwd devpassword
2. ssh端口
ssh端口,内部统一使用6000
#修改sshd_config配合文件
sed -i 's/#Port 22/Port 6000/g' /etc/ssh/sshd_config
#只允许普通用户登录linux
sed -i 's/#PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config
或者直接用vi编辑器修改,修改完重启sshd
systemctl restart sshd
#验证端口
netstat -ntlp|grep sshd
tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 6030/sshd
tcp6 0 0 :::6000 :::* LISTEN 6030/sshd
3. 关闭selinux
#关闭selinux
setenforce 0
#永久关闭,然后重启linux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
#重启完,验证命令
# getenforce
Disabled
4. sudo方式限制操作权限
执行 visudo,加入两行命令
Cmnd_Alias STOPCOMMAND = /sbin/dd,/usr/bin/passwd root,/usr/bin/passwd,/bin/rm,/sbin/init,/sbin/reboot,/sbin/s hutdown,/bin/vi /etc/sudoers,/usr/bin/vim /etc/sudoers,/usr/sbin/visudo
pengrui ALL=(root) ALL,!STOPCOMMAND
加入后退出保存
# 没有操作权限的命令会提示没权限
[pengrui@nginxshow ~]$ sudo passwd root
Sorry, user pengrui is not allowed to execute '/bin/passwd root' as root on nginxshow.
操作命令前需要加sudo,也可以通过sudo限制普通用户操作权限
5.时间同步
内部linux基础模板已经添加ntpdate时间同步
# crontab -l
*/30 * * * * /usr/sbin/ntpdate ntp.wiz.top
5、自启动
1. 在centos7.6创建自动启动服务
linux默认指centos7.6 x86_64
2. 后台运行程序常见三种方式
命令后面 + &
supervisor管理
systemctl管理
3. systemctl管理easc启动
## 文件存放目录
/usr/lib/systemd/system
## 启动文件名称 webapi.service
[Unit]
Description=The webapi server
[Service]
#Type=forking
WorkingDirectory=/data/webapi
ExecStart=/usr/bin/dotnet Top.webapi.Web.dll --server.urls http://*:2002
#ExecStart=/usr/bin/dotnet /data/webapi/Top.webapi.Web.dll
ExecStop=/usr/bin/kill -9 $KillSignal
Restart=alway
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=wizeasc
PrivateTmp=true
#User=www-data
[Install]
WantedBy=multi-user.target
/data/webapi 为项目文件存放目录,根据实际情况调整
http://*:2002 为项目启动端口
/usr/bin/dotnet 为dotnet命令的绝对路径
4. 启动easc
systemctl daemon-reload
systemctl restart webapi
6、内存查看释放
1. 查看内存使用
top
top命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令。
free
free -mh
2. 读出的内核信息进行解释
cat /proc/meminfo
3.清理缓存
echo 1 > /proc/sys/vm/drop_caches
可以使用一下命令查使用内存最多的5个进程 ps -aux | sort -k4nr | head 5
或者 top (然后按下M,注意大写)
CentOS7清理yum缓存和释放内存方法
清理yum缓存
清理yum缓存使用yum clean 命令,yum clean 的参数有headers, packages, metadata, dbcache, plugins, expire-cache, rpmdb, all
yum clean headers #清理/var/cache/yum的headers
yum clean packages #清理/var/cache/yum下的软件包
yum clean metadata
...
Linux释放内存
释放网页缓存(To free pagecache):
sync; echo 1 > /proc/sys/vm/drop_caches
释放目录项和索引(To free dentries and inodes):
sync; echo 2 > /proc/sys/vm/drop_caches
释放网页缓存,目录项和索引(To free pagecache, dentries and inodes):
sync; echo 3 > /proc/sys/vm/drop_caches
下面是我实际的数据。
[root@localhost ~]# free -m #查看内存
total used free shared buff/cache available
Mem: 481 224 120 1 136 202
Swap: 1023 283 740
[root@localhost ~]# sync; echo 3 > /proc/sys/vm/drop_caches
[root@localhost ~]# free -m #从120到186,释放了66m的内存
total used free shared buff/cache available
Mem: 481 209 186 1 85 222
Swap: 1023 283 740
7、磁盘
df
df-TH
8、systemctl
安装路径:/usr/lib/systemd/system
LinuxSystemctl是一个系统管理守护进程、工具和库的集合,用于取代System V、service和chkconfig命令,初始进程主要负责控制systemd系统和服务管理器。通过Systemctl –help可以看到该命令主要分为:查询或发送控制命令给systemd服务,管理单元服务的命令,服务文件的相关命令,任务、环境、快照相关命令,systemd服务的配置重载,系统开机关机相关的命令。
1. 列出所有可用单元
# systemctl list-unit-files
2. 列出所有运行中单元
# systemctl list-units
3. 列出所有失败单元
# systemctl –failed
4. 检查某个单元(如 crond.service)是否启用
# systemctl is-enabledcrond.service
5. 列出所有服务
# systemctl list-unit-files –type=service
6. Linux中如何启动、重启、停止、重载服务以及检查服务(如 httpd.service)状态
# systemctl start httpd.service
# systemctl restart httpd.service
# systemctl stop httpd.service
# systemctl reload httpd.service
# systemctl status httpd.service
注意:当我们使用systemctl的start,restart,stop和reload命令时,终端不会输出任何内容,只有status命令可以打印输出。
7. 如何激活服务并在开机时启用或禁用服务(即系统启动时自动启动mysql.service服务)
# systemctl is-active mysql.service
# systemctl enable mysql.service
# systemctl disable mysql.service
8. 如何屏蔽(让它不能启动)或显示服务(如ntpdate.service)
# systemctl mask ntpdate.service
ln -s ‘/dev/null”/etc/systemd/system/ntpdate.service’
# systemctl unmask ntpdate.service
rm ‘/etc/systemd/system/ntpdate.service’
9. 使用systemctl命令杀死服务
# systemctl killcrond
10. 列出所有系统挂载点
# systemctl list-unit-files –type=mount
11. 挂载、卸载、重新挂载、重载系统挂载点并检查系统中挂载点状态
# systemctl start tmp.mount
# systemctl stop tmp.mount
# systemctl restart tmp.mount
# systemctl reload tmp.mount
# systemctl status tmp.mount
12. 在启动时激活、启用或禁用挂载点(系统启动时自动挂载)
# systemctl is-active tmp.mount
# systemctl enable tmp.mount
# systemctl disable tmp.mount
13. 在Linux中屏蔽(让它不能启用)或可见挂载点
# systemctl mask tmp.mount
ln -s ‘/dev/null”/etc/systemd/system/tmp.mount’
# systemctl unmask tmp.mount
rm ‘/etc/systemd/system/tmp.mount’
14. 列出所有可用系统套接口
# systemctl list-unit-files –type=socket
15. 检查某个服务的所有配置细节
# systemctl showmysql
16. 获取某个服务(httpd)的依赖性列表
# systemctl list-dependencies httpd.service
17. 启动救援模式
# systemctl rescue
18. 进入紧急模式
# systemctl emergency
19. 列出当前使用的运行等级
# systemctl get-default
20. 启动运行等级5,即图形模式
# systemctl isolate runlevel5.target
或
# systemctl isolate graphical.target
21. 启动运行等级3,即多用户模式(命令行)
# systemctl isolate runlevel3.target
或
# systemctl isolate multiuser.target
22. 设置多用户模式或图形模式为默认运行等级
# systemctl set-default runlevel3.target
# systemctl set-default runlevel5.target
23. 重启、停止、挂起、休眠系统或使系统进入混合睡眠
# systemctl reboot
# systemctl halt
# systemctl suspend
# systemctl hibernate
# systemctl hybrid-sleep
对于不知运行等级为何物的人,说明如下。
Runlevel 0 : 关闭系统
Runlevel 1 : 救援,维护模式
Runlevel 3 : 多用户,无图形系统
Runlevel 4 : 多用户,无图形系统
Runlevel 5 : 多用户,图形化系统
Runlevel 6 : 关闭并重启机器
9、yum
1、wget http://yum.baseurl.org/download/3.2/yum-3.2.28.tar.gz
2、tar xvf yum-3.2.28.tar.gz
3、cd yum-3.2.28
4、sudo apt install yum
5、yum check-update
6、yum update
7、yum clean all
评论区