系统启动流程,服务程序自动运行,文件目录权限

1 系统启动流程

1.1 centos6启动流程

(1)开机加电自检:检查bios中识别的硬件信息是否正常
(2)开机MBR引导:/boot分区引导系统启动的记录信息(MBR引导记录系统启动文件信息/分区表信息)
(3)grub选择菜单:可以选择系统内核信息,可以选择进入单用户模式
(4)加载内核信息:用于管理控制硬件
(5)启动系统进程:/sbin/init 后续进程启动(采用串行启动方式 由init进程进行控制)
(6)加载启动级别文件:加载/etc/inittab 选择不同级别启动系统
(7)运行初始化脚本:/etc/rc.d/rc.sysinit 设置主机名称 设置网卡地址信息
(8)执行服务运行脚本:/etc/rc.d/rc.sysinit 设置主机名称 设置网卡地址信息
(9)启动mingetty进程:显示登陆提示信息
简写 :①开机加电bios自检    ②加载MBR    ③加载grup菜单    ④加载内核    ⑤启动第一个服务进程
           ⑥加载运行级别文件    ⑦加载初始化脚本    ⑧加载运行脚本(实现服务程序开机自启)
           ⑨启动mingetty进程显示登录界面

1.2 centos7启动流程

(1)开机加电bios自检:检查bios中识别的硬件信息是否正常
(2)开机MBR引导:/boot分区引导系统启动的记录信息(MBR引导记录--系统启动文件信息/分区表信息)
(3)grub选择菜单:可以选择系统内核信息/可以选择进入单用户模式
(4)加载内核信息:用于管理控制硬件
(5)启动系统进程:/usr/lib/systemd/systemd后续进程启动(采用并行启动方式由systemd进程进行控制)
(6)加载启动target文件:/etc/systemd/system/default.target 选择不同级别启动系统
(7)加载系统初始化文件:/usr/lib/systemd/system/sysinit.target 设置主机名称,网卡地址信息
(8)执行服务运行脚本:/etc/systemd/system 实现服务开机自动运行
        /usr/lib/systemd/system/ 保存系统中所有程序启动文件
(9)启动mingetty进程:显示登录提示信息
简写:①开机加电bios自检    ②加载MBR    ③加载grup菜单    ④加载内核    ⑤启动第一个服务进程
         ⑥加载运行target信息    ⑦加载初始化脚本    ⑧加载运行文件(实现服务程序开机自启)
   ⑨启动mingetty进程显示登录界面

2 系统服务程序自动运行方法

2.1 利用/etc/rc.local文件

实现脚本或服务开机自动运行的文件

2.2 centos6:用chkconfig centos7:用syetemctl

centos6:chkconfig
chkconfig --list|grep sshd(服务名称)            检查服务开机自启状态
chkconfig sshd on/off                                     234级别开机自动
chkconfig sshd --level 3(级别)                     设置指定级别开机自启
centos7:利用syetemctl命令
systemctl disable/enable sshd                         设置服务开机自启

3 文件/目录的权限说明

3.1 文件权限说明

r4 w2 x1 -(没有权限)0
r—读: 是否可以查看文件内容
w—写: 是否可以便捷文件内容
x—执行: 是否可以直接运行一个文件


文件权限总结:
(1)一个文件没有任何权限,root用户可以随时查看/编辑任意文件,只是不能执行文件
(2)属主用户想编辑查看文件,最好属主用户拥有读(最总要)和写
(3)文件权限中最重要权限为r(读)权限
拥有r权限,可以结合w权限,正常编辑和查看文件
拥有r权限,可以结合x权限,正常执行和查看文件

3.2 目录权限说明

r-读:读取显示目录下面文件名称信息
w-写:是否可以在目录中创建删除数据信息
x-执行:是否可以进行目录的切换


目录权限总结:
(1)root用户对目录管理是无敌的权限
(2)目录权限中最重要权限为x(执行)权限
拥有x权限,可以结合r权限,正常查看目录中数据信息
拥有x权限,可以结合w权限,正常在目录中创建或删除数据
默认文件权限:644 rw-r--r--
默认目录权限:755 rwxr-xr-x


没有任何权限情况下,root,属主,其他用户对文件、目录的情况

4 数据信息默认权限设置方法

4.1 利用chmod命令设置文件的权限

chmod:修改数据权限

4.1.1 单独修改指定用户权限

u=uid=属主
chmod u+rwx --- 属主添加指定权限
chmod u-rwx  --- 属主删除指定权限
chmod u=rwx --- 属主直接设置权限
g=gid=属组
chmod g+rwx --- 属组添加指定权限
chmod g-rwx  --- 属组删除指定权限
chmod g=rwx --- 属组直接设置权限
o=other=其他用户
chmod o+rwx --- 其他用户添加指定权限
chmod o-rwx --- 其他用户删除指定权限
chmod o=rwx --- 其他用户直接设置权限

4.1.2 批量修改所有用户权限

chmod 权限数值 --- 批量修改
chmod a+rwx --- 所有用户添加指定权限
chmod a-rwx  --- 所有用户删除指定权限
chmod a=rwx --- 所有用户设置指定权限
a=所有用户

4.2 利用umask修改数据权限

umask:修改数据权限(临时设置)永久设置(/etc/profile)

4.2.1 临时设置

文件权限数值=666 - umask数值
644=666 - 022
umask数值为偶数: 666 - umask(066)数值 == 600
umask数值为奇数: 666 - umask(033) == 644
umask数值为奇数时,文件权限值要加1
目录权限数值==777 - umask数值

4.2.2 永久设置

永久设置:利用文件配置参数设置权限
vim /etc/profile

if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]
then
umask 002
else
umask 022
fi

如果满足上述两个条件,则umask值为002,不满足为022。
usermod oldboy -g root:将oldboy改为root组,则不满足第二个条件,umask值为002,
id -gn:显示当前用户的组的名称
id -un:显示当前用户的名称
符号:
gt=greater than               大于的意思
lt=less than                     小于的意思
eq=equal                         等于的意思
ge=greater equal             于等于的意思
le=less equal                   小于等于的意思
ne=no equal                    不等于的意思

5 /etc/skel 用户相关的重要目录

/etc/skel
(1)此目录中有什么数据,新建的用户家目录中就有什么
(2)恢复普通用户命令提示符信息

cp -a /etc/skel/.bash* /home/oldboy/		#-a:保持原来的属性

当普通用户家目录下东西都被删除时,普通用户命令提示符会成乱码,可以把root下/etc/skel复制到普通用户家目录就会恢复

6 /etc/passwd  用户相关的重要文件

/etc/passwd --- 记录系统用户信息

oldboy01 :x :1002 :1002  : :/home/oldboy01 	:/bin/bash
ntp      :x :38   :38    : :/etc/ntp 				:/sbin/nologin
oldboy02 :x :1003 :1003  : :/home/oldboy02 	:/bin/bash
oldboy03 :x :1004 :1004  : :/home/oldboy03 	:/bin/bash
	1			 2	 3		 4		 5		6								7

1 用户名称
2 用户密码信息
3 用户uid数值信息
4 用户gid数值信息
5 用户注释信息
6 用户家目录信息
7 用户登录方式 /bin/bash    /sbin/nologin(设置为虚拟用户)
/etc/shadow : 记录系统用户密码信息(加密)
/etc/group:    记录用户组信息
/etc/gshadow:记录用户组密码信息


原文地址:https://www.cnblogs.com/basa/p/11142194.html