一、Systemd
二、systemctl
三、service的unit文件格式


systemd与systemctl
一、Systemd:
    POST-->Boot sequence(BIOS)-->Boot loader(MBR)-->kernel(ramdisk)-->rootfs(swtich-root)-->/sbin/init
    所有用户空间的进程,都由init负责,当需要调用特权指令的时候,才会切换到内核
init
    CentOS 5:SysV init //真正的bell实验室
    CentOS 6:Upstart //引用ubuntu的二次发行版
    CentOS 7:Systemd //模仿MAC OS的
Systemd的新特性:
    1.系统引导时实现服务并行启动
    2.按需激活进程//开机后进入需要启动的程序,会进入半激活状态,第一次访问的时候会直接执行,
        //例如http会占用80端口,直到有用户访问
    3.系统状态快照 //用户空间,可以回滚到
    4.基于依赖关系定义服务控制逻辑
    
核心概念:unit
    由其相关的配置文件进程标识和识别和配置
    文件中主要包含了系统服务,监听的socket,保存的快照以及其他与init相关的信息
    这些配置文件保存在:
        /usr/lib/systemd/system/    //每一个文件都可以被称为一个unit
        /run/systemd/system
        /etc/systemd/system
[root@MT ~]# systemctl disable named
    Removed symlink /etc/systemd/system/multi-user.target.wants/named.service.
[root@MT ~]# systemctl enable named
    Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
    
unit类别:/usr/lib/systemd/system    

    *.service 用于定义系统服务;类似于service start|stop|restart等的脚本,相当于以前的/etc/init.d/*
    *.target  用于模拟实现"运行级别",因为CentOS7默认是没有运行级别的,主要是为了兼容
    *.device 用于定义内核识别的设备,
                //之前是udev根据/sys目录下内核所探测到的输出的信息创建的/dev,
                //CentOS7设备主要由systemd[主打]和udev创建,systemd用于识别硬件 ,基于*.device识别
    *.mount 定义fs挂载点,    
    *.socket 用于标识进程间通信用到的socket文件&#x