用户工具

站点工具


jaysnote:systemd

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
jaysnote:systemd [2019/01/24 21:08]
jaylee
jaysnote:systemd [2019/01/29 12:47]
jaylee
行 2: 行 2:
  
 # systemd # systemd
 +
 +* [Systemd](https://www.ibm.com/developerworks/cn/linux/1407_liuming_init3/index.html)
 +
 +* [system V与systemd](https://blog.csdn.net/qinhan728/article/details/48792691)
  
 ## man systemd ## man systemd
  
-systemd 是linux操作系统的系统和服务管理器,boot启动后的第一个进程(PID=1),systemd扮演初始化系统,启动和维护用户空间服务。+systemd 是linux操作系统的系统和服务管理器,作为boot启动后的第一个进程(PID=1),systemd扮演初始化系统,以及启动和维护用户空间服务。
  
-为了兼容SysV,如果systemd初始化被调用并且进程id不是1,它将执行`telinit`+为了兼容SysV,如果systemd初始化被调用并且进程id不是1,它将执行`telinit`,并且将同步参数到该应用,所以在正常系统登录状态下的init和telinit是等同的。更多信息通过`man telinit` 了解。
  
-为系统实例启动,systemd`system.conf` 配置文件开始解释否则从`user.conf`,更多信息参考`systemd-system.conf`。+为系统实例启动,systemd通过`system.conf` 解析配置文件,如果作为用户进程启动,从`user.conf`解析配置文件,更多信息通过`systemd-system.conf` 了解
  
 ## systemd vs sysv init ## systemd vs sysv init
  
-[Systemd](https://www.ibm.com/developerworks/cn/linux/1407_liuming_init3/index.html)+系统同时存在sysV init脚本使能和systemd service,那么到底是生谁效的?
  
-* [system V与systemd](https://blog.csdn.net/qinhan728/article/details/48792691) +    如果同时存在systemd 单元文件和sysVinit脚本,亦或者upstart配置文件,理论上systemd>sysv init>upstart.
- +
-* 系统同时存在sysV init脚本使能和systemd service那么到底是生效了? +
- +
-systemd如何控制sysV init脚本?+
  
 * 如下路径的unit 关系,哪些unit是使能的? * 如下路径的unit 关系,哪些unit是使能的?
行 32: 行 32:
     WantedBy=multi-user.target     WantedBy=multi-user.target
     ```     ```
- 
-     
  
     ```bash     ```bash
行 39: 行 37:
     /etc/systemd/system     /etc/systemd/system
     ├── multi-user.target.wants     ├── multi-user.target.wants
-    │   ├── cron.service -> /lib/systemd/system/cron.service 
-    │   ├── redis-server.service -> /lib/systemd/system/redis-server.service 
-    │   ├── remote-fs.target -> /lib/systemd/system/remote-fs.target 
-    │   ├── rsync.service -> /lib/systemd/system/rsync.service 
-    │   ├── rsyslog.service -> /lib/systemd/system/rsyslog.service 
-    │   ├── ssh.service -> /lib/systemd/system/ssh.service 
-    │   ├── sudo.service -> /lib/systemd/system/sudo.service 
-    │   ├── systemd-networkd.service -> /lib/systemd/system/systemd-networkd.service 
-    │   ├── systemd-resolved.service -> /lib/systemd/system/systemd-resolved.service 
     │   ├── watchdog.service -> /lib/systemd/system/watchdog.service     │   ├── watchdog.service -> /lib/systemd/system/watchdog.service
-    │   └── wpa_supplicant.service -> /lib/systemd/system/wpa_supplicant.service 
     ```     ```
  
-    可以通过`systemctl list-unit-files |grep enable `查找所有使能的unit文件,同时可以通过`systemctl preset-all `复位所有使能的unitfile+    可以通过`systemctl list-unit-files |grep enable `查找所有使能的unit文件,同时可以通过`systemctl preset-all `复位所有使能的unit file。 
 + 
 +* systemd如何控制sysV init脚本? 
 + 
 +    ```bash 
 +    /lib/systemd/system/supervisor.service 
 +    /etc/systemd/system/multi-user.target.wants/supervisor.service #软连接 
 +    ``` 
 + 
 +    如果同时存在`supervisor.service` 和对应软连接,此时启动由systemd控制,并且状态为`enable`。 
 + 
 +    ```bash 
 +    $ systemctl list-unit-files |grep supervisor 
 +    supervisor.service                           enabled 
 +    ``` 
 + 
 +    如果存在`superviosr.service`不存在对应的软连接,此时启动有systemd控制,状态为`disable`,开机不启动supervisor服务。 
 + 
 +    ```bash 
 +    $ systemctl list-unit-files |grep supervisor 
 +    supervisor.service                           disabled 
 +    ``` 
 + 
 +    ``` 
 +    /etc/init.d/supervisor  
 +    /etc/rc5.d/S01supervisor 
 +    ``` 
 + 
 +    如果同时存在`supervisor`和`S01supervisor`  并且不存在如上的systemd 单元文件,那么此时启动由sysVinit控制
  
 如上问题还是只有从`man systemctl` 当中找答案哦。 如上问题还是只有从`man systemctl` 当中找答案哦。
jaysnote/systemd.txt · 最后更改: 2021/06/22 23:14 (外部编辑)