[工具] Shell 检测性能指标 (例如:剩余硬盘空间、内存空间等)

介绍:

#名称: 检测性能指标(例如:剩余硬盘空间、内存空间等)
#作用: 检测性能指标(例如:剩余硬盘空间、内存空间等)

#使用方法:
#1. 给此脚本添加执行权限
#2. 执行此脚本

脚本:

#!/bin/bash

ip=`ip a s | awk '/noprefixroute ens33/{print $2}'`
host=`hostname`
disk=`df -h | awk '/\/$/{print $5}'`
mem=`free -m | awk '/Mem/{print $4}'`
cpu=`top -bn 1 | awk -F',' '/^%Cpu/{print $4 }' | awk '{print $1}'`
soft=`rpm -qa | wc -l`
port=`ss -ntulap | wc -l`

echo "$ip $host disk $disk"
echo "$ip $host mem $mem"
echo "$ip $host cpu $cpu"
echo "$ip $host soft $soft"
echo "$ip $host port $port"
echo

[步骤] Linux 开机自启 (通过 chkconfig 实现)

案例一:添加一个受 chkconfig 管理的服务(脚本)
1.1 编写一个脚本

# vim /etc/init.d/start.sh

创建以下内容:

#!/bin/bash
systemctl start httpd

# chkconfig: 345 85 15
# description: This is a script of starting httpd

(补充:chkconfig:后面的 3 个含义为 httpd 的级别为 3、4 和 5,启动序号为 85,关闭序号为 15)

1.2 给脚本添加执行权限

# chmod +x /etc/init.d/start.sh

1.3 将脚本添加到 chkconfig 中

# chkconfig --add start.sh

1.4 查看刚刚添加到 chkconfig 的应用

# chkconfig --list

案例二:通过 chkconfig 管理一个服务或脚本
2.1 设定 start.sh 在 3 和 5 等级为 on

# chkconfig --level 35 start.sh on

2.2 设定 start.sh 在各等级为 on,“各等级”包括 2、3、4、5 等级

# chkconfig start.sh on

2.3 设定 start.sh 在各等级为 off,“各等级”包括 2、3、4、5 等级

# chkconfig start.sh off

[内容] Linux 运行级别的设置 (切换命令行模式和图形界面模式)

内容目录:

内容一:查看运行级别
1.1 查看正在使用的运行级别
1.2 查看系统重启后会进入的运行级别

内容二:设置运行级别的命令格式
2.1 命令行设置运行级别的命令格式
2.2 设置运行级别命令的参数
2.2.1 command 参数选项
2.2.2 unit.target 参数选项

内容四:快捷键设置运行级别的方法

内容五:设置运行级别的案例
5.1 查看默认运行的 target(系统重启后会默认进入的运行级别)
5.2 设置默认运行级别为普通的命令行模式
5.3 在不重启情况下,立刻切换到普通的命令行模式
5.4 在不重启情况下,立刻切换到普通的命令行模式
5.5 在不重启的情况下,立刻切换到图形界面模式
5.6 在不重启的情况下,立刻切换到图形界面模式

具体的内容:

内容一:查看运行级别
1.1 查看正在使用的运行级别

# who -r

1.2 查看系统重启后会进入的运行级别

# systemctl get-default

内容二:设置运行级别的命令格式
2.1 命令行设置运行级别的命令格式

# systemctl <command> <unit.target>

2.2 设置运行级别命令的参数
2.2.1 command 参数选项

1) get-default 查看默认运行的 target(重启后默认进入的运行级别)
2) set-default 设置指定的 target 为默认的运行级别(重启后默认进入的运行级别)
3 isolate 切换到指定的运行级别(立刻切换到指定的运行级别)

2.2.2 unit.target 参数选项

1) multi-user.target 普通的命令行模式
2) graphical.target 图形界面模式

内容四:快捷键设置运行级别的方法

1) 同时按下 “ctrl” 和 “f2”,将当前屏幕切换到图形界面
2) 同时按下 “ctrl” 和 “f3”,将当前屏幕切换到第一个命令行界面
3) 同时按下 “ctrl” 和 “f4”,将当前屏幕切换到第二个命令行界面
4) 同时按下 “ctrl” 和 “f5”,将当前屏幕切换到第三个命令行界面
5) 同时按下 “ctrl” 和 “f6”,将当前屏幕切换到第四个命令行界面

内容五:设置运行级别的案例
5.1 查看默认运行的 target(系统重启后会默认进入的运行级别)

# systemctl get-default

5.2 设置默认运行级别为普通的命令行模式

# systemctl set-default multi-user.target 

5.3 在不重启情况下,立刻切换到普通的命令行模式

# systemctl isolate multi-user.target

5.4 在不重启情况下,立刻切换到普通的命令行模式

# init 3

5.5 在不重启的情况下,立刻切换到图形界面模式

# systemctl isolate graphical.target

5.6 在不重启的情况下,立刻切换到图形界面模式

# init 5

[命令] openSUSE&SUSE 命令 zypper (管理软件和软件库)

内容目录:

内容一:zypper 的帮助文档查看

内容二: zypper 的常用案例
2.1 案例一:使用 zypper 的帮助信息
2.1.1 查看 zypper 的所有选项
2.1.2 查看 zypper 某个选项的所有子选项
2.1.2.1 查看 zypper 某个选项的所有子选项的格式
2.1.2.2 查看 zypper 某个选项的所有子选项的案例
2.2 案例二:软件相关
2.2.1 交互式
2.2.1.1 安装软件
2.2.1.1.1 安装软件包格式
2.2.1.1.2 安装软件的案例
2.2.1.2 删除软件
2.2.1.2.1 删除软件的格式
2.2.1.2.2 删除软件的案例
2.2.1.3 升级软件和系统
2.2.2 非交互式
2.2.2.1 安装软件
2.2.2.1.1 安装软件的格式
2.2.2.1.2 安装软件的案例
2.2.2.2 删除软件
2.2.2.2.1 删除软件的格式
2.2.2.2.2 删除软件的案例
2.2.2.3 查找软件
2.2.2.3.1 查找软件的格式
2.2.2.3.2 查找软件的案例
2.2.2.4 查看软件的生命周期
2.2.2.4.1 查看软件的生命周期的格式
2.2.2.4.2 查看软件的生命周期的案例
2.2.2.4 锁定软件
2.2.2.4.1 锁定软件的格式
2.2.2.4.2 锁定软件的案例
2.2.2.5 查看所有已锁软件
2.2.2.6 解锁软件
2.2.2.6.1 解锁软件的格式
2.2.2.6.2 解锁软件的案例
2.2.2.7 清除所有已锁软件
2.2.2.8 升级软件和系统
2.2.2.8.1 查看所有可用更新包
2.2.2.8.2 升级软件和系统
2.3 案例三:软件组相关
2.3.1 交互式
2.3.1.1 安装某一个软件组
2.3.1.1.1 安装某一个软件组的格式
2.3.1.1.2 安装某一个软件组的案例
2.3.1.2 删除某一个软件组
2.3.1.2.1 删除某一个软件组的格式
2.3.1.2.2 删除某一个软件组的案例
2.3.2 非交互式
2.3.2.1 安装某一个软件组
2.3.2.1.1 安装某一个软件组的格式
2.3.2.1.2 安装某一个软件组的案例
2.3.2.2 删除某一个软件组
2.3.2.2.1 删除某一个软件组的格式
2.3.2.3 查看所有可用软件组
2.3.2.4 查看某一个软件组的详细信息
2.3.2.4.1 查看某一个软件组详细信息的格式
2.3.2.4.2 查看某一个软件组详细信息的案例
2.4 案例四:软件源相关
2.4.1 禁用原来的所有软件源
2.4.2 删除原来的所有软件源
2.4.3 新增软件源并指定软件源名
2.4.3.1 新增软件源并指定软件源名的格式
2.4.3.2 新增软件源并指定软件源名的案例
2.4.4 查看所有软件源的链接
2.5 案例五:补丁相关

具体的内容:

内容一:zypper 的帮助文档查看

# zypper --h

内容二: zypper 的常用案例
2.1 案例一:使用 zypper 的帮助信息
2.1.1 查看 zypper 的所有选项

# zypper help

2.1.2 查看 zypper 某个选项的所有子选项
2.1.2.1 查看 zypper 某个选项的所有子选项的格式

# zypper help <option>

或者:

# zypper <option> help

2.1.2.2 查看 zypper 某个选项的所有子选项的案例

# zypper help install

或者:

# zypper install help

(补充:这里以查看 install 子选项为例)

2.2 案例二:软件相关
2.2.1 交互式
2.2.1.1 安装软件
2.2.1.1.1 安装软件包格式

# zypper in <software name>

2.2.1.1.2 安装软件的案例

# zypper in httpd

(补充:这里以安装 httpd 软件为例)

2.2.1.2 删除软件
2.2.1.2.1 删除软件的格式

# zypper rm <software name>

2.2.1.2.2 删除软件的案例

# zypper rm httpd

(补充:这里以删除 httpd 软件为例)

2.2.1.3 升级软件和系统

# zypper update

2.2.2 非交互式
2.2.2.1 安装软件
2.2.2.1.1 安装软件的格式

# zypper -n in <software name>

2.2.2.1.2 安装软件的案例

# zypper -n in httpd

(补充:这里以安装 httpd 软件为例)

2.2.2.2 删除软件
2.2.2.2.1 删除软件的格式

# zypper -n rm <software name>

2.2.2.2.2 删除软件的案例

# zypper -n rm httpd

(补充:这里以删除 httpd 软件为例)

2.2.2.3 查找软件
2.2.2.3.1 查找软件的格式

# zypper se <software name>

2.2.2.3.2 查找软件的案例

# zypper se httpd

(补充:这里以查找 httpd 软件为例)

2.2.2.4 查看软件的生命周期
2.2.2.4.1 查看软件的生命周期的格式

# zypper lifecycle <software name>

2.2.2.4.2 查看软件的生命周期的案例

# zypper lifecycle httpd

(补充:这里以查找 httpd 软件的周期为例)

2.2.2.4 锁定软件
2.2.2.4.1 锁定软件的格式

# zypper addlock <software name>

或者:

# zypper al <software name>

2.2.2.4.2 锁定软件的案例

# zypper addlock httpd

或者:

# zypper al httpd

(补充:这里以锁定 httpd 软件的周期为例)

2.2.2.5 查看所有已锁软件

# zypper locks

或者:

# zypper ll

2.2.2.6 解锁软件
2.2.2.6.1 解锁软件的格式

# zypper removelocks <software name>

或者:

# zypper rl <software name>

2.2.2.6.2 解锁软件的案例

# zypper removelocks httpd

或者:

# zypper rl httpd

(补充:这里以解锁 httpd 为例)

2.2.2.7 清除所有已锁软件

# zypper cleanlocks

或者:

# zypper cl

2.2.2.8 升级软件和系统
2.2.2.8.1 查看所有可用更新包

# zypper lp

2.2.2.8.2 升级软件和系统

# zypper update

2.3 案例三:软件组相关
2.3.1 交互式
2.3.1.1 安装某一个软件组
2.3.1.1.1 安装某一个软件组的格式

# zypper in -t pattern <pattern name>

2.3.1.1.2 安装某一个软件组的案例

# zypper in -t pattern kvm_server

(补充:这里以安装 kvm_server 软件组为例)

2.3.1.2 删除某一个软件组
2.3.1.2.1 删除某一个软件组的格式

# zypper rm -t pattern <pattern name>

2.3.1.2.2 删除某一个软件组的案例

# zypper rm -t pattern kvm_server

(补充:这里以删除 kvm_server 软件组为例)

2.3.2 非交互式
2.3.2.1 安装某一个软件组
2.3.2.1.1 安装某一个软件组的格式

# zypper -n in -t pattern <pattern name>

2.3.2.1.2 安装某一个软件组的案例

# zypper -n in -t pattern kvm_server

(补充:这里以安装 kvm_server 软件组为例)

2.3.2.2 删除某一个软件组
2.3.2.2.1 删除某一个软件组的格式

# zypper -n rm -t pattern <pattern name>

2.3.2.2.2 删除某一个软件组的案例

# zypper -n rm -t pattern kvm_server

(补充:这里以删除 kvm_server 软件组为例)

2.3.2.3 查看所有可用软件组

# zypper patterns

或者:

# zypper pt

2.3.2.4 查看某一个软件组的详细信息
2.3.2.4.1 查看某一个软件组详细信息的格式

# zypper pattern-info <pattern name>

2.3.2.4.2 查看某一个软件组详细信息的案例

# zypper pattern-info kvm_server

(补充:这里以查看 kvm_server 软件组为例)

2.4 案例四:软件源相关
2.4.1 禁用原来的所有软件源

# zypper mr -da

2.4.2 删除原来的所有软件源

# zypper rr `zypper ls | awk '{print $1}'`

2.4.3 新增软件源并指定软件源名
2.4.3.1 新增软件源并指定软件源名的格式

# zypper ar -fcg <software source link> <define software source name>

2.4.3.2 新增软件源并指定软件源名的案例

# zypper ar -fcg http://192.168.1.1/update-oss/ update-oss

(补充:这里以添加 http://192.168.1.1/update-oss/ 库并命名为 update-oss 为例)

2.4.4 查看所有软件源的链接

# zypper ls -d

2.5 案例五:补丁相关

# zypper in -t patch <patch name>

[步骤] OpenSUSE&SUSE 开机自启

内容一:SUSE 和 OpenSUSE 开机设置文档介绍

1) /etc/init.d/boot.local
2) /etc/init.d/halt.local
3) /etc/init.d/before.local
4) /etc/init.d/after.local


补充:
1) 其中的 boot.local 是在刚开机时,在所有其他的程序执行前执行的文件
2) 其中的 after.local 是在刚开机后,在所有其他的程序执行后执行的文件

(注意:上面第三和第四个档案默认是不存在的,可以自己创建一个, 就像写个 shell 一样很简单)

内容二:设置 SUSE 和 OpenSUSE 开机自启命令的案例

# vim /etc/init.d/after.local

创建以下内容:

sudo systemctl restart httpd

(补充:这里以开机自启 httpd 程序为例)