Questions tagged «systemd»

systemd是传统Linux init的现代替代品。它的主要功能包括表达服务之间的依赖关系和主动启动服务并行化的能力。

6
SSH会话在关机/重新启动时挂起
我有一台在其上运行Debian和sshd的服务器,以防万一我需要重启服务器,我的SSH会话在客户端挂起,直到TCP超时。我认为这是因为sshd终止时,它不会显式关闭与主机的打开的SSH会话。我应该怎么做才能sshd首先断开每个人的连接,然后按正常方式终止自身连接?到目前为止,我还没有看到man sshd_config与关机行为有关的参数。
13 ssh  debian  systemd 

7
在docker容器(arch linux)中运行systemd
我正在尝试查看是否可以在docker容器中运行systemd(正在容器中运行arch linux)。 我使用所有功能启动docker,并在cgroups中绑定mount: docker run -it --rm --privileged -v /sys/fs/cgroup:/sys/fs/cgroup:ro .. 但是,如果我尝试运行systemd二进制文件: Trying to run as user instance, but the system has not been booted with systemd. 试图找出如何正确地对systemd进行初始化的方法开始了。

2
如何调试系统单元ExecStart
我很好奇我是否可以打印出完全扩展的ExecStart/ExecStop命令行。考虑以下示例: ExecStart=/usr/bin/java $OPTS_COMMON $OPTS $OPTS_LOG $OPTS_DEBUG some.class.Start --param1 ${PARAM1} --param2 ${PARAM2} 我的命令行很长,涉及很多环境变量。如果某些变量出错(例如,通过嵌入式配置),则服务可能根本无法启动。但是,我在任何地方都看不到带有替代env的完全展开的行,因此我很难找出问题所在。 我没有运气谷歌搜索,到目前为止,我发现的唯一可能性是修改单元文件以运行,/usr/bin/echo而不是服务本身。但这有点累。甚至更烦人的解决方案-逐一检查每个环境变量。 有什么方法可以强制系统化地向我展示实际尝试运行的内容吗?
12 systemd 

2
如何配置systemd以在重载时终止并重新启动守护进程?
我有一个老式的守护程序,我想使用systemd进行控制。当其配置文件更改时,需要将其杀死并重新启动。换句话说,在编辑配置文件后,systemctl reload MYSERVICE应终止该进程并重新启动它。 尝试1:尝试使用默认值。这告诉systemd如何启动守护程序,而不是如何重新加载它。 [Service] ExecStart=/usr/bin/MYSERVICE Type=simple 其结果是,start和restart工作,但reload给出了这样的错误: # systemctl reload MYSERVICE Failed to reload MYSERVICE.service: Job type reload is not applicable for unit MYSERVICE.service. 尝试2:告诉它如何终止进程。这杀死了进程,但是systemd不会为我重新启动它。 [Service] ExecStart=/usr/bin/MYSERVICE Type=simple ExecReload=/bin/kill -HUP $MAINPID ...其次是... # systemctl daemon-reload # systemctl reload MYSERVICE ...杀死进程,但不会自动重启。 尝试3:也使用ExecReload重新启动该过程。失败的原因如下: ExecReload=/bin/kill -HUP $MAINPID ; /usr/bin/MYSERVICE ...我收到的错误消息...: # systemctl …
12 systemd 

1
如何使用systemd-firstboot.service?
我正在制作Debian Jessie的图片。引导时,系统没有/etc/machine-id文件。这会导致无法启动的日记记录出现一些问题。 我发现在systemd仓库中: # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # …
11 linux  boot  systemd 

2
有没有一种方法可以只在RHEL7中保存防火墙?
我开始使用RHEL7,并了解一些有关systemd的更改。 有没有一种方法可以/sbin/service iptables save在firewalld中执行? $ /sbin/service iptables save The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl. 我可以从文档中找到最接近的并行度是--reload: Reload the firewall without loosing state information: $ firewall-cmd --reload 但是它没有明确说明是否保存。

5
正确设置主机名-Amazon EC2上的Fedora 20
语境 我在Amazon EC2上运行了Fedora 20云映像(此后称为“实例”)。我不确定是否要永久设置其主机名。 目标 在这种情况下,假设我要将实例的主机名设置为penpen.homelinux.org。(此名称还将使用ddclient,在DynDNS上注册,但这是我们对此不感兴趣的另一个方面。) 当然,可以在启动完成后手动设置主机名(hostnamectl除其他外使用)。但是,我们希望在首次登录之前设置正确的主机名。 传统上,要永久配置主机名,可以修改的内容/etc/hostname。不幸的是,这在这里不起作用。 默认系统行为 默认情况下,该实例将其主机名设置为内部EC2名称。启动后,我们可以查看产生主机名的所有细微差别,我们发现: Kernel hostname via 'sysctl' : ip-10-164-65-105.ec2.internal Kernel domainname via 'sysctl' : (none) File '/etc/hostname' : contains 'ip-10-164-65-105.ec2.internal' File '/etc/sysconfig/network' : exists but has no 'HOSTNAME' line According to the shell : HOSTNAME = ip-10-164-65-105.ec2.internal Nodename given by 'uname --nodename' : …

1
使用Linux / Systemd引导时增加磁盘检测超时
我有一台装有很多磁盘的计算机,并且在HBA模式下有一个额外的SAS控制器。这似乎导致Linux在initramfs中至少思考8-10秒钟,然后磁盘才真正出现。磁盘检测超时时间为10秒。这会导致BTRFS / MDADM / etc无法挂载我在系统中拥有的RAID1,从而使我进入应急外壳,从那里我可以实际挂载磁盘并继续正常运行。 我的问题是,如何在启动时从10秒增加超时?在systemd中吗?在udev中吗?别的地方?我不确定从哪里开始寻找内容,而谷歌搜索这个问题似乎似乎使人们寻求提高I / O超时或其他一些(scsi / lun / etc)超时,但是我不是在寻找。
11 linux  boot  systemd  timeout  btrfs 

1
Systemd:在启动时运行Python脚本(virtualenv)
我有一个Python脚本,通常使用以下命令运行它: (environment) python run.py 我想在开始时运行此脚本。(我正在使用ubuntu)这是我的服务: [Unit] Description=My Script Service After=multi-user.target [Service] Type=idle ExecStart=/home/user/anaconda3/bin/python /home/user/space/run.py [Install] WantedBy=multi-user.target 顺便说一句,我无法运行此脚本,但是我可以运行不在环境中的任何脚本。如何在启动(virtualenv)时运行python脚本? sudo systemctl status user_sent ● user_sent.service - Mail Service Loaded: loaded (/lib/systemd/system/user_sent.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since xxxxx 16:30:20 MSK; 3s ago Process: 3713 ExecStart=/usr/bin/python run.py (code=exited, status=200/CHDIR) Main …

2
清漆守护程序未在配置的端口上侦听
我正在尝试在Ubuntu 16.04上安装清漆, 我读了几篇文章都没有用。从我阅读的内容来看,自ubuntu 15.04起,配置清漆的方式已更改(由于systemd)。 现在,我陷入困境,这是行不通的: / etc / default / varnish: DAEMON_OPTS="-a :80 \ -T localhost:6082 \ -f /etc/varnish/default.vcl \ -S /etc/varnish/secret \ -s malloc,256m" /etc/varnish/default.vcl(通常指向指向127.0.0和端口8080的主机,但出于调试目的,我将其修改为外部域)vcl 4.0; # Default backend definition. Set this to point to your content server. backend default { .host = "www.varnish-cache.org"; .port = "80"; } /etc/apache2/ports.conf …

1
systemd解析的服务做什么,它需要侦听所有接口吗?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 2个月前关闭。 我正在从事一个涉及IOT设备(现已弃用的Intel Galileo)的项​​目。我正在加固这些设备,我注意到该systemd-resolved服务正在所有接口(0.0.0.0)上监听。 root@hostname:~# netstat -altnp Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:5355 0.0.0.0:* LISTEN 240/systemd-resolve 阅读服务的freedesktop.org描述之后这里,它指出, systemd-resolved是一项系统服务,可为本地应用程序提供网络名称解析。 我跑了一个测试,我跑了ping到google.com了哪里systemd-resolved正在运行。然后,我禁用了该服务,并将发送ping给 yahoo.com。两个请求都没有丢包。 我的问题如下: 这项服务在做什么? 如果要为本地应用程序提供名称解析,为什么要在0.0.0.0接口上侦听? 这是安全问题吗? 禁用此服务有哪些潜在影响? 在此先感谢您提供任何信息/帮助。抱歉,如果我没有遵守问题格式,请第一时间发布。请根据需要进行编辑。
11 linux  systemd 

2
Systemd插件无法创建PID文件
我在path上有一个systemd-machined的插件/etc/systemd/system/systemd-machined.service.d/10-machined-pid-file.conf。当我跑步时,systemctl status systemd-machined我确实看到了线条 Drop-In: /etc/systemd/system/systemd-machined.service.d └─10-machined-pid-file.conf 但是,我在/ var / run /中看不到PID文件。根据我的观点: [Serivce] PIDFile=/var/run/machined.pid 我相信创建该PID文件应该没有任何问题。我有什么想念的吗?
11 files  systemd  pid 

1
Systemd不会重新启动服务,尽管Restart = always
这是我的systemd服务的单位文件: [Unit] Description=Tunnel For %i After=network.target [Service] User=autossh ExecStart=/usr/bin/autossh -M 0 -N -o "ExitOnForwardFailure yes" -o "ConnectTimeout=1" -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -R 40443:installserver:40443 -R 8080:installserver:8080 tunnel@%i Restart=always [Install] WantedBy=multi-user.target 该单元在15天前发生了故障,尽管上面的单元文件中有“ Restart = always”,但systemd并未重新启动它。 这是该服务的状态输出: salt:/srv # systemctl status autossh@eins-work autossh@eins-work.service - Tunnel For eins-work Loaded: loaded (/etc/systemd/system/autossh@.service; enabled) …



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.