<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Linux on 极客Vinkey</title>
    <link>https://www.mawenqian.com/zh/tags/linux/</link>
    <description>Recent content in Linux on 极客Vinkey</description>
    <image>
      <title>极客Vinkey</title>
      <url>https://www.mawenqian.com/images/papermod-cover.png</url>
      <link>https://www.mawenqian.com/images/papermod-cover.png</link>
    </image>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    <copyright>MA Wenqian · mawenqian.com</copyright>
    <lastBuildDate>Tue, 18 Aug 2026 13:18:43 +0800</lastBuildDate>
    <atom:link href="https://www.mawenqian.com/zh/tags/linux/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>用 systemd 模板单元一份配置跑多个实例：以 frp 为例</title>
      <link>https://www.mawenqian.com/zh/systemd-template-unit/</link>
      <pubDate>Tue, 18 Aug 2026 09:30:00 +0800</pubDate>
      <guid>https://www.mawenqian.com/zh/systemd-template-unit/</guid>
      <description>&lt;p&gt;一台机器上要同时连三个 frp 服务端，网上大部分教程的做法是复制三份 &lt;code&gt;frpc.service&lt;/code&gt;，改三次路径。改一次参数要同步改三个文件，迟早出错。&lt;/p&gt;
&lt;p&gt;systemd 自带的**模板单元（template unit）**就是为这种场景准备的：写一份 &lt;code&gt;frpc@.service&lt;/code&gt;，后面想开几个实例就开几个。这篇先用 frp 走一遍完整流程，再讲怎么把同一套写法套到 xray、socat、Python 脚本等任何需要多开的程序上。&lt;/p&gt;
&lt;!-- more --&gt;
&lt;h2 id=&#34;模板单元是什么&#34;&gt;模板单元是什么&lt;/h2&gt;
&lt;p&gt;普通单元文件叫 &lt;code&gt;frpc.service&lt;/code&gt;，模板单元文件名多一个 &lt;code&gt;@&lt;/code&gt;，叫 &lt;code&gt;frpc@.service&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;它本身不会运行，只有在你启动 &lt;code&gt;frpc@azure_hk.service&lt;/code&gt; 的时候，systemd 才会拿这个模板生成一个真正的实例，并且把 &lt;code&gt;@&lt;/code&gt; 后面的那串字符串（这里是 &lt;code&gt;azure_hk&lt;/code&gt;）作为&lt;strong&gt;实例名&lt;/strong&gt;，替换掉单元文件里的 &lt;code&gt;%i&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;所以「一份模板 + N 个实例名 = N 个互相独立的服务」，每个实例有独立的进程、独立的日志、独立的启停状态，但共用同一份单元文件。&lt;/p&gt;
&lt;h2 id=&#34;frp-实战&#34;&gt;frp 实战&lt;/h2&gt;
&lt;h3 id=&#34;1-写模板单元&#34;&gt;1. 写模板单元&lt;/h3&gt;
&lt;p&gt;新建 &lt;code&gt;/etc/systemd/system/frpc@.service&lt;/code&gt;：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-ini&#34; data-lang=&#34;ini&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;[Unit]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;Description&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;Frp Client Service - %i&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;After&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;network.target syslog.target&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;Wants&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;network.target&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;[Service]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;Type&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;simple&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;Restart&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;on-failure&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;RestartSec&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;5s&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# %i 会被替换为 @ 后面的实例名&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;ExecStart&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/usr/local/frp/frpc -c /usr/local/frp/frpc-%i.toml&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;[Install]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;WantedBy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;multi-user.target&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;2-按命名约定放配置文件&#34;&gt;2. 按命名约定放配置文件&lt;/h3&gt;
&lt;p&gt;模板能生效的前提是&lt;strong&gt;配置文件名和实例名一一对应&lt;/strong&gt;。这里约定为 &lt;code&gt;/usr/local/frp/frpc-&amp;lt;实例名&amp;gt;.toml&lt;/code&gt;：&lt;/p&gt;</description>
    </item>
    <item>
      <title>Docker 装完之后：免 sudo、配代理，以及每天都在敲的那些命令</title>
      <link>https://www.mawenqian.com/zh/docker-post-install/</link>
      <pubDate>Tue, 18 Aug 2026 09:20:00 +0800</pubDate>
      <guid>https://www.mawenqian.com/zh/docker-post-install/</guid>
      <description>&lt;p&gt;&lt;code&gt;apt install docker-ce&lt;/code&gt; 跑完并不等于能用了。每次装完新机器我都要重复同样三件事：把当前用户加进 docker 组、给守护进程配代理、然后把服务用 compose 起起来。这篇把这三件事和之后天天要敲的命令一起记下来，下次直接抄。&lt;/p&gt;
&lt;!-- more --&gt;
&lt;h2 id=&#34;一免-sudo-敲-docker&#34;&gt;一、免 sudo 敲 docker&lt;/h2&gt;
&lt;p&gt;刚装完执行 &lt;code&gt;docker ps&lt;/code&gt; 会报 &lt;code&gt;permission denied ... /var/run/docker.sock&lt;/code&gt;。因为这个 socket 属于 &lt;code&gt;docker&lt;/code&gt; 组，而你的用户不在组里。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 1. 创建 docker 组（安装时通常已自动创建，执行一下无妨）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo groupadd docker
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 2. 将当前用户加入 docker 组&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo usermod -aG docker &lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 3. 激活组更改（或者直接退出并重新登录 SSH）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;newgrp docker
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;newgrp&lt;/code&gt; 只对当前这个 shell 生效，新开的窗口仍然是旧的组信息。想彻底干净，还是退出重连 SSH 最省事。&lt;/p&gt;
&lt;p&gt;验证：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run --rm hello-world
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;⚠️ 需要知道的一件事：&lt;strong&gt;docker 组等价于 root 权限&lt;/strong&gt;。进了这个组的用户，可以挂载宿主机根目录起一个容器，等于拿到全盘读写。个人服务器无所谓，多人共用的机器就要想清楚再加。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;二给守护进程配代理&#34;&gt;二、给守护进程配代理&lt;/h2&gt;
&lt;p&gt;在境内拉 &lt;code&gt;docker.io&lt;/code&gt; 的镜像经常超时。注意这里要配的是 &lt;strong&gt;dockerd 这个守护进程的代理&lt;/strong&gt;，不是你 shell 里的 &lt;code&gt;http_proxy&lt;/code&gt;——因为真正去拉镜像的是后台的 dockerd，它读不到你终端里的环境变量。&lt;/p&gt;</description>
    </item>
    <item>
      <title>WSL 里中文全是方块？装语言包和字体就好了</title>
      <link>https://www.mawenqian.com/zh/wsl-chinese-font/</link>
      <pubDate>Tue, 18 Aug 2026 09:10:00 +0800</pubDate>
      <guid>https://www.mawenqian.com/zh/wsl-chinese-font/</guid>
      <description>&lt;p&gt;默认装好的 WSL 显示中文全是方块。我的主机系统是英文版 Windows，估计是这个原因——WSL 里既没有中文 locale，也没有能渲染中文的字体。补上这两样就好了。&lt;/p&gt;
&lt;!-- more --&gt;
&lt;h2 id=&#34;一安装中文语言包&#34;&gt;一、安装中文语言包&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install language-pack-zh-hans
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;二重新配置-locale&#34;&gt;二、重新配置 locale&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo dpkg-reconfigure locales
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;在弹出的列表里勾选 &lt;code&gt;en_US.UTF-8&lt;/code&gt; 和 &lt;code&gt;zh_CN.UTF-8&lt;/code&gt;，下一屏选择 &lt;code&gt;zh_CN.UTF-8&lt;/code&gt; 作为默认语言。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;列表用空格键勾选、方向键移动、回车确认，不是鼠标点。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;三安装字体管理工具&#34;&gt;三、安装字体管理工具&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install fontconfig
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;四把-windows-的字体拿过来用&#34;&gt;四、把 Windows 的字体拿过来用&lt;/h2&gt;
&lt;p&gt;装 Windows 字体的方法有很多，我觉得下面这个直接复制的最省事。WSL 里 &lt;code&gt;/mnt/c&lt;/code&gt; 就是 Windows 的 C 盘，所以一条 &lt;code&gt;cp&lt;/code&gt; 就够了：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo cp -r /mnt/c/Windows/Fonts /usr/share/fonts/windows
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;刷新字体缓存：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fc-cache -f -v
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;五退出重进-wsl&#34;&gt;五、退出重进 WSL&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-powershell&#34; data-lang=&#34;powershell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;wsl&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;-shutdown&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;在 PowerShell 里执行，然后重新打开 WSL，中文就正常了。&lt;/p&gt;
&lt;h2 id=&#34;验证&#34;&gt;验证&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;locale
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;应该能看到 &lt;code&gt;LANG=zh_CN.UTF-8&lt;/code&gt;。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fc-list :lang&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;zh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; head
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;能列出中文字体就说明字体装好了。&lt;/p&gt;</description>
    </item>
    <item>
      <title>新装 Linux 服务器初始化清单（持续更新）</title>
      <link>https://www.mawenqian.com/zh/linux-server-setup/</link>
      <pubDate>Tue, 18 Aug 2026 09:00:00 +0800</pubDate>
      <guid>https://www.mawenqian.com/zh/linux-server-setup/</guid>
      <description>&lt;p&gt;每次开一台新 VPS，我都会按同一个顺序过一遍：先看看这台机器什么底子，再理顺用户和权限，最后才开始装东西。这篇就是那份清单，也是我自己的命令备忘录，后面会一直往里加。&lt;/p&gt;
&lt;!-- more --&gt;
&lt;h2 id=&#34;一先看看这台机器什么底子&#34;&gt;一、先看看这台机器什么底子&lt;/h2&gt;
&lt;h3 id=&#34;一条命令看全部&#34;&gt;一条命令看全部&lt;/h3&gt;
&lt;p&gt;Ubuntu 上登录时显示的那一大段摘要，其实可以随时手动调出来：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;landscape-sysinfo
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;输出包括系统负载、根分区占用、内存占用、交换分区、进程数、内网 IP，和登录时看到的一模一样。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;如果提示命令不存在，装一下 &lt;code&gt;sudo apt install landscape-common&lt;/code&gt;。非 Ubuntu 系统没有这个命令，用下面的分项命令代替。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;分项快速查看&#34;&gt;分项快速查看&lt;/h3&gt;
&lt;p&gt;只想看某一项的时候，这几条更快：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;free -h
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;看 &lt;code&gt;available&lt;/code&gt; 那一列，不要只看 &lt;code&gt;free&lt;/code&gt;。&lt;/strong&gt; Linux 会把空闲内存拿去做缓存，&lt;code&gt;free&lt;/code&gt; 显示的是完全没被碰过的部分，数字往往小得吓人；&lt;code&gt;available&lt;/code&gt; 才是系统真正还能分配给程序用的量。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;df -h
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;磁盘占用。要找出到底是谁把盘吃满了，接着用：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo du -h --max-depth&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; / &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sort -hr &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; head -20
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uptime
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;系统整体负载。后面三个数字分别是 1 / 5 / 15 分钟的平均负载，和 CPU 核心数比较着看才有意义——4 核机器负载 4 才算跑满。核心数用 &lt;code&gt;nproc&lt;/code&gt; 查。&lt;/p&gt;
&lt;h3 id=&#34;看有哪些服务在跑&#34;&gt;看有哪些服务在跑&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl list-units --type&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;service --state&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;running
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;新机器上这条命令能让你知道系统预装了什么在后台跑，顺手关掉不需要的可以省点内存。&lt;/p&gt;
&lt;p&gt;只看失败的服务：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl --failed
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;二用户与权限&#34;&gt;二、用户与权限&lt;/h2&gt;
&lt;h3 id=&#34;让-sudo-免密&#34;&gt;让 sudo 免密&lt;/h3&gt;
&lt;p&gt;如果你想保留自己的普通用户身份、敲命令时依然带 &lt;code&gt;sudo&lt;/code&gt;，但不想每次都输密码，可以改 &lt;code&gt;sudoers&lt;/code&gt;。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
