2019-07-29

系统启动流程

centos6
01. 系统开机自检      检查所有硬件是否正常
02. 引导系统启动      MBR引导空间 512字节       读取分区表概念
03. 加载启动菜单      grub菜单                  选择加载内核信息  进入单用户模式修复系统
04. 加载系统内核      
05. 运行系统进程      运行系统第一个进程        init进程 pid 1
06. 加载运行文件      运行级别文件/etc/inittab  加载系统运行级别  默认3
07. 系统初始化        设置主机名称 加载网卡地址 加载/etc/rc.d/rc.sysinit
08. 加载启动服务      根据运行级别              加载不同rcn.d目录中服务脚本
    启动顺序: 根据服务编号进行启动, 串行启动
09. 启动mingetty进程  显示登录界面 

centos7

01. 系统开机自检      检查所有硬件是否正常
02. 引导系统启动      MBR引导空间 512字节       读取分区表概念
03. 加载启动菜单      grub菜单                  选择加载内核信息  进入单用户模式修复系统
04. 加载系统内核         
05. 运行系统进程      运行系统第一个进程        systemd进程 pid 1    
06. 加载运行文件      链接文件                  根据链接文件的指向 选择系统启动的target 默认是multi-user.target
                      /etc/systemd/system/default.target
07. 系统初始化        设置主机名称 加载网卡地址 /usr/lib/systemd/system/sysinit.target
08. 加载启动服务      根据运行target            加载不同 target
                                                /etc/systemd/system/multi-user.target.wants
    系统服务程序文件: /usr/lib/systemd/system/                       
    https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/sect-managing_services_with_systemd-unit_files
    启动顺序: 并行启动服务
09. 启动mingetty???进程  显示登录界面

服务启动脚本编写 centos6

   数据备份服务    
   启动服务命令: rsync --daemon
   停止服务命令: killall rsync
   服务脚本???  
   01. case语句判断参数信息, 真正启动或重启或停止服务   第一步
   02. # chkconfig: 2345 10  90                         第二步
                    01   02  03
       1) 在什么运行级别, 启动此服务
       2) 服务启动顺序
       3) 服务关闭顺序
   加载服务程序开机自启命令                             第三步
   chkconfig --add  rsync
   chkconfig rsync  on

操作系统用户管理知识

文件权限: 赋予三个用户
r :  查看文件数据内容 
w :  可以修改文件内容
x :  可以运行数据文件
结论:
01. root在没有权限时. 直接看和写文件内容, 不能执行文件
02. 对于文件来说, 读权限是最重要, 只有拥有读权限,其他权限才能起作用

目录权限: 赋予三个用户 
r : 查看目录中数据信息
w : 删除添加目录中数据
x : 可以切换进到目录中
结论:
01. root在没有权限时. 也可以直接管理目录  (无敌存在)
02. 对于目录来说, 执行权限是最重要, 只要拥有执行权限, 其他权限才能起作用

创建默认文件: 644 -- 所有用户拥有读权限
创建默认目录: 755 -- 所有用户拥有切换目录权限

读取数据原理:
01. 数据权限和9位权限位有关
02. 数据权限和属主或属组有关
03. 数据权限和存储数据目录权限也有关系
              root    oldboy(1000)
文件默认权限: 644     664
目录默认权限: 755     775
   
umask  --- 影响文件或目录创建默认权限
系统在创建文件时: 默认文件初始权限 666
系统在创建目录时: 默认目录初始权限 777

root用户:

文件默认权限 = 666 - umask(0022) = 644    
目录默认权限 = 777 - umask(0022) = 755
临时修改umask = 044 偶数数值
文件默认权限 = 666 - umask(0044) = 622    
目录默认权限 = 777 - umask(0044) = 733    
临时修改umask = 033 奇数数值
文件默认权限 = 666 - umask(0033) = 633 + 011 = 644     
目录默认权限 = 777 - umask(0033) = 744

oldboy用户:
文件默认权限 = 666 - umask(0002) = 664    
目录默认权限 = 777 - umask(0002) = 775

如何永久修改umask OK

02. 为什么root用户和oldboy用户生成数据默认权限不一致
vim /etc/profile
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
   umask 002
else
   umask 022
fi
条件一: [ $UID -gt 199 ]       判断当前登录用户uid数值是否大于199
条件二: [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]
                               判断登录系统用户uid对应名称是否和gid对应名称一样  
大于       greater than               -gt
小于       less than                  -lt
等于       equal                      -eq 
大于等于   Greater than or equal to   -ge
小于等于   less than or equal to      -le 
不等于     Not equal                  -ne

if(如果) [ 100万=条件 ]
then  然后
   赢取白富美
else  否则
   女的就行
fi

你可能感兴趣的:(2019-07-29)