日拱一卒.操作系统基础知识点梳理

  1. 课程知识概述部分

    1. 磁盘管理体系结构
      磁盘创建文件系统
      磁盘挂载操作 (mount 参数信息) !
      磁盘应用环境 (作为交换分区) !
    2. 系统启动流程
    3. 基础节点知识梳理
  2. 课程知识回顾说明

    1. 操作系统磁盘分区: fdisk parted
    2. 磁盘逻辑管理说明: RAID LVM
  3. 磁盘创建文件系统
    文件系统概念: 存储数据不同机制
    常见文件系统: ext3/ext4(存储效率) xfs(存储效率/识别大硬盘能力)
    创建文件系统: mkfs - make file system
    mkfs.文件系统类型(ext4/xfs) /dev/sdb2
    mkfs -t 文件系统类型(ext4/xfs) /dev/sdb2 -f
    -f 强制设定

  4. 磁盘管理挂载操作:
    挂载概念: 给一个存储设备(文件)开了个门
    挂载操作: mount (mount [参数] 设备文件信息 挂载点)
    umount (umount -lf /挂载点)
    -l lazy(懒惰) 不用从挂载点目录切换出去
    -f force 强制进行卸载
    如何实现开机自动挂载磁盘分区设备:
    方法一: 编辑/etc/fstab
    /dev/sdb1 /mnt xfs defaults 0 0

    方法二: 编辑/etc/rc.local
    mount /dev/sdb1 /mnt

企业如果要重启服务器,要检查 /etc/fstab /etc/rc.local 里面的挂载记录,最好先复制下来一份再重启,以免重启后临时挂载失效

  1. 磁盘应用管理
    问题1: 磁盘文件系统出现问题
    步骤一: 利用命令检查或修复文件系统
    fsck -a 挂载点/分区设备文件
    xfs_repair

    步骤二: 利用挂载命令修复
    mount -o remount rw /

    问题2: 磁盘空间不足情况
    inode空间不足了:
    解决: 找出大量小文件
    find ./ -type f -size -10c|xargs rm

    block空间不足:
    解决: 找出大文件数据
    find / -type f -size ??
    du -sh /opt/*|sort -h

    文件数据是否彻底删除:

    1. 是否有硬链接存在 i_link=0
      PS: 硬链接不能在不同的分区进行创建
      find / -type f -inum xxxx
    2. 是否有程序进程调用 i_conut=0
      日志文件 —> 服务进程调用

    access.log

    dd — 模拟创建一个大文件/创建交换分区
    dd if=/dev/zero of=/tmp/1G bs=100M count=10

    问题3: 如何调整swap空间大小
    第一个历程: 占用磁盘空间作为扩展交换分区
    dd if=/dev/zero of=/swap/1G_swap bs=100M count=10

    第二个历程: 将创建数据变为swap文件数据
    mkswap /swap/1G_swap
    file /swap/1G_swap

    第三个历程: 加载文件给交换分区扩容
    swapon /swap/1G_swap
    swapoff /swap/1G_swap

    磁盘使用流程:

    1. 完成磁盘阵列配置 OK
    2. 完成磁盘分区操作 OK
    3. 系统磁盘弹性管理 * OK
    4. 磁盘创建文件系统 OK
    5. 磁盘挂载操作 OK
    6. 磁盘管理操作 OK
  2. 操作系统启动流程:

在这里插入图片描述
1) centos6系统启动流程
① 进行服务器开机bios自检
② 进行MBR系统启动引导
③ 进行grub内核选择
④ 进行系统内核加载
⑤ 启动第一个服务进程 init (可以让所有服务串行启动)
⑥ 加载/etc/inittab文件
⑦ 加载初始化脚本信息
⑧ 加载系统开机运维脚本信息
使服务可以开机运行
⑨ 启动mingetty 显示登录界面

2) centos7系统启动流程
   ① 进行服务器开机bios自检
   ② 进行MBR系统启动引导
   ③ 进行grub内核选择
   ④ 进行系统内核加载       	
   ⑤ 启动第一个服务进程   systemd  (可以让所有服务并行启动)
   ⑥ 加载系统运行模式文件
      /etc/systemd/system/default.target
   ⑦ 加载初始化脚本信息 
   ⑧ 加载系统开机运行目标文件
      /etc/systemd/system/multi-user.target.wants/xxx  --> /usr/lib/systemd/system 
      PS: 可以确保centos7中服务可以开机运行
   ⑨ 启动mingetty 显示登录界面

如何编写自动启动服务脚本:
  1. 运维基础知识综合梳理
    1. 操作系统硬件知识
      *** 掌握硬件组成信息:
      *** 硬件作用详细说明: CPU 内存(缓存/缓冲) 磁盘

    2. 操作系统安装部署
      *** 操作系统虚拟环境
      *** 操作系统安装过程
      *** 操作系统网络配置

    3. 操作系统远程连接
      *** 远程软件配置过程
      *** 建立系统远程连接
      *** 远程连接排错方法

    4. 操作系统管理命令
      *** 系统运行相关命令 shutdown
      *** 系统目录相关命令 mkdir cd ll rm
      *** 系统文件相关命令 touch cat cp mv echo

    5. 操作系统目录结构
      *** 系统磁盘挂载概念
      *** 系统目录结构信息 /bin /home /etc /root
      *** 系统重要文件信息
      *** 系统硬件信息查看 cpu 内存 磁盘 负载
      *** 系统软件安装方法 yum

    6. 操作系统基础优化

    7. 操作系统文件属性
      *** 系统inode block
      *** 系统链接信息
      *** 系统相关命令 find tar date

    8. 操作系统正则符号 (三剑客命令 grep sed awk) * —> shell

    9. 操作系统用户权限
      *** 系统默认权限 rwx
      *** 系统特殊权限 setuid setgid 粘滞位
      *** 系统用户提权 su sudo
      *** 系统用户命令 useradd groupadd
      *** 系统用户文件 /etc/passwd /etc/skel

  1. 操作系统定时任务
    *** 定时任务编写方法 时间信息
    *** 定时任务常见错误
  2. 操作系统磁盘管理
    *** 如何进行磁盘分区
    *** 如何进行磁盘格式化
    *** 如何进行挂载操作
    *** 如何让磁盘自动挂载 ok

作业:

  1. 挂载defaults参数是什么意思? 并进行详细解释说明
    Use default options: rw, suid, dev, exec, auto, nouser, and async.

  2. 如何自动重启系统识别扩容交换分区容量

作业:

  1. /2 每隔2个小时执行, 是2的整数倍间隔时间执行
    偶数时间执行定时任务!!!
    希望如何奇数时间每隔2个小时执行定时任务
  2. 实现数据备份, 每天夜里3点将/etc/rc.local文件进行备份/backup
  3. 实现定时压缩数据, 每隔30分钟将/etc/目录压缩保存/backup
  4. 每天将messages日志文件, 进行切割处理, 每天下午3点 晚上8点
    PS: 切割后日志扩展名需要有日期信息
  5. 0 5/3 * * * ??? 不能这样配置
    0 5-10/2 * * * ??? 5点到10点时间内, 每隔2个小时执行定时任务
    0 5,7,10/2 * * * ??? 不能这样配置

扩展练习:

  1. 如何绘制杨辉三角形
    sh test.sh 3
    *

    sh test.sh 4
    *


    sh test.sh 5
    *



学员问题:

  1. 什么时候用 / / 什么时候用 ’ ’ 单引号啊?
    // — 用于匹配筛选字符串信息
    ‘’ — 进行所见即所得进行 增 删 改 查
    “” — 进行信息解析时 增 删 改 查

  2. 利用awk命令连续显示多列信息
    [root@oldboy69 oldboy 11:54:02]# awk ‘{for(i=1;i<4;i++){printf $i" "};printf “\n”}’ test10.txt
    1 2 3
    1 2 3
    [root@oldboy69 oldboy 11:54:05]# awk ‘$3~/^41/{for(i=1;i<4;i++){printf $i" "};printf “\n”}’ awk.txt
    Zhang Dandan 41117397
    Liu Bingbing 41117483

  3. 怎么给一个新创建的用户赋予同等于root的权限?
    方法一: 修改visudo配置文件
    oldboy ALL=(ALL) NOPASSWD: ALL

    方法二: 将用户加入到root用户组中
    usermod -g root oldboy

作业:

  1. 系统中文件硬链接数默认是多少 目录硬链接数默认是多少?
    默认1个 默认是2个
    目录硬链接数为什么是2?

    思路一: 掌握什么是硬链接概念
    inode号码相同文件数据, 互为硬链接
    思路二: 理解系统中两个符号作用
    …/ – 表示上级目录
    ./ – 表示当前目录

扩展:
01: dd if=/dev/zero of=/oldboy/oldboy03.txt bs=150M count=10 什么作用
02: 和find命令有关, 排除指定目录不要进行搜索
[root@oldboy69 oldgirl 00:07:50]# tree
.
├── bin
│?? └── oldboy.sh
├── cache — 排除cache目录不要进行搜索
│?? └── oldboy.m
├── conf
│?? └── oldboy.conf
└── log
└── oldboy.log

4 directories, 4 files

方法一: 利用find命令 取反操作  ! -not
# find /oldboy  ! -path "/oldboy/oldboy02/*" -name "oldgirl02.txt"
/oldboy/oldboy01/oldgirl02.txt
/oldboy/oldboy03/oldgirl02.txt
方法二: 利用find命令 -prune 修剪  -print 输出
[root@oldboy69 oldboy 23:12:38]# find /oldboy  -path "/oldboy/oldboy02"
/oldboy/oldboy02
[root@oldboy69 oldboy 23:14:08]# find /oldboy  -path "/oldboy/oldboy02" -o -name "oldgirl02.txt"
/oldboy/oldboy01/oldgirl02.txt
/oldboy/oldboy02
/oldboy/oldboy02/oldgirl02.txt
/oldboy/oldboy03/oldgirl02.txt
[root@oldboy69 oldboy 23:14:36]# find /oldboy  -path "/oldboy/oldboy02" -prune  -o -name "oldgirl02.txt"
/oldboy/oldboy01/oldgirl02.txt
/oldboy/oldboy02
/oldboy/oldboy03/oldgirl02.txt
[root@oldboy69 oldboy 23:15:29]# find /oldboy  -path "/oldboy/oldboy02" -prune  -o -name "oldgirl02.txt" -print 
/oldboy/oldboy01/oldgirl02.txt
/oldboy/oldboy03/oldgirl02.txt

03: 压缩/oldboy目录, 生成一个oldboy.tar.gz压缩包, 将压缩包报文在/backup
需要排除/oldboy/oldboy01目录 /oldboy/oldboy02目录不要被压缩打包
# tar zcvf /backup/oldboy.tar.gz /oldboy --exclude=oldboy02
tar: Removing leading `/’ from member names
/oldboy/
/oldboy/oldboy01/
/oldboy/oldboy01/oldgirl01.txt
/oldboy/oldboy01/oldgirl02.txt
/oldboy/oldboy01/oldgirl03.txt
/oldboy/oldboy03/
/oldboy/oldboy03/oldgirl01.txt
/oldboy/oldboy03/oldgirl02.txt
/oldboy/oldboy03/oldgirl03.txt

作业:

  1. 如何利用find命令将数据找出来, 进行批量复制或移动操作(三种方法)
  2. 将目录中以oldboy开头的文件信息, 进行批量压缩

预习:
1 文件属性 inode索引信息 block块信息
2.文件属性 软链接/硬链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值