Files
master/chapter07/systemd-custom.html
2015-05-23 18:50:06 +08:00

154 lines
7.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title> 7.10.&nbsp;Systemd Usage and Configuration </title>
<link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="stylesheet" href="../stylesheets/lfs-print.css"
type="text/css" media="print">
</head>
<body class="lfs" id="lfs-7.7-systemd">
<div class="navheader">
<h4> Linux From Scratch - Version 7.7-systemd </h4>
<h3> 第 7 章. 基本系统配置 </h3>
<ul>
<li class="prev"> <a accesskey="p" href="etcshells.html"
title="Creating the /etc/shells File">上一页</a>
<p> 建立 /etc/shells 文件 </p>
</li>
<li class="next"> <a accesskey="n"
href="../chapter08/chapter08.html" title="Making the LFS
System Bootable">下一页</a>
<p> 让 LFS 可以启动 </p>
</li>
<li class="up"> 返回<br>
</li>
<li class="home"> <a accesskey="h" href="../index.html"
title="Linux From Scratch - Version 7.7-systemd">主页</a> </li>
</ul>
</div>
<div class="sect1" xml:lang="en" lang="en">
<h1 class="sect1"> <a id="ch-scripts-systemd-custom"
name="ch-scripts-systemd-custom"></a>7.10. Systemd 的用法与配置 </h1>
<div class="sect2" xml:lang="en" lang="en">
<h2 class="sect2"> 7.10.1. 基本配置 </h2>
<p> <code class="filename">/etc/systemd/system.conf</code>
文件包含了大量的 systemd 控制命令。假如未作任何的更改,文件中的所有行应该都是注释掉的,这代表了 systemd
正使用默认的运行方式。这个文件中可以设置日志级别,可以修改日志的基本设置。所有设置项都可以在 man 手册的 <code
class="filename">systemd-system.conf(5)</code> 中查看。</p>
</div>
<div class="sect2" xml:lang="en" lang="en">
<h2 class="sect2"> 7.10.2. 禁用启动时清屏 </h2>
<p> 默认情况下systemd 将会在系统启动快要结束的时候清屏。如不需要,使用以下操作禁用:</p>
<pre class="userinput"><kbd class="command">mkdir -pv /etc/systemd/system/getty@tty1.service.d
cat &gt; /etc/systemd/system/getty@tty1.service.d/noclear.conf &lt;&lt; EOF
<code class="literal">[Service]
TTYVTDisallocate=no</code>
EOF</kbd>
</pre>
<p> 拥有 root 权限的账户总是可以通过<code><strong> </strong></code><strong
class="userinput"><code>journalctl -b</code></strong>
查看启动信息。</p>
</div>
<div class="sect2" xml:lang="en" lang="en">
<h2 class="sect2"> 7.10.3. 禁止 /tmp 使用 tmpfs</h2>
<p> 默认情况下,<code class="filename">/tmp</code> 使用 tmpfs
文件系统。如不需要,使用以下操作禁用:</p>
<pre class="userinput"><kbd class="command">ln -sfv /dev/null /etc/systemd/system/tmp.mount</kbd>
</pre>
<p> 如果已经为 <code class="filename">/tmp</code><code
class="filename">/etc/fstab </code>中指定了专门的分区,那么此操作是多余的。</p>
</div>
<div class="sect2" xml:lang="en" lang="en">
<h2 class="sect2"> 7.10.4. 配置自动建立和删除文件</h2>
<p> 有这样几个服务可以建立或删除文件/文件夹:</p>
<div class="itemizedlist">
<ul>
<li class="listitem">
<p> systemd-tmpfiles-clean.service </p>
</li>
<li class="listitem">
<p> systemd-tmpfiles-setup-dev.service </p>
</li>
<li class="listitem">
<p> systemd-tmpfiles-setup.service </p>
</li>
</ul>
</div>
<p> 系统配置文件为 <code class="filename">/usr/lib/tmpfiles.d/*.conf。</code>
地配置文件在 <code class="filename">/etc/tmpfiles.d</code> 中。 <code
class="filename">/etc/tmpfiles.d</code> 中的所有文件都来自于 <code
class="filename">/usr/lib/tmpfiles.d</code>,且具有相同名称中的文件(译者注:
在原文中,说的是 <code class="filename">/etc/tmpfiles.d </code>目录中的文
件是 <code class="filename">/usr/lib/tmpfiles.d</code> 中的文件的
override也就是说当2个目录存在相同文件名的文件<code class="filename">/etc/tmpfiles.d</code>
优先读取,但是当 <code class="filename">/etc/tmpfiles.d</code>
下的文件存在问题,则会去读取<code class="filename"> /usr/lib/tmpfiles.d</code>
中的文件)。可以在 man 手册的 <code class="filename">tmpfiles.d(5)</code>
中查看此文件的格式。</p>
</div>
<div class="sect2" xml:lang="en" lang="en">
<h2 class="sect2"> 7.10.5. 覆盖默认服务的行为</h2>
<p> 可以通过在<code> </code><code class="filename">/etc/systemd/system</code>
下新建配置文件的方法改变 systemd 服务的默认行为。例如:</p>
<pre class="userinput"><kbd class="command">mkdir -pv /etc/systemd/system/foobar.service.d
cat &gt; /etc/systemd/system/foobar.service.d/foobar.conf &lt;&lt; EOF
<code class="literal">[Service]
Restart=always
RestartSec=30</code>
EOF</kbd>
</pre>
<p> 可以在 man 手册的 <code class="filename">systemd.unit(5)</code>
中查询更多信息。建立好文件之后,请运行<code><strong> </strong></code><strong
class="userinput"><code>systemctl daemon-reload</code></strong>
<strong class="userinput"><code>systemctl restart foobar</code></strong>
激活所做更改。<br>
</p>
</div>
<div class="sect2" xml:lang="en" lang="en">
<h2 class="sect2"> 7.10.6.调试启动顺序</h2>
<p> 有一些命令可以帮助分析 systemd 启动进程,例如:</p>
<div class="itemizedlist">
<ul>
<li class="listitem">
<p> systemctl list-units -t service [--all] <br>
</p>
</li>
<li class="listitem">
<p> systemctl list-units -t target [--all]<br>
</p>
</li>
<li class="listitem">
<p> systemctl show -p Wants multi-user.target </p>
</li>
<li class="listitem">
<p> systemctl status sshd.service </p>
</li>
</ul>
</div>
</div>
</div>
<div class="navfooter">
<ul>
<li class="prev"> <a accesskey="p" href="etcshells.html"
title="Creating the /etc/shells File">上一页</a>
<p> 建立 /etc/shells 文件 </p>
</li>
<li class="next"> <a accesskey="n"
href="../chapter08/chapter08.html" title="Making the LFS
System Bootable">下一页</a>
<p> 让 LFS 可以启动 </p>
</li>
<li class="up"> <a accesskey="u" href="chapter07.html"
title="Chapter&nbsp;7.&nbsp;Basic System Configuration">返回</a>
</li>
<li class="home"> <a accesskey="h" href="../index.html"
title="Linux From Scratch - Version 7.7-systemd">主页</a> </li>
</ul>
</div>
</body>
</html>