<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Linux Nibbles &#8211; Bubblog</title>
	<atom:link href="https://blog.yangyuanping.com/category/linux-nibbles/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.yangyuanping.com</link>
	<description>nullable reference types</description>
	<lastBuildDate>Fri, 13 Feb 2026 06:35:09 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://blog.yangyuanping.com/wp-content/uploads/2025/11/cropped-patrick_log_logo_251121-2-32x32.png</url>
	<title>Linux Nibbles &#8211; Bubblog</title>
	<link>https://blog.yangyuanping.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>pmset 命令速查</title>
		<link>https://blog.yangyuanping.com/pmset-%e5%91%bd%e4%bb%a4%e9%80%9f%e6%9f%a5/</link>
		
		<dc:creator><![CDATA[peny911]]></dc:creator>
		<pubDate>Fri, 13 Feb 2026 06:10:59 +0000</pubDate>
				<category><![CDATA[Linux Nibbles]]></category>
		<category><![CDATA[未分类]]></category>
		<guid isPermaLink="false">https://blog.yangyuanping.com/?p=1104</guid>

					<description><![CDATA[查看当前电源设置 常用设置 关闭显示器（分钟） 电脑休眠（分钟） 硬盘休眠（分钟） 待机延迟（秒） 混合休眠模 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading" id="查看当前电源设置">查看当前电源设置</h2>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>pmset -g</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">g</span></span></code></pre></div>



<h4 class="wp-block-heading" id="常用设置">常用设置</h4>



<h6 class="wp-block-heading" id="关闭显示器（分钟）">关闭显示器（分钟）</h6>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset displaysleep 15</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">displaysleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">15</span></span></code></pre></div>



<h3 class="wp-block-heading" id="电脑休眠（分钟）">电脑休眠（分钟）</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset sleep 30</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">sleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">30</span></span></code></pre></div>



<h3 class="wp-block-heading" id="硬盘休眠（分钟）">硬盘休眠（分钟）</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset disksleep 10</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">disksleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">10</span></span></code></pre></div>



<h3 class="wp-block-heading" id="待机延迟（秒）">待机延迟（秒）</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset standbydelay 10800
</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">standbydelay</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">10800</span></span>
<span class="line"></span></code></pre></div>



<h3 class="wp-block-heading" id="混合休眠模式">混合休眠模式</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset standby 1 # 启用待机
sudo pmset hibernatemode 25 # 混合休眠</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">standby</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">1</span><span style="color: #D8DEE9FF"> # </span><span style="color: #D8DEE9">启用待机</span></span>
<span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">hibernatemode</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">25</span><span style="color: #D8DEE9FF"> # </span><span style="color: #D8DEE9">混合休眠</span></span></code></pre></div>



<h2 class="wp-block-heading" id="常用组合">常用组合</h2>



<h3 class="wp-block-heading" id="永不休眠（接电源）">永不休眠（接电源）</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset -c sleep 0 displaysleep 0 disksleep 0</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">c</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">sleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">displaysleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">disksleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0</span></span></code></pre></div>



<h3 class="wp-block-heading" id="电池省电模式">电池省电模式</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset -b sleep 15 displaysleep 5 disksleep 10</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">b</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">sleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">15</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">displaysleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">5</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">disksleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">10</span></span></code></pre></div>



<h2 class="wp-block-heading" id="字段说明">字段说明</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>字段</th><th>值</th><th>说明</th></tr></thead><tbody><tr><td><strong>lidwake</strong></td><td>1</td><td>开盖唤醒</td></tr><tr><td><strong>autopoweroff</strong></td><td>0</td><td>自动关机（省电关机）</td></tr><tr><td><strong>lowpowermode</strong></td><td>1</td><td>低电量模式</td></tr><tr><td><strong>standbydelayhigh</strong></td><td>86400</td><td>高电量待机延迟（秒，24小时）</td></tr><tr><td><strong>autopoweroffdelay</strong></td><td>259200</td><td>自动关机延迟（秒，3天）</td></tr><tr><td><strong>proximitywake</strong></td><td>0</td><td>proximity 唤醒</td></tr><tr><td><strong>standby</strong></td><td>0</td><td>待机模式</td></tr><tr><td><strong>standbydelaylow</strong></td><td>10800</td><td>低电量待机延迟（秒，3小时）</td></tr><tr><td><strong>ttyskeepawake</strong></td><td>1</td><td>TTY 保持唤醒</td></tr><tr><td><strong>hibernatemode</strong></td><td>0</td><td>休眠模式（0=禁用）</td></tr><tr><td><strong>powernap</strong></td><td>0</td><td>电源nap</td></tr><tr><td><strong>gpuswitch</strong></td><td>2</td><td>GPU 自动切换</td></tr><tr><td><strong>hibernatefile</strong></td><td>/var/vm/sleepimage</td><td>休眠文件路径</td></tr><tr><td><strong>highstandbythreshold</strong></td><td>50</td><td>高电量待机阈值</td></tr><tr><td><strong>displaysleep</strong></td><td>5</td><td>显示器休眠（分钟）</td></tr><tr><td><strong>womp</strong></td><td>0</td><td>网络唤醒</td></tr><tr><td><strong>networkoversleep</strong></td><td>0</td><td>网络过载休眠</td></tr><tr><td><strong>sleep</strong></td><td>10</td><td>电脑休眠（分钟）</td></tr><tr><td><strong>lessbright</strong></td><td>1</td><td>暗屏时降低亮度</td></tr><tr><td><strong>halfdim</strong></td><td>1</td><td>半亮度休眠</td></tr><tr><td><strong>tcpkeepalive</strong></td><td>1</td><td>TCP 保持连接</td></tr><tr><td><strong>acwake</strong></td><td>0</td><td>电源适配器唤醒</td></tr><tr><td><strong>disksleep</strong></td><td>10</td><td>硬盘休眠（分钟）</td></tr></tbody></table></figure>



<h2 class="wp-block-heading" id="查看所有设置详情">查看所有设置详情</h2>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>pmset -g custom</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">g</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">custom</span></span></code></pre></div>



<h2 class="wp-block-heading" id="恢复默认设置">恢复默认设置</h2>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset -a sleep 10 displaysleep 10 disksleep 10</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">a</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">sleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">10</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">displaysleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">10</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">disksleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">10</span></span></code></pre></div>



<h3 class="wp-block-heading" id="禁用休眠（适合常开机）">禁用休眠（适合常开机）</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>sudo pmset -a sleep 0 disksleep 0
udo pmset -a hibernatemode 0</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9">sudo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">a</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">sleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">disksleep</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0</span></span>
<span class="line"><span style="color: #D8DEE9">udo</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">a</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">hibernatemode</span><span style="color: #D8DEE9FF"> </span><span style="color: #B48EAD">0</span></span></code></pre></div>



<h3 class="wp-block-heading" id="查看唤醒原因">查看唤醒原因</h3>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly># 查看当前阻止系统 / 显示器睡眠的所有电源断言（Power Assertions），快速定位 Mac 无法自动休眠的原因。
pmset -g assertions 

# 查看唤醒原因
pmset -g | grep wake</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9FF"># </span><span style="color: #D8DEE9">查看当前阻止系统</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">/</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">显示器睡眠的所有电源断言</span><span style="color: #D8DEE9FF">（</span><span style="color: #D8DEE9">Power</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">Assertions</span><span style="color: #D8DEE9FF">），</span><span style="color: #D8DEE9">快速定位</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">Mac</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">无法自动休眠的原因</span><span style="color: #D8DEE9FF">。</span></span>
<span class="line"><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">g</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">assertions</span><span style="color: #D8DEE9FF"> </span></span>
<span class="line"></span>
<span class="line"><span style="color: #D8DEE9FF"># </span><span style="color: #D8DEE9">查看唤醒原因</span></span>
<span class="line"><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">g</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">|</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">grep</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">wake</span></span></code></pre></div>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>需求</th><th>命令</th><th></th></tr></thead><tbody><tr><td>看唤醒设置</td><td><code>pmset -g</code></td><td>`grep wake`</td></tr><tr><td>看最近唤醒原因</td><td><code>pmset -g log</code></td><td>`grep -i &#8220;wake reason&#8221;`</td></tr><tr><td>看定时唤醒</td><td><code>pmset -g sched</code></td><td></td></tr><tr><td>查阻止睡眠的进程</td><td><code>pmset -g assertions</code></td><td></td></tr></tbody></table></figure>



<h2 class="wp-block-heading" id="参数说明">参数说明</h2>



<ul class="wp-block-list">
<li><code>-a</code> 所有电源模式</li>



<li><code>-c</code> 电源适配器（接充电器）</li>



<li><code>-b</code> 电池模式</li>



<li><code>-u</code> UPS 模式</li>
</ul>



<h2 class="wp-block-heading" id="hibernatemode-取值">hibernatemode 取值</h2>



<ul class="wp-block-list">
<li><code>0</code> &#8211; 内存休眠，唤醒快</li>



<li><code>1</code> &#8211; 安全休眠到磁盘</li>



<li><code>3</code> &#8211; 内存+磁盘混合（默认）</li>



<li><code>25</code> &#8211; 强制休眠到磁盘</li>
</ul>



<h2 class="wp-block-heading" id="相关命令">相关命令</h2>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff"><svg xmlns="http://www.w3.org/2000/svg" width="54" height="14" viewBox="0 0 54 14"><g fill="none" fill-rule="evenodd" transform="translate(1 1)"><circle cx="6" cy="6" r="6" fill="#FF5F56" stroke="#E0443E" stroke-width=".5"></circle><circle cx="26" cy="6" r="6" fill="#FFBD2E" stroke="#DEA123" stroke-width=".5"></circle><circle cx="46" cy="6" r="6" fill="#27C93F" stroke="#1AAB29" stroke-width=".5"></circle></g></svg></span><span role="button" tabindex="0" style="color:#d8dee9ff;display:none" aria-label="复制" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly># 立即锁屏
pmset displaysleepnow

# 查看电池状态
pmset -g batt

# 查看唤醒原因
pmset -g wake</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki nord" style="background-color: #2e3440ff" tabindex="0"><code><span class="line"><span style="color: #D8DEE9FF"># </span><span style="color: #D8DEE9">立即锁屏</span></span>
<span class="line"><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">displaysleepnow</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D8DEE9FF"># </span><span style="color: #D8DEE9">查看电池状态</span></span>
<span class="line"><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">g</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">batt</span></span>
<span class="line"></span>
<span class="line"><span style="color: #D8DEE9FF"># </span><span style="color: #D8DEE9">查看唤醒原因</span></span>
<span class="line"><span style="color: #D8DEE9">pmset</span><span style="color: #D8DEE9FF"> </span><span style="color: #81A1C1">-</span><span style="color: #D8DEE9">g</span><span style="color: #D8DEE9FF"> </span><span style="color: #D8DEE9">wake</span></span></code></pre></div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p><strong>来源</strong>: macOS 系统命令</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>TencentOS Server 4 安装 dotnet 运行时</title>
		<link>https://blog.yangyuanping.com/tencentos-server-4-%e5%ae%89%e8%a3%85-dotnet-%e8%bf%90%e8%a1%8c%e6%97%b6/</link>
		
		<dc:creator><![CDATA[peny911]]></dc:creator>
		<pubDate>Wed, 17 Dec 2025 18:39:49 +0000</pubDate>
				<category><![CDATA[Linux Nibbles]]></category>
		<category><![CDATA[.Net]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[TencentOS]]></category>
		<guid isPermaLink="false">https://blog.yangyuanping.com/?p=1051</guid>

					<description><![CDATA[TencentOS Server 4 基于 RHEL 8，使用 dnf： 添加 Microsoft 仓库 su [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>TencentOS Server 4 基于 RHEL 8，使用 dnf：</p>
<h1>添加 Microsoft 仓库</h1>
<p>sudo rpm -Uvh <a href="https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm">https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm</a></p>
<h1>安装运行时</h1>
<p>sudo dnf install -y aspnetcore-runtime-8.0</p>
<h1>验证</h1>
<p>dotnet &#8211;list-runtimes</p>
<p>如果上面的源不可用，可以用脚本安装：</p>
<h1>下载安装脚本</h1>
<p>curl -sSL <a href="https://dot.net/v1/dotnet-install.sh">https://dot.net/v1/dotnet-install.sh</a> -o dotnet-install.sh<br />
chmod +x dotnet-install.sh</p>
<h1>安装到 /usr/share/dotnet（全局）</h1>
<p>sudo ./dotnet-install.sh &#8211;channel 8.0 &#8211;runtime aspnetcore &#8211;install-dir /usr/share/dotnet</p>
<h1>创建软链接</h1>
<p>sudo ln -sf /usr/share/dotnet/dotnet /usr/bin/dotnet</p>
<h1>验证</h1>
<p>dotnet &#8211;list-runtimes</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Nginx + .NET 压测与连接问题排查总结</title>
		<link>https://blog.yangyuanping.com/nginx-net-%e5%8e%8b%e6%b5%8b%e4%b8%8e%e8%bf%9e%e6%8e%a5%e9%97%ae%e9%a2%98%e6%8e%92%e6%9f%a5%e6%80%bb%e7%bb%93/</link>
		
		<dc:creator><![CDATA[peny911]]></dc:creator>
		<pubDate>Wed, 17 Dec 2025 16:41:10 +0000</pubDate>
				<category><![CDATA[Linux Nibbles]]></category>
		<category><![CDATA[.Net]]></category>
		<category><![CDATA[Server]]></category>
		<guid isPermaLink="false">https://blog.yangyuanping.com/?p=1049</guid>

					<description><![CDATA[Nginx + .NET 压测与连接问题排查总结 本文是一次完整的 线上问题排查 + 架构修复 + 压力测试验 [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>Nginx + .NET 压测与连接问题排查总结</h1>
<blockquote>
<p>本文是一次完整的 <strong>线上问题排查 + 架构修复 + 压力测试验证</strong> 的工程级总结，可作为 <strong>事故复盘、容量评估报告、运维 Runbook</strong> 使用。</p>
</blockquote>
<hr />
<h2>一、问题背景与现象</h2>
<h3>初始问题</h3>
<ul>
<li>
<p>Nginx 错误日志频繁出现：</p>
<pre><code class="language-text">upstream timed out (110: Connection timed out) while connecting to upstream</code></pre>
</li>
<li>
<p>请求多为：</p>
<pre><code class="language-text">OPTIONS /api/Ads/resolve HTTP/2.0</code></pre>
</li>
<li>上游地址：&lt;code&gt;127.0.0.1:5085&lt;/code&gt;（.NET Kestrel）</li>
</ul>
<h3>同时观测到的内核异常</h3>
<ul>
<li>&lt;code&gt;listen queue overflow&lt;/code&gt;</li>
<li>&lt;code&gt;SYNs to LISTEN sockets dropped&lt;/code&gt;</li>
<li>&lt;code&gt;SYN cookies sent&lt;/code&gt;</li>
<li>&lt;code&gt;TCPTimeWaitOverflow&lt;/code&gt;</li>
</ul>
<h3>直接影响</h3>
<ul>
<li>Nginx 无法连接本机上游</li>
<li>API 出现大量失败</li>
<li>高并发下服务不可用</li>
</ul>
<hr />
<h2>二、根因分析（结论级）</h2>
<h3>1&#x20e3; Nginx → Kestrel 连接模型错误（<strong>核心根因</strong>）</h3>
<p>在 &lt;code&gt;location /&lt;/code&gt; 中错误地配置了：</p>
<pre><code class="language-nginx">proxy_set_header Connection "upgrade";</code></pre>
<p>导致：</p>
<ul>
<li>所有普通 HTTP 请求被迫使用 &lt;code&gt;Connection: upgrade&lt;/code&gt;</li>
<li>Keepalive 失效</li>
<li>每个请求都建立/断开 TCP 连接</li>
</ul>
<p><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>直接引发短连接风暴</strong></p>
<hr />
<h3>2&#x20e3; OPTIONS 预检请求被放大</h3>
<ul>
<li>外站（如豆瓣）触发大量跨域请求</li>
<li>每个请求都会先发 &lt;code&gt;OPTIONS&lt;/code&gt;</li>
<li>&lt;code&gt;OPTIONS&lt;/code&gt; 被转发到上游应用</li>
</ul>
<p>在短连接模型下形成 <strong>连接洪峰</strong>。</p>
<hr />
<h3>3&#x20e3; 内核层连锁反应</h3>
<ul>
<li>SYN backlog 被打满</li>
<li>accept queue 溢出</li>
<li>内核开始丢 SYN / 启用 SYN cookies</li>
<li>Nginx 连接上游直接超时（110）</li>
</ul>
<hr />
<h2>三、关键修复措施（工程级）</h2>
<h3>1&#x20e3; 引入 upstream keepalive（<strong>最关键修复</strong>）</h3>
<p>在 &lt;code&gt;http {}&lt;/code&gt; 作用域中新增：</p>
<pre><code class="language-nginx">upstream eaglex_upstream {
    server 127.0.0.1:5085;
    keepalive 256;
}</code></pre>
<p>统一使用：</p>
<pre><code class="language-nginx">proxy_pass http://eaglex_upstream;
proxy_http_version 1.1;
proxy_set_header Connection "";</code></pre>
<hr />
<h3>2&#x20e3; 修正 Connection 头使用方式（<strong>非常关键</strong>）</h3>
<ul>
<li>
<p><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/274c.png" alt="❌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 禁止在普通 HTTP 路径中使用：</p>
<pre><code class="language-nginx">Connection: upgrade</code></pre>
</li>
<li><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 只在 <strong>WebSocket 专用 location</strong> 中使用 upgrade</li>
</ul>
<hr />
<h3>3&#x20e3; 在 Nginx 层直接短路 OPTIONS 预检</h3>
<pre><code class="language-nginx">location = /api/Ads/resolve {
    if ($request_method = OPTIONS) {
        add_header Access-Control-Allow-Origin $http_origin always;
        add_header Access-Control-Allow-Methods "GET,POST,OPTIONS" always;
        add_header Access-Control-Allow-Headers "Content-Type,Authorization" always;
        add_header Access-Control-Max-Age 86400 always;
        return 204;
    }
    proxy_pass http://eaglex_upstream;
}</code></pre>
<p><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>彻底消除预检请求对上游的压力放大</strong></p>
<hr />
<h3>4&#x20e3; 缩短 proxy_connect_timeout（防止雪崩）</h3>
<pre><code class="language-nginx">proxy_connect_timeout 2s;</code></pre>
<p>避免 Nginx worker 在连接失败时长时间阻塞。</p>
<hr />
<h2>四、压测阶段的验证结论</h2>
<h3>压测过程中观测到的健康状态</h3>
<ul>
<li>&lt;code&gt;.NET&lt;/code&gt; CPU：≈ 260%–300%（4C 机器，尚有余量）</li>
<li>Nginx CPU：≈ 10%–20%</li>
<li>&lt;code&gt;ksoftirqd&lt;/code&gt;：极低</li>
<li>
<p>TCP 状态：</p>
<pre><code class="language-text">estab ≈ 3000
timewait ≈ 30
orphan = 0</code></pre>
</li>
<li>
<p>内核累计计数在压测前后 <strong>完全无增长</strong>：</p>
<ul>
<li>listen queue overflow</li>
<li>SYN dropped</li>
<li>TCPTimeWaitOverflow</li>
</ul>
</li>
</ul>
<h3>明确结论</h3>
<blockquote>
<p><strong>连接层 / Nginx / 内核 TCP 已完全稳定，系统瓶颈成功转移至 .NET 应用 CPU 层。</strong></p>
</blockquote>
<hr />
<h2>五、错误日志的两类问题区分（重要）</h2>
<h3>A. &lt;code&gt;110 Connection timed out&lt;/code&gt;</h3>
<pre><code class="language-text">while connecting to upstream</code></pre>
<ul>
<li>含义：连接队列 / accept / backlog 问题</li>
<li>根因：连接模型错误</li>
<li><strong>已在本次修复中解决</strong></li>
</ul>
<hr />
<h3>B. &lt;code&gt;111 Connection refused&lt;/code&gt;</h3>
<pre><code class="language-text">connect() failed (111: Connection refused)</code></pre>
<ul>
<li>含义：上游端口当时 <strong>没有进程在监听</strong></li>
<li>
<p>可能原因：</p>
<ul>
<li>dotnet 进程崩溃</li>
<li>被 OOM killer 杀死</li>
<li>重启 / 发布</li>
</ul>
</li>
</ul>
<p><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 属于 <strong>上游进程稳定性问题</strong>，与 backlog 无关。</p>
<hr />
<h2>六、压测与日常排障常用监控命令清单</h2>
<h3>1&#x20e3; TCP 全局状态（必看）</h3>
<pre><code class="language-bash">ss -s</code></pre>
<p>关注：&lt;code&gt;estab / timewait / orphan&lt;/code&gt;</p>
<hr />
<h3>2&#x20e3; 上游端口连接数（Nginx → Kestrel）</h3>
<pre><code class="language-bash">ss -ant | awk '$4=="127.0.0.1:5085"{c++} END{print c}'</code></pre>
<hr />
<h3>3&#x20e3; 上游连接状态分布</h3>
<pre><code class="language-bash">ss -ant | awk '$4=="127.0.0.1:5085"{print $1}' | sort | uniq -c | sort -nr</code></pre>
<hr />
<h3>4&#x20e3; 内核是否再次被打爆（差分判断）</h3>
<pre><code class="language-bash">netstat -s | egrep -i 'listen queue|SYNs to LISTEN|SYN cookies|TCPTimeWaitOverflow'</code></pre>
<blockquote>
<p>必须用 <strong>前后对比</strong> 判断是否仍在发生。</p>
</blockquote>
<hr />
<h3>5&#x20e3; Nginx 错误日志关键字</h3>
<pre><code class="language-bash">tail -n 200 /www/wwwlogs/eaglex_ads_api.error.log | egrep -i 'timed out|refused|502|504'</code></pre>
<hr />
<h3>6&#x20e3; 上游进程是否存活 / 是否重启</h3>
<pre><code class="language-bash">ps -p &lt;dotnet_pid&gt; -o pid,etimes,%cpu,%mem,cmd
ss -lntp | grep 5085</code></pre>
<hr />
<h3>7&#x20e3; OOM / 内核杀进程检查</h3>
<pre><code class="language-bash">dmesg -T | egrep -i 'oom|killed process'
journalctl -k | egrep -i 'oom|killed'</code></pre>
<hr />
<h3>8&#x20e3; .NET 运行时指标（强烈推荐）</h3>
<pre><code class="language-bash">dotnet-counters monitor System.Runtime --process-id &lt;pid&gt;</code></pre>
<p>关注：</p>
<ul>
<li>CPU Usage</li>
<li>ThreadPool Queue Length</li>
<li>% Time in GC</li>
</ul>
<hr />
<h2>七、最终工程级结论（可直接写入文档）</h2>
<blockquote>
<p>本次问题的根因是 Nginx → Kestrel 连接模型错误（短连接 + OPTIONS 预检放大），导致 TCP listen queue 溢出与 upstream connect timeout。</p>
<p>通过引入 upstream keepalive、修正 Connection 头、在 Nginx 层短路 CORS 预检，并配合合理的超时配置，连接层问题已完全消除。</p>
<p>压测结果表明：系统当前瓶颈已转移至 .NET 应用 CPU 层，TCP 与代理层稳定可靠，具备可预测的容量上限。</p>
</blockquote>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Mac 中刷新 DNS</title>
		<link>https://blog.yangyuanping.com/mac-%e4%b8%ad%e5%88%b7%e6%96%b0-dns/</link>
		
		<dc:creator><![CDATA[peny911]]></dc:creator>
		<pubDate>Wed, 26 Nov 2025 15:40:53 +0000</pubDate>
				<category><![CDATA[Linux Nibbles]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[Mac]]></category>
		<guid isPermaLink="false">https://blog.yangyuanping.com/?p=1039</guid>

					<description><![CDATA[在 Mac（macOS） 中刷新 DNS 缓存没有像 Windows 那样统一的 &#60;code&#62;ip [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>在 <strong>Mac（macOS）</strong> 中刷新 DNS 缓存没有像 Windows 那样统一的 &lt;code&gt;ipconfig /flushdns&lt;/code&gt;，而是<strong>按系统版本使用不同的 &lt;code&gt;dscacheutil&lt;/code&gt; + &lt;code&gt;killall mDNSResponder&lt;/code&gt; 组合命令</strong>。</p>
<hr />
<h2><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 一行通用万能命令（推荐直接用这个）</h2>
<p>在 <strong>终端（Terminal）</strong> 中执行：</p>
<pre><code class="language-bash">sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder</code></pre>
<p>输入你的 <strong>系统登录密码</strong>（不会显示），回车即可完成刷新。</p>
<blockquote>
<p>这个命令适用于：</p>
</blockquote>
<ul>
<li>macOS Ventura (13)</li>
<li>macOS Sonoma (14)</li>
<li>macOS Sequoia (15)</li>
<li>Monterey (12)</li>
<li>Big Sur (11)</li>
<li>Catalina (10.15)</li>
<li>Mojave (10.14)</li>
</ul>
<hr />
<h2><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4cc.png" alt="📌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 各系统版本对应命令（备用参考）</h2>
<table>
<thead>
<tr>
<th>macOS 版本</th>
<th>刷新 DNS 命令</th>
</tr>
</thead>
<tbody>
<tr>
<td>10.10.4 及以后</td>
<td>&lt;code&gt;sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder&lt;/code&gt;</td>
</tr>
<tr>
<td>10.10 – 10.10.3</td>
<td>&lt;code&gt;sudo discoveryutil mdnsflushcache; sudo discoveryutil udnsflushcaches&lt;/code&gt;</td>
</tr>
<tr>
<td>10.7 – 10.9</td>
<td>&lt;code&gt;sudo killall -HUP mDNSResponder&lt;/code&gt;</td>
</tr>
<tr>
<td>10.5 – 10.6</td>
<td>&lt;code&gt;sudo dscacheutil -flushcache&lt;/code&gt;</td>
</tr>
</tbody>
</table>
<hr />
<h2><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 如何判断是否刷新成功？</h2>
<p>macOS 刷新 DNS <strong>默认是没有任何成功提示的</strong>，这是正常现象 <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /><br />
如果你想确认是否真的生效，可以：</p>
<pre><code class="language-bash">ping your-domain.com</code></pre>
<p>或：</p>
<pre><code class="language-bash">nslookup your-domain.com</code></pre>
<hr />
<h2><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 适合你的使用场景（比如你刚刚在折腾这些）</h2>
<p>你最近使用的场景包括：</p>
<ul>
<li><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 花生壳 / 动态域名解析</li>
<li><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 公网 IP + 远程桌面</li>
<li><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 路由器 DDNS 解析切换</li>
<li><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 域名刚刚改解析但访问不生效</li>
</ul>
<p><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>这时候刷新 DNS 是“必须操作”之一，否则很容易一直命中旧 IP</strong>。</p>
<hr />
<h2><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 进阶：同时刷新 WiFi/网络缓存（更彻底）</h2>
<p>如果你遇到的是那种 <strong>“DNS 已改，但 Mac 仍然连不上”</strong> 的顽固情况，可以：</p>
<pre><code class="language-bash">sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
sudo ifconfig en0 down
sudo ifconfig en0 up</code></pre>
<p>（&lt;code&gt;en0&lt;/code&gt; 是常见的 WiFi 网卡）</p>
<hr />
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
