Linux系列讲解 —— 【systemd】下载及编译记录

Ubuntu18.04的init程序合并到了systemd中,本篇文章记录一下systemd的下载和编译。

1. 下载systemd源码

(1) 查看systemd版本号,用来确定需要下载的分支

shell 复制代码
sun@sun-pc:~$ systemd --version
systemd 237
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid

(2) 上面看到systemd的版本是237,对应git仓库的v237 tag

shell 复制代码
sun@sun-pc:~/3rdcode$ git clone https://github.com/systemd/systemd.git --branch=v237

下载完成后,systemd目录内容如下:

shell 复制代码
sun@sun-pc:~/3rdcode/systemd$ ls
catalog       configure       ENVIRONMENT.md  hwdb             Makefile     meson_options.txt  modprobe.d  po       README.md  shell-completion  sysusers.d  TODO                   travis-ci     xorg
coccinelle    DISTRO_PORTING  factory         LICENSE.GPL2     man          mkosi.build        network     presets  rules      src               test        tools                  UIDS-GIDS.md
CODING_STYLE  docs            HACKING         LICENSE.LGPL2.1  meson.build  mkosi.default      NEWS        README   scripts    sysctl.d          tmpfiles.d  TRANSIENT-SETTINGS.md  units

2. 配置编译环境

systemd代码下载完成后,进入systemd目录,执行下面命令

shell 复制代码
sun@sun-pc:~/3rdcode/systemd$ ./configure 
+ exec meson build
The Meson build system
Version: 0.45.1
Source dir: /home/sun/3rdcode/systemd
Build dir: /home/sun/3rdcode/systemd/build
Build type: native build
...

配置完后,可以看到systemd目录多了一个build目录

shell 复制代码
sun@sun-pc:~/3rdcode/systemd$ ls
build       CODING_STYLE    docs            HACKING       LICENSE.LGPL2.1  meson.build        mkosi.default  NEWS     README     scripts           sysctl.d    tmpfiles.d  TRANSIENT-SETTINGS.md  units
catalog     configure       ENVIRONMENT.md  hwdb          Makefile         meson_options.txt  modprobe.d     po       README.md  shell-completion  sysusers.d  TODO        travis-ci              xorg
coccinelle  DISTRO_PORTING  factory         LICENSE.GPL2  man              mkosi.build        network        presets  rules      src               test        tools       UIDS-GIDS.md

3. 编译systemd源码

shell 复制代码
sun@sun-pc:~/3rdcode/systemd$ make
相关推荐
a小胡哦11 分钟前
Windows、Mac、Linux,到底该怎么选?
linux·windows·macos·操作系统
_extraordinary_20 分钟前
Linux权限(一)
android·linux·excel
易安杰27 分钟前
ElasticSearch+Kibana通过Docker部署到Linux服务器中
linux·elasticsearch·搜索引擎·全文检索·中文分词
web2u32 分钟前
Docker入门及基本概念
java·运维·服务器·spring·docker·容器
人生!?1 小时前
给小米/红米手机root(工具基本为官方工具)——KernelSU篇
android·linux·智能手机
元气满满的热码式1 小时前
Docker实战-使用docker compose搭建博客
运维·docker·容器
Anna_Tong2 小时前
阿里云如何协助解决操作系统兼容性问题
linux·服务器·ubuntu·阿里云·centos·云计算·系统迁移
HaoHao_0102 小时前
如何将MySQL数据库迁移至阿里云
服务器·数据库·阿里云·云计算·云服务器·迁移
不良人天码星2 小时前
Linux的基础指令和环境部署,项目部署实战(下)
linux·运维·服务器
火一线3 小时前
【ASP .NET Core】ASP .NET Core介绍
服务器·游戏·.netcore