Articles of systemd

Systemd服务在停止依赖时停止,但在重新启动时停止

是否有可能定义systemd服务,如果其依赖关系停止(或崩溃),将停止,但如果其依赖性重新启动将保持不间断运行? 我得到的最接近的是BindTo声明,但是如果依赖重新启动,那也会停止我的服务。 澄清:如果依赖性消失(停止,失败),我希望我的服务停止。 如果依赖项在短时间内(重新启动)消失,我希望我的服务不中断。

如何设置我的网桥的外部接口与我使用networkd的主接口相同?

我创build了一个虚拟桥bridge0 : bridge0.netdev: [NetDev] Name=bridge0 Kind=bridge bridge0.network: [Match] Name=bridge0 [Network] DHCP=yes 并将我的主接口eth0连接到它 eth0.network: [Match] Name=eth0 [Network] Bridge=bridge0 但是,这将我的计算机用于DHCP的MAC地址更改为分配给bridge0的随机MAC地址。 有没有办法保留分配给eth0的物理MAC地址?

用SystemD通过侦听Socket来启动MongoDB

我想在我的开发机器上运行MongoDB,只要端口27017请求,但不是在此之前。 我已经得到了/usr/lib/systemd/system/mongodb.socket文件的一部分,但是现在我被困住了,还有其他什么东西在里面,我不知道这是否是正确的目录。 [Unit] Description=High-performance, schema-free document-oriented database Socket [Socket] ListenStream=27017 [Install] WantedBy=sockets.target 我的问题基本上是:还有什么我需要写在文件中,我在哪里放置这个文件,我必须做比运行systemctl enable mongodb.socket之后?

systemd中的dynamic依赖关系

我想弄清楚如何为systemd指定当前实例@的dynamic依赖关系。 在[Service]部分,我可以使用EnvironmentFile=来使用%ivariables加载variables,但是我没有看到[Unit]部分有这样的事情。 有没有办法为特定单元dynamic加载依赖关系?

Windows Azure上的Centos 7,挂载/ dev / sdb? (systemd)

我需要找出在Windows Azure上安装了哪些systemd服务/dev/sdb (aka /mnt/resource )? 我正在使用Centos 7映像,它是基于systemd的,我试图启动一个依赖于/mnt/resource已经安装的服务。 尝试使用谷歌search,但没有太多的运气呢。

与systemd一起使用心跳

我正在使用一个简单的心跳设置来处理与drbd共享的文件系统,并通过Apache提供服务。 我使用/etc/ha.d/haresources来定义ha资源,如下所示: server1 drbddisk::myfs \ Filesystem::/dev/drbd/by-res/myfs::/mnt/myfs::ext4::noatime \ IPaddr::10.0.0.254/24/eth0 apache2 这工作得很好,如果使用旧的debian sysvinit,但有systemd的种族问题,因为停止apache是​​asynchronous完成,所以当心跳发出“/etc/init.d/apache2停止”scrypt而它很快返回时,apache2仍然可以活跃,因此FS的卸载失败。 我知道很多解决方法来解决这个问题,但我想知道是否有一个“干净”的方式,而不必恢复到sysvinit

将日记日志获取到纯文本文件

我想将日志logging日志logging到一个文件中,以便以后可以将其取出并发送到Logstash。 我想到了运行syslog-ng,并使其成为journald的客户端,所以我会得到syslog文件。 我在CoreOS机器上使用了Docker容器,所以我尝试在CoreOS docker主机中运行syslog-ng作为容器,创build一个执行容器的systemd单元。 我跟着这个页面来获取systemd中的syslog ,但是如果我试图让我的syslog-ng容器直接从主机的syslog套接字中读取(通过挂载一个docker卷),它会抱怨“Address already in use”。 所以我有日志logging,一个运行syslog-ng的容器,但我不知道如何在syslog-ng中获取日志logging日志。 我的备选解决scheme是将日志文件logging到文件中,以运行执行journalctl -f –json | tee -a /var/log/systemd的systemd单元 journalctl -f –json | tee -a /var/log/systemd ,但是我不确定这个解决scheme的可靠性。 这是一个很好的解决scheme吗?

在CentOS 7中编辑SysV服务的开放文件限制

我想在CentOS 7中更改Riak服务的打开文件限制。问题是Riak仍然使用SysV init脚本。 根据文档,我必须创build/etc/systemd/system/riak.d/NAME.conf并在那里设置参数。 然后重新加载systemd和服务。 # In /etc/systemd/system/riak.d/limits.conf [Service] LimitNOFILE=65536 但是这不起作用: $ systemctl show riak -p LimitNOFILE LimitNOFILE=4096 我做错了什么? 这是否适用于SysV初始化脚本?

使用systemd和legacy init.d服务的服务顺序

在我的Fedora 23系统上,一个数据库由systemd启动。 依赖于该数据库的另一个服务(configuration单元variables)是通过init.d脚本启动的。 我不清楚什么才是正确的方式,使这些服务开始在正确的顺序(数据库之前configuration单元-megastore)。

如何configurationsystemd.network DHCP服务器来分配IP路由?

从这个问题我明白,我可以使用DHCP分发有道路线。 如何使用embedded在systemd.network中的DHCP服务器(如果可能)?