脚本练习,Mysql安装

MySQL 基础之部署 - YUM 方式部署

具体安装步骤:
(https://www.jianshu.com/p/45877934ea5f
)
修改密码方式一:

image.png

mysql常用修改设置

(https://www.jianshu.com/p/7ef2c2e11ec8

脚本练习:

  1. 写一个初始化脚本
  • 关闭 selinux 和 防火墙
  • 获取本机的 ip 和主机名 放到一个文件中
  • 安装如下软件 vim epel源 dmidecode tree
  1 sed -ri ' /^SELINUX=/cSELINUX=disable ' /etc/selinux/config
  2 systemctl stop firewalld
  3 ip a |grep ens33|grep inet| ' {print $2} '>>hosts.txt
  4 echo $(hostname)>>hosts.txt
  5 yum  install vim
  6 yum  install epel-release
  7 yum  install dmidecode
  8 yum  install tree

写个运维管理箱 利用 /proc 目录或者 dmidecode 获取到系统硬件级别的信息

关于dmidecode

dmidecode命令可以让你在Linux系统下获取有关硬件方面的信息。dmidecode的作用是将DMI数据库中的信息解码,以可读的文本方式显示。由于DMI信息可以人为修改,因此里面的信息不一定是系统准确的信息。dmidecode遵循SMBIOS/DMI标准,其输出的信息包括BIOS、系统、主板、处理器、内存、缓存等等。

DMI(Desktop Management Interface,DMI)就是帮助收集电脑系统信息的管理系统,DMI信息的收集必须在严格遵照SMBIOS规范的前提下进行。SMBIOS(System Management BIOS)是主板或系统制造者以标准格式显示产品管理信息所需遵循的统一规范。SMBIOS和DMI是由行业指导机构Desktop Management Task Force(DMTF)起草的开放性的技术标准,其中DMI设计适用于任何的平台和操作系统。

DMI充当了管理工具和系统层之间接口的角色。它建立了标准的可管理系统更加方便了电脑厂商和用户对系统的了解。DMI的主要组成部分是Management Information Format(MIF)数据库。这个数据库包括了所有有关电脑系统和配件的信息。通过DMI,用户可以获取序列号、电脑厂商、串口信息以及其它系统配件信息

dmicode [选项]

### 选项

-d:(default:/dev/mem)从设备文件读取信息,输出内容与不加参数标准输出相同。
-h:显示帮助信息。
-s:只显示指定DMI字符串的信息。(string)
-t:只显示指定条目的信息。([type](http://man.linuxde.net/type "type命令"))
-u:显示未解码的原始条目内容。
--[dump](http://man.linuxde.net/dump "dump命令")-bin [file](http://man.linuxde.net/file "file命令"):将DMI数据转储到一个二进制文件中。
--from-dump FILE:从一个二进制文件读取DMI数据。
-V:显示版本信息。
image.png

image.png

image.png

先定义一个函数库,vim my-function-lib

  1 
  2 get_base_info () {
  3     host_name=$(uname  -n)
  6     echo "$server_model"
  7     server_sn=$(dmidecode -t system |grep 'Serial Number'|awk -F':' '{print $2}')
  8     echo "$server_sn"
  9     server_vendor=$(dmidecode -t system| grep 'Manufacturer'|awk -F':' '{print $2}')
 10     echo $server_vendor
 11     board_sn=$(dmidecode -t baseboard|grep 'Serial Number'|awk -F':' '{print $2}')
 12     echo $board_sn
 13     bios_version=$(dmidecode -t bios |grep "Version" |awk -F':' '{print $2}')
 14     echo $bios_version
 15     os_version=$(lsb_release -d |awk -F '\t' '{print $2}' |sed -r 's/( \(.*)//g' |tr ' ' '_')
 16     echo $os_version
 17     kernel_version=$(uname -r)
 18     echo $kernel_version
 19     cpu_phy_num=$( grep 'physical id' /proc/cpuinfo|uniq|wc -l)
 20     echo $cpu_phy_num
 21     cpu_core_of_phy=$( grep 'cpu cores' /proc/cpuinfo|awk -F':' ' {print $2} '|uniq)
 22     echo $cpu_core_of_phy
 23     cpu_model=$(grep 'model name' /proc/cpuinfo|uniq|awk -F':'  '{ print $2}' )
 24     echo $cpu_model
 25 }
 26 get_mem_info () {
 27     mem=$(dmidecode -t memory|grep -A 18  "Memory Device"|tr -d '\t'|egrep '^(Size|Locator|Type D|Speed|Manufacturer|Serial Number)'|tr ' ' '_')
 28     echo $mem
 29 }
 30 get_disk_info() {
 31     echo "$(egrep "(Slot|PD|Raw)" R710-disk-info |tr ' ' '_')"
 32 }
 33 get_net_info() {
 34     MAC_IP_info=$(ip a|grep "^[2]" -A2|egrep "(link|inet)" |awk '{print $2}')
 35     echo $MAC_IP_info
 36     wangka=$(ip a| ip a|grep -o 'ens..'|uniq)
 37     echo $wangka
 38 }
 39 

编写脚本,vim Day14.sh

1 . ./my-function-lib
  2 echo "1为主板信息 2为内存信息 3为硬盘信息 4为网络信息"
  3 while true
  4 do
  5 
  6       read -p " 请输入你想查询的东西 " choice
  7       case $choce in
  8       "1")
  9           get_base_info
 10       ;;
 11       "2")
 12           get_mem_info
 13       ;;
 14       "3")
 15           get_disk_info
 16       ;;
 17       "4")
 18       ;;
 19       q|Q)
 20            exit
 21       ;;
 22       *)
 23            echo "请重新输入"
 24        esac
 25 done

你可能感兴趣的:(脚本练习,Mysql安装)