0 运维人员如何开展自己的工作?
1.画出架构图
服务器的数量与作用、软件的部署架构等
2.围绕三点展开工作
稳定性:监控
可靠性:备份、解决单点故障
性能优化 拓展性
1 系统分区方案
### 方案一:常规生产场景(工作)方案 三个分区
网络集群架构中的某个节点服务器(很多个功能相同的服务器)
即数据有多份或者数据不重要的服务器
/boot : 存放引导程序,建议大小是300-500MB # 500M更优
swap : 虚拟内存,1.5-2倍内存大小
ps: 工作中, 物理内存<8G,SWAP就 内存*1.5
物理内存>8G,SWAP就 8G
/ : 根分区,存放所有数据,剩余空间都给根
# 提示: /usr、/home、/var等分区和/共用一份分区,像Windows的C盘,所有数据和系统文件都放在了一起
### 方案二: 四个分区
数据库及存储角色的服务器,即有大量重要的数据的业务
/boot: 存放引导程序,建议大小是300-500MB
swap : 虚拟内存,1.5-2倍内存大小
/ : 根分区,50-200G,只存放系统相关文件,网站业务数据不放这里
/data:剩余硬盘空间大小,放数据库及存储重要数据的,data的名称也可以起别的名字
# 提示:本方案其实就是把重要数据单独分区,便于备份和管理
### 方案三: 三个分区 + 待分区
大门户网站,大型企业的分区思路
/boot: 存放引导程序,CentOS6给200M,CentOS7给200M
swap : 虚拟内存,1.5倍内存大小
/ : 根分区,50-200G,只存放系统相关文件,网站业务数据不放这里
剩余空间不分区,保留,将来分配给部门,由他们根据需求再分
# 提示:此方法更灵活,比较适合业务线比较多需求不确定的大企业使用
### 其他方案:
1 LVM:在线调整分区大小
1.性能差
2.没必要(事先规划好)!
2 操作系统软raid不要用
1.性能差,没有冗余
2.生产场景使用硬件raid
2 系统基础优化
1.Linux系统最小化安装
根据经验,选择安装包时应该按最小化原则,即不需要的或者不确定是否需要的就不安装,最大程度上确保系统安全。
2.安装常用的开发包组
# 在安装系统过程时,落了部分包组或者其他伙伴安装时没选,可通过yum安装
yum groupinstall "Compatibility libraries" "Base" "Development tools"
yum groupinstall "debugging Tools" "Dial-up Networking Support"
# 可以通过yum groupinfo包组查看具体安装的组件
3.可以查看选包的情况:yum grouplist
可以看到除了我们选择的外,系统还是默认安装了一些额外的软件包组。
注意:不要使用yum的删除功能删除软件,会删除相关依赖,导致意外问题。
4.安装系统补装工具命令
可以根据需求yum来安装下,例如:
[root@egon ~]# yum -y install tree nmap sysstat lrzsz dos2unix telnet bash-completion bash-completion-extras vim lsof net-tools rsync ntpdate nfs-utils
# 如果需要更新补丁则执行
yum update
5.配置网络
setup命令
→ Network configuration
→ Device configuration
→ eth0
→ 配置完依次点击“ok”
→ “save”
→ Save&Quit
→ Quit,这样就退出到命令行界面了。
# 该配置实质就是修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0 内容
3 系统启动流程
### 启动流程
# 1.加电自检(BIOS)
加电、启动BIOS、检测启动项目(从本地磁盘、U盘、光盘启动等)
# 2.MBR引导 (512k) dd </dev/zero> /dev/sda bs=1k count=400
读取启动盘的第一个扇区 512Bytes
包含是MBR主引导记录(446Bytes的引导程序BootLoader -> grub)
64Bytes的分区信息、2Bytes的结束标志
# 3.GRUB菜单 ---> 选择系统模式
GRUB加载操作系统的内核
1.读取运行级别
2.初始化系统 system init
3.启动服务
# 4.运行systemd centos7启动的第一个程序 systemd 进程号pid为0
-检查 /etc/systemd/system/default.target -> /usr/lib/systemd/system/multi-user.target
就是default.target 软链接到 对应的target
-找到 /etc/systemd/system/multi-user.target.wants/所有服务,并启动
# 5.建立终端
# 6.用户登录
### 拓展知识
# GRUB是什么?
GRUB是一个用于加载和管理系统启动的完整程序
它是Linux发行版中最常见的引导程序(bootloader)
引导程序是计算机启动时运行的第一个软件
它加载 操作系统的内核,然后再由内核初始化操作系统的其他部分(包括Shell、显示管理器、桌面环境等)
4 系统运行级别
### linux系统的运行级别:
# 对应 系统启动的target /usr/lib/systemd/system/下
0 : 关机 poweroff.target
1 : 单用户模式 rescue.target
# 禁止远程登录,不需要输入账号密码,进操作系统就是管理员账号 ==> 破解管理员root密码
2 : 多用户模式(没有文件系统,没有网络) multi-user.target
3 : 多用户模式(有文件系统,命令行) multi-user.target
4 : 系统未使用,保留 multi-user.target
5 : GUI模式(图形界面模式,有网络) graphical.target
6 : 重启 reboot.target
# 查看运行级别:
[root@localhost ~]$ runlevel
N 3
[root@localhost ~]$ who -r
run-level 3 2021-09-14 12:14
# 切换系统运行级别 centos6
init 3
# 修改默认运行级别 centos7
# 修改为多用户状态(3):
systemctl set-default multi-user.target
# 修改为图形界面执行(5):
systemctl set-default graphical.target
5 破解root密码
# 运行级别 单用户模式下 破解root密码
6 光盘修复模式
7 BIOS加密