<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Antony 筆記：技術原理與實務經驗 – SUSE</title><link>https://blog.kubeantony.com/archive/suse/</link><description>Recent content in SUSE on Antony 筆記：技術原理與實務經驗</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><lastBuildDate>Wed, 16 Jul 2025 03:42:32 +0800</lastBuildDate><atom:link href="https://blog.kubeantony.com/archive/suse/index.xml" rel="self" type="application/rss+xml"/><item><title>Permanently Disable SELinux on SLE Micro</title><link>https://blog.kubeantony.com/archive/suse/permanently-disable-selinux-on-sle-micro/</link><pubDate>Wed, 16 Jul 2025 03:42:32 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/permanently-disable-selinux-on-sle-micro/</guid><description>
&lt;h2&gt;修改 SELinux 設定檔&lt;span class="hx:absolute hx:-mt-20" id="修改-selinux-設定檔"&gt;&lt;/span&gt;
&lt;a href="#%e4%bf%ae%e6%94%b9-selinux-%e8%a8%ad%e5%ae%9a%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ vi /etc/selinux/config&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檔案內容如下&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# This file controls the state of SELinux on the system.
# SELinux can be completly disabled with the &amp;#34;selinux=0&amp;#34; kernel
# commandline option.
#
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;將 SELINUX 的值修改為 disabled&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;永久修改&lt;span class="hx:absolute hx:-mt-20" id="永久修改"&gt;&lt;/span&gt;
&lt;a href="#%e6%b0%b8%e4%b9%85%e4%bf%ae%e6%94%b9" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sed -i &amp;#39;s|SELINUX=enforcing|SELINUX=disabled|g&amp;#39; /etc/selinux/config
sed -i &amp;#39;s|selinux=1|selinux=0|g&amp;#39; /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;重新開機&lt;span class="hx:absolute hx:-mt-20" id="重新開機"&gt;&lt;/span&gt;
&lt;a href="#%e9%87%8d%e6%96%b0%e9%96%8b%e6%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;設定開機選單&lt;span class="hx:absolute hx:-mt-20" id="設定開機選單"&gt;&lt;/span&gt;
&lt;a href="#%e8%a8%ad%e5%ae%9a%e9%96%8b%e6%a9%9f%e9%81%b8%e5%96%ae" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Step1: 在開機選單的 SLE Micro 5.4 按 &lt;code&gt;e&lt;/code&gt; 編輯&lt;span class="hx:absolute hx:-mt-20" id="step1-在開機選單的-sle-micro-54-按-e-編輯"&gt;&lt;/span&gt;
&lt;a href="#step1-%e5%9c%a8%e9%96%8b%e6%a9%9f%e9%81%b8%e5%96%ae%e7%9a%84-sle-micro-54-%e6%8c%89-e-%e7%b7%a8%e8%bc%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJRLhjlma.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;Step2: 將 &lt;code&gt;selinux=0&lt;/code&gt; 加到 &lt;code&gt;linux&lt;/code&gt; 開頭那行的最後面&lt;span class="hx:absolute hx:-mt-20" id="step2-將-selinux0-加到-linux-開頭那行的最後面"&gt;&lt;/span&gt;
&lt;a href="#step2-%e5%b0%87-selinux0-%e5%8a%a0%e5%88%b0-linux-%e9%96%8b%e9%a0%ad%e9%82%a3%e8%a1%8c%e7%9a%84%e6%9c%80%e5%be%8c%e9%9d%a2" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1jj3ogXp.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;Step3: 按 Ctrl + x 繼續開機&lt;span class="hx:absolute hx:-mt-20" id="step3-按-ctrl--x-繼續開機"&gt;&lt;/span&gt;
&lt;a href="#step3-%e6%8c%89-ctrl--x-%e7%b9%bc%e7%ba%8c%e9%96%8b%e6%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJ0upoxQ6.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;</description></item><item><title>SUSE Manager 將檔案部署到所有 Client 上</title><link>https://blog.kubeantony.com/archive/suse/suse-manager-%E5%B0%87%E6%AA%94%E6%A1%88%E9%83%A8%E7%BD%B2%E5%88%B0%E6%89%80%E6%9C%89-client-%E4%B8%8A/</link><pubDate>Fri, 23 May 2025 10:52:18 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suse-manager-%E5%B0%87%E6%AA%94%E6%A1%88%E9%83%A8%E7%BD%B2%E5%88%B0%E6%89%80%E6%9C%89-client-%E4%B8%8A/</guid><description>
&lt;h2&gt;Step1: 建立 Config Channel&lt;span class="hx:absolute hx:-mt-20" id="step1-建立-config-channel"&gt;&lt;/span&gt;
&lt;a href="#step1-%e5%bb%ba%e7%ab%8b-config-channel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;點選左側選單: &lt;strong&gt;Configuration&lt;/strong&gt; -&amp;gt; &lt;strong&gt;Channels&lt;/strong&gt; -&amp;gt; &lt;strong&gt;Create Config Channel&lt;/strong&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkZ98apbex.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;依序輸入個欄位的值 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Name:&lt;/strong&gt; &lt;code&gt;test&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Label:&lt;/strong&gt; &lt;code&gt;test&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Description:&lt;/strong&gt; &lt;code&gt;test&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;確認都沒問題後點選 &lt;strong&gt;Create Config Channel&lt;/strong&gt; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Bk0EOpp-gg.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Step2: 將檔案上傳至 SUSE Manager&lt;span class="hx:absolute hx:-mt-20" id="step2-將檔案上傳至-suse-manager"&gt;&lt;/span&gt;
&lt;a href="#step2-%e5%b0%87%e6%aa%94%e6%a1%88%e4%b8%8a%e5%82%b3%e8%87%b3-suse-manager" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;點選 &lt;strong&gt;Upload Configuration Files&lt;/strong&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hk_o_a6Zlg.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點選 &amp;ldquo;選擇檔案&amp;rdquo; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Bk6mKaT-el.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;選擇要上傳的檔案
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJSKYapWle.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;設定在 Client 主機的作業系統中，檔案要放哪個目錄和檔名
&lt;strong&gt;Filename/Path:&lt;/strong&gt; &lt;code&gt;/root/bin/test.sh&lt;/code&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJLjcaaWlx.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;調整檔案權限:&lt;/strong&gt;
&lt;strong&gt;File Permissions Mode:&lt;/strong&gt; &lt;code&gt;655&lt;/code&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJ5Y9T6Zle.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點選 &lt;strong&gt;Upload Configuration File&lt;/strong&gt; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1Iuc6TWge.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;上傳成功畫面如下
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S16xjpTWxe.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Step3: 將各系統加入 System Set Manager (SSM)&lt;span class="hx:absolute hx:-mt-20" id="step3-將各系統加入-system-set-manager-ssm"&gt;&lt;/span&gt;
&lt;a href="#step3-%e5%b0%87%e5%90%84%e7%b3%bb%e7%b5%b1%e5%8a%a0%e5%85%a5-system-set-manager-ssm" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;點選左側選單 &lt;strong&gt;Systems&lt;/strong&gt; -&amp;gt; &lt;strong&gt;System List&lt;/strong&gt; -&amp;gt; &lt;strong&gt;All&lt;/strong&gt; -&amp;gt; &lt;strong&gt;點選 OS 的 Hostname&lt;/strong&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkV736T-ge.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;點選右上角的按鈕 &lt;strong&gt;Add to SSM&lt;/strong&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1jchT6-ee.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;重複以上動作，將要派發檔案的主機都加入 SSM&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Step4: 設定有加入 SSM 的主機都訂閱 Configuration Channels&lt;span class="hx:absolute hx:-mt-20" id="step4-設定有加入-ssm-的主機都訂閱-configuration-channels"&gt;&lt;/span&gt;
&lt;a href="#step4-%e8%a8%ad%e5%ae%9a%e6%9c%89%e5%8a%a0%e5%85%a5-ssm-%e7%9a%84%e4%b8%bb%e6%a9%9f%e9%83%bd%e8%a8%82%e9%96%b1-configuration-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;左側選單 &lt;strong&gt;Systems&lt;/strong&gt; -&amp;gt; &lt;strong&gt;System Set Manager&lt;/strong&gt; -&amp;gt; &lt;strong&gt;Configuration&lt;/strong&gt; -&amp;gt; &lt;strong&gt;Subscribe to Channels&lt;/strong&gt; -&amp;gt; &lt;strong&gt;勾選 &lt;code&gt;test&lt;/code&gt; Configuration Channel&lt;/strong&gt; -&amp;gt; &lt;strong&gt;Continue&lt;/strong&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJI5T66blx.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;設定 Channel 的優先順序，由於只有一個 Channel，所以直接點選右下角 &lt;strong&gt;Apply Subscriptions&lt;/strong&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkPhCTpZge.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;確認每一台 Client 主機訂閱 Configuration Channels 的資訊，沒問題就按右下角按鈕 &lt;strong&gt;Confirm&lt;/strong&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryt4yCpZxx.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Step5: 將檔案部署至各台 Client 主機上&lt;span class="hx:absolute hx:-mt-20" id="step5-將檔案部署至各台-client-主機上"&gt;&lt;/span&gt;
&lt;a href="#step5-%e5%b0%87%e6%aa%94%e6%a1%88%e9%83%a8%e7%bd%b2%e8%87%b3%e5%90%84%e5%8f%b0-client-%e4%b8%bb%e6%a9%9f%e4%b8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;點選上方 &lt;strong&gt;Deploy Files&lt;/strong&gt; 按鈕 -&amp;gt; 勾選要部署的檔案 -&amp;gt; 點選右下角 &lt;strong&gt;Schedule File Deploy&lt;/strong&gt; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkZTJA6bxl.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;選擇要部署的時間，預設是馬上部署，點選 &lt;strong&gt;Confirm File Deploy&lt;/strong&gt; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJk7eR6-xx.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;部署的動作開始執行的話會看到上方出現藍底黑字
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyPjgRaZee.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Step6: 確認檔案是否已在各 Client 主機部署成功&lt;span class="hx:absolute hx:-mt-20" id="step6-確認檔案是否已在各-client-主機部署成功"&gt;&lt;/span&gt;
&lt;a href="#step6-%e7%a2%ba%e8%aa%8d%e6%aa%94%e6%a1%88%e6%98%af%e5%90%a6%e5%b7%b2%e5%9c%a8%e5%90%84-client-%e4%b8%bb%e6%a9%9f%e9%83%a8%e7%bd%b2%e6%88%90%e5%8a%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;點選左側選單: &lt;strong&gt;Salt&lt;/strong&gt; -&amp;gt; &lt;strong&gt;Remote Commands&lt;/strong&gt; -&amp;gt; 輸入要執行的命令 : &lt;code&gt;ls -l /root/bin/test.sh&lt;/code&gt; -&amp;gt; 輸入 &lt;code&gt;*&lt;/code&gt; 代表所有主機 -&amp;gt; 點選 &lt;strong&gt;Find targets&lt;/strong&gt; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkTo-0Tbxx.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;點選 &lt;strong&gt;Run Command&lt;/strong&gt; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkuLGCa-eg.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;點選各主機的方塊，展開命令執行的結果
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hy2TfATZge.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;檔案成功部署畫面:
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hy5ZQCaWgl.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>SUSE Edge Image Builder 介紹與實作</title><link>https://blog.kubeantony.com/archive/suse/suse-edge-image-builder-%E4%BB%8B%E7%B4%B9%E8%88%87%E5%AF%A6%E4%BD%9C/</link><pubDate>Wed, 21 May 2025 02:07:58 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suse-edge-image-builder-%E4%BB%8B%E7%B4%B9%E8%88%87%E5%AF%A6%E4%BD%9C/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會介紹與實作 SUSE Edge Image Builder 是什麼，有哪些功能&amp;hellip;等&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;甚麼是 Edge Image Builder (EIB)?&lt;span class="hx:absolute hx:-mt-20" id="甚麼是-edge-image-builder-eib"&gt;&lt;/span&gt;
&lt;a href="#%e7%94%9a%e9%ba%bc%e6%98%af-edge-image-builder-eib" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;SUSE Edge 是專為解決在 edge 部署 infrastructure (基礎架構) 和 cloud-native applications (雲原生應用程式) 的獨特挑戰，而設計、緊密整合且經過全面驗證的端對端解決方案。&lt;/p&gt;
&lt;p&gt;它的重點目標在於提供一個高度彈性、可擴充性高且安全的平台，涵蓋 :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;initial deployment image building (生成 Customized, Ready-to-Boot (CRB) disk images)
&lt;ul&gt;
&lt;li&gt;好處是即使是在完全封閉的網路的情況下，也能啟動機器。&lt;/li&gt;
&lt;li&gt;實際到環境艱困(高溫、高海拔&amp;hellip;等)的案場部屬機器的工程師不需擁有很深厚的技術底子。&lt;/li&gt;
&lt;li&gt;省去技術人員現場巡視的需要，但同時也要力求一致性和標準化。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;node provisioning and onboarding (節點佈建與上架)&lt;/li&gt;
&lt;li&gt;application deployment, observability, and complete lifecycle operations (應用程式部署、可觀測性以及完整生命週期作業)。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;EIB 可以供所有三種 SUSE Edge 最小的自訂功能，例如 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;預先在 disk image 中設定使用者、網路或時區&amp;hellip;等，全面的設定。&lt;/li&gt;
&lt;li&gt;預先設定多節點的 Kubernetes 叢集、部署客戶的 workloads (an application running on Kubernetes)。&lt;/li&gt;
&lt;li&gt;透過 Rancher/Elemental 和 SUSE Manager 註冊至集中管理平台。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;建立 Customized, Ready-to-Boot Disk Images&lt;/h1&gt;&lt;p&gt;EIB（Image Builder）設計是用於在 Container 中運行的。因此，需要某種形式的 container build tool 和 runtime 環境，例如 &lt;strong&gt;Podman&lt;/strong&gt;。&lt;/p&gt;
&lt;h2&gt;0. 實作目標&lt;span class="hx:absolute hx:-mt-20" id="0-實作目標"&gt;&lt;/span&gt;
&lt;a href="#0-%e5%af%a6%e4%bd%9c%e7%9b%ae%e6%a8%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;OS 在第一次開機後自動安裝和設定好 SL Micro 6.0 + RKE2 v1.31.3 (ALL in One) + Rancher Prime v2.10.1，讓你阿公拿到隨身碟後也會裝。&lt;/p&gt;
&lt;h2&gt;1. 要使用 EIB 建立 CRB Disk Image，需要三樣東西：&lt;span class="hx:absolute hx:-mt-20" id="1-要使用-eib-建立-crb-disk-image需要三樣東西"&gt;&lt;/span&gt;
&lt;a href="#1-%e8%a6%81%e4%bd%bf%e7%94%a8-eib-%e5%bb%ba%e7%ab%8b-crb-disk-image%e9%9c%80%e8%a6%81%e4%b8%89%e6%a8%a3%e6%9d%b1%e8%a5%bf" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;用於作為建立 CRB Disk Image 的 SLE Micro ISO 檔&lt;/li&gt;
&lt;li&gt;描述要建立 CRB Disk Image 檔的定義檔&lt;/li&gt;
&lt;li&gt;一個包含基礎 SLE Micro ISO 檔的目錄，該目錄還應包含將被納入已建立映像檔中的其他自定義檔案&lt;/li&gt;
&lt;li&gt;對於需要 RPM resolution 的 image，要建立它至少需要 4GB RAM（建議 8GB）&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;2. 先決條件&lt;span class="hx:absolute hx:-mt-20" id="2-先決條件"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%85%88%e6%b1%ba%e6%a2%9d%e4%bb%b6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;一台 x86_64 實體主機或虛擬主機，作業系統是 SLES 15 SP6, openSUSE Leap 15.6 或 openSUSE Tumbleweed&lt;/li&gt;
&lt;li&gt;在建立 EIB image 之前，請確定您的系統上已安裝 &lt;code&gt;gpgme&lt;/code&gt;、&lt;code&gt;device-mapper&lt;/code&gt; 和 &lt;code&gt;libbtrfs&lt;/code&gt; 的開發標頭和函式庫：
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper install -y gpgme-devel device-mapper-devel libbtrfs-devel&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;An available container runtime (e.g. Podman)&lt;/li&gt;
&lt;li&gt;SLE Micro 6.0 SelfInstall ISO 映像的下載點，可在&lt;a
href="https://www.suse.com/download/sle-micro/"target="_blank" rel="noopener"&gt;此&lt;/a&gt;找到
&lt;blockquote&gt;
&lt;p&gt;實際驗下來，用 SLE Micro 5.5 去裝，會遇到 OS 在開機的時候會無法按照我們自定義的網路來設定，只會變成 DHCP，並跳出以下錯誤訊息 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Nov 01 15:35:08 localhost systemd[1]: Condition check resulted in Start network if needed being skipped.
Nov 01 15:35:13 localhost systemd[1]: dev-combustion-config.device: Job dev-combustion-config.device/start timed out.
Nov 01 15:35:13 localhost systemd[1]: Timed out waiting for device /dev/combustion/config.
Nov 01 15:35:13 localhost systemd[1]: dev-combustion-config.device: Job dev-combustion-config.device/start failed with result &amp;#39;timeout&amp;#39;.
Nov 01 15:35:13 localhost systemd[1]: Starting Combustion (preparations)...
Nov 01 15:35:13 localhost kernel: ISO 9660 Extensions: RRIP_1991A
Nov 01 15:35:13 localhost systemd[1]: run-combustion-mount.mount: Deactivated successfully.
Nov 01 15:35:13 localhost combustion[643]: ./nmc: /lib64/libc.so.6: version `GLIBC_2.32&amp;#39; not found (required by ./nmc)
Nov 01 15:35:13 localhost combustion[643]: ./nmc: /lib64/libc.so.6: version `GLIBC_2.33&amp;#39; not found (required by ./nmc)
Nov 01 15:35:13 localhost combustion[643]: ./nmc: /lib64/libc.so.6: version `GLIBC_2.34&amp;#39; not found (required by ./nmc)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;另外，&lt;code&gt;eib-embedded-registry.service&lt;/code&gt; 也會噴類似的錯誤訊息，還是乖乖用 SL Micro 6.0 的 ISO 來做吧&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;3. 下載 EIB Container Image&lt;span class="hx:absolute hx:-mt-20" id="3-下載-eib-container-image"&gt;&lt;/span&gt;
&lt;a href="#3-%e4%b8%8b%e8%bc%89-eib-container-image" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo podman pull registry.suse.com/edge/3.2/edge-image-builder:1.1.0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. 建立 CRB Disk Image 設定目錄&lt;span class="hx:absolute hx:-mt-20" id="4-建立-crb-disk-image-設定目錄"&gt;&lt;/span&gt;
&lt;a href="#4-%e5%bb%ba%e7%ab%8b-crb-disk-image-%e8%a8%ad%e5%ae%9a%e7%9b%ae%e9%8c%84" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;由於 EIB 在 Container 內運行，我們需要從主機掛載一個設定目錄，以便可以指定所需的設定，並且在構建過程中 EIB 可以訪問所需的設定文件和 supporting artifacts。此目錄必須遵循特定的結構，我們假設這個目錄位於您的主目錄中，並命名為 &lt;code&gt;eib&lt;/code&gt;，讓我們來創建它：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ export CONFIG_DIR=$HOME/eib &amp;amp;&amp;amp; \
mkdir -p $CONFIG_DIR/base-images&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在前一步中，我們創建了一個 &lt;code&gt;base-images&lt;/code&gt; 目錄，用來存放 SL Micro 6.0 的 input ISO，現在我們要確保已下載的 ISO 被複製到設定目錄中：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cp /path/to/downloads/SL-Micro.x86_64-6.0-Default-SelfInstall-GM2.install.iso $CONFIG_DIR/base-images/slemicro.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在 EIB 執行期間，原始的基本映像不會被修改；新的自訂版本會在 EIB config 目錄的根目錄中，以所需的組態建立。&lt;/p&gt;
&lt;p&gt;此時的設定目錄應該如下所示：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ tree $CONFIG_DIR
/home/rancher/eib
└── base-images
1 directory, 0 files&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;5. 建立描述 CRB Disk Image 的定義檔&lt;span class="hx:absolute hx:-mt-20" id="5-建立描述-crb-disk-image-的定義檔"&gt;&lt;/span&gt;
&lt;a href="#5-%e5%bb%ba%e7%ab%8b%e6%8f%8f%e8%bf%b0-crb-disk-image-%e7%9a%84%e5%ae%9a%e7%be%a9%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;5.1. 設定 Operating System&lt;span class="hx:absolute hx:-mt-20" id="51-設定-operating-system"&gt;&lt;/span&gt;
&lt;a href="#51-%e8%a8%ad%e5%ae%9a-operating-system" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;完整欄位說明，請參考此&lt;a
href="https://github.com/suse-edge/edge-image-builder/blob/main/docs/building-images.md#operating-system"target="_blank" rel="noopener"&gt;連結&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;5.1.1. 設定 OS Users&lt;span class="hx:absolute hx:-mt-20" id="511-設定-os-users"&gt;&lt;/span&gt;
&lt;a href="#511-%e8%a8%ad%e5%ae%9a-os-users" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;使用 OpenSSL 建立單向加密密碼：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ openssl passwd -6 rancher&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果應與以下類似 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$6$C7vQ3j959WZ68/N3$torcva.LV2/O9LiwNGHHDNG0Ia0Wsd8UktcePEUAvqKV.tgtaNYYoOp5vnCFaCdaptzMtsGnxI4tKiKA035Bg/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.1.2. 編輯定義檔&lt;span class="hx:absolute hx:-mt-20" id="512-編輯定義檔"&gt;&lt;/span&gt;
&lt;a href="#512-%e7%b7%a8%e8%bc%af%e5%ae%9a%e7%be%a9%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat &amp;lt;&amp;lt; &amp;#39;EOF&amp;#39; &amp;gt; $CONFIG_DIR/iso-definition.yaml
apiVersion: 1.1
image:
imageType: iso
arch: x86_64
baseImage: slemicro.iso
outputImageName: eib-image.iso
operatingSystem:
isoConfiguration:
installDevice: /dev/sda
time:
timezone: Asia/Taipei
ntp:
forceWait: true
servers:
- time.google.com
keymap: tw
users:
- username: root
encryptedPassword: $6$C7vQ3j959WZ68/N3$torcva.LV2/O9LiwNGHHDNG0Ia0Wsd8UktcePEUAvqKV.tgtaNYYoOp5vnCFaCdaptzMtsGnxI4tKiKA035Bg/
- username: rancher
uid: 1000
encryptedPassword: $6$C7vQ3j959WZ68/N3$torcva.LV2/O9LiwNGHHDNG0Ia0Wsd8UktcePEUAvqKV.tgtaNYYoOp5vnCFaCdaptzMtsGnxI4tKiKA035Bg/
sshKeys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCX4Vytl/3CYePyJKt3Qdxj1TnKzhEcP7t5Da/wJRnIFco&amp;#43;mD5mUmfErmm9huLUdrKurp9NxHLszakjuqUjGv5TZUnMDQCFPORrw7KSpWvIL8jIRUgsjHpz2YMntcOmX4qQn3APgMZ685gIc/NKO1aI8XYNSCdCbTHjvC0DX&amp;#43;4IjGKzYmPdgxdOX7Qrun8VuCj38o6Qzp3nLf843IhhfEo9&amp;#43;1&amp;#43;0eJ1&amp;#43;Mr8SLhzqkzEpsL8OilOKr3Tu&amp;#43;cdehZjNhwMyj1VQ5AzLjj&amp;#43;f6nfb9LGu1i8tlTXO&amp;#43;QwRv4FDK/vFyCPc2kluYxO7wHlZswusAUz&amp;#43;WOpMB/bPc0WFt5xkO/FLvajp&amp;#43;ySxsEBacYPe1Us7n0L3JxrFTEnevfRgV&amp;#43;WDA26kh/wkRz3rmTD8U9GwKos3AygHC&amp;#43;wOhIxGyA27aGlTtNU2&amp;#43;EjnwiI5cyq3WEn6AOaYiWTTqxJz3QlzXM1pKyL2&amp;#43;YRSue2cnIGK13aEU770cWdlPLtmTJC26W8CF8D&amp;#43;4a0= antony@WIN-0V12RTGNMRF
createHomeDir: true
primaryGroup: users
secondaryGroups:
- rancher
groups:
- name: users
gid: 1000
- name: rancher
gid: 1001
systemd:
disable:
- transactional-update.timer
- rebootmgr
enable:
- cockpit.socket
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;5.2. 設定 Kubernetes cluster 和 Rancher&lt;span class="hx:absolute hx:-mt-20" id="52-設定-kubernetes-cluster-和-rancher"&gt;&lt;/span&gt;
&lt;a href="#52-%e8%a8%ad%e5%ae%9a-kubernetes-cluster-%e5%92%8c-rancher" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;5.2.1. 編輯 RKE2 叢集設定檔&lt;span class="hx:absolute hx:-mt-20" id="521-編輯-rke2-叢集設定檔"&gt;&lt;/span&gt;
&lt;a href="#521-%e7%b7%a8%e8%bc%af-rke2-%e5%8f%a2%e9%9b%86%e8%a8%ad%e5%ae%9a%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p $CONFIG_DIR/kubernetes/config &amp;amp;&amp;amp; \
cat &amp;lt;&amp;lt; EOF &amp;gt; $CONFIG_DIR/kubernetes/config/server.yaml
write-kubeconfig-mode: &amp;#34;0644&amp;#34;
tls-san:
- &amp;#34;antony-rancher.example.com&amp;#34;
node-label:
- &amp;#34;app=rancher&amp;#34;
node-name:
- &amp;#34;admin-rancher&amp;#34;
token: my-shared-secret
cluster-cidr: 10.244.0.0/16
service-cidr: 10.96.0.0/16
egress-selector-mode: disabled
kubelet-arg:
- &amp;#34;container-log-max-files=3&amp;#34;
- &amp;#34;container-log-max-size=10Mi&amp;#34;
kube-controller-manager-arg:
- &amp;#34;node-cidr-mask-size=25&amp;#34;
etcd-extra-env: TZ=Asia/Taipei
kube-apiserver-extra-env: TZ=Asia/Taipei
kube-controller-manager-extra-env: TZ=Asia/Taipei
kube-proxy-extra-env: TZ=Asia/Taipei
kube-scheduler-extra-env: TZ=Asia/Taipei
cloud-controller-manager-extra-env: TZ=Asia/Taipei
disable-cloud-controller: true
disable-kube-proxy: true
disable:
- rke2-canal
- rke2-kube-proxy
cni:
- &amp;#34;multus&amp;#34;
- &amp;#34;cilium&amp;#34;
selinux: true
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.2.2. 編輯定義檔&lt;span class="hx:absolute hx:-mt-20" id="522-編輯定義檔"&gt;&lt;/span&gt;
&lt;a href="#522-%e7%b7%a8%e8%bc%af%e5%ae%9a%e7%be%a9%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat &amp;lt;&amp;lt; &amp;#39;EOF&amp;#39; &amp;gt;&amp;gt; $CONFIG_DIR/iso-definition.yaml
kubernetes:
version: v1.31.3&amp;#43;rke2r1
network:
apiVIP: 192.168.11.10
manifests:
urls:
- https://github.com/cert-manager/cert-manager/releases/download/v1.16.2/cert-manager.yaml
- http://192.168.11.11:8080/config/rancher-namespace.yaml
- http://192.168.11.11:8080/config/rke2-cilium-config.yaml
- http://192.168.11.11:8080/config/rke2-coredns-config.yaml
- http://192.168.11.11:8080/config/rke2-ingress-nginx-config.yaml
helm:
charts:
- name: rancher
version: 2.10.1
repositoryName: rancher-prime
valuesFile: rancher-values.yaml
targetNamespace: cattle-system
createNamespace: true
installationNamespace: cattle-system
repositories:
- name: rancher-prime
url: https://charts.rancher.com/server-charts/prime
embeddedArtifactRegistry:
images:
- name: registry.rancher.com/rancher/backup-restore-operator:v6.0.0
- name: registry.rancher.com/rancher/calico-cni:v3.29.0-rancher1
- name: registry.rancher.com/rancher/cis-operator:v1.3.4
- name: registry.rancher.com/rancher/flannel-cni:v1.4.1-rancher1
- name: registry.rancher.com/rancher/fleet-agent:v0.11.2
- name: registry.rancher.com/rancher/fleet:v0.11.2
- name: registry.rancher.com/rancher/hardened-addon-resizer:1.8.20-build20241001
- name: registry.rancher.com/rancher/hardened-calico:v3.29.0-build20241104
- name: registry.rancher.com/rancher/hardened-cluster-autoscaler:v1.8.11-build20241014
- name: registry.rancher.com/rancher/hardened-cni-plugins:v1.6.0-build20241022
- name: registry.rancher.com/rancher/hardened-coredns:v1.11.3-build20241018
- name: registry.rancher.com/rancher/hardened-dns-node-cache:1.23.1-build20241008
- name: registry.rancher.com/rancher/hardened-etcd:v3.5.16-k3s1-build20241106
- name: registry.rancher.com/rancher/hardened-flannel:v0.26.1-build20241107
- name: registry.rancher.com/rancher/hardened-k8s-metrics-server:v0.7.1-build20241008
- name: registry.rancher.com/rancher/hardened-kubernetes:v1.31.3-rke2r1-build20241121
- name: registry.rancher.com/rancher/hardened-multus-cni:v4.1.3-build20241028
- name: registry.rancher.com/rancher/hardened-node-feature-discovery:v0.15.6-build20240822
- name: registry.rancher.com/rancher/hardened-whereabouts:v0.8.0-build20241011
- name: registry.rancher.com/rancher/helm-project-operator:v0.2.1
- name: registry.rancher.com/rancher/k3s-upgrade:v1.31.3-k3s1
- name: registry.rancher.com/rancher/klipper-helm:v0.9.3-build20241008
- name: registry.rancher.com/rancher/klipper-lb:v0.4.9
- name: registry.rancher.com/rancher/kube-api-auth:v0.2.3
- name: registry.rancher.com/rancher/kubectl:v1.31.1
- name: registry.rancher.com/rancher/local-path-provisioner:v0.0.30
- name: registry.rancher.com/rancher/machine:v0.15.0-rancher124
- name: registry.rancher.com/rancher/mirrored-cluster-api-controller:v1.8.3
- name: registry.rancher.com/rancher/nginx-ingress-controller:v1.10.5-hardened4
- name: registry.rancher.com/rancher/prometheus-federator:v0.4.3
- name: registry.rancher.com/rancher/pushprox-client:v0.1.4-rancher2-client
- name: registry.rancher.com/rancher/pushprox-proxy:v0.1.4-rancher2-proxy
- name: registry.rancher.com/rancher/rancher-agent:v2.10.1
- name: registry.rancher.com/rancher/rancher-csp-adapter:v5.0.1
- name: registry.rancher.com/rancher/rancher-webhook:v0.6.2
- name: registry.rancher.com/rancher/rancher:v2.10.1
- name: registry.rancher.com/rancher/rke-tools:v0.1.105
- name: registry.rancher.com/rancher/rke2-cloud-provider:v1.31.0-build20240910
- name: registry.rancher.com/rancher/rke2-runtime:v1.31.3-rke2r1
- name: registry.rancher.com/rancher/rke2-upgrade:v1.31.3-rke2r1
- name: registry.rancher.com/rancher/security-scan:v0.5.2
- name: registry.rancher.com/rancher/shell:v0.3.0
- name: registry.rancher.com/rancher/system-agent-installer-k3s:v1.31.3-k3s1
- name: registry.rancher.com/rancher/system-agent-installer-rke2:v1.31.3-rke2r1
- name: registry.rancher.com/rancher/system-agent:v0.3.11-suc
- name: registry.rancher.com/rancher/system-upgrade-controller:v0.14.2
- name: registry.rancher.com/rancher/ui-plugin-catalog:3.2.0
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.2.3. 建立 Rancher Helm values 檔:&lt;span class="hx:absolute hx:-mt-20" id="523--建立-rancher-helm-values-檔"&gt;&lt;/span&gt;
&lt;a href="#523--%e5%bb%ba%e7%ab%8b-rancher-helm-values-%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p $CONFIG_DIR/kubernetes/helm/values/ &amp;amp;&amp;amp; \
cat &amp;lt;&amp;lt; EOF &amp;gt; $CONFIG_DIR/kubernetes/helm/values/rancher-values.yaml
hostname: antony-rancher.example.com
replicas: 1
bootstrapPassword: &amp;#34;rancheradmin&amp;#34;
systemDefaultRegistry: registry.rancher.com
useBundledSystemChart: true
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.2.4. 設定 rancher namespace:&lt;span class="hx:absolute hx:-mt-20" id="524--設定-rancher-namespace"&gt;&lt;/span&gt;
&lt;a href="#524--%e8%a8%ad%e5%ae%9a-rancher-namespace" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p ~/config/ &amp;amp;&amp;amp; \
cat &amp;lt;&amp;lt; EOF &amp;gt; ~/config/rancher-namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
name: cattle-system
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.2.4. 設定 rke2-nginx controller:&lt;span class="hx:absolute hx:-mt-20" id="524--設定-rke2-nginx-controller"&gt;&lt;/span&gt;
&lt;a href="#524--%e8%a8%ad%e5%ae%9a-rke2-nginx-controller" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p ~/config/ &amp;amp;&amp;amp; \
cat &amp;lt;&amp;lt; EOF &amp;gt; ~/config/rke2-ingress-nginx-config.yaml
apiVersion: helm.cattle.io/v1
kind: HelmChartConfig
metadata:
name: rke2-ingress-nginx
namespace: kube-system
spec:
valuesContent: |-
controller:
enableAnnotationValidations: &amp;#34;true&amp;#34;
ingressClassResource:
default: &amp;#34;true&amp;#34;
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.2.5. 設定 cilium:&lt;span class="hx:absolute hx:-mt-20" id="525--設定-cilium"&gt;&lt;/span&gt;
&lt;a href="#525--%e8%a8%ad%e5%ae%9a-cilium" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p ~/config/ &amp;amp;&amp;amp; \
cat &amp;lt;&amp;lt; EOF &amp;gt; ~/config/rke2-cilium-config.yaml
---
apiVersion: helm.cattle.io/v1
kind: HelmChartConfig
metadata:
name: rke2-cilium
namespace: kube-system
spec:
valuesContent: |-
operator:
replicas: 1
podAnnotations:
container.apparmor.security.beta.kubernetes.io/cilium-agent: &amp;#34;unconfined&amp;#34;
container.apparmor.security.beta.kubernetes.io/clean-cilium-state: &amp;#34;unconfined&amp;#34;
container.apparmor.security.beta.kubernetes.io/mount-cgroup: &amp;#34;unconfined&amp;#34;
container.apparmor.security.beta.kubernetes.io/apply-sysctl-overwrites: &amp;#34;unconfined&amp;#34;
kubeProxyReplacement: &amp;#34;true&amp;#34;
k8sServiceHost: 127.0.0.1
k8sServicePort: 6443
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.2.6. 設定 CoreDNS:&lt;span class="hx:absolute hx:-mt-20" id="526--設定-coredns"&gt;&lt;/span&gt;
&lt;a href="#526--%e8%a8%ad%e5%ae%9a-coredns" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;在 CoreDNS 中新增 Rancher A Record&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p ~/config/ &amp;amp;&amp;amp; \
cat &amp;lt;&amp;lt; EOF &amp;gt; ~/config/rke2-coredns-config.yaml
apiVersion: helm.cattle.io/v1
kind: HelmChartConfig
metadata:
name: rke2-coredns
namespace: kube-system
spec:
valuesContent: |-
servers:
- zones:
- zone: .
port: 53
# If serviceType is nodePort you can specify nodePort here
# nodePort: 30053
# hostPort: 53
plugins:
- name: errors
# Serves a /health endpoint on :8080, required for livenessProbe
- name: health
configBlock: |-
lameduck 5s
# Serves a /ready endpoint on :8181, required for readinessProbe
- name: ready
# Required to query kubernetes API for data
- name: kubernetes
parameters: cluster.local in-addr.arpa ip6.arpa
configBlock: |-
pods insecure
fallthrough in-addr.arpa ip6.arpa
ttl 30
# Serves a /metrics endpoint on :9153, required for serviceMonitor
- name: prometheus
parameters: 0.0.0.0:9153
- name: forward
parameters: . /etc/resolv.conf
- name: cache
parameters: 30
- name: loop
- name: reload
- name: loadbalance
- name: hosts
configBlock: |-
192.168.11.12 antony-rancher.example.com
fallthrough
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.2.7. 建立 Web Service&lt;span class="hx:absolute hx:-mt-20" id="527-建立-web-service"&gt;&lt;/span&gt;
&lt;a href="#527-%e5%bb%ba%e7%ab%8b-web-service" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo podman run -d -p 8080:80 \
--name web \
-v $HOME/config:/usr/share/nginx/html/config \
-v $HOME/eib:/usr/share/nginx/html/eib/ \
docker.io/library/nginx:stable&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;6. 設定網路&lt;span class="hx:absolute hx:-mt-20" id="6-設定網路"&gt;&lt;/span&gt;
&lt;a href="#6-%e8%a8%ad%e5%ae%9a%e7%b6%b2%e8%b7%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p $CONFIG_DIR/network/ &amp;amp;&amp;amp; \
cat &amp;lt;&amp;lt; EOF &amp;gt; $CONFIG_DIR/network/admin-rancher.yaml
interfaces:
- name: eth0
type: ethernet
state: up
mac-address: 00:50:56:2A:50:DA
ipv4:
address:
- ip: 192.168.11.12
prefix-length: 24
enabled: true
ipv6:
dhcp: true
enabled: true
routes:
config:
- destination: 0.0.0.0/0
next-hop-interface: eth0
next-hop-address: 192.168.11.254
dns-resolver:
config:
server:
- 192.168.11.11
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;VM 的 MAC Address 要先確定。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;最後的目錄結構 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ tree $CONFIG_DIR ~/config
/home/rancher/eib
├── base-images
│   └── slemicro.iso
├── iso-definition.yaml
├── kubernetes
│   ├── config
│   │   └── server.yaml
│   └── helm
│   └── values
│   └── rancher-values.yaml
└── network
   └── admin-rancher.yaml
/home/rancher/config
├── rancher-namespace.yaml
├── rke2-cilium-config.yaml
├── rke2-coredns-config.yaml
└── rke2-ingress-nginx-config.yaml
8 directories, 11 files&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;7. Building the CRB Disk Image&lt;span class="hx:absolute hx:-mt-20" id="7-building-the-crb-disk-image"&gt;&lt;/span&gt;
&lt;a href="#7-building-the-crb-disk-image" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;現在我們已經有了 base iso image 和 image definition 供 EIB 使用，讓我們繼續建立 ISO。 為此，我們只需使用 podman 以「建立」指令呼叫 EIB container，並指定定義檔案：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo podman run --rm -it --privileged \
-v $CONFIG_DIR:/eib \
registry.suse.com/edge/3.2/edge-image-builder:1.1.0 \
build --definition-file iso-definition.yaml&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Setting up Podman API listener...
Downloading file: dl-manifest-1.yaml 100% |████████████████████████████| (948/948 kB, 3.6 MB/s)
Pulling selected Helm charts... 100% |███████████████████████████████████████| (4/4, 29 it/min)
Generating image customization components...
Identifier ................... [SUCCESS]
Custom Files ................. [SKIPPED]
Time ......................... [SUCCESS]
Network ...................... [SUCCESS]
Groups ....................... [SUCCESS]
Users ........................ [SUCCESS]
Proxy ........................ [SKIPPED]
WARNING: Running EIB with disabled GPG validation is intended for development purposes only
Resolving package dependencies...
Rpm .......................... [SUCCESS]
Os Files ..................... [SKIPPED]
Systemd ...................... [SUCCESS]
Fips ......................... [SKIPPED]
Elemental .................... [SKIPPED]
Suma ......................... [SKIPPED]
Populating Embedded Artifact Registry... 100% |█████████████████████████| (54/54, 14 it/min)
Embedded Artifact Registry ... [SUCCESS]
Keymap ....................... [SUCCESS]
Configuring Kubernetes component...
The Kubernetes CNI is not explicitly set, defaulting to &amp;#39;cilium&amp;#39;.
Downloading file: rke2_installer.sh
Downloading file: rke2-images-core.linux-amd64.tar.zst 100% |████████| (639/639 MB, 9.4 MB/s)
Downloading file: rke2-images-cilium.linux-amd64.tar.zst 100% |██████| (397/397 MB, 6.5 MB/s)
Downloading file: rke2.linux-amd64.tar.gz 100% |██████████████████████████| (35/35 MB, 51 MB/s)
Downloading file: sha256sum-amd64.txt 100% |███████████████████████████| (4.3/4.3 kB, 962 kB/s)
Kubernetes ................... [SUCCESS]
Certificates ................. [SKIPPED]
Cleanup ...................... [SKIPPED]
Building ISO image...
Kernel Params ................ [SKIPPED]
Build complete, the image can be found at: eib-image.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢視以客製化後的 ISO&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -lh eib/eib-image.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;-rw-r--r--. 1 root root 6.7G Nov 1 15:54 eib/eib-image.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;大小約將近 7 Gb&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;8. 設定 VM 透過 CRB Disk Image 開機&lt;span class="hx:absolute hx:-mt-20" id="8-設定-vm-透過-crb-disk-image-開機"&gt;&lt;/span&gt;
&lt;a href="#8-%e8%a8%ad%e5%ae%9a-vm-%e9%80%8f%e9%81%8e-crb-disk-image-%e9%96%8b%e6%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;以下使用 Proxmox 8.3.2 虛擬化平台作範例 :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;確認 MAC Address 與前面步驟 6 設定的時候一樣
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkaAj-zZJe.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;確認透過 ISO 開機
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SySB2Zzb1e.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;將 VM 開機
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rytY2bMZyx.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;SSH 連進去檢查&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh rancher@192.168.11.12&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;設定 kubeconfig&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo cp /var/lib/rancher/rke2/bin/* /usr/local/bin/ &amp;amp;&amp;amp; \
sudo cp /opt/rke2/bin/* /usr/local/bin/ &amp;amp;&amp;amp; \
mkdir -p $HOME/.kube &amp;amp;&amp;amp; \
sudo cp /etc/rancher/rke2/rke2.yaml $HOME/.kube/config &amp;amp;&amp;amp; \
sudo chown $(id -u):$(id -g) $HOME/.kube/config &amp;amp;&amp;amp; \
sudo /usr/local/bin/crictl config \
--set runtime-endpoint=unix:///run/k3s/containerd/containerd.sock&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;檢查 K8s node 狀態&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ kubectl get nodes&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME STATUS ROLES AGE VERSION
admin-rancher Ready control-plane,etcd,master 41s v1.31.3&amp;#43;rke2r1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;檢查 K8s 叢集中所有 pod 的狀態&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ kubectl get pods -A&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAMESPACE NAME READY STATUS RESTARTS AGE
cattle-system helm-install-rancher-7nk5s 0/1 Completed 1 86s
cattle-system rancher-99d599967-m88zq 0/1 Terminating 0 52s
cattle-system rancher-99d599967-t9gl2 1/1 Running 0 33s
cert-manager cert-manager-74b56b6655-fdghl 1/1 Running 0 87s
cert-manager cert-manager-cainjector-55d94dc4cc-9g72h 1/1 Running 0 87s
cert-manager cert-manager-webhook-564f647c66-v7cgz 1/1 Running 0 87s
endpoint-copier-operator endpoint-copier-operator-6b89f6b796-7n7rf 1/1 Running 0 48s
endpoint-copier-operator endpoint-copier-operator-6b89f6b796-pdztw 1/1 Running 0 48s
kube-system cilium-dlq46 1/1 Running 0 69s
kube-system cilium-operator-567b49cc89-q9glr 1/1 Running 0 69s
kube-system etcd-admin-rancher 1/1 Running 0 64s
kube-system helm-install-endpoint-copier-operator-t2k6v 0/1 Completed 0 87s
kube-system helm-install-metallb-6pv84 0/1 Completed 0 87s
kube-system helm-install-rke2-cilium-c44q6 0/1 Completed 0 87s
kube-system helm-install-rke2-coredns-9hpnp 0/1 Completed 0 87s
kube-system helm-install-rke2-ingress-nginx-5pbtm 0/1 Completed 0 86s
kube-system helm-install-rke2-metrics-server-j27rh 0/1 Completed 0 84s
kube-system helm-install-rke2-multus-4mpcl 0/1 Completed 0 84s
kube-system helm-install-rke2-snapshot-controller-42xpb 0/1 Completed 0 83s
kube-system helm-install-rke2-snapshot-controller-crd-lm2r8 0/1 Completed 0 83s
kube-system helm-install-rke2-snapshot-validation-webhook-jw9w4 0/1 Completed 0 83s
kube-system kube-apiserver-admin-rancher 1/1 Running 0 77s
kube-system kube-controller-manager-admin-rancher 1/1 Running 0 82s
kube-system kube-scheduler-admin-rancher 1/1 Running 0 82s
kube-system rke2-coredns-rke2-coredns-84fb6cf48c-n5scx 1/1 Running 0 70s
kube-system rke2-coredns-rke2-coredns-autoscaler-78db5d674-2hmms 1/1 Running 0 70s
kube-system rke2-ingress-nginx-controller-xsj9k 1/1 Running 0 31s
kube-system rke2-metrics-server-7c85d458bd-rz4xn 1/1 Running 0 49s
kube-system rke2-multus-wskqv 1/1 Running 2 (64s ago) 68s
kube-system rke2-snapshot-controller-65bc6fbd57-s6gjn 1/1 Running 0 45s
kube-system rke2-snapshot-validation-webhook-859c7896df-xgxzm 1/1 Running 0 48s
metallb-system metallb-controller-666dfd5f45-zb5sz 1/1 Running 0 48s
metallb-system metallb-speaker-kdwzm 1/1 Running 0 48s&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;9. 故障排除&lt;span class="hx:absolute hx:-mt-20" id="9-故障排除"&gt;&lt;/span&gt;
&lt;a href="#9-%e6%95%85%e9%9a%9c%e6%8e%92%e9%99%a4" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;在 OS 安裝階段出現問題&lt;span class="hx:absolute hx:-mt-20" id="在-os-安裝階段出現問題"&gt;&lt;/span&gt;
&lt;a href="#%e5%9c%a8-os-%e5%ae%89%e8%a3%9d%e9%9a%8e%e6%ae%b5%e5%87%ba%e7%8f%be%e5%95%8f%e9%a1%8c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h3&gt;在開機引導畫面加入參數&lt;span class="hx:absolute hx:-mt-20" id="在開機引導畫面加入參數"&gt;&lt;/span&gt;
&lt;a href="#%e5%9c%a8%e9%96%8b%e6%a9%9f%e5%bc%95%e5%b0%8e%e7%95%ab%e9%9d%a2%e5%8a%a0%e5%85%a5%e5%8f%83%e6%95%b8" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;若是 GRUB 畫面（常見於 EFI 系統）：&lt;span class="hx:absolute hx:-mt-20" id="若是-grub-畫面常見於-efi-系統"&gt;&lt;/span&gt;
&lt;a href="#%e8%8b%a5%e6%98%af-grub-%e7%95%ab%e9%9d%a2%e5%b8%b8%e8%a6%8b%e6%96%bc-efi-%e7%b3%bb%e7%b5%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;用鍵盤選擇 &lt;code&gt;Install SL Micro&lt;/code&gt; 開機選項，不要馬上按 Enter。
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1X5Nncbge.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;按下 &lt;code&gt;e&lt;/code&gt; 進入編輯模式。&lt;/li&gt;
&lt;li&gt;找到以 &lt;code&gt;linux&lt;/code&gt; 開頭的那一行。&lt;/li&gt;
&lt;li&gt;在行尾加上：
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;systemd.log_level=debug systemd.debug_shell=1 rd.debug&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ry0q4hq-gl.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;按下 &lt;code&gt;Ctrl + x&lt;/code&gt; 或 &lt;code&gt;F10&lt;/code&gt; 開始以 debug 模式開機。&lt;/li&gt;
&lt;/ol&gt;
&lt;h4&gt;參數說明：&lt;span class="hx:absolute hx:-mt-20" id="參數說明"&gt;&lt;/span&gt;
&lt;a href="#%e5%8f%83%e6%95%b8%e8%aa%aa%e6%98%8e" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;參數&lt;/th&gt;
&lt;th&gt;作用說明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;systemd.log_level=debug&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;讓 systemd 顯示更多 debug 訊息&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;systemd.debug_shell=1&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;在 TTY 9 開啟 root shell（可用 &lt;code&gt;Ctrl+Alt+F9&lt;/code&gt; 切過去）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;rd.debug&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;開啟 Dracut（initramfs）開機階段的詳細除錯輸出&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;</description></item><item><title>Install NVIDIA GPU Operator on SL Micro</title><link>https://blog.kubeantony.com/archive/suse/install-nvidia-gpu-operator-on-sl-micro/</link><pubDate>Mon, 14 Apr 2025 06:38:16 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/install-nvidia-gpu-operator-on-sl-micro/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;1. NVIDIA GPU Operator 簡介&lt;span class="hx:absolute hx:-mt-20" id="1-nvidia-gpu-operator-簡介"&gt;&lt;/span&gt;
&lt;a href="#1-nvidia-gpu-operator-%e7%b0%a1%e4%bb%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本文將解釋 NVIDIA GPU Operator，概述其所管理的 NVIDIA GPU 元件，並總結使用 NVIDIA GPU Operator 的好處。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;1.1. NVIDIA GPU Operator 是什麼？&lt;span class="hx:absolute hx:-mt-20" id="11-nvidia-gpu-operator-是什麼"&gt;&lt;/span&gt;
&lt;a href="#11-nvidia-gpu-operator-%e6%98%af%e4%bb%80%e9%ba%bc" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;NVIDIA GPU Operator 是 Kubernetes operator，可簡化 Kubernetes 集群中 NVIDIA GPU 資源的管理與部署。 它能自動化設定與監控 NVIDIA GPU 驅動程式，以及相關元件，例如 CUDA、container runtimes，以及其他 GPU 相關軟體。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;1.2. NVIDIA GPU Operator 如何運作？&lt;span class="hx:absolute hx:-mt-20" id="12-nvidia-gpu-operator-如何運作"&gt;&lt;/span&gt;
&lt;a href="#12-nvidia-gpu-operator-%e5%a6%82%e4%bd%95%e9%81%8b%e4%bd%9c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;NVIDIA GPU Operator 遵循以下工作流程：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Operator deployment&lt;/strong&gt; : NVIDIA Operator 以 Helm chart 或使用 Kubernetes manifests 的方式部署。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Node labeling &amp;amp; GPU discovery&lt;/strong&gt; : 安裝之後，operator 會部署 GPU Feature Discovery (GFD) daemon，它會掃描每個節點上的硬體，以尋找 NVIDIA GPU。 它會用 GPU 特有的資訊幫節點貼標籤，讓 Kubernetes 更容易根據可用的硬體排程 GPU workloads。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NVIDIA Container Toolkit configuration&lt;/strong&gt; : GPU operator 安裝並設定 NVIDIA Container Toolkit，讓 GPU-accelerated containers 能在 Kubernetes 中執行。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CUDA runtime and libraries&lt;/strong&gt; : operator 確保 CUDA 工具套件已正確安裝，讓需要 CUDA 的應用程式更容易無縫運作，無須手動介入。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Validation and health monitoring&lt;/strong&gt; : 設定環境後，operator 會持續監控 GPU 資源的健康狀況。 它還會公開健康度量指標，供管理員檢視並用於決策。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scheduling GPU workloads&lt;/strong&gt; : 一旦環境設定完成，您就可以安裝需要 GPU acceleration 的 workloads。 Kubernetes 會使用節點標籤和可用的 GPU 資源，將這些工作自動排程到啟用 GPU 的節點上。&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;h3&gt;1.3. 使用 NVIDIA GPU Operator 的優點&lt;span class="hx:absolute hx:-mt-20" id="13-使用-nvidia-gpu-operator-的優點"&gt;&lt;/span&gt;
&lt;a href="#13-%e4%bd%bf%e7%94%a8-nvidia-gpu-operator-%e7%9a%84%e5%84%aa%e9%bb%9e" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;使用 NVIDIA GPU Operator 有以下主要優點：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automated setup&lt;/strong&gt; : 不需要手動設定。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cluster-wide management&lt;/strong&gt; : 適用於整個 Kubernetes 叢集，可隨著節點的增加或移除而擴充。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Simplified updates&lt;/strong&gt; : 自動更新 GPU 相關元件。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Optimized GPU usage&lt;/strong&gt; : 確保 GPU 資源的有效分配與使用。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2&gt;2. 開始實作&lt;span class="hx:absolute hx:-mt-20" id="2-開始實作"&gt;&lt;/span&gt;
&lt;a href="#2-%e9%96%8b%e5%a7%8b%e5%af%a6%e4%bd%9c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. 實作環境&lt;span class="hx:absolute hx:-mt-20" id="21-實作環境"&gt;&lt;/span&gt;
&lt;a href="#21-%e5%af%a6%e4%bd%9c%e7%92%b0%e5%a2%83" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;GPU: NVIDIA GeForce RTX 3070&lt;/li&gt;
&lt;li&gt;OS: SUSE Linux Micro 6.0&lt;/li&gt;
&lt;li&gt;K8s: RKE2 v1.31.3+rke2r1&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2.2. 手動安裝 Nvidia GPU Driver&lt;span class="hx:absolute hx:-mt-20" id="22-手動安裝-nvidia-gpu-driver"&gt;&lt;/span&gt;
&lt;a href="#22-%e6%89%8b%e5%8b%95%e5%ae%89%e8%a3%9d-nvidia-gpu-driver" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;因 Nvidia GPU Operator 目前還不支援自動化安裝 Nvidia GPU Driver 在 SL Micro 6.0 的作業系統上，所以要手動安裝。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;啟動 transactional-update shell&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sudo transactional-update shell&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;註冊至 SCC&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;SUSEConnect -r yourcode&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;啟用 sl-micro-extras 套件庫&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;SUSEConnect -p SL-Micro-Extras/6.0/x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;安裝必要套件，包含 gcc (C compiler)、make (utility used to automate compilation process)、 development packages 和 kernel headers (kernel source files necessary to build kernel modules)&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;zypper -n install gcc \
binutils \
make \
kernel-default-6.4.0-25.1 \
kernel-macros-6.4.0-25.1 \
kernel-devel-6.4.0-25.1 \
kernel-default-devel-6.4.0-25.1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;到 &lt;a
href="https://www.nvidia.com/zh-tw/drivers/"target="_blank" rel="noopener"&gt;Nvidia 官網&lt;/a&gt; 搜尋 GPU 有哪些版本的 Driver 可以安裝&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;以下以 RTX 3070 為例&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;產品列別 : GeForce&lt;/li&gt;
&lt;li&gt;產品系列 : GeForce RTX 30 Series&lt;/li&gt;
&lt;li&gt;產品 : GeForce RTX 3070&lt;/li&gt;
&lt;li&gt;選取作業系統 : Linux 64-bit&lt;/li&gt;
&lt;li&gt;語言 : Chinese (Traditional)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;最後點下方綠色&amp;quot;&lt;strong&gt;尋找&lt;/strong&gt;&amp;ldquo;按鈕&lt;/p&gt;
&lt;p&gt;![image](/images/hackmd-uploads/SyqmIf3L1e.png =70%x)&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;在要安裝的版本點選 &amp;ldquo;&lt;strong&gt;檢視&lt;/strong&gt;&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1NydG38yg.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;在綠色&amp;rdquo;&lt;strong&gt;下載&lt;/strong&gt;&amp;ldquo;按鈕上方，按滑鼠右鍵點選 &amp;ldquo;&lt;strong&gt;複製連結網址&lt;/strong&gt;&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJA8df3Uye.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;回到終端機，下載安裝 Driver 的程式&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;cd /root; curl -LO https://tw.download.nvidia.com/XFree86/Linux-x86_64/570.133.07/NVIDIA-Linux-x86_64-570.133.07.run&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;注意，此時還仍在 transactional-update shell 中。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;開始安裝 Driver&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sh /root/NVIDIA-Linux-x86_64-570.133.07.run --silent&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;--silent&lt;/code&gt;，會關閉互動式使用者介面，並使用預設答案回答所有通常會提出的問題。 除了錯誤訊息外，不會列印任何輸出。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="10"&gt;
&lt;li&gt;退出 transactional-update shell&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;exit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="11"&gt;
&lt;li&gt;重新開機&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="12"&gt;
&lt;li&gt;
&lt;p&gt;SSH 登入主機&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;測試 Driver 是否有安裝成功&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;nvidia-smi&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;#43;-----------------------------------------------------------------------------------------&amp;#43;
| NVIDIA-SMI 570.133.07 Driver Version: 570.133.07 CUDA Version: 12.8 |
|-----------------------------------------&amp;#43;------------------------&amp;#43;----------------------&amp;#43;
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================&amp;#43;========================&amp;#43;======================|
| 0 NVIDIA GeForce RTX 3070 Off | 00000000:00:10.0 Off | N/A |
| 0% 47C P0 48W / 270W | 0MiB / 8192MiB | 0% Default |
| | | N/A |
&amp;#43;-----------------------------------------&amp;#43;------------------------&amp;#43;----------------------&amp;#43;
&amp;#43;-----------------------------------------------------------------------------------------&amp;#43;
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
&amp;#43;-----------------------------------------------------------------------------------------&amp;#43;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.3. 安裝 NVIDIA GPU Operator&lt;span class="hx:absolute hx:-mt-20" id="23-安裝-nvidia-gpu-operator"&gt;&lt;/span&gt;
&lt;a href="#23-%e5%ae%89%e8%a3%9d-nvidia-gpu-operator" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;安裝 Helm 命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;添加 NVIDIA Helm Chart Repository&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;helm repo add nvidia https://helm.ngc.nvidia.com/nvidia &amp;amp;&amp;amp; \
helm repo update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;安裝 NVIDIA GPU Operator&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;helm install gpu-operator -n gpu-operator --create-namespace \
nvidia/gpu-operator $HELM_OPTIONS \
--set toolkit.env[0].name=CONTAINERD_CONFIG \
--set toolkit.env[0].value=/var/lib/rancher/rke2/agent/etc/containerd/config.toml.tmpl \
--set toolkit.env[1].name=CONTAINERD_SOCKET \
--set toolkit.env[1].value=/run/k3s/containerd/containerd.sock \
--set toolkit.env[2].name=CONTAINERD_RUNTIME_CLASS \
--set toolkit.env[2].value=nvidia \
--set toolkit.env[3].name=CONTAINERD_SET_AS_DEFAULT \
--set-string toolkit.env[3].value=true \
--set driver.enabled=false&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;檢查 NVIDIA GPU Operator 是否正常運作&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;kubectl -n gpu-operator get pods&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME READY STATUS RESTARTS AGE
gpu-feature-discovery-4ml7q 1/1 Running 0 61m
gpu-operator-55566cdcc9-vwcvg 1/1 Running 0 62m
gpu-operator-node-feature-discovery-gc-7f546fd4bc-prjjk 1/1 Running 0 62m
gpu-operator-node-feature-discovery-master-8448c8896c-pwwbf 1/1 Running 0 62m
gpu-operator-node-feature-discovery-worker-wbq94 1/1 Running 0 62m
nvidia-container-toolkit-daemonset-4qmzq 1/1 Running 0 61m
nvidia-cuda-validator-9bg2x 0/1 Completed 0 60m
nvidia-dcgm-exporter-jbbj6 1/1 Running 0 61m
nvidia-device-plugin-daemonset-zsz2d 1/1 Running 0 61m
nvidia-operator-validator-4jnm8 1/1 Running 0 61m&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;測試 gpu pod sample 1&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;cat &amp;lt;&amp;lt; EOF | kubectl create -f -
apiVersion: v1
kind: Pod
metadata:
name: cuda-vectoradd
spec:
restartPolicy: OnFailure
runtimeClassName: nvidia
containers:
- name: cuda-vectoradd
image: &amp;#34;nvidia/samples:vectoradd-cuda11.2.1&amp;#34;
resources:
limits:
nvidia.com/gpu: 1
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查 Pod 狀態&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;kubectl get pods&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME READY STATUS RESTARTS AGE
cuda-vectoradd 0/1 Completed 0 59m&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;查看測試成功 log 資訊&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;kubectl logs cuda-vectoradd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[Vector addition of 50000 elements]
Copy input data from the host memory to the CUDA device
CUDA kernel launch with 196 blocks of 256 threads
Copy output data from the CUDA device to the host memory
Test PASSED
Done&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;測試 gpu pod sample 2&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;cat &amp;lt;&amp;lt; EOF | kubectl create -f -
apiVersion: v1
kind: Pod
metadata:
name: nbody-gpu-benchmark
namespace: default
spec:
restartPolicy: OnFailure
runtimeClassName: nvidia
containers:
- name: cuda-container
image: nvcr.io/nvidia/k8s/cuda-sample:nbody
args: [&amp;#34;nbody&amp;#34;, &amp;#34;-gpu&amp;#34;, &amp;#34;-benchmark&amp;#34;]
resources:
limits:
nvidia.com/gpu: 1
env:
- name: NVIDIA_VISIBLE_DEVICES
value: all
- name: NVIDIA_DRIVER_CAPABILITIES
value: all
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查 Pod 狀態&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;kubectl get pods&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME READY STATUS RESTARTS AGE
cuda-vectoradd 0/1 Completed 0 66m
nbody-gpu-benchmark 0/1 Completed 0 65m&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;查看測試成功 log 資訊&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;kubectl logs nbody-gpu-benchmark&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Run &amp;#34;nbody -benchmark [-numbodies=&amp;lt;numBodies&amp;gt;]&amp;#34; to measure performance.
-fullscreen (run n-body simulation in fullscreen mode)
-fp64 (use double precision floating point values for simulation)
-hostmem (stores simulation data in host memory)
-benchmark (run benchmark to measure performance)
-numbodies=&amp;lt;N&amp;gt; (number of bodies (&amp;gt;= 1) to run in simulation)
-device=&amp;lt;d&amp;gt; (where d=0,1,2.... for the CUDA device to use)
-numdevices=&amp;lt;i&amp;gt; (where i=(number of CUDA devices &amp;gt; 0) to use for simulation)
-compare (compares simulation results running once on the default GPU and once on the CPU)
-cpu (run n-body simulation on the CPU)
-tipsy=&amp;lt;file.bin&amp;gt; (load a tipsy model file for simulation)
NOTE: The CUDA Samples are not meant for performance measurements. Results may vary when GPU Boost is enabled.
&amp;gt; Windowed mode
&amp;gt; Simulation data stored in video memory
&amp;gt; Single precision floating point simulation
&amp;gt; 1 Devices used for simulation
GPU Device 0: &amp;#34;Ampere&amp;#34; with compute capability 8.6
&amp;gt; Compute 8.6 CUDA device: [NVIDIA GeForce RTX 3070]
47104 bodies, total time for 10 iterations: 37.437 ms
= 592.679 billion interactions per second
= 11853.577 single-precision GFLOP/s at 20 flops per interaction&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;參考文件&lt;span class="hx:absolute hx:-mt-20" id="參考文件"&gt;&lt;/span&gt;
&lt;a href="#%e5%8f%83%e8%80%83%e6%96%87%e4%bb%b6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suse-ai/1.0/html/NVIDIA-Operator-installation/index.html"target="_blank" rel="noopener"&gt;Installing the NVIDIA GPU Operator - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>全離線安裝 SUSE Manager Server 4.3</title><link>https://blog.kubeantony.com/archive/suse/%E5%85%A8%E9%9B%A2%E7%B7%9A%E5%AE%89%E8%A3%9D-suse-manager-server-4.3/</link><pubDate>Tue, 08 Apr 2025 10:14:24 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/%E5%85%A8%E9%9B%A2%E7%B7%9A%E5%AE%89%E8%A3%9D-suse-manager-server-4.3/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會在全離線的環境下建置 SUSE Manager Server&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 架構說明&lt;span class="hx:absolute hx:-mt-20" id="1-架構說明"&gt;&lt;/span&gt;
&lt;a href="#1-%e6%9e%b6%e6%a7%8b%e8%aa%aa%e6%98%8e" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkC-QYqdp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SUSE Manager Server 會透過 Http Proxy Server 上網到 &lt;code&gt;scc.suse.com&lt;/code&gt; 或 &lt;code&gt;updates.suse.com&lt;/code&gt; 下載 Packages&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;2. 安裝與設定 Http Proxy Server&lt;span class="hx:absolute hx:-mt-20" id="2-安裝與設定-http-proxy-server"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%ae%89%e8%a3%9d%e8%88%87%e8%a8%ad%e5%ae%9a-http-proxy-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.1. 安裝 Http Proxy Server&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper -n install squid&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;此套件放在 &lt;code&gt;sle-module-server-applications&lt;/code&gt; Packages Repository&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.2. 啟動 Squid 服務，並設為開機自動啟動&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl enable --now squid&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.3. 檢查 Squid 運作是否正常&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl status squid.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;● squid.service - Squid caching proxy
Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2024-01-09 16:43:05 CST; 53s ago
Docs: man:squid(8)
Process: 5502 ExecStartPre=/usr/lib/squid/initialize_cache_if_needed.sh (code=exited, status=0/SUCCESS)
Process: 5506 ExecStart=/usr/sbin/squid -FC (code=exited, status=0/SUCCESS)
Main PID: 5507 (squid)
Tasks: 4
CGroup: /system.slice/squid.service
├─ 5507 /usr/sbin/squid -FC
├─ 5509 &amp;#34;(squid-1)&amp;#34; --kid squid-1 -FC
├─ 5510 &amp;#34;(logfile-daemon)&amp;#34; /var/log/squid/access.log
└─ 5511 &amp;#34;(pinger)&amp;#34;
Jan 09 16:43:05 http-proxy systemd[1]: Starting Squid caching proxy...
Jan 09 16:43:05 http-proxy squid[5507]: Squid Parent: will start 1 kids
Jan 09 16:43:05 http-proxy systemd[1]: Started Squid caching proxy.
Jan 09 16:43:05 http-proxy squid[5507]: Squid Parent: (squid-1) process 5509 started&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;squid&lt;/code&gt; 服務應顯示 &lt;code&gt;loaded&lt;/code&gt; 並且是 &lt;code&gt;active (running)&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.4. 使用 Squid 檢測&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo squid -k check | echo $?&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.5. 將 Squid 用來監聽客戶端請求的通訊連接埠改成 &lt;code&gt;8080&lt;/code&gt;&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sed -i &amp;#39;s|http_port 3128|#http_port 3128|g&amp;#39; /etc/squid/squid.conf
$ sudo sed -i &amp;#34;62ihttp_port 8080&amp;#34; /etc/squid/squid.conf&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;http_port PORT&lt;/code&gt;，這是 Squid 用來監聽客戶端請求的通訊連接埠。預設連接埠為 &lt;code&gt;3128&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.6. 允許本機系統和其他系統的使用者存取 Squid 和上網&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sed -i &amp;#39;s|http_access deny all|#http_access deny all|g&amp;#39; /etc/squid/squid.conf
$ sudo sed -i &amp;#39;59ihttp_access allow all&amp;#39; /etc/squid/squid.conf&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.7. Reload Squid&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl reload squid.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.8. 啟動防火牆&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl enable --now firewalld.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.9. 設定防火牆允許 squid 服務&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo firewall-cmd --add-port=8080/tcp --permanent
$ sudo firewall-cmd --reload&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.10. 再其他台機器測試是否開 8080 TCP Port&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ nc -w 1 192.168.11.195 8080; echo $?&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;2.11. 在本機測試是否能夠透過 squid 上網&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ squidclient -p 8080 https://www.google.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;HTTP/1.1 200 OK
Date: Tue, 09 Jan 2024 14:04:15 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
Content-Security-Policy-Report-Only: object-src &amp;#39;none&amp;#39;;base-uri &amp;#39;self&amp;#39;;script-src &amp;#39;nonce-MQHNqGlQrWDv6h0C8DvUjQ&amp;#39; &amp;#39;strict-dynamic&amp;#39; &amp;#39;report-sample&amp;#39; &amp;#39;unsafe-eval&amp;#39; &amp;#39;unsafe-inline&amp;#39; https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
P3P: CP=&amp;#34;This is not a P3P policy! See g.co/p3phelp for more info.&amp;#34;
Server: gws
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN
Set-Cookie: 1P_JAR=2024-01-09-14; expires=Thu, 08-Feb-2024 14:04:15 GMT; path=/; domain=.google.com; Secure
Set-Cookie: AEC=Ae3NU9NHgU8wktpInxIwHf7c1B1M8ESd01oaq_xA3akE34sUyfSmsb_WEio; expires=Sun, 07-Jul-2024 14:04:15 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax
Set-Cookie: NID=511=UTGSPeCwlOe_nlA6TIA4Ldko2xAj7kUY17QYZrRkxm_DsBhBWII92LzmU3Pz9I69NYktFhoJpYZI3lZL3BFTzJKu33M9qVM9bWjkl0H6FjGTjlE0XJJB3As9TBbgQ1ywcvgtVeSpr1_nvZ3wE4jnKb566WLgpKVfhLf-csMnzJQ; expires=Wed, 10-Jul-2024 14:04:15 GMT; path=/; domain=.google.com; HttpOnly
Alt-Svc: h3=&amp;#34;:443&amp;#34;; ma=2592000,h3-29=&amp;#34;:443&amp;#34;; ma=2592000
Accept-Ranges: none
Vary: Accept-Encoding
X-Cache: MISS from http-proxy
X-Cache-Lookup: MISS from http-proxy:8080
Via: 1.1 http-proxy (squid/5.7)
Connection: close
...以下省略&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. 安裝與設定 SUSE Manager Server&lt;span class="hx:absolute hx:-mt-20" id="3-安裝與設定-suse-manager-server"&gt;&lt;/span&gt;
&lt;a href="#3-%e5%ae%89%e8%a3%9d%e8%88%87%e8%a8%ad%e5%ae%9a-suse-manager-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;3.1. 安裝要求&lt;span class="hx:absolute hx:-mt-20" id="31-安裝要求"&gt;&lt;/span&gt;
&lt;a href="#31-%e5%ae%89%e8%a3%9d%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;h4&gt;Hardware&lt;span class="hx:absolute hx:-mt-20" id="hardware"&gt;&lt;/span&gt;
&lt;a href="#hardware" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;CPU:
&lt;ul&gt;
&lt;li&gt;Minimum &lt;code&gt;4&lt;/code&gt; dedicated 64-bit CPU cores (x86-64)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Mem:
&lt;ul&gt;
&lt;li&gt;Test or Base Installation
&lt;ul&gt;
&lt;li&gt;Minimum &lt;code&gt;16&lt;/code&gt; GB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Production Server
&lt;ul&gt;
&lt;li&gt;Minimum &lt;code&gt;32&lt;/code&gt; GB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Disk:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/&lt;/code&gt; (root directory)
&lt;ul&gt;
&lt;li&gt;Minimum &lt;code&gt;40&lt;/code&gt; GB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/lib/pgsql&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Minimum &lt;code&gt;50&lt;/code&gt; GB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/spacewalk&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Minimum storage required: &lt;code&gt;100&lt;/code&gt; GB (this will be verified by the implemented check)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;50&lt;/code&gt; GB for each SUSE product and Package Hub&lt;/li&gt;
&lt;li&gt;&lt;code&gt;360&lt;/code&gt; GB for each Red Hat product&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/cache&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Minimum &lt;code&gt;10&lt;/code&gt; GB. Add 100 MB per SUSE product, 1 GB per Red Hat or other product. Double the space if the server is an ISS Master.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Swap space&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;3 GB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Operating System&lt;span class="hx:absolute hx:-mt-20" id="operating-system"&gt;&lt;/span&gt;
&lt;a href="#operating-system" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;SUSE Linux Enterprise Server 15 SP4&lt;/li&gt;
&lt;li&gt;ISO: &lt;code&gt;SLE-15-SP4-Full-x86_64-QU3.1-Media1.iso&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;3.2. 開始安裝 SUSE Manager Server&lt;span class="hx:absolute hx:-mt-20" id="32-開始安裝-suse-manager-server"&gt;&lt;/span&gt;
&lt;a href="#32-%e9%96%8b%e5%a7%8b%e5%ae%89%e8%a3%9d-suse-manager-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.1. 啟動 SUSE Manager Server 所在的 VM&lt;/p&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.2. 選擇 Installation&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByZpt05da.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.3. 選擇要安裝的 Product: &lt;code&gt;SUSE Manager Server 4.3&lt;/code&gt;&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkBriRc_6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.4. 同意 SUSE Manager Server 4.3 的 Licence&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1DQ3R5O6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.5. 點選右上角，網路設定&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkpF2Aqu6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.6. 點選 &lt;code&gt;edit&lt;/code&gt; 設定 IP Address&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJ0T205up.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.6.1. 設定 Static IP&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;勾選 &lt;code&gt;Statically Assigned IP Address&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;IP Address 欄位輸入: &lt;code&gt;&amp;lt;IP&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Subnet Mask 欄位輸入: &lt;code&gt;/24&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Hostname 欄位輸入: &lt;code&gt;suma.example.com&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJiTgyjup.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.7. 設定 Hostname/DNS&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點選 &lt;code&gt;Hostname/DNS&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByNNz1iu6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.7.1. 設定 Hostname 與 Name Server&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Static Hostname 欄位輸入: &lt;code&gt;suma&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Set Hostname via DHCP: &lt;code&gt;no&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Name Server 欄位輸入: &lt;code&gt;192.168.11.85&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hy-Dmksua.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.8. 設定 Routing&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;點選 &lt;code&gt;Routing&lt;/code&gt; -&amp;gt; &lt;code&gt;Add&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJD0Xyo_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;3.2.8.1. 設定 Default Gateway&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Gateway 欄位輸入: &lt;code&gt;192.168.11.253&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Device 選擇: &lt;code&gt;eth0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;點選 OK&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1qw41s_T.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.9. 完成網路設定&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sk_wryj_T.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.10. 先暫時跳過註冊 Product&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;ol&gt;
&lt;li&gt;點選 &lt;code&gt;Skip Registration&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Bkv8Ukidp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;ol start="2"&gt;
&lt;li&gt;點選 &lt;code&gt;OK&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1G48yj_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;ol start="3"&gt;
&lt;li&gt;下一步，點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1w5UysdT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.11. 使用預設的 Extension 和 Module&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;預設包含以下 Extension 和 Module
&lt;ul&gt;
&lt;li&gt;Basesystem Module&lt;/li&gt;
&lt;li&gt;SUSE Manager Server Module 4.3&lt;/li&gt;
&lt;li&gt;Server Applications Module&lt;/li&gt;
&lt;li&gt;Web and Scripting Module&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;確認沒問題後，點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJV5wJidT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.12. 點選 &lt;code&gt;Next&lt;/code&gt;，不新增額外的 Product&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rknp_ksd6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.13. System Role 選擇 &lt;code&gt;SUSE Manager Server(single disk)&lt;/code&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1lvtyjOa.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.14. 設定磁區分割和檔案系統&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.14.1. Resize &lt;code&gt;var_spacewalk&lt;/code&gt; 目錄區的大小至最大&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;點選 &lt;code&gt;Expert Partitioner&lt;/code&gt; -&amp;gt; &lt;code&gt;Start with current Proposal&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sk3Rtyod6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;ol start="2"&gt;
&lt;li&gt;點選 &lt;code&gt;var_spacewalk&lt;/code&gt; -&amp;gt; &lt;code&gt;Device&lt;/code&gt; -&amp;gt; &lt;code&gt;Resize&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Bk4GjkjOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;預設是 Resize 到最大 Size，所以直接點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rkIos1o_6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;確認設定資訊沒問題後，點選 &lt;code&gt;Accept&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJCA3kiOp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;完成磁碟分割和檔案系統的設定，點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sk1r6yiup.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.15. 設定時區&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在世界地圖上點選台灣的位置&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByQuR1id6.jpg" alt="messageImage_1704816159400" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.16. 設定使用者&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;User`s Full Name 欄位輸入: &lt;code&gt;admin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Username 欄位輸入: &lt;code&gt;admin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Password 欄位輸入: &lt;code&gt;&amp;lt;密碼&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Confirm Password 欄位輸入: &lt;code&gt;&amp;lt;密碼&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;勾選 &lt;code&gt;Use the password to system administrator&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;確認資訊都正確後，點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sk9JJlou6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.2.17. 檢查設定，關閉防火牆，並且 openssh 要打開&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;在 Firewall will be enabled 欄位，點選 &lt;code&gt;disable&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryi8eei_6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;確認防火牆關閉且 SSH 服務有 &lt;code&gt;enable&lt;/code&gt;，再點選 &lt;code&gt;Install&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/By4Relj_a.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;確認安裝，點選 &lt;code&gt;Install&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkNV-xsO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;安裝完後，系統會重啟&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 設定 Http Proxy 與註冊 SUSE Manager Server&lt;span class="hx:absolute hx:-mt-20" id="33-設定-http-proxy-與註冊-suse-manager-server"&gt;&lt;/span&gt;
&lt;a href="#33-%e8%a8%ad%e5%ae%9a-http-proxy-%e8%88%87%e8%a8%bb%e5%86%8a-suse-manager-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.3.1. 設定 Proxy&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sed -i &amp;#39;s|PROXY_ENABLED=&amp;#34;no&amp;#34;|#PROXY_ENABLED=&amp;#34;no&amp;#34;|g&amp;#39; /etc/sysconfig/proxy
$ sudo sed -i &amp;#39;12iPROXY_ENABLED=&amp;#34;yes&amp;#34;&amp;#39; /etc/sysconfig/proxy
$ sudo sed -i &amp;#39;s|HTTP_PROXY=&amp;#34;&amp;#34;|#HTTP_PROXY=&amp;#34;&amp;#34;|g&amp;#39; /etc/sysconfig/proxy
$ sudo sed -i &amp;#39;21iHTTP_PROXY=&amp;#34;http://192.168.11.195:8080&amp;#34;&amp;#39; /etc/sysconfig/proxy
$ sudo sed -i &amp;#39;s|HTTPS_PROXY=&amp;#34;&amp;#34;|#HTTPS_PROXY=&amp;#34;&amp;#34;|g&amp;#39; /etc/sysconfig/proxy
$ sudo sed -i &amp;#39;30iHTTPS_PROXY=&amp;#34;http://192.168.11.195:8080&amp;#34;&amp;#39; /etc/sysconfig/proxy&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.3.2. 重啟系統&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.3.3. 跟 SUSE Customer Center 註冊系統&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;使用 root 帳號執行以下命令 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ SUSEConnect -e &amp;#34;xxx@xxx.xxx&amp;#34; -r &amp;#34;XXXXXXXXXXXXXXX&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;-e&lt;/code&gt;，E-mail Address
&lt;code&gt;-r&lt;/code&gt;，Registration Code&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Registering system to SUSE Customer Center
Using E-Mail:xxx
Announcing system to https://scc.suse.com ...
Activating SUSE-Manager-Server 4.3 x86_64 ...
-&amp;gt; Adding service to system ...
Activating sle-module-basesystem 15.4 x86_64 ...
-&amp;gt; Adding service to system ...
-&amp;gt; Installing release package ...
Activating sle-module-server-applications 15.4 x86_64 ...
-&amp;gt; Adding service to system ...
-&amp;gt; Installing release package ...
Activating sle-module-web-scripting 15.4 x86_64 ...
-&amp;gt; Adding service to system ...
-&amp;gt; Installing release package ...
Activating sle-module-suse-manager-server 4.3 x86_64 ...
-&amp;gt; Adding service to system ...
-&amp;gt; Installing release package ...
Successfully registered system&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.3.4. 檢查是否註冊成功&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ SUSEConnect -s&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[{&amp;#34;name&amp;#34;:&amp;#34;SUSE Employee subscription for SUSE Manager Server x86_64&amp;#34;,&amp;#34;identifier&amp;#34;:&amp;#34;SUSE-Manager-Server&amp;#34;,&amp;#34;version&amp;#34;:&amp;#34;4.3&amp;#34;,&amp;#34;arch&amp;#34;:&amp;#34;x86_64&amp;#34;,&amp;#34;status&amp;#34;:&amp;#34;Registered&amp;#34;,&amp;#34;regcode&amp;#34;:&amp;#34;XXX&amp;#34;,&amp;#34;starts_at&amp;#34;:&amp;#34;2023-04-19 02:33:18 UTC&amp;#34;,&amp;#34;expires_at&amp;#34;:&amp;#34;2024-04-19 02:33:18 UTC&amp;#34;,&amp;#34;subscription_status&amp;#34;:&amp;#34;ACTIVE&amp;#34;,&amp;#34;type&amp;#34;:&amp;#34;XXX&amp;#34;},{&amp;#34;identifier&amp;#34;:&amp;#34;sle-module-basesystem&amp;#34;,&amp;#34;version&amp;#34;:&amp;#34;15.4&amp;#34;,&amp;#34;arch&amp;#34;:&amp;#34;x86_64&amp;#34;,&amp;#34;status&amp;#34;:&amp;#34;Registered&amp;#34;},{&amp;#34;identifier&amp;#34;:&amp;#34;sle-module-server-applications&amp;#34;,&amp;#34;version&amp;#34;:&amp;#34;15.4&amp;#34;,&amp;#34;arch&amp;#34;:&amp;#34;x86_64&amp;#34;,&amp;#34;status&amp;#34;:&amp;#34;Registered&amp;#34;},{&amp;#34;identifier&amp;#34;:&amp;#34;sle-module-web-scripting&amp;#34;,&amp;#34;version&amp;#34;:&amp;#34;15.4&amp;#34;,&amp;#34;arch&amp;#34;:&amp;#34;x86_64&amp;#34;,&amp;#34;status&amp;#34;:&amp;#34;Registered&amp;#34;},{&amp;#34;identifier&amp;#34;:&amp;#34;sle-module-suse-manager-server&amp;#34;,&amp;#34;version&amp;#34;:&amp;#34;4.3&amp;#34;,&amp;#34;arch&amp;#34;:&amp;#34;x86_64&amp;#34;,&amp;#34;status&amp;#34;:&amp;#34;Registered&amp;#34;}]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.3.4. 更新套件儲存庫&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ref&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.4 設定 SUSE Manager Server&lt;span class="hx:absolute hx:-mt-20" id="34-設定-suse-manager-server"&gt;&lt;/span&gt;
&lt;a href="#34-%e8%a8%ad%e5%ae%9a-suse-manager-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.1. 使用 YAST 工具設定 SUSE Manager Server&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ yast2 susemanager_setup&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.2. Set up SUSE Manager from scratch&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;預設是 &lt;code&gt;Set up SUSE Manager from scratch&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;選擇 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hyb4e5jdT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.3. 輸入 SUSE Manager Administrator e-mail address&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1az_csuT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.4. 設定 Certificate&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;輸入以下憑證資訊 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Organization: &lt;code&gt;SUSELab&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Organization Unit: &lt;code&gt;IT&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;City: &lt;code&gt;Taipei City&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;State: &lt;code&gt;Taiwan&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Country: &lt;code&gt;TW&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;SSL Password: &lt;code&gt;*******&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Repeat Password: &lt;code&gt;*******&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;確認資訊都輸入正確後，點選 &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJGakioO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.5. Database Settings&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;輸入以下憑證資訊 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Database User: &lt;code&gt;susemanager&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Database Password: &lt;code&gt;*******&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Repeat Password: &lt;code&gt;*******&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyAYgjsO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.6. 同意開始初始化設定&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點選 &amp;ldquo;Yes&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyAxWojO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.7. 檢查無任何錯誤資訊後，點選 &lt;code&gt;Next&lt;/code&gt;&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sybmfoiua.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.4.8. 完成 SUSE Manager Server 的初始化設定，點選 &lt;code&gt;Finish&lt;/code&gt;&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rkItGso_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.5. 設定 SUSE Manager Server 管理員帳號&lt;span class="hx:absolute hx:-mt-20" id="35-設定-suse-manager-server-管理員帳號"&gt;&lt;/span&gt;
&lt;a href="#35-%e8%a8%ad%e5%ae%9a-suse-manager-server-%e7%ae%a1%e7%90%86%e5%93%a1%e5%b8%b3%e8%99%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.5.1. 在瀏覽器中，輸入完成設定後提供的位址，使用此位址開啟 SUSE Manager Web UI。&lt;/p&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.5.2. 建立組織&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;輸入以下資訊 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Organization Name: &lt;code&gt;SUSELab&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Desired Login: &lt;code&gt;sumaadmin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Desired Password: &lt;code&gt;exadmin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Confirm Password: &lt;code&gt;exadmin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Email: &lt;code&gt;sumaadmin@example.com&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;First Name: &lt;code&gt;Use the drop-down and select Dr. and in the field immediately to the right, type Suma&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Last Name: &lt;code&gt;Geeko&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;確認資訊皆正確後，點選 &lt;code&gt;Create Organization&lt;/code&gt; 按鈕&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1-JBjj_6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.6. 將 SUSE Manager Server 更新至最新版 4.3.10&lt;span class="hx:absolute hx:-mt-20" id="36-將-suse-manager-server-更新至最新版-4310"&gt;&lt;/span&gt;
&lt;a href="#36-%e5%b0%87-suse-manager-server-%e6%9b%b4%e6%96%b0%e8%87%b3%e6%9c%80%e6%96%b0%e7%89%88-4310" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.6.1. 在 SUSE Manager Server 以 root 身分停止 spacewalk 服務：&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacewalk-service stop&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Shutting down spacewalk services...
Done.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.6.2. 刷新套件儲存庫&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ref&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.6.3. 軟體更新&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper up&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Refreshing service &amp;#39;Basesystem_Module_15_SP4_x86_64&amp;#39;.
Refreshing service &amp;#39;SUSE_Manager_Server_4.3_x86_64&amp;#39;.
Refreshing service &amp;#39;SUSE_Manager_Server_Module_4.3_x86_64&amp;#39;.
Refreshing service &amp;#39;Server_Applications_Module_15_SP4_x86_64&amp;#39;.
Refreshing service &amp;#39;Web_and_Scripting_Module_15_SP4_x86_64&amp;#39;.
Loading repository data...
Reading installed packages...
The following 477 packages are going to be upgraded:
The following package is going to change architecture:
release-notes-susemanager x86_64 -&amp;gt; noarch
The following 13 NEW packages are going to be installed:
apache2-mod_wsgi apache-commons-math dosfstools kernel-default-5.14.21-150400.24.100.2 libfstrm0 libhidapi-hidraw0 libprocps8
libprotobuf-c1 log4j-jcl mtools python3-jmespath python3-looseversion system-user-prometheus
The following 4 packages are going to be REMOVED:
apache2-mod_wsgi-python3 apache-commons-math3 libfreebl3-hmac libsoftokn3-hmac
The following package requires a system reboot:
kernel-default-5.14.21-150400.24.100.2
477 packages to upgrade, 13 new, 4 to remove, 1 to change arch.
Overall download size: 857.7 MiB. Already cached: 0 B. After the operation, additional 214.6 MiB will be used.
Note: System reboot required.
Continue? [y/n/v/...? shows all options] (y): y&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認沒錯後，按 &lt;code&gt;y&lt;/code&gt; 開始下載套件與安裝&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ Update notifications were received from the following packages:
susemanager-schema-4.3.23-150400.3.33.2.noarch (/var/adm/update-messages/susemanager-schema-4.3.23-150400.3.33.2)
View the notifications now? [y/n] (n):
There are running programs which still use files and libraries deleted or updated by recent upgrades. They should be restarted to benefit from the latest updates. Run &amp;#39;zypper ps -s&amp;#39; to list these programs.
Since the last system boot core libraries or services have been updated.
Reboot is suggested to ensure that your system benefits from these updates.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.6.4. 重啟系統&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.6.5. 檢查 SUSE Manager 相關的所有服務是否都是 &lt;code&gt;active&lt;/code&gt;&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacewalk-service status&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;● mgr-check-payg.service - Check and install payg billing service.
Loaded: loaded (/usr/lib/systemd/system/mgr-check-payg.service; static)
Active: active (exited) since Wed 2024-01-10 13:31:14 CST; 1min 52s ago
Process: 868 ExecStart=/usr/sbin/spacewalk-startup-helper check-billing-service (code=exited, status=0/SUCCESS)
Main PID: 868 (code=exited, status=0/SUCCESS)
● uyuni-update-config.service - Uyuni update config
Loaded: loaded (/usr/lib/systemd/system/uyuni-update-config.service; static)
Active: active (exited) since Wed 2024-01-10 13:31:29 CST; 1min 37s ago
Process: 1893 ExecStart=/usr/sbin/uyuni-update-config (code=exited, status=0/SUCCESS)
Main PID: 1893 (code=exited, status=0/SUCCESS)
● uyuni-check-database.service - Uyuni check database
Loaded: loaded (/usr/lib/systemd/system/uyuni-check-database.service; static)
Active: active (exited) since Wed 2024-01-10 13:32:12 CST; 54s ago
Process: 1904 ExecStart=/usr/sbin/spacewalk-startup-helper check-database (code=exited, status=0/SUCCESS)
Main PID: 1904 (code=exited, status=0/SUCCESS)
● tomcat.service - Apache Tomcat Web Application Container
Loaded: loaded (/usr/lib/systemd/system/tomcat.service; enabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/tomcat.service.d
└─override.conf
Active: active (running) since Wed 2024-01-10 13:32:12 CST; 54s ago
Main PID: 5222 (java)
Tasks: 117 (limit: 576)
CGroup: /system.slice/tomcat.service
└─ 5222 /usr/lib64/jvm/jre/bin/java -ea -Xms256m -Xmx1G -Djava.awt.headless=true -Dorg.xml.sax.driver=com.redhat.rhn.fro…
● spacewalk-wait-for-tomcat.service - Spacewalk wait for tomcat
Loaded: loaded (/usr/lib/systemd/system/spacewalk-wait-for-tomcat.service; static)
Active: active (exited) since Wed 2024-01-10 13:32:45 CST; 21s ago
Process: 5223 ExecStart=/usr/sbin/spacewalk-startup-helper wait-for-tomcat (code=exited, status=0/SUCCESS)
Main PID: 5223 (code=exited, status=0/SUCCESS)
● salt-master.service - The Salt Master Server
Loaded: loaded (/usr/lib/systemd/system/salt-master.service; enabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/salt-master.service.d
└─override.conf
Active: active (running) since Wed 2024-01-10 13:32:12 CST; 54s ago
Docs: man:salt-master(1)
file:///usr/share/doc/salt/html/contents.html
https://docs.saltproject.io/en/latest/contents.html
Main PID: 5220 (salt-master)
Tasks: 56
CGroup: /system.slice/salt-master.service
├─ 5220 /usr/bin/python3 /usr/bin/salt-master
├─ 5468 /usr/bin/python3 /usr/bin/salt-master
├─ 5469 /usr/bin/python3 /usr/bin/salt-master
├─ 5473 /usr/bin/python3 /usr/bin/salt-master
├─ 5474 /usr/bin/python3 /usr/bin/salt-master
├─ 5475 /usr/bin/python3 /usr/bin/salt-master
├─ 5476 /usr/bin/python3 /usr/bin/salt-master
├─ 5478 /usr/bin/python3 /usr/bin/salt-master
├─ 5479 /usr/bin/python3 /usr/bin/salt-master
├─ 5480 /usr/bin/python3 /usr/bin/salt-master
├─ 5481 /usr/bin/python3 /usr/bin/salt-master
├─ 5482 /usr/bin/python3 /usr/bin/salt-master
├─ 5483 /usr/bin/python3 /usr/bin/salt-master
├─ 5484 /usr/bin/python3 /usr/bin/salt-master
├─ 5485 /usr/bin/python3 /usr/bin/salt-master
├─ 5496 /usr/bin/python3 /usr/bin/salt-master
└─ 5497 /usr/bin/python3 /usr/bin/salt-master
● salt-api.service - The Salt API
Loaded: loaded (/usr/lib/systemd/system/salt-api.service; enabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/salt-api.service.d
└─override.conf
Active: active (running) since Wed 2024-01-10 13:32:12 CST; 54s ago
Docs: man:salt-api(1)
file:///usr/share/doc/salt/html/contents.html
https://docs.saltproject.io/en/latest/contents.html
Main PID: 5215 (salt-api)
Tasks: 104
CGroup: /system.slice/salt-api.service
├─ 5215 /usr/bin/python3 /usr/bin/salt-api
└─ 5307 /usr/bin/python3 /usr/bin/salt-api
● spacewalk-wait-for-salt.service - Make sure that salt is started before httpd
Loaded: loaded (/usr/lib/systemd/system/spacewalk-wait-for-salt.service; static)
Active: active (exited) since Wed 2024-01-10 13:32:12 CST; 54s ago
Process: 5221 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 5221 (code=exited, status=0/SUCCESS)
● apache2.service - The Apache Webserver
Loaded: loaded (/usr/lib/systemd/system/apache2.service; enabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/apache2.service.d
└─override.conf
Active: active (running) since Wed 2024-01-10 13:32:45 CST; 21s ago
Main PID: 6911 (httpd-prefork)
Status: &amp;#34;Processing requests...&amp;#34;
Tasks: 8
CGroup: /system.slice/apache2.service
├─ 6911 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
├─ 6926 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
├─ 6927 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
├─ 6928 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
├─ 6931 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
├─ 6932 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
├─ 6976 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
└─ 7313 /usr/sbin/httpd-prefork -DSYSCONFIG -DSSL -DISSUSE -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/sysconfi…
● rhn-search.service - Spacewalk search engine
Loaded: loaded (/usr/lib/systemd/system/rhn-search.service; enabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/rhn-search.service.d
└─override.conf
Active: active (running) since Wed 2024-01-10 13:32:45 CST; 21s ago
Main PID: 6918 (rhn-search)
Tasks: 78
CGroup: /system.slice/rhn-search.service
├─ 6918 /bin/sh /usr/sbin/rhn-search
└─ 6934 /usr/bin/java -Djava.library.path=/usr/lib:/usr/lib64:/usr/lib/gcj/postgresql-jdbc:/usr/lib64/gcj/postgresql-jdb…
● cobblerd.service - Cobbler Helper Daemon
Loaded: loaded (/usr/lib/systemd/system/cobblerd.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2024-01-10 13:32:12 CST; 54s ago
Main PID: 5213 (cobblerd)
Tasks: 24
CGroup: /system.slice/cobblerd.service
├─ 5213 /usr/bin/python3 -s /usr/bin/cobblerd -F
└─ 7962 &amp;#34;[sha1sum]&amp;#34;
● taskomatic.service - Taskomatic
Loaded: loaded (/usr/lib/systemd/system/taskomatic.service; enabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/taskomatic.service.d
└─override.conf
Active: active (running) since Wed 2024-01-10 13:32:45 CST; 21s ago
Main PID: 6919 (taskomatic)
Tasks: 151
CGroup: /system.slice/taskomatic.service
├─ 6919 /bin/sh /usr/sbin/taskomatic
└─ 6935 /usr/bin/java -Djava.library.path=/usr/lib:/usr/lib64 -classpath &amp;#34;/usr/share/rhn/classes:/usr/share/rhn/lib/spac…
● spacewalk-wait-for-taskomatic.service - Spacewalk wait for taskomatic
Loaded: loaded (/usr/lib/systemd/system/spacewalk-wait-for-taskomatic.service; static)
Active: active (exited) since Wed 2024-01-10 13:32:52 CST; 14s ago
Process: 6924 ExecStart=/usr/sbin/spacewalk-startup-helper wait-for-taskomatic (code=exited, status=0/SUCCESS)
Main PID: 6924 (code=exited, status=0/SUCCESS)
● salt-secrets-config.service - Configures secrets between salt-master and other services
Loaded: loaded (/usr/lib/systemd/system/salt-secrets-config.service; static)
Drop-In: /usr/lib/systemd/system/salt-secrets-config.service.d
└─override.conf
Active: active (exited) since Wed 2024-01-10 13:31:17 CST; 1min 49s ago
Process: 870 ExecStart=/usr/bin/salt-secrets-config.py (code=exited, status=0/SUCCESS)
Main PID: 870 (code=exited, status=0/SUCCESS)
● mgr-websockify.service - TCP to WebSocket proxy
Loaded: loaded (/usr/lib/systemd/system/mgr-websockify.service; static)
Active: active (running) since Wed 2024-01-10 13:32:12 CST; 54s ago
Process: 5214 ExecStartPre=/usr/bin/sh -c grep secret_key /etc/rhn/rhn.conf | tr -d &amp;#39; &amp;#39; | cut -f2 -d &amp;#39;=&amp;#39; | perl -ne &amp;#39;s/([0-9a-f]{2})/print chr hex $1/gie&amp;#39; &amp;gt; /etc/rhn/websockify.key (code=exited, status=0/SUCCESS)
Main PID: 5224 (websockify)
Tasks: 4
CGroup: /system.slice/mgr-websockify.service
└─ 5224 /usr/bin/python3 /usr/bin/websockify --token-plugin JWTTokenApi --token-source /etc/rhn/websockify.key localhost…
● cobbler-refresh-mkloaders.service - Refresh Cobbler bootloaders
Loaded: loaded (/usr/lib/systemd/system/cobbler-refresh-mkloaders.service; static)
Drop-In: /usr/lib/systemd/system/cobbler-refresh-mkloaders.service.d
└─override.conf
Active: active (exited) since Wed 2024-01-10 13:32:49 CST; 17s ago
Process: 6920 ExecStart=/usr/bin/cobbler mkloaders (code=exited, status=0/SUCCESS)
Main PID: 6920 (code=exited, status=0/SUCCESS)
● spacewalk.target - Spacewalk
Loaded: loaded (/usr/lib/systemd/system/spacewalk.target; enabled; vendor preset: disabled)
Active: active since Wed 2024-01-10 13:32:52 CST; 14s ago
● jabberd.service - Jabber Server
Loaded: loaded (/usr/lib/systemd/system/jabberd.service; enabled; vendor preset: disabled)
Active: active (exited) since Wed 2024-01-10 13:31:28 CST; 1min 38s ago
Process: 1622 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 1622 (code=exited, status=0/SUCCESS)
● osa-dispatcher.service - OSA Dispatcher daemon
Loaded: loaded (/usr/lib/systemd/system/osa-dispatcher.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2024-01-10 13:31:30 CST; 1min 36s ago
Process: 1835 ExecStartPre=/bin/rm -f /run/osa-dispatcher.pid (code=exited, status=0/SUCCESS)
Process: 1838 ExecStart=/usr/sbin/osa-dispatcher --pid-file /run/osa-dispatcher.pid (code=exited, status=0/SUCCESS)
Main PID: 2082 (osa-dispatcher)
Tasks: 1
CGroup: /system.slice/osa-dispatcher.service
└─ 2082 /usr/bin/python3 /usr/sbin/osa-dispatcher --pid-file /run/osa-dispatcher.pid&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.7. 從 SUSE Custom Center 同步 Products&lt;span class="hx:absolute hx:-mt-20" id="37-從-suse-custom-center-同步-products"&gt;&lt;/span&gt;
&lt;a href="#37-%e5%be%9e-suse-custom-center-%e5%90%8c%e6%ad%a5-products" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.7.1. 新增 Organization Credentials&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;ol&gt;
&lt;li&gt;在 SUSE Manager Web UI, 選擇 &lt;code&gt;Admin&lt;/code&gt; -&amp;gt; &lt;code&gt;Setup Wizard&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;從 &lt;code&gt;Setup Wizard&lt;/code&gt; 頁面選擇 &lt;code&gt;Organization Credentials&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;點選 &lt;code&gt;Add a new credential&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r15J-noda.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;輸入 &lt;code&gt;Username&lt;/code&gt; 和 &lt;code&gt;Password&lt;/code&gt;，確認沒問題後按 &lt;code&gt;Save&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkP3b3i_T.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在 SCC 的 Users -&amp;gt; Organization Credentials 可以看到使用者帳號和密碼
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hy0oGhj_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.7.2. 確認組織憑證已新增成功&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkfNX2jOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;3.7.3. 列出可加入的 Products&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點選 &lt;code&gt;Products&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1tVDnoda.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. 使用自簽憑證&lt;span class="hx:absolute hx:-mt-20" id="4-使用自簽憑證"&gt;&lt;/span&gt;
&lt;a href="#4-%e4%bd%bf%e7%94%a8%e8%87%aa%e7%b0%bd%e6%86%91%e8%ad%89" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;4.1 Create a new CA and Server Certificates&lt;span class="hx:absolute hx:-mt-20" id="41-create-a-new-ca-and-server-certificates"&gt;&lt;/span&gt;
&lt;a href="#41-create-a-new-ca-and-server-certificates" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 SUSE Manager Server 執行以下命令，將舊的 certificate 目錄區移到新的地方:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mv /root/ssl-build /root/old-ssl-build&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;產生新的 CA certificate:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ rhn-ssl-tool --gen-ca -psumaadmin \
--dir=&amp;#34;/root/ssl-build&amp;#34; \
--set-country=&amp;#34;TW&amp;#34; \
--set-state=&amp;#34;Taiwan&amp;#34; \
--set-city=&amp;#34;Taipei&amp;#34; \
--set-org=&amp;#34;IT&amp;#34; \
--set-org-unit=&amp;#34;SUSELab&amp;#34; \
--set-common-name=&amp;#34;SUSE Manager CA Certificate&amp;#34; \
--set-email=&amp;#34;name@example.com&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--gen-ca&lt;/code&gt;，產生憑證授權單位 ( CA ) 金鑰對和 Public RPM。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-pPASSWORD&lt;/code&gt;，CA 的密碼，如果缺少這個選項，系統會提示。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--dir&lt;/code&gt;，建立目錄區，並且產生的 CA 憑證及相關檔案都會放在這個目錄區中。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-country&lt;/code&gt;，兩個英文字母的國家代碼，只能使用大寫的英文字母。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-state&lt;/code&gt;，州或省。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-city&lt;/code&gt;，城市或地點。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-org&lt;/code&gt;，組織或公司名稱。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-org-unit&lt;/code&gt;，組織裡面的單位。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-common-name&lt;/code&gt;，common name。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-email&lt;/code&gt;，設定 email 地址。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Generating private CA key: /root/ssl-build/RHN-ORG-PRIVATE-SSL-KEY
Generating public CA certificate: /root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT
Using distinguishing variables:
--set-country = &amp;#34;TW&amp;#34;
--set-state = &amp;#34;Taiwan&amp;#34;
--set-city = &amp;#34;Taipei&amp;#34;
--set-org = &amp;#34;IT&amp;#34;
--set-org-unit = &amp;#34;SUSELab&amp;#34;
--set-common-name = &amp;#34;SUSE Manager CA Certificate&amp;#34;
--set-email = &amp;#34;name@example.com&amp;#34;
...working...
Generating CA public certificate RPM:
/root/ssl-build/rhn-org-trusted-ssl-cert-1.0-1.src.rpm
/root/ssl-build/rhn-org-trusted-ssl-cert-1.0-1.noarch.rpm
Make the public CA certificate publically available:
(NOTE: the SUSE Manager Server or Proxy installers may do this step for you.)
The &amp;#34;noarch&amp;#34; RPM and raw CA certificate can be made publically accessible
by copying it to the /srv/www/htdocs/pub directory of your SUSE Manager Server or
Proxy.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;產生新的 server certificate&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ rhn-ssl-tool --gen-server -psumaadmin \
--dir=&amp;#34;/root/ssl-build&amp;#34; \
--set-country=&amp;#34;TW&amp;#34; \
--set-state=&amp;#34;Taiwan&amp;#34; \
--set-city=&amp;#34;Taipei&amp;#34; \
--set-org=&amp;#34;SUSELab&amp;#34; \
--set-org-unit=&amp;#34;IT&amp;#34; \
--set-email=&amp;#34;name@example.com&amp;#34; \
--set-hostname=`hostname -f` \
--set-cname=&amp;#34;example.com&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--gen-server&lt;/code&gt;，產生 Web Server 的 SSL 金鑰對、RPM 和 tar 壓縮檔：&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-pPASSWORD&lt;/code&gt;，CA 的密碼，如果缺少這個選項，系統會提示，必須與 CA的密碼一致。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--dir&lt;/code&gt;，建立目錄區，並且產生的 Web Server 的 SSL 金鑰對、RPM 和 tar 壓縮檔都會放在這個目錄區中。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-country&lt;/code&gt;，兩個英文字母的國家代碼，只能使用大寫的英文字母。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-state&lt;/code&gt;，州或省。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-city&lt;/code&gt;，城市或地點。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-org&lt;/code&gt;，組織或公司名稱。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-org-unit&lt;/code&gt;，組織裡面的單位。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-email&lt;/code&gt;，設定 email 地址。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-hostname&lt;/code&gt;，設定 SUSE Manager Server 或 SUSE Manager Proxy 的主機名稱（FQDN：fully qualified domain name）（預設值：建置機器的主機名稱）。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--set-cname&lt;/code&gt;，設定 SUSE Manager Server 或 SUSE Manager Proxy 的 cname 別名（FQDN: fully qualified domain name），這將產生具有多個主機名稱的憑證，可指定多個。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Generating the web server&amp;#39;s SSL private key: /root/ssl-build/suma/server.key
Generating web server&amp;#39;s SSL certificate request: /root/ssl-build/suma/server.csr
Using distinguished names:
--set-country = &amp;#34;TW&amp;#34;
--set-state = &amp;#34;Taiwan&amp;#34;
--set-city = &amp;#34;Taipei&amp;#34;
--set-org = &amp;#34;IT&amp;#34;
--set-org-unit = &amp;#34;SUSELab&amp;#34;
--set-hostname = &amp;#34;suma.example.com&amp;#34;
--set-email = &amp;#34;name@example.com&amp;#34;
Rotated: rhn-ca-openssl.cnf --&amp;gt; rhn-ca-openssl.cnf.1
Generating/signing web server&amp;#39;s SSL certificate: server.crt
...working...
Generating web server&amp;#39;s SSL key pair/set RPM:
/root/ssl-build/suma/rhn-org-httpd-ssl-key-pair-suma-1.0-1.src.rpm
/root/ssl-build/suma/rhn-org-httpd-ssl-key-pair-suma-1.0-1.noarch.rpm
The most current SUSE Manager Proxy installation process against SUSE Manager hosted
requires the upload of an SSL tar archive that contains the CA SSL public
certificate and the web server&amp;#39;s key set.
Generating the web server&amp;#39;s SSL key set and CA SSL public certificate archive:
/root/ssl-build/suma/rhn-org-httpd-ssl-archive-suma-1.0-1.tar
Deploy the server&amp;#39;s SSL key pair/set RPM:
(NOTE: the SUSE Manager or Proxy installers may do this step for you.)
The &amp;#34;noarch&amp;#34; RPM needs to be deployed to the machine working as a
web server, or SUSE Manager, or SUSE Manager Proxy.
Presumably &amp;#39;suma.example.com&amp;#39;.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.2. Replace Certificates&lt;span class="hx:absolute hx:-mt-20" id="42-replace-certificates"&gt;&lt;/span&gt;
&lt;a href="#42-replace-certificates" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;透過 &lt;code&gt;mgr-ssl-cert-setup&lt;/code&gt; 更換憑證&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mgr-ssl-cert-setup --root-ca-file=/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT \
--server-cert-file=/root/ssl-build/suma/server.crt \
--server-key-file=/root/ssl-build/suma/server.key&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--root-ca-file&lt;/code&gt;，Root CA 憑證的絕對路徑&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--server-cert-file&lt;/code&gt;，Server 憑證的絕對路徑&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--server-key-file&lt;/code&gt;，Server Private Key 的絕對路徑&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;After changing the server certificate please execute:
$&amp;gt; spacewalk-service stop
$&amp;gt; systemctl restart postgresql.service
$&amp;gt; spacewalk-service start
As the CA certificate has been changed, please deploy the CA to all registered clients.
On salt-managed clients, you can do this by applying the highstate.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;重啟以下服務&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacewalk-service stop &amp;amp;&amp;amp; \
systemctl restart postgresql.service &amp;amp;&amp;amp; \
spacewalk-service start&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Shutting down spacewalk services...
Done.
Starting spacewalk services...
Checking DB schema and running DB schema upgrade if needed. This may take a while.
Call the following command to see progress: journalctl -f -u uyuni-check-database.service
Done.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;檢查 SUSE Manager Server 相關的所有服務是否正常&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacewalk-service status&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;檢查每一個 Service 是否都是 Active&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Root CA 部屬到每一個 Salt Clients 上&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;Systems -&amp;gt; 選擇 Salt Client -&amp;gt; States -&amp;gt; 點選 Test mode -&amp;gt; Apply Hightstate&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByxJAOUKa.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;在 Events -&amp;gt; History 檢查是否成功&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H19E0_8Y6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;States -&amp;gt; Apply Hightstate&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJUARuLKT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;在 Events -&amp;gt; History 檢查是否成功&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1lTQ1KLtp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;SSH 連線至 Client 端，執行以下命令，檢查 CA 憑證是否與 Server 一致&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat /etc/pki/ca-trust/source/anchors/RHN-ORG-TRUSTED-SSL-CERT&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;-----BEGIN CERTIFICATE-----
MIIDQzCCAiugAwIBAgIUZs8KZdMAEwnfzGoFVEFIhFpB03cwDQYJKoZIhvcNAQEL
BQAwMTERMA8GA1UEAwwIU1VTRS5MYWIxCzAJBgNVBAYTAlRXMQ8wDQYDVQQHDAZU
YWlwZWkwHhcNMjQwMTE4MDkyNDQ0WhcNMjUwMTA4MDkyNDQ0WjAxMREwDwYDVQQD
DAhTVVNFLkxhYjELMAkGA1UEBhMCVFcxDzANBgNVBAcMBlRhaXBlaTCCASIwDQYJ
KoZIhvcNAQEBBQADggEPADCCAQoCggEBALIk9EsE0pAjhq/cqq0fwQCWLHU9SxWg
oJQlRnY9Xt&amp;#43;Gvrh3iWVi5y4nDX7MKco7JfhLJy&amp;#43;OyYtorru538FGBToSeSlog3hM
/wx12d2baHA2ZaavNp9IQcaUZU2DNzoLSamVzi8CQplPhCrrvL1EUD9iG8EUV43f
HK2w8cFVlOX5YPd8CRHLRD/nysD2ZZ5kfyADJhwTT5Qk/C0wi7jFpFnf89aXAjlU
ckKegfVAxL27ynIFxk7HL5Bvt5XwHfaBtmAPwRhem7HS6DEJxZM6Gx/c4HKI0YIC
GTAh2eTdzH8VOOBudlgbEmivSpWOwSCDzEWfH5XMWlF73yf8kCtprr0CAwEAAaNT
MFEwHQYDVR0OBBYEFEhqJvJ7F6g2xzSiQHAQLFlQHac2MB8GA1UdIwQYMBaAFEhq
JvJ7F6g2xzSiQHAQLFlQHac2MA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL
BQADggEBAJ&amp;#43;s0a6X4J2b/D8K2AazwDB3jyry1BXizoCYrIKspyO/2fMAgRjskSub
Bb3i&amp;#43;bUL&amp;#43;UiY1UbHEIfVHuzDi7JDAhuA&amp;#43;2l9SRjRO7HCXPum3j2REelLc6Y&amp;#43;yM9B
pAuwIXb2KfHiRM4Nen7tymMbOtaIm9XfDCY&amp;#43;TZ/vSIBu8tj9bUN4yctCYIoqbfAs
rWQwR6uWLmp4tcpS9d4lt&amp;#43;R0L8W6kxcVQwyaSABXF62IAQA9wVJQtcj4th07gsiR
FS8rbVRG52iX01L&amp;#43;fwxOwspZG7n&amp;#43;fp/eL4Ushj939giNnkn0GdHA3eaUfMIhn7KM
1mI/JrxRt&amp;#43;zCvMqdPLRHhZJNMd&amp;#43;OlCI=
-----END CERTIFICATE-----&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;5. Retrying to Set up SUSE Manager (可選)&lt;span class="hx:absolute hx:-mt-20" id="5-retrying-to-set-up-suse-manager-可選"&gt;&lt;/span&gt;
&lt;a href="#5-retrying-to-set-up-suse-manager-%e5%8f%af%e9%81%b8" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ yast2 susemanager_setup
&amp;gt; 最後一部問 mgr-setup ，選 no
$ rm /root/.MANAGER_SETUP_COMPLETE
$ systemctl stop postgresql.service
$ rm -rf /var/lib/pgsql/data
$ mv /root/ssl-build /root/old-ssl-build
# Check the /etc/hosts file, and correct it if necessary.
$ cat /etc/hosts
# Check /etc/setup_env.sh on the target system, and ensure the database name is set:
$ cat /root/setup_env.sh | grep -w &amp;#34;MANAGER_DB_NAME&amp;#34;
export MANAGER_DB_NAME=&amp;#39;susemanager&amp;#39;
$ sudo init 6
$ /usr/lib/susemanager/bin/mgr-setup -s&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;6. 參考資料&lt;span class="hx:absolute hx:-mt-20" id="6-參考資料"&gt;&lt;/span&gt;
&lt;a href="#6-%e5%8f%83%e8%80%83%e8%b3%87%e6%96%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/installation-and-upgrade/install-server-unified.html"target="_blank" rel="noopener"&gt;Install SUSE Manager 4.3 Server - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/installation-and-upgrade/server-setup.html#_set_up_suse_manager_with_yast"target="_blank" rel="noopener"&gt;SUSE Manager Server Setup - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/installation-and-upgrade/server-z.html"target="_blank" rel="noopener"&gt;Server - Patch Level Upgrade (Z Upgrade) - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>安裝 SUSE Manager 5.0</title><link>https://blog.kubeantony.com/archive/suse/%E5%AE%89%E8%A3%9D-suse-manager-5.0/</link><pubDate>Tue, 08 Apr 2025 10:02:18 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/%E5%AE%89%E8%A3%9D-suse-manager-5.0/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;1. 安裝要求&lt;span class="hx:absolute hx:-mt-20" id="1-安裝要求"&gt;&lt;/span&gt;
&lt;a href="#1-%e5%ae%89%e8%a3%9d%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1.1. 硬體要求&lt;span class="hx:absolute hx:-mt-20" id="11-硬體要求"&gt;&lt;/span&gt;
&lt;a href="#11-%e7%a1%ac%e9%ab%94%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;硬體項目&lt;/th&gt;
&lt;th&gt;詳細資訊&lt;/th&gt;
&lt;th&gt;建議規格&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;CPU&lt;/td&gt;
&lt;td&gt;x86-64, ARM, ppc64le, or s390x&lt;/td&gt;
&lt;td&gt;至少 4 顆 64-bit 專用核心&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RAM&lt;/td&gt;
&lt;td&gt;最少&lt;/td&gt;
&lt;td&gt;16 GB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RAM&lt;/td&gt;
&lt;td&gt;建議&lt;/td&gt;
&lt;td&gt;32 GB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;磁碟空間&lt;/td&gt;
&lt;td&gt;&lt;code&gt;/&lt;/code&gt; 根目錄&lt;/td&gt;
&lt;td&gt;20 GB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;磁碟空間&lt;/td&gt;
&lt;td&gt;&lt;code&gt;/var/lib/containers/storage/volumes&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;至少 150 GB (依產品數量而異)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;磁碟空間&lt;/td&gt;
&lt;td&gt;&lt;code&gt;/var/lib/containers/storage/volumes/var-pgsql&lt;/code&gt; PostgreSQL 資料目錄&lt;/td&gt;
&lt;td&gt;至少 50 GB&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3&gt;1.2. 網路要求&lt;span class="hx:absolute hx:-mt-20" id="12-網路要求"&gt;&lt;/span&gt;
&lt;a href="#12-%e7%b6%b2%e8%b7%af%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;SUSE Manager 伺服器必須能正確解析其完整網域名稱（FQDN）。如果無法解析這個 FQDN，可能會對多個不同的元件造成嚴重問題。&lt;/li&gt;
&lt;li&gt;為了確保 SUSE Manager 的網域名稱能被其客戶端正確解析，伺服器與客戶端主機都必須連接到一個正常運作的 DNS 伺服器。你同時也需要確保 &lt;strong&gt;reverse lookups&lt;/strong&gt; 已正確設定。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 透過變數定義 SUSE Manager 5.0 的 FQDN
$ SUMA_FQDN=&amp;#39;antony-suma.example.com.&amp;#39;
# 2. 透過變數定義 SUSE Manager 5.0 的 IP 位址
$ SUMA_IP=&amp;#39;192.168.11.9&amp;#39;
# 3. 透過變數定義 DNS Server 的 IP 位址
$ DNS_Server_IP=&amp;#39;192.168.11.11&amp;#39;
# 4. 解析 SUSE Manager 5.0 的 FQDN
$ dig ${SUMA_FQDN} @${DNS_Server_IP} &amp;#43;short
192.168.11.9
# 5. 反向解析 SUSE Manager 5.0 的 IP
$ dig -x ${SUMA_IP} @${DNS_Server_IP} &amp;#43;short
antony-suma.example.com.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.3. 所需網路連接埠&lt;span class="hx:absolute hx:-mt-20" id="13-所需網路連接埠"&gt;&lt;/span&gt;
&lt;a href="#13-%e6%89%80%e9%9c%80%e7%b6%b2%e8%b7%af%e9%80%a3%e6%8e%a5%e5%9f%a0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;請參考 SUSE Manager 官網連結 :&lt;/p&gt;
&lt;p&gt;&lt;a
href="https://documentation.suse.com/suma/5.0/en/suse-manager/installation-and-upgrade/network-requirements.html#ports"target="_blank" rel="noopener"&gt;https://documentation.suse.com/suma/5.0/en/suse-manager/installation-and-upgrade/network-requirements.html#ports&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;1.4. 安裝 ISO&lt;span class="hx:absolute hx:-mt-20" id="14-安裝-iso"&gt;&lt;/span&gt;
&lt;a href="#14-%e5%ae%89%e8%a3%9d-iso" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;到 &lt;a
href="https://www.suse.com/download/suse-manager/"target="_blank" rel="noopener"&gt;SUSE 的官網&lt;/a&gt; 下載以下 ISO 檔案&lt;/p&gt;
&lt;p&gt;&lt;code&gt;SUSE-Manager-Server.x86_64-5.0.2-SelfInstall-2024.12.install.iso&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;2. 開始安裝 SUSE Manager 5.0&lt;span class="hx:absolute hx:-mt-20" id="2-開始安裝-suse-manager-50"&gt;&lt;/span&gt;
&lt;a href="#2-%e9%96%8b%e5%a7%8b%e5%ae%89%e8%a3%9d-suse-manager-50" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;本文章測試的 VM 規格如下 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CPU : &lt;code&gt;4&lt;/code&gt; Core&lt;/li&gt;
&lt;li&gt;RAM : &lt;code&gt;16&lt;/code&gt; GiB&lt;/li&gt;
&lt;li&gt;Hard Disk : 一顆 &lt;code&gt;70&lt;/code&gt; G 當 OS 碟，另一顆 &lt;code&gt;200&lt;/code&gt; G 當專門儲存 SUSE Manager 資料的硬碟&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;透過 ISO 將 VM 開機&lt;/li&gt;
&lt;li&gt;按一下 &lt;code&gt;Enter&lt;/code&gt; 鍵 「Install SUSE Manager 5.0 Server」。
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1n9rzMCJl.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;選擇要將 OS 安裝到哪顆硬碟，確認好後按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B11RHGzRJx.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;清除硬碟中的所有資料，確認好後按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJyW8fGA1x.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;等系統安裝 OS，安裝好後系統會重新開機
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkHVLfzRke.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;在 JeOS Firstboot 畫面上選擇開始繼續，確認好後按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkbNDGfRJe.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;選擇鍵盤規格，確認好後按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkqDvzfRkg.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;接受許可協議，確認好後按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkIYvfzA1l.png" alt="image" loading="lazy" /&gt;
選 &lt;code&gt;YES&lt;/code&gt; 後按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1r3PMG0kg.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;選擇時區 &lt;code&gt;Asia/Taipei&lt;/code&gt; (在 66% 左右)，確認好後按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1NzuGfR1e.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;設定 root 的密碼
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B14L_Gz01x.png" alt="image" loading="lazy" /&gt;
二次確認密碼沒打錯
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1aD_ff01g.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;這邊會有教你怎麼註冊的指令，直接按 &lt;code&gt;Enter&lt;/code&gt; 鍵
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Byc9dfzCyg.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;使用 root 身分登入，輸入帳號密碼
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJvHYzGR1l.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;li&gt;設定網路資訊和主機名稱&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 如果主機有透過 DHCP 得到 IP 位址，可以先 SSH 連進主機
# 1. 透過變數定義 IP 位址並且包含 Subnetmask
$ IP=&amp;#39;192.168.11.9/24&amp;#39;
$ 2. 透過變數定義 Default Gateway
$ GW=&amp;#39;192.168.11.254&amp;#39;
# 3. 檢視乙太網卡的名稱
$ ip -4 a s
...
2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
altname enp0s18
altname ens18
inet 192.168.11.120/24 brd 192.168.11.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
# 4. 透過變數定義要設定乙太網卡的 DEVICE 名稱
$ DEV=&amp;#39;eth0&amp;#39;
# 5. 透過變數定義要設定的網卡的 connection 名稱
$ CNAME=$(nmcli -t -f NAME,DEVICE connection show | awk -v dev=&amp;#34;${DEV}&amp;#34; -F: &amp;#39;$2 == dev {print $1}&amp;#39;)
# 6. 透過變數定義 DNS Server IP 位址
$ DNS_Server_IP=&amp;#39;192.168.11.11&amp;#39;
# 7. 設定靜態 IP、Default Gateway 和 DNS Server
$ nmcli connection modify &amp;#34;${CNAME}&amp;#34; \
ipv4.method manual \
ipv4.addresses &amp;#34;${IP}&amp;#34; \
ipv4.gateway &amp;#34;${GW}&amp;#34; \
ipv4.dns &amp;#34;${DNS_Server_IP}&amp;#34;
# 8. 透過變數定義主機名稱
$ HN=&amp;#39;antony-suma.example.com.&amp;#39;
# 9. 設定主機名稱
$ hostnamectl set-hostname ${HN}
# 10. 重新開機
$ reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="14"&gt;
&lt;li&gt;註冊 SLE Micro 和 SUSE Manager 5.0&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 使用 root 身分 SSH 連線至 SUSE Manager 主機
$ ssh root@192.168.11.9
# 2. 進入 transactional-update shell
$ transactional-update shell
# 3. 註冊 SLE Micro 到 SCC
$ SUSEConnect -r &amp;lt;REGCODE&amp;gt; -e &amp;lt;your_email&amp;gt;
# 4. 註冊 SUSE Manager 5.0 到 SCC
$ SUSEConnect -p SUSE-Manager-Server/5.0/x86_64 -r &amp;lt;REGCODE&amp;gt;
# 5. 安裝 SUSE Manager 5.0
$ zypper -n install mgradm* mgrctl* suse-manager-5.0-$(uname -m)-server-*
# 6. 將所有已安裝套件更新到最新的版本
$ zypper -n update
# 7. 離開 transactional-update shell
$ exit
# 8. 重新開機
$ reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="15"&gt;
&lt;li&gt;建立 LVM 並設定 Persistent Storage&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 檢視當前的硬碟
# 將規劃 /dev/sda 為系統碟， /dev/sdb 為 SUSE Manager 儲存資料的硬碟
$ hwinfo --disk | grep -E &amp;#34;Device File:&amp;#34;
Device File: /dev/sdb (/dev/sg1)
Device File: /dev/sda (/dev/sg0)
# 2. 建立 PV
$ pvcreate /dev/sdb
# 3. 建立 VG
$ vgcreate suma /dev/sdb
# 4. 建立 LV
$ lvcreate -l &amp;#43;100%FREE -n data /dev/suma
# 5. 設定 SUMA 的永存目錄區，以下命令還會將 /var/lib/containers/storage/volumes 掛載至指定的 Device 上
$ mgr-storage-server /dev/suma/data&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="16"&gt;
&lt;li&gt;部署 SUSE Manager 5.0&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mgradm install podman antony-suma.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :
(要輸入 CA key 的密碼，以及 SUSE Manager Administrator 的密碼，各兩次)&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;5:34PM INF Welcome to mgradm
5:34PM INF Executing command: podman
Password for the CA key to generate:
Confirm the password:
Administrator password:
Confirm the password:
5:34PM INF Setting up the server with the FQDN &amp;#39;antony-suma.example.com&amp;#39;
5:34PM INF Computed image name is registry.suse.com/suse/manager/5.0/x86_64/server:5.0.3
5:34PM INF Ensure image registry.suse.com/suse/manager/5.0/x86_64/server:5.0.3 is available
5:34PM INF Using the localhost/suse/manager/5.0/x86_64/server:5.0.3 image loaded from the RPM instead of its online version registry.suse.com/suse/manager/5.0/x86_64/server:5.0.3
5:34PM INF Setting up uyuni network
5:34PM INF Enabling system service
5:34PM INF Waiting for the server to start…
5:34PM INF Run setup command in the container
5:34PM ??? Asserting correct java version...
5:34PM ??? Skipping btrfs check in containers
Open needed firewall ports...
5:34PM ??? success
5:34PM ??? No swap found; trying to setup additional swap space...
5:34PM ??? Will *NOT* create swapfile in a container!
5:34PM ??? ===============================================================================
!
! This shell operates within a container environment, meaning that not all
! modifications will be permanently saved in volumes.
!
! Please exercise caution when making changes, as some alterations may not
! persist beyond the current session.
!
===============================================================================
5:34PM ??? CREATE ROLE
5:34PM ??? * Loading answer file: /root/spacewalk-answers.
5:34PM ??? ** Database: Setting up database connection for PostgreSQL backend.
5:34PM ??? ** Database: Populating database.
** Database: --clear-db option used. Clearing database.
5:34PM ??? ** Database: Shutting down spacewalk services that may be using DB.
5:34PM ??? ** Database: Services stopped. Clearing DB.
5:35PM ??? Running spacewalk-sql --select-mode-direct /usr/share/susemanager/db/postgres/deploy.sql
5:35PM ??? *** Progress: #
5:35PM ???
5:35PM ??? * Performing initial configuration.
5:35PM ??? * Configuring apache SSL virtual host.
5:35PM ??? * Creating SSL certificates.
5:35PM ??? ** SSL: Generating CA certificate.
5:35PM ??? ** SSL: Generating server certificate.
5:35PM ??? ** Database: Setting up report database.
5:35PM ??? ** Database: --clear-db option used. Clearing report database.
5:35PM ??? Running /usr/bin/uyuni-setup-reportdb create --db reportdb --user pythia_susemanager --host localhost --address * --remote 0.0.0.0/0,::/0 --password &amp;lt;REDACTED&amp;gt;
*** Progress: #
5:35PM ???
5:35PM ??? ** Database: Installation complete.
* Report DB Configured.
* Update configuration in database.
5:35PM ??? * Setting up Cobbler..
5:35PM ??? * Deploying configuration files.
5:35PM ??? * Restarting services.
5:36PM ??? Installation complete.
5:36PM ??? INFO: Database configuration has been changed.
INFO: Wrote new general configuration. Backup as /var/lib/pgsql/data/postgresql.2025-04-08-17-36-04.conf
INFO: Wrote new client auth configuration. Backup as /var/lib/pgsql/data/pg_hba.2025-04-08-17-36-04.conf
INFO: New configuration has been applied.
Database is online
System check finished
5:36PM ??? Shutting down spacewalk services...
5:36PM ??? Done.
5:36PM ??? Starting spacewalk services...
5:36PM ??? Checking DB schema and running DB schema upgrade if needed. This may take a while.
Call the following command to see progress: journalctl -f -u uyuni-check-database.service
5:36PM ??? Done.
5:36PM INF Copying the SSL CA certificate to the host
5:36PM INF Updating host trusted certificates
5:36PM INF Server set up, login on https://antony-suma.example.com with admin user&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="17"&gt;
&lt;li&gt;打開瀏覽器，輸入 SUSE Manager 的 FQDN&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;帳號 : &lt;code&gt;admin&lt;/code&gt;
密碼 : &lt;code&gt;只有你自己知道&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJIbyuzAyg.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>Registering SUSE Liberty Linux 8 Clients</title><link>https://blog.kubeantony.com/archive/suse/registering-suse-liberty-linux-8-clients/</link><pubDate>Tue, 18 Feb 2025 08:37:58 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/registering-suse-liberty-linux-8-clients/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，如何成功將 SUSE Liberty Linux Client 註冊到 SUSE Manager Server&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 注意事項&lt;span class="hx:absolute hx:-mt-20" id="1-注意事項"&gt;&lt;/span&gt;
&lt;a href="#1-%e6%b3%a8%e6%84%8f%e4%ba%8b%e9%a0%85" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;SUSE Liberty Linux clients 指的就是將 Red Hat Enterprise Linux 或是 CentOS 系統的 Packages Repository 換成 SUSE Liberty Linux 的套件儲存庫。&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;blockquote&gt;
&lt;p&gt;SUSE Liberty Linux clients 有時候也被稱為以下 4 種名稱&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SUSE Linux Enterprise Server with Expanded Support (SLESES)&lt;/li&gt;
&lt;li&gt;Liberty&lt;/li&gt;
&lt;li&gt;RES&lt;/li&gt;
&lt;li&gt;Red Hat Expanded Support.&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;SUSE Liberty Linux software channels &lt;strong&gt;僅提供套件的更新，不提供套件本身&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;要註冊 SUSE Liberty Linux Client，需要在 SUSE Manager Server 新增 SUSE Liberty Linux Product 以建立必要的基本頻道，然後將任何必需的 Red Hat 或 CentOS 套件匯入為自訂子頻道。&lt;/li&gt;
&lt;li&gt;必須直接從 Red Hat 或 CentOS 獲得 initial packages ( 初始套件 )，然後才能套用由 SUSE Liberty Linux 軟體頻道提供的更新。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;2. 在 SUSE Manager Server 新增 Software Channels&lt;span class="hx:absolute hx:-mt-20" id="2-在-suse-manager-server-新增-software-channels"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%9c%a8-suse-manager-server-%e6%96%b0%e5%a2%9e-software-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. 系統要求&lt;span class="hx:absolute hx:-mt-20" id="21-系統要求"&gt;&lt;/span&gt;
&lt;a href="#21-%e7%b3%bb%e7%b5%b1%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;SUSE Manager Server 的 &lt;code&gt;/var/spacewalk&lt;/code&gt; 目錄區剩餘空間量，必須有 300 G 以上的剩餘空間&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2.2. 注意事項&lt;span class="hx:absolute hx:-mt-20" id="22-注意事項"&gt;&lt;/span&gt;
&lt;a href="#22-%e6%b3%a8%e6%84%8f%e4%ba%8b%e9%a0%85" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSE Liberty Linux 的某些必需套件包含在 Red Hat Enterprise Linux 或 CentOS installation media 中，在註冊 SUSE Liberty Linux 客戶端之前，您必須先安裝這些套件。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SUSE Liberty Linux 產品由 SUSE Custom Center 提供，這也包括客戶端工具套件。&lt;/li&gt;
&lt;li&gt;在將 SUSE Liberty Linux 客戶端註冊到 SUSE Manager Server 之前，您需要添加所需的 software channels 並同步它們。&lt;/li&gt;
&lt;li&gt;您需要選擇兩組不同的通道，一組是 SUSE Liberty Linux，另一組是 Client Tools.。&lt;/li&gt;
&lt;li&gt;需要與正確的 SUSE Liberty Linux channels 關聯的 activation key。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;2.3. 開始新增 Software Channels&lt;span class="hx:absolute hx:-mt-20" id="23-開始新增-software-channels"&gt;&lt;/span&gt;
&lt;a href="#23-%e9%96%8b%e5%a7%8b%e6%96%b0%e5%a2%9e-software-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;以下 WebUI 和 CLI 的操作步驟選擇其中一種執行即可&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;2.3.1 使用 WebUI 操作步驟&lt;span class="hx:absolute hx:-mt-20" id="231-使用-webui-操作步驟"&gt;&lt;/span&gt;
&lt;a href="#231-%e4%bd%bf%e7%94%a8-webui-%e6%93%8d%e4%bd%9c%e6%ad%a5%e9%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;勾選要加入的 SUSE Liberty Linux (版本)&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Add product&amp;rdquo; ，然後等待同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hyu3N2t4p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;確認同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 Channels 欄位呈現綠勾勾的圖示，代表完成同步&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1GLqBdVp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;2.3.2. 使用 CLI 操作步驟&lt;span class="hx:absolute hx:-mt-20" id="232-使用-cli-操作步驟"&gt;&lt;/span&gt;
&lt;a href="#232-%e4%bd%bf%e7%94%a8-cli-%e6%93%8d%e4%bd%9c%e6%ad%a5%e9%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;連線至 SUSE Manager Server，並使用具有系統管理員權限的使用者帳號執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync add channel rhel8-pool-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;輸入 SUSE Manager 管理員的帳號密碼&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Please enter the credentials of SUSE Manager Administrator.
Login: admin
Password:
Channel &amp;#39;rhel8-pool-x86_64&amp;#39; has already been added
Scheduling reposync for following channels:
- rhel8-pool-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.4. SUSE Liberty Linux 在 SUSE Manager 上的資訊&lt;span class="hx:absolute hx:-mt-20" id="24-suse-liberty-linux-在-suse-manager-上的資訊"&gt;&lt;/span&gt;
&lt;a href="#24-suse-liberty-linux-%e5%9c%a8-suse-manager-%e4%b8%8a%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;下表是 SUSE Liberty Linux 每個版本對應的 Product 名稱 :&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;OS Version&lt;/th&gt;
&lt;th&gt;Product Name&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;SUSE Liberty Linux 7&lt;/td&gt;
&lt;td&gt;SUSE Linux Enterprise Server with Expanded Support 7 x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SUSE Liberty Linux 8&lt;/td&gt;
&lt;td&gt;RHEL or SLES ES or CentOS 8 Base x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SUSE Liberty Linux 9&lt;/td&gt;
&lt;td&gt;RHEL and Liberty 9 Base x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;下表是 SUSE Liberty Linux 每個版本對應的 Base Channel 和 Client Tools Channel :&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;SUSE Liberty Linux&lt;/th&gt;
&lt;th&gt;Base Channel&lt;/th&gt;
&lt;th&gt;Tools Channel&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;RHEL Expanded Support 7&lt;/td&gt;
&lt;td&gt;RES7-SUSE-Manager-Tools x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;RHEL or SLES ES or CentOS 8 Base&lt;/td&gt;
&lt;td&gt;RES8-Manager-Tools-Pool for x86_64 and RES8-Manager-Tools-Updates for x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;RHEL and Liberty 9 Base&lt;/td&gt;
&lt;td&gt;EL9-Manager-Tools-Pool for x86_64 and EL9-Manager-Tools-Updates for x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.5. 檢視 Product 下載過程&lt;span class="hx:absolute hx:-mt-20" id="25-檢視-product-下載過程"&gt;&lt;/span&gt;
&lt;a href="#25-%e6%aa%a2%e8%a6%96-product-%e4%b8%8b%e8%bc%89%e9%81%8e%e7%a8%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;以 SUSE Liberty Linux 8 為例，這個 Product 有 5 個必要的 Channel&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;res-8-updates-x86_64
res-as-8-updates-x86_64
res-cb-8-updates-x86_64
res8-manager-tools-pool-x86_64
res8-manager-tools-updates-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.5.1. 檢視下載 res-8-updates-x86_64 Channel 的 log 資訊&lt;span class="hx:absolute hx:-mt-20" id="251-檢視下載-res-8-updates-x86_64-channel-的-log-資訊"&gt;&lt;/span&gt;
&lt;a href="#251-%e6%aa%a2%e8%a6%96%e4%b8%8b%e8%bc%89-res-8-updates-x86_64-channel-%e7%9a%84-log-%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tail -f /var/log/rhn/reposync/res-8-updates-x86_64.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該要看到類似以下資訊 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2023/08/16 11:17:30 &amp;#43;08:00 Command: [&amp;#39;/usr/bin/spacewalk-repo-sync&amp;#39;, &amp;#39;--channel&amp;#39;, &amp;#39;res-8-updates-x86_64&amp;#39;, &amp;#39;--type&amp;#39;, &amp;#39;yum&amp;#39;, &amp;#39;--non-interactive&amp;#39;]
2023/08/16 11:17:30 &amp;#43;08:00 Sync of channel started.
2023/08/16 11:17:49 &amp;#43;08:00 Repo URL: https://updates.suse.com/SUSE/Updates/RES/8/x86_64/update/?&amp;lt;token&amp;gt;
2023/08/16 11:17:49 &amp;#43;08:00 Packages in repo: 16052
2023/08/16 11:18:33 &amp;#43;08:00 Packages already synced: 6
2023/08/16 11:18:33 &amp;#43;08:00 Packages to sync: 16046
2023/08/16 11:18:35 &amp;#43;08:00 New packages to download: 16046
2023/08/16 11:18:35 &amp;#43;08:00 Downloading packages:
2023/08/16 11:18:36 &amp;#43;08:00 1/16046 : ModemManager-1.10.4-1.el8.x86_64.rpm
...中間省略
2023/11/07 10:03:43 &amp;#43;08:00 Downloading packages:
2023/11/07 10:03:46 &amp;#43;08:00 1/5 : binutils-devel-2.30-119.el8_8.2.x86_64.rpm
2023/11/07 10:03:46 &amp;#43;08:00 2/5 : sos-audit-4.6.0-5.el8.noarch.rpm
2023/11/07 10:03:47 &amp;#43;08:00 3/5 : sos-4.6.0-5.el8.noarch.rpm
2023/11/07 10:03:48 &amp;#43;08:00 4/5 : binutils-2.30-119.el8_8.2.x86_64.rpm
2023/11/07 10:03:51 &amp;#43;08:00 5/5 : binutils-devel-2.30-119.el8_8.2.i686.rpm
2023/11/07 10:03:51 &amp;#43;08:00 Importing packages started.
2023/11/07 10:03:51 &amp;#43;08:00
2023/11/07 10:03:51 &amp;#43;08:00 Importing packages to DB:
2023/11/07 10:04:08 &amp;#43;08:00 Package batch #1 of 1 completed...
2023/11/07 10:04:08 &amp;#43;08:00 Importing packages finished.
2023/11/07 10:04:08 &amp;#43;08:00
2023/11/07 10:04:08 &amp;#43;08:00 Linking packages to the channel.
2023/11/07 10:04:09 &amp;#43;08:00 5 packages linked
2023/11/07 10:04:10 &amp;#43;08:00
2023/11/07 10:04:10 &amp;#43;08:00 Patches in repo: 2193.
2023/11/07 10:04:20 &amp;#43;08:00 Add Patch RHSA-2023:6236
2023/11/07 10:04:20 &amp;#43;08:00 Add Patch RHBA-2023:6293
2023/11/07 10:04:20 &amp;#43;08:00 Syncing 2 new patch(es) to channel.
2023/11/07 10:04:23 &amp;#43;08:00 Regenerating bootstrap repositories.
2023/11/07 10:04:24 &amp;#43;08:00 Sync completed.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;下載完成後會在 log 檔中看到 &lt;code&gt;Sync completed.&lt;/code&gt; 代表完成&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.5.2.檢視下載 其他 Channel 的 log 資訊&lt;span class="hx:absolute hx:-mt-20" id="252檢視下載-其他-channel-的-log-資訊"&gt;&lt;/span&gt;
&lt;a href="#252%e6%aa%a2%e8%a6%96%e4%b8%8b%e8%bc%89-%e5%85%b6%e4%bb%96-channel-%e7%9a%84-log-%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tail -f /var/log/rhn/reposync/res-as-8-updates-x86_64.log
$ sudo tail -f /var/log/rhn/reposync/res-cb-8-updates-x86_64.log
$ sudo tail -f /var/log/rhn/reposync/res8-manager-tools-pool-x86_64.log
$ sudo tail -f /var/log/rhn/reposync/res8-manager-tools-updates-x86_64.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.6. Trouble Shooting&lt;span class="hx:absolute hx:-mt-20" id="26-trouble-shooting"&gt;&lt;/span&gt;
&lt;a href="#26-trouble-shooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;2.6.1. 透過 CLI 重新同步 Channel&lt;span class="hx:absolute hx:-mt-20" id="261-透過-cli-重新同步-channel"&gt;&lt;/span&gt;
&lt;a href="#261-%e9%80%8f%e9%81%8e-cli-%e9%87%8d%e6%96%b0%e5%90%8c%e6%ad%a5-channel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync sync channel &amp;lt;channel_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.6.2. 在 SCC 有新增 Product 的訂閱，但是 SUSE Manager Server 沒有認到&lt;span class="hx:absolute hx:-mt-20" id="262-在-scc-有新增-product-的訂閱但是-suse-manager-server-沒有認到"&gt;&lt;/span&gt;
&lt;a href="#262-%e5%9c%a8-scc-%e6%9c%89%e6%96%b0%e5%a2%9e-product-%e7%9a%84%e8%a8%82%e9%96%b1%e4%bd%86%e6%98%af-suse-manager-server-%e6%b2%92%e6%9c%89%e8%aa%8d%e5%88%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Refresh the local copy of products, channels, and subscriptions&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync -d 3 refresh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.6.3. &lt;code&gt;mgr-sync&lt;/code&gt; log 檔案所在的位置&lt;span class="hx:absolute hx:-mt-20" id="263-mgr-sync-log-檔案所在的位置"&gt;&lt;/span&gt;
&lt;a href="#263-mgr-sync-log-%e6%aa%94%e6%a1%88%e6%89%80%e5%9c%a8%e7%9a%84%e4%bd%8d%e7%bd%ae" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/var/log/rhn/mgr-sync.log&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/log/rhn/rhn_web_api.log&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;3. 新增 Base Media&lt;span class="hx:absolute hx:-mt-20" id="3-新增-base-media"&gt;&lt;/span&gt;
&lt;a href="#3-%e6%96%b0%e5%a2%9e-base-media" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;3.1. 注意事項&lt;span class="hx:absolute hx:-mt-20" id="31-注意事項"&gt;&lt;/span&gt;
&lt;a href="#31-%e6%b3%a8%e6%84%8f%e4%ba%8b%e9%a0%85" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;SUSE Liberty Linux 的 base channel 沒有任何套件，因為 SUSE 沒有提供 Red Hat Enterprise Linux 或 CentOS 的 base media。&lt;/li&gt;
&lt;li&gt;需要從 Red Hat 或 CentOS 取得 base media，並將其新增為 SUSE Liberty Linux parent channel 的 child channel。為了確保有需要的所有套件，請使用完整的 DVD image，而不是最小或 JeOS image。&lt;/li&gt;
&lt;li&gt;可以使用 SUSE Manager custom channels 來設定 Red Hat Enterprise Linux 或 CentOS 的 media。base media 上的所有套件都必須 mirror 到 child channel。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;3.2. 建立 Custom Channels&lt;span class="hx:absolute hx:-mt-20" id="32-建立-custom-channels"&gt;&lt;/span&gt;
&lt;a href="#32-%e5%bb%ba%e7%ab%8b-custom-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;使用 SUSE Manager Server 管理員帳號登入&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- login &amp;lt;admin_name&amp;gt;
&amp;gt; enter admin password&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立 CentOS 8 BaseOS Custom Channel&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- softwarechannel_create -n &amp;#34;Centos8 Media BaseOS&amp;#34; -l centos8-media-baseos -p rhel8-pool-x86_64 -a x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt;，Custom Channel NAME&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;，Custom Channel LABEL&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-p&lt;/code&gt;，PARENT_CHANNEL of Custom Channel&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-a&lt;/code&gt;，ARCHITECTURE&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;建立 CentOS 8 AppStream Custom Channel&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- softwarechannel_create -n &amp;#34;Centos8 Media AppStream&amp;#34; -l centos8-media-appstream -p rhel8-pool-x86_64 -a x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 將 Base Media 加到 Custom Channels 中&lt;span class="hx:absolute hx:-mt-20" id="33-將-base-media-加到-custom-channels-中"&gt;&lt;/span&gt;
&lt;a href="#33-%e5%b0%87-base-media-%e5%8a%a0%e5%88%b0-custom-channels-%e4%b8%ad" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 SUSE Manager Server 的 &lt;code&gt;/tmp&lt;/code&gt; 目錄區底下準備 CentOS 8 的 ISO 檔&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -# -L https://archive.kernel.org/centos-vault/8.5.2111/isos/x86_64/CentOS-8.5.2111-x86_64-dvd1.iso -o /tmp/CentOS-8.5.2111-x86_64-dvd1.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;############################################################################ 100.0%&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立一個包含 media 內容的目錄，用 &lt;code&gt;sll7&lt;/code&gt;、&lt;code&gt;sll8&lt;/code&gt; 或 &lt;code&gt;sll9&lt;/code&gt; 取代 &lt;code&gt;&amp;lt;os_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir -p /srv/www/htdocs/pub/&amp;lt;os_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;s117&lt;/code&gt; 對應的是 SUSE Liberty Linux 7&lt;/li&gt;
&lt;li&gt;&lt;code&gt;s118&lt;/code&gt; 對應的是 SUSE Liberty Linux 8&lt;/li&gt;
&lt;li&gt;&lt;code&gt;s119&lt;/code&gt; 對應的是 SUSE Liberty Linux 9&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;將 CentOS-8 的 image 掛載到 &lt;code&gt;/srv/www/htdocs/pub/s117&lt;/code&gt; 目錄區&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mount -o loop /tmp/CentOS-8-x86_64-DVD-2009.iso /srv/www/htdocs/pub/s118&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;將 BaseOS 的 Packages 匯入到先前建立的 Custom Channel 中&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo spacewalk-repo-sync -c centos8-media-baseos -u file:///srv/www/htdocs/pub/s118/BaseOS/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-c&lt;/code&gt;，指定 channel-label&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u&lt;/code&gt;，指定 Repository 的 URL&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
14:29:08 Sync completed.
14:29:08 Total time: 0:32:04&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;將 AppStream 的 Packages 匯入到先前建立的 Custom Channel 中&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo spacewalk-repo-sync -c centos8-media-appstream -u file:///srv/www/htdocs/pub/s118/AppStream/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-c&lt;/code&gt;，指定 channel-label&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u&lt;/code&gt;，指定 Repository 的 URL&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
14:29:08 Sync completed.
14:29:08 Total time: 0:32:04&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. 註冊 SUSE Liberty Linux Clients&lt;span class="hx:absolute hx:-mt-20" id="4-註冊-suse-liberty-linux-clients"&gt;&lt;/span&gt;
&lt;a href="#4-%e8%a8%bb%e5%86%8a-suse-liberty-linux-clients" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;4.1. 手動創建用戶端倉庫&lt;span class="hx:absolute hx:-mt-20" id="41-手動創建用戶端倉庫"&gt;&lt;/span&gt;
&lt;a href="#41-%e6%89%8b%e5%8b%95%e5%89%b5%e5%bb%ba%e7%94%a8%e6%88%b6%e7%ab%af%e5%80%89%e5%ba%ab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-create-bootstrap-repo --create SLE-ES8-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.2. 創建 Activation_Key&lt;span class="hx:absolute hx:-mt-20" id="42-創建-activation_key"&gt;&lt;/span&gt;
&lt;a href="#42-%e5%89%b5%e5%bb%ba-activation_key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_create \
-n liberty-linux-8 \
-d liberty-linux-8 \
-b rhel8-pool-x86_64 \
-e virtualization_host&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;activationkey_create&lt;/code&gt; 參數介紹 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt; ，activationkey 的名稱&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt; ，activationkey 的描述&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-b&lt;/code&gt; ，指定 activationkey 的 BASE_CHANNEL&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-e&lt;/code&gt; ，[enterprise_entitled,virtualization_host]&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h4&gt;4.2.1 將 Centos-8 Base 和 AppStream Media channel 加入 activation key&lt;span class="hx:absolute hx:-mt-20" id="421-將-centos-8-base-和-appstream-media-channel-加入-activation-key"&gt;&lt;/span&gt;
&lt;a href="#421-%e5%b0%87-centos-8-base-%e5%92%8c-appstream-media-channel-%e5%8a%a0%e5%85%a5-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_addchildchannels 1-liberty-linux-8 centos8-media-baseos centos8-media-appstream&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;加入其他 channel : &lt;code&gt;spacecmd -- activationkey_addchildchannels 1-liberty-linux-8 res-8-updates-x86_64 res-as-8-updates-x86_64 res-cb-8-updates-x86_64 res8-manager-tools-pool-x86_64 res8-manager-tools-updates-x86_64&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;4.3. 創建 Bootstrap Script&lt;span class="hx:absolute hx:-mt-20" id="43-創建-bootstrap-script"&gt;&lt;/span&gt;
&lt;a href="#43-%e5%89%b5%e5%bb%ba-bootstrap-script" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-bootstrap --activation-key=1-liberty-linux-8 --script=bootstrap-liberty-linux-8.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.4. 在 CentOS-8 執行 Bootstrap Script 註冊&lt;span class="hx:absolute hx:-mt-20" id="44-在-centos-8-執行-bootstrap-script-註冊"&gt;&lt;/span&gt;
&lt;a href="#44-%e5%9c%a8-centos-8-%e5%9f%b7%e8%a1%8c-bootstrap-script-%e8%a8%bb%e5%86%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;連線到 CentOS-8 主機，並使用具有系統管理員權限的使用者帳號執行以下操作&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;disable the public repositories&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo find /etc/yum.repos.d/ -type f -not -name susemanager*.repo | sudo xargs sed -i &amp;#39;s/enabled=1/enabled=0/g&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;執行以下註冊命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://&amp;lt;SUMA_FQDN&amp;gt;/pub/bootstrap/bootstrap-liberty-linux-8.sh | sudo bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;......................以上省略
REGISTRATION
------------
* registering
Using activation key: 1-liberty-linux-8
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service → /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.5. 檢查 Packages Repository&lt;span class="hx:absolute hx:-mt-20" id="45-檢查-packages-repository"&gt;&lt;/span&gt;
&lt;a href="#45-%e6%aa%a2%e6%9f%a5-packages-repository" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;執行以下命令，列出已啟用的 Packages Repository&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum repolist enabled&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;repo id repo name
susemanager:centos8-media-appstream Centos8 Media AppStream
susemanager:centos8-media-baseos Centos8 Media BaseOS
susemanager:res-8-updates-x86_64 RES-8-Updates for x86_64
susemanager:res-as-8-updates-x86_64 RES-AS-8-Updates for x86_64
susemanager:res-cb-8-updates-x86_64 RES-CB-8-Updates for x86_64
susemanager:res8-manager-tools-pool-x86_64 RES8-Manager-Tools-Pool for x86_64
susemanager:res8-manager-tools-updates-x86_64 RES8-Manager-Tools-Updates for x86_64
susemanager:rhel8-pool-x86_64 RHEL8-Pool for x86_&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認已更換為 SUSE Liberty Linux 8 的 Packages Repository&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h4&gt;4.5.1 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="451-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#451-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSEManager &amp;gt; Systems &amp;gt; Overview&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJmumoONT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;4.5.2 透過 CLI 的方式檢查 Client 系統資訊&lt;span class="hx:absolute hx:-mt-20" id="452-透過-cli-的方式檢查-client-系統資訊"&gt;&lt;/span&gt;
&lt;a href="#452-%e9%80%8f%e9%81%8e-cli-%e7%9a%84%e6%96%b9%e5%bc%8f%e6%aa%a2%e6%9f%a5-client-%e7%b3%bb%e7%b5%b1%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -q -- system_details centos-8&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Name: centos-8
System ID: 1000010027
UUID: 68c38167a8b849ae85ff1b5b802b9055
Locked: False
Registered: 20231120T17:05:39
Last Checkin: 20231120T17:07:14
OSA Status: unknown
Last Boot: 20231120T16:52:29
Contact Method:default
Hostname: centos-8
IP Address: x.x.x.x
Kernel: 4.18.0-348.el8.x86_64
Activation Keys
---------------
1-liberty-linux-8
Software Channels
-----------------
rhel8-pool-x86_64
|-- res8-manager-tools-updates-x86_64
|-- res8-manager-tools-pool-x86_64
|-- res-8-updates-x86_64
|-- res-cb-8-updates-x86_64
|-- centos8-media-baseos
|-- res-as-8-updates-x86_64
|-- centos8-media-appstream
Entitlements
------------
salt_entitled
System Groups
-------------&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.6. 測試系統更新&lt;span class="hx:absolute hx:-mt-20" id="46-測試系統更新"&gt;&lt;/span&gt;
&lt;a href="#46-%e6%b8%ac%e8%a9%a6%e7%b3%bb%e7%b5%b1%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Client 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update --nogpgcheck&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;... 以上省略
Transaction Summary
====================================================================
Install 14 Packages
Upgrade 398 Packages
Total size: 657 M
Is this ok [y/N]: y
... 中間省略
Installed:
NetworkManager-initscripts-updown-1:1.40.16-4.el8_8.noarch ...
Complete!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.1 TroubleShooting&lt;span class="hx:absolute hx:-mt-20" id="461-troubleshooting"&gt;&lt;/span&gt;
&lt;a href="#461-troubleshooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;遇到 Transaction check error&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Error:
Problem: package centos-linux-repos-8-3.el8.noarch conflicts with centos-release &amp;lt; 8.0-0.1905.0.10 provided by sles_es-release-8.8-0.9.el8.x86_64
- cannot install the best update candidate for package centos-linux-repos-8-3.el8.noarch
- cannot install the best update candidate for package centos-gpg-keys-1:8-3.el8.noarch
(try to add &amp;#39;--allowerasing&amp;#39; to command line to replace conflicting packages or &amp;#39;--skip-broken&amp;#39; to skip uninstallable packages or &amp;#39;--nobest&amp;#39; to use not only best candidate packages)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;解決辦法 : 執行以下命令，刪除 &lt;code&gt;centos-release&lt;/code&gt; 套件&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rpm -e --nodeps centos-linux-repos-8-3.el8.noarch centos-gpg-keys-1:8-3.el8.noarch&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.2 重啟系統&lt;span class="hx:absolute hx:-mt-20" id="462-重啟系統"&gt;&lt;/span&gt;
&lt;a href="#462-%e9%87%8d%e5%95%9f%e7%b3%bb%e7%b5%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.3. 再次更新測試&lt;span class="hx:absolute hx:-mt-20" id="463-再次更新測試"&gt;&lt;/span&gt;
&lt;a href="#463-%e5%86%8d%e6%ac%a1%e6%9b%b4%e6%96%b0%e6%b8%ac%e8%a9%a6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
Dependencies resolved.
Nothing to do.
Complete!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.4. 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="464-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#464-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BknsQjYN6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Updates 欄位已經是綠勾勾代表系統已更新至最新&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.5. 檢查 Kernel 版本是否成功更新&lt;span class="hx:absolute hx:-mt-20" id="465-檢查-kernel-版本是否成功更新"&gt;&lt;/span&gt;
&lt;a href="#465-%e6%aa%a2%e6%9f%a5-kernel-%e7%89%88%e6%9c%ac%e6%98%af%e5%90%a6%e6%88%90%e5%8a%9f%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ uname -a&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Linux centos-8 4.18.0-477.27.1.el8_8.x86_64 #1 SMP Thu Sep 21 11:21:00 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;5. 參考資料&lt;span class="hx:absolute hx:-mt-20" id="5-參考資料"&gt;&lt;/span&gt;
&lt;a href="#5-%e5%8f%83%e8%80%83%e8%b3%87%e6%96%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/client-configuration/clients-sleses.html"target="_blank" rel="noopener"&gt;Registering SUSE Liberty Linux Clients - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/administration/mgr-sync.html"target="_blank" rel="noopener"&gt;Using mgr-sync - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://www.suse.com/support/kb/doc/?id=000019020"target="_blank" rel="noopener"&gt;Creating Child Channel for Red Hat Base Media in SUSE Manager 3.1 - SUSE Support&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SUSE Linux Enterprise Micro</title><link>https://blog.kubeantony.com/archive/suse/suse-linux-enterprise-micro/</link><pubDate>Mon, 30 Dec 2024 15:42:16 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suse-linux-enterprise-micro/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會介紹 SUSE Linux Enterprise Micro 是什麼，有哪些功能&amp;hellip;等&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 概覽&lt;span class="hx:absolute hx:-mt-20" id="1-概覽"&gt;&lt;/span&gt;
&lt;a href="#1-%e6%a6%82%e8%a6%bd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1.1. 甚麼是 SUSE Linux Enterprise Micro&lt;span class="hx:absolute hx:-mt-20" id="11-甚麼是-suse-linux-enterprise-micro"&gt;&lt;/span&gt;
&lt;a href="#11-%e7%94%9a%e9%ba%bc%e6%98%af-suse-linux-enterprise-micro" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;SLE Micro 是一個輕量且安全的作業系統，專為 containerized 和 virtualized workloads 而建。所謂輕量，指的是它在資源需求上和容量大小上都很低。&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;SLE Micro 的它的設計核心是 containers，其次是 virtual machines。此外，由於其輕量特性，它的攻擊面較小，因此使其更加安全。&lt;/li&gt;
&lt;li&gt;它利用了 SUSE Linux Enterprise 的企業級安全性及合規性組件，並將其與現代、不可變動、開發者友好的作業系統平台結合起來。這裡所謂的不變，意指系統不可更改。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;1.2. SLE Micro 的優勢&lt;span class="hx:absolute hx:-mt-20" id="12-sle-micro-的優勢"&gt;&lt;/span&gt;
&lt;a href="#12-sle-micro-%e7%9a%84%e5%84%aa%e5%8b%a2" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;小型化&lt;/strong&gt;：移除所有不必要的套件，只有大約 100 個軟體包可用，雖然體積小，但仍達到企業級標準。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;高安全性&lt;/strong&gt;：設計為可用於關鍵任務的操作系統。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;不可變作業系統&lt;/strong&gt;：SLE Micro 基於大部分為唯讀的檔案系統，這意味著運行中的系統無法被更改。只有在修補和重啟後，變更才會生效。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;低維護需求&lt;/strong&gt;：該系統設計為維護需求最少，支持自動化修補，便於融入變更管理計劃。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;開發者友好&lt;/strong&gt;：專為支持 Containers 和 Microservices 構建，確保 Workloads 與核心檔案系統隔離，以防止惡意應用損害系統。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;1.3. 為什麼要使用 SLE Micro？&lt;span class="hx:absolute hx:-mt-20" id="13-為什麼要使用-sle-micro"&gt;&lt;/span&gt;
&lt;a href="#13-%e7%82%ba%e4%bb%80%e9%ba%bc%e8%a6%81%e4%bd%bf%e7%94%a8-sle-micro" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;SLE Micro 為邊緣和嵌入式應用程式提供了一個安全、維護成本低且易於大規模部署的平台。&lt;/li&gt;
&lt;li&gt;SLE Micro 非常適合任何分散式運算環境，例如 edge、embedded 或物聯網部署。 邊緣只是系統不在雲端或資料中心的另一種說法。&lt;/li&gt;
&lt;li&gt;SLE Micro 可用於構建和擴展各行各業的差異化邊緣系統，包括航空、電信、汽車、國防、醫療保健、餐旅和製造業。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;想像一下所有不在人們的辦公桌上也不在資料中心的電腦系統，它們基本上運行著世界上所有其他的東西，這就是邊緣的用武之地。 我們相信 SLE Micro 非常適合這些應用程式。&lt;/p&gt;
&lt;h3&gt;1.4. 核心特色&lt;span class="hx:absolute hx:-mt-20" id="14-核心特色"&gt;&lt;/span&gt;
&lt;a href="#14-%e6%a0%b8%e5%bf%83%e7%89%b9%e8%89%b2" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;基於 SUSE Linux Enterprise&lt;/strong&gt;：SLE Micro 5.1 構建於 SUSE Linux Enterprise 15 Service Pack 3 之上。 事實上，SLE Micro 中的軟體包與在 SUSE Linux Enterprise 中找到的相同，因為它們來自相同的來源&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Container 為核心&lt;/strong&gt;：該系統針對 containerized workload 進行了優化，最小化其內建軟體包數量（約 100 個），適合使用 Kubernetes 也可以直接與 Podman 一起運行，無需執行任何特殊設定即可使 Podman 運行。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;基於 btrfs 檔案系統&lt;/strong&gt;：任何更新或新軟件包要么完全應用，要么根本不應用，如果需要，可以回滾。重新開機後，更新準備就緒。 如果由於某種原因更新未正確應用，則永遠不會生效。 它將始終恢復到最新版本。 這樣，您就不會有部分更新的系統。由於更新錯誤，您永遠不會遇到損壞的系統。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;安全性&lt;/strong&gt;：為了提高安全性，大部分檔案系統都是唯讀的，直到更新準備好應用為止。例如，如果您進入根目錄或 &lt;code&gt;/usr&lt;/code&gt; 目錄，則無法寫入它，即使您是 root 也不能，因為檔案系統本身是唯讀的。 只有一些目錄由於特定原因可寫入，例如用於寫入記錄的 &lt;code&gt;/var&lt;/code&gt; 或用於更改配置檔案的 &lt;code&gt;/etc&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;工具支持&lt;/strong&gt;：
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cockpit&lt;/strong&gt;：Cockpit 是一個管理網站，允許您控制和管理 SLE Micro。 可以遠端控制作業系統，並且可以將多個 Cockpit 實例鏈接到一個會話中。 因此，如果您有多個設備在運行 SLE Micro，您實際上只需使用一個圖形介面即可控制所有設備。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Toolbox&lt;/strong&gt;：讓使用者可以執行 containerized 的系統工具，並可訪問 SUSE Linux Enterprise 套件儲存庫中的軟體套件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;1.5. 系統需求&lt;span class="hx:absolute hx:-mt-20" id="15-系統需求"&gt;&lt;/span&gt;
&lt;a href="#15-%e7%b3%bb%e7%b5%b1%e9%9c%80%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;SLE Micro 的 raw disk image 大小：
&lt;ul&gt;
&lt;li&gt;Intel x86_64：2.5 GB&lt;/li&gt;
&lt;li&gt;建議硬碟空間：SLE Micro 系統為 20 GB，Container 數據為 40 GB。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;記憶體 (RAM)&lt;/strong&gt;：最低 1 GB，具體需求根據 Workloads 決定。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;SLE Micro 可運行於：
&lt;ul&gt;
&lt;li&gt;Intel x86_64 處理器&lt;/li&gt;
&lt;li&gt;ARM64 系統（如 Raspberry Pi 4）&lt;/li&gt;
&lt;li&gt;IBM Z (S390X) 大型主機&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;1.6. 虛擬化與 KVM 支持&lt;span class="hx:absolute hx:-mt-20" id="16-虛擬化與-kvm-支持"&gt;&lt;/span&gt;
&lt;a href="#16-%e8%99%9b%e6%93%ac%e5%8c%96%e8%88%87-kvm-%e6%94%af%e6%8c%81" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SLE Micro 可作為單節點虛擬化主機，自動安裝 KVM 和 libvirt，安裝後即可使用，無需額外設定。它支持在虛擬機中運行尚未 containerized 的應用程式，包括傳統應用和其他作業系統（如 Windows），滿足多種應用需求。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;1.7. 使用案例&lt;span class="hx:absolute hx:-mt-20" id="17-使用案例"&gt;&lt;/span&gt;
&lt;a href="#17-%e4%bd%bf%e7%94%a8%e6%a1%88%e4%be%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;單節點 Container 主機：&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;SLE Micro 是一個可在輕量級環境中執行 Container Workloads 的單節點 Container 主機。&lt;/li&gt;
&lt;li&gt;預設安裝的容器執行階段是 Podman。&lt;/li&gt;
&lt;li&gt;可以使用 Podman CLI 或 Cockpit（內建 Podman 模組）動態管理 containers 。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kubernetes 叢集節點：&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;SLE Micro 可以輕鬆整合到 Kubernetes 叢集中，作為叢集節點。&lt;/li&gt;
&lt;li&gt;它為 Kubernetes Workloads 提供不可變的作業系統。&lt;/li&gt;
&lt;li&gt;支援 K3S 或 RKE2，也可以執行第三方 Kubernetes 發行版。&lt;/li&gt;
&lt;li&gt;Kubernetes 在 SLE Micro 上運作良好，即使檔案系統是唯讀的。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;單節點 KVM 虛擬化主機：&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;SLE Micro 預先安裝並啟用了 KVM 和 libvirt。&lt;/li&gt;
&lt;li&gt;可以使用 &lt;code&gt;virt-install&lt;/code&gt; 命令從命令列直接建立虛擬機器，或使用 virt-manager 工具遠端連線到 SLE Micro。&lt;/li&gt;
&lt;li&gt;如果應用程式尚未準備好 containerized，可以將其安裝在 SLE Micro 上託管的虛擬機器中。&lt;/li&gt;
&lt;li&gt;尚未完全基於 Container 且需要為某些傳統工作負載執行虛擬機器的 Edge 客戶可以使用此虛擬化功能。&lt;/li&gt;
&lt;li&gt;SLE Micro 透過提供此虛擬化工作負載功能，彌合了傳統應用程式和 containerized 應用程式之間的差距。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2&gt;2. 瞭解 SLE Micro 安裝格式&lt;span class="hx:absolute hx:-mt-20" id="2-瞭解-sle-micro-安裝格式"&gt;&lt;/span&gt;
&lt;a href="#2-%e7%9e%ad%e8%a7%a3-sle-micro-%e5%ae%89%e8%a3%9d%e6%a0%bc%e5%bc%8f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. SLE Micro 安裝格式&lt;span class="hx:absolute hx:-mt-20" id="21-sle-micro-安裝格式"&gt;&lt;/span&gt;
&lt;a href="#21-sle-micro-%e5%ae%89%e8%a3%9d%e6%a0%bc%e5%bc%8f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SLE Micro 提供兩種安裝格式：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ISO 格式&lt;/strong&gt;: 這是安裝 Linux 發行套件的標準格式，您可以將 ISO 映像檔燒錄到 CD 或 USB 隨身碟，然後再使用安裝程式安裝到系統上。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Raw 格式&lt;/strong&gt;: 這種格式會將所有預先設定好的作業系統儲存在一個檔案中，您只需將檔案複製到目標儲存裝置即可。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;兩種格式的比較：&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;檔案內容&lt;/strong&gt;: 兩種格式都包含建立最終安裝系統所需的檔案。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;安裝過程&lt;/strong&gt;: ISO 格式包含額外的步驟，例如安裝畫面和設定選項。Raw 格式則會直接將檔案複製到儲存裝置。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;2.2. ISO 格式&lt;span class="hx:absolute hx:-mt-20" id="22-iso-格式"&gt;&lt;/span&gt;
&lt;a href="#22-iso-%e6%a0%bc%e5%bc%8f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;strong&gt;主要用途&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;適用於傳統伺服器和虛擬機器。&lt;/li&gt;
&lt;li&gt;如果您不想學習新的安裝方式，可以使用 ISO 格式。&lt;/li&gt;
&lt;li&gt;可以透過 AutoYAST 設定檔預先定義規格，將安裝 SLE Micro 的過程自動化。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;其他資訊&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;您可以從 SUSE 網站下載 ISO 映像檔。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;2.3. Raw 格式&lt;span class="hx:absolute hx:-mt-20" id="23-raw-格式"&gt;&lt;/span&gt;
&lt;a href="#23-raw-%e6%a0%bc%e5%bc%8f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;strong&gt;主要用途&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;適用於大量設定的裝置。&lt;/li&gt;
&lt;li&gt;也適用於只需設定一次且需持續運作的裝置。&lt;/li&gt;
&lt;li&gt;Raw 格式非常適合分散式運算和邊緣裝置，因為所有設定都已預先完成。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;其他資訊&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;您可以使用 &lt;code&gt;dd&lt;/code&gt; 或 Etcher 等工具將 Raw 檔案寫入儲存媒體。&lt;/li&gt;
&lt;li&gt;在第一次開機時，可以使用 Ignition 或 Combustion 工具設定作業系統，並且檔案系統的容量大小會自動擴展到與硬碟一樣大。&lt;/li&gt;
&lt;li&gt;Ignition 是一個基於 YAML/JSON 的工具，而 Combustion 則使用 Bash 指令碼。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;2.4. &lt;strong&gt;比較 ISO 與 RAW Images&lt;/strong&gt;&lt;span class="hx:absolute hx:-mt-20" id="24-比較-iso-與-raw-images"&gt;&lt;/span&gt;
&lt;a href="#24-%e6%af%94%e8%bc%83-iso-%e8%88%87-raw-images" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;項目&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;ISO&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;RAW&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;磁碟分割與格式化&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;在第一次開機前由安裝過程執行磁碟分割與格式化。&lt;/td&gt;
&lt;td&gt;預先分割與格式化，磁碟設置已完成。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;規格設定&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;安裝過程會根據使用者需求配置所有必要項目。&lt;/td&gt;
&lt;td&gt;大多數應用程式和服務已預先配置。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;自動化安裝工具&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;支援使用 AutoYAST 進行自動化安裝與設定。&lt;/td&gt;
&lt;td&gt;部署後的任何額外設定由 Ignition 或 Combustion 在第一次啟動時完成。&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h3&gt;2.5. ISO 與 RAW 的系統差異&lt;span class="hx:absolute hx:-mt-20" id="25-iso-與-raw-的系統差異"&gt;&lt;/span&gt;
&lt;a href="#25-iso-%e8%88%87-raw-%e7%9a%84%e7%b3%bb%e7%b5%b1%e5%b7%ae%e7%95%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;ISO 和 RAW 預設不會安裝相同的套件。&lt;/li&gt;
&lt;li&gt;ISO 方式需要使用者在安裝系統時選擇想要的套件，或是在安裝後手動安裝。
&lt;ul&gt;
&lt;li&gt;Cockpit、Toolbox 和其他套件選項必須在安裝時手動選擇。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;RAW 方法會在預設情況下安裝幾乎整個套件集。
&lt;ul&gt;
&lt;li&gt;只有 LDAP 用戶端等少數可選項必須手動安裝。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Install Python 3.8 on SLE Micro 5.5</title><link>https://blog.kubeantony.com/archive/suse/install-python-3.8-on-sle-micro-5.5/</link><pubDate>Thu, 14 Nov 2024 09:33:08 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/install-python-3.8-on-sle-micro-5.5/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Login as root user&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo -i&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Open up a transactional-update shell session&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ transactional-update shell&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;install the necessary interdependent software packages&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper install zlib-devel make gcc&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Download the python from &lt;code&gt;www.python.org&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -sO https://www.python.org/ftp/python/3.8.20/Python-3.8.20.tgz&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Unzip it and Go to the folder&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ tar zxfv Python-3.8.20.tgz &amp;amp;&amp;amp; \
cd Python-3.8.20/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Make a directory where you want to put your python. I called my &lt;code&gt;.localpython3.8&lt;/code&gt; (name it whatever you want) and make it under the home directory. Configured the Python make&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir /root/.localpython3.8
$ ./configure --prefix=/root/.localpython3.8&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Make and make altinstall (see difference between install and altinstall here)&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ make
$ make altinstall&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Exit the &lt;code&gt;transactional-update&lt;/code&gt; session and reboot to the new snapshot that contains the changes you have made&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ exit
$ reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Login as root user again&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo -i&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;configure PATH env and alias&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat &amp;lt;&amp;lt;&amp;#39;EOF&amp;#39; &amp;gt;&amp;gt; /root/.bashrc
export PATH=/root/.localpython3.8/bin:$PATH
EOF
$ cat &amp;lt;&amp;lt;&amp;#39;EOF&amp;#39; &amp;gt;&amp;gt; /root/.alias
alias python=/root/.localpython3.8/bin/python3.8
EOF
$ exit
# Login again
$ sudo -i&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;寫一個簡單的程式快速測試&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat &amp;lt;&amp;lt;&amp;#39;EOF&amp;#39; &amp;gt; test.py
message = &amp;#34;Hello, World!&amp;#34;
print(message)
numbers = [1, 2, 3, 4, 5]
for num in numbers:
print(num)
def add_numbers(x, y):
return x &amp;#43; y
result = add_numbers(2, 3)
print(result)
import datetime
now = datetime.datetime.now()
formatted_date_time = now.strftime(&amp;#34;%Y-%m-%d %H:%M:%S&amp;#34;)
print(formatted_date_time)
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;執行測試程式&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ python test.py&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Hello, World!
1
2
3
4
5
5
2024-11-14 16:06:00&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;參考文章&lt;span class="hx:absolute hx:-mt-20" id="參考文章"&gt;&lt;/span&gt;
&lt;a href="#%e5%8f%83%e8%80%83%e6%96%87%e7%ab%a0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://justinhou95.github.io/blog/2024/install-python/"target="_blank" rel="noopener"&gt;Install Python on Linux without Sudo&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Install NVIDIA GPU Driver on SL Micro 6.0 in disconnected Environment</title><link>https://blog.kubeantony.com/archive/suse/install-nvidia-gpu-driver-on-sl-micro-6.0-in-disconnected-environment/</link><pubDate>Thu, 24 Oct 2024 12:40:36 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/install-nvidia-gpu-driver-on-sl-micro-6.0-in-disconnected-environment/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h1&gt;Install NVIDIA GPU Driver on SL Micro 6.0 in disconnected Environment&lt;/h1&gt;&lt;h2&gt;1. Prepare necessary packages&lt;span class="hx:absolute hx:-mt-20" id="1-prepare-necessary-packages"&gt;&lt;/span&gt;
&lt;a href="#1-prepare-necessary-packages" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;執行過程&lt;span class="hx:absolute hx:-mt-20" id="執行過程"&gt;&lt;/span&gt;
&lt;a href="#%e5%9f%b7%e8%a1%8c%e9%81%8e%e7%a8%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Login as root user&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo su - root&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Create a Dir to store cache pkg&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p /root/gpu_pkg&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run SLES 15 SP6 Base Container&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ podman run --privileged \
-v /root/gpu_pkg:/root/gpu_pkg \
--rm -it \
registry.suse.com/bci/bci-base:15.6 bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Install &lt;code&gt;suseconnect&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper -n install suseconnect&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Register BCI Container with the SUSE Customer Center.&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ SUSEConnect -r [REGCODE] -e &amp;lt;email&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activate Desktop Applications Module&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ suseconnect -p sle-module-desktop-applications/15.6/x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activate Development Tools Module&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ suseconnect -p sle-module-development-tools/15.6/x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activate SUSE Linux Enterprise Workstation Extension&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ suseconnect -p sle-we/15.6/x86_64 -r [ADDITIONAL REGCODE]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Refresh All Package Repositories&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ref&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;如果遇到 Do you want to reject the key, or trust always?
一律回答 &lt;code&gt;a&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;獲取 6 個 SLES 15 SP6 Package Repo 的名稱和 URI&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper lr -u container-suseconnect-zypp:SLE-Module-Basesystem15-SP6-Pool \
container-suseconnect-zypp:SLE-Module-Basesystem15-SP6-Updates \
container-suseconnect-zypp:SLE-Module-DevTools15-SP6-Pool \
container-suseconnect-zypp:SLE-Module-DevTools15-SP6-Updates \
container-suseconnect-zypp:SLE-Product-WE15-SP6-Pool \
container-suseconnect-zypp:SLE-Product-WE15-SP6-Updates \
| grep -E &amp;#34;Alias|URI&amp;#34; \
| grep -v &amp;#34;GPG Key URI&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果應與以下類似 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Alias : container-suseconnect-zypp:SLE-Module-Basesystem15-SP6-Pool
URI : https://updates.suse.com/SUSE/Products/SLE-Module-Basesystem/15-SP6/x86_64/product/?xxx
Alias : container-suseconnect-zypp:SLE-Module-Basesystem15-SP6-Updates
URI : https://updates.suse.com/SUSE/Updates/SLE-Module-Basesystem/15-SP6/x86_64/update/?xxx
Alias : container-suseconnect-zypp:SLE-Module-DevTools15-SP6-Pool
URI : https://updates.suse.com/SUSE/Products/SLE-Module-Development-Tools/15-SP6/x86_64/product/?xxx
Alias : container-suseconnect-zypp:SLE-Module-DevTools15-SP6-Updates
URI : https://updates.suse.com/SUSE/Updates/SLE-Module-Development-Tools/15-SP6/x86_64/update/?xxx
Alias : container-suseconnect-zypp:SLE-Product-WE15-SP6-Pool
URI : https://updates.suse.com/SUSE/Products/SLE-Product-WE/15-SP6/x86_64/product/?xxx
Alias : container-suseconnect-zypp:SLE-Product-WE15-SP6-Updates
URI : https://updates.suse.com/SUSE/Updates/SLE-Product-WE/15-SP6/x86_64/update/?xxx&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;離開 BCI Container&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ exit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Open up a transactional-update shell session&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ transactional-update shell&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;add an additional package repository from NVIDIA&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://download.nvidia.com/suse/sle15sp6/ nvidia-sle15sp6-main&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;add an NVIDIA Container Toolkit repository&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;add additional package repositories from SLES 15 SP6&lt;/p&gt;
&lt;p&gt;以下 &lt;code&gt;zypper ar&lt;/code&gt; 後面接的 URI 請替換為步驟 10 得到的 URI&lt;/p&gt;
&lt;p&gt;15.1. SLE-Module-Basesystem15-SP6-Pool for sle-15-x86_64&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://updates.suse.com/SUSE/Products/SLE-Module-Basesystem/15-SP6/x86_64/product/?xxx container-suseconnect-zypp:SLE-Module-Basesystem15-SP6-Pool&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;15.2. SLE-Module-Basesystem15-SP6-Updates for sle-15-x86_64&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://updates.suse.com/SUSE/Updates/SLE-Module-Basesystem/15-SP6/x86_64/update/?xxx container-suseconnect-zypp:SLE-Module-Basesystem15-SP6-Updates&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;15.3. SLE-Module-DevTools15-SP6-Pool for sle-15-x86_64&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://updates.suse.com/SUSE/Products/SLE-Module-Development-Tools/15-SP6/x86_64/product/?xxx container-suseconnect-zypp:SLE-Module-DevTools15-SP6-Pool&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;15.4. SLE-Module-DevTools15-SP6-Updates for sle-15-x86_64&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://updates.suse.com/SUSE/Updates/SLE-Module-Development-Tools/15-SP6/x86_64/update/?xxx container-suseconnect-zypp:SLE-Module-DevTools15-SP6-Updates&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;15.5. SLE-Product-WE15-SP6-Pool for sle-15-x86_64&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://updates.suse.com/SUSE/Products/SLE-Product-WE/15-SP6/x86_64/product/?xxx container-suseconnect-zypp:SLE-Product-WE15-SP6-Pool&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;15.6. SLE-Product-WE15-SP6-Updates for sle-15-x86_64&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://updates.suse.com/SUSE/Updates/SLE-Product-WE/15-SP6/x86_64/update/?xxx container-suseconnect-zypp:SLE-Product-WE15-SP6-Updates&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;下載必要的相依檔和套件&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper --pkg-cache-dir /root/gpu_pkg \
install --auto-agree-with-licenses --download-only \
nvidia-driver-G06-kmp-default=550.90.07_k6.4.0_150600.21-150600.23.1 \
nvidia-compute-utils-G06=550.90.07 \
libOpenCL1 \
nvidia-container-toolkit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;離開 &lt;code&gt;transactional-update&lt;/code&gt; session&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ exit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;將所有必要的相依檔和套件壓縮至 &lt;code&gt;/root/gpu_pkg.tar.gz&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cd /root; tar -czvf gpu_pkg.tar.gz gpu_pkg&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;2. Start install NVIDIA GPU Driver, &lt;code&gt;nvidia-compute-utils&lt;/code&gt; and &lt;code&gt;nvidia-container-toolkit&lt;/code&gt;&lt;span class="hx:absolute hx:-mt-20" id="2-start-install-nvidia-gpu-driver-nvidia-compute-utils-and-nvidia-container-toolkit"&gt;&lt;/span&gt;
&lt;a href="#2-start-install-nvidia-gpu-driver-nvidia-compute-utils-and-nvidia-container-toolkit" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;執行過程&lt;span class="hx:absolute hx:-mt-20" id="執行過程-1"&gt;&lt;/span&gt;
&lt;a href="#%e5%9f%b7%e8%a1%8c%e9%81%8e%e7%a8%8b-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;將 &lt;code&gt;gpu_pkg.tar.gz&lt;/code&gt; 傳送至 VM 中。&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ scp /PATH/TO/gpu_pkg.tar.gz user@&amp;lt;VM IP&amp;gt;:/home/user/gpu_pkg.tar.gz&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;將 &lt;code&gt;gpu_pkg.tar.gz&lt;/code&gt; 搬移至 &lt;code&gt;/root&lt;/code&gt; 目錄中&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mv &amp;#34;$HOME&amp;#34;/gpu_pkg.tar.gz /root&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;切換成 root 使用者&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo su - root&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;解壓縮&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ tar -zxvf gpu_pkg.tar.gz&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Open up a transactional-update shell session&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ transactional-update shell&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;將位於 &lt;code&gt;/root/gpu_pkg&lt;/code&gt; 的本地 software repo 添加到系統中，並將其命名為 &lt;code&gt;gpu_pkg&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar /root/gpu_pkg gpu_pkg&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;安裝 &lt;code&gt;nvidia-driver-G06-kmp-default&lt;/code&gt;, &lt;code&gt;nvidia-compute-utils-G06=550.90.07&lt;/code&gt; 和 &lt;code&gt;nvidia-container-toolkit&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper --no-gpg-checks install \
--auto-agree-with-licenses \
--repo gpu_pkg \
nvidia-driver-G06-kmp-default=550.90.07_k6.4.0_150600.21-150600.23.1 \
nvidia-compute-utils-G06=550.90.07 \
nvidia-container-toolkit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...
Problem: the to be installed nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 requires &amp;#39;kernel-default-devel&amp;#39;, but this requirement cannot be provided
not installable providers: kernel-default-devel-6.4.0-150600.23.25.1.x86_64[gpu_pkg]
Solution 1: Following actions will be done:
downgrade of libelf1-0.189-4.143.x86_64 to libelf1-0.185-150400.5.3.1.x86_64
downgrade of libcrypt1-4.4.36-1.134.x86_64 to libcrypt1-4.4.15-150300.4.7.1.x86_64
Solution 2: do not install nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64
Solution 3: break nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c/d/?] (c): 1
Problem: the to be installed nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 requires &amp;#39;nvidia-compute-G06&amp;#39;, but this requirement cannot be provided
not installable providers: nvidia-compute-G06-550.90.07-150600.23.1.x86_64[gpu_pkg]
Solution 1: Following actions will be done:
downgrade of perl-base-5.38.2-1.52.x86_64 to perl-base-5.26.1-150300.17.17.1.x86_64
downgrade of libcrypt1-4.4.36-1.134.x86_64 to libcrypt1-4.4.15-150300.4.7.1.x86_64
Solution 2: do not install nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64
Solution 3: break nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c/d/?] (c): 1
Resolving dependencies...
Resolving package dependencies...
The following package is going to be upgraded:
perl-Bootloader
The following 3 packages are going to be downgraded:
libcrypt1 libelf1 perl-base
The following 42 NEW packages are going to be installed:
binutils cpp cpp7 dwarves gcc gcc7 glibc-devel hwdata info kernel-default-devel kernel-devel kernel-macros libasan4 libatomic1 libcilkrts5
libctf-nobfd0 libctf0 libdwarves1 libelf-devel libgdbm4 libisl15 libitm1 liblsan0 libmpc3 libmpx2 libmpxwrappers2 libnvidia-container-tools
libnvidia-container1 libtsan0 libubsan0 libxcrypt-devel libzio1 linux-glibc-devel make nvidia-compute-G06 nvidia-compute-utils-G06
nvidia-container-toolkit nvidia-container-toolkit-base nvidia-driver-G06-kmp-default pciutils perl zlib-devel
1 package to upgrade, 3 to downgrade, 42 new.
Overall download size: 159.6 MiB. Already cached: 6.8 MiB. After the operation, additional 636.7 MiB will be used.
Continue? [y/n/v/...? shows all options] (y): y&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Loading repository data...
Reading installed packages...
Resolving package dependencies...
2 Problems:
Problem: the to be installed nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 requires &amp;#39;kernel-default-devel&amp;#39;, but this requirement cannot be provided
Problem: the to be installed nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 requires &amp;#39;nvidia-compute-G06&amp;#39;, but this requirement cannot be provided
Problem: the to be installed nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 requires &amp;#39;kernel-default-devel&amp;#39;, but this requirement cannot be provided
not installable providers: kernel-default-devel-6.4.0-150600.23.25.1.x86_64[gpu_pkg]
Solution 1: Following actions will be done:
downgrade of libelf1-0.189-4.143.x86_64 to libelf1-0.185-150400.5.3.1.x86_64
downgrade of libcrypt1-4.4.36-1.134.x86_64 to libcrypt1-4.4.15-150300.4.7.1.x86_64
Solution 2: do not install nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64
Solution 3: break nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c/d/?] (c): 1
Problem: the to be installed nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 requires &amp;#39;nvidia-compute-G06&amp;#39;, but this requirement cannot be provided
not installable providers: nvidia-compute-G06-550.90.07-150600.23.1.x86_64[gpu_pkg]
Solution 1: Following actions will be done:
downgrade of perl-base-5.38.2-1.52.x86_64 to perl-base-5.26.1-150300.17.17.1.x86_64
downgrade of libcrypt1-4.4.36-1.134.x86_64 to libcrypt1-4.4.15-150300.4.7.1.x86_64
Solution 2: do not install nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64
Solution 3: break nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c/d/?] (c): 1
Resolving dependencies...
Resolving package dependencies...
The following package is going to be upgraded:
perl-Bootloader
The following 3 packages are going to be downgraded:
libcrypt1 libelf1 perl-base
The following 42 NEW packages are going to be installed:
binutils cpp cpp7 dwarves gcc gcc7 glibc-devel hwdata info kernel-default-devel kernel-devel kernel-macros libasan4 libatomic1 libcilkrts5
libctf-nobfd0 libctf0 libdwarves1 libelf-devel libgdbm4 libisl15 libitm1 liblsan0 libmpc3 libmpx2 libmpxwrappers2 libnvidia-container-tools
libnvidia-container1 libtsan0 libubsan0 libxcrypt-devel libzio1 linux-glibc-devel make nvidia-compute-G06 nvidia-compute-utils-G06
nvidia-container-toolkit nvidia-container-toolkit-base nvidia-driver-G06-kmp-default pciutils perl zlib-devel
1 package to upgrade, 3 to downgrade, 42 new.
Overall download size: 159.6 MiB. Already cached: 6.8 MiB. After the operation, additional 636.7 MiB will be used.
Continue? [y/n/v/...? shows all options] (y): y
In cache libasan4-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64.rpm (1/46), 364.2 KiB
In cache libcilkrts5-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64.rpm (2/46), 67.8 KiB
In cache libcrypt1-4.4.15-150300.4.7.1.x86_64.rpm (3/46), 104.9 KiB
In cache libelf1-0.185-150400.5.3.1.x86_64.rpm (4/46), 67.9 KiB
In cache libgdbm4-1.12-1.418.x86_64.rpm (5/46), 76.5 KiB
In cache libisl15-0.18-1.443.x86_64.rpm (6/46), 550.6 KiB
In cache libmpc3-1.1.0-1.47.x86_64.rpm (7/46), 49.6 KiB
In cache libmpx2-8.2.1&amp;#43;r264010-150000.1.6.4.x86_64.rpm (8/46), 19.4 KiB
In cache libmpxwrappers2-8.2.1&amp;#43;r264010-150000.1.6.4.x86_64.rpm (9/46), 18.1 KiB
In cache libtsan0-11.3.0&amp;#43;git1637-150000.1.11.2.x86_64.rpm (10/46), 328.9 KiB
In cache libubsan0-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64.rpm (11/46), 141.1 KiB
In cache libzio1-1.06-2.20.x86_64.rpm (12/46), 25.0 KiB
In cache linux-glibc-devel-6.4-150600.2.17.x86_64.rpm (13/46), 1.2 MiB
In cache kernel-macros-6.4.0-150600.23.25.1.noarch.rpm (14/46), 3.4 MiB
In cache libatomic1-14.2.0&amp;#43;git10526-150000.1.3.3.x86_64.rpm (15/46), 21.1 KiB
In cache libctf-nobfd0-2.43-150100.7.49.1.x86_64.rpm (16/46), 158.0 KiB
In cache libitm1-14.2.0&amp;#43;git10526-150000.1.3.3.x86_64.rpm (17/46), 37.2 KiB
In cache liblsan0-14.2.0&amp;#43;git10526-150000.1.3.3.x86_64.rpm (18/46), 194.3 KiB
Retrieving: nvidia-container-toolkit-base-1.16.2-1.x86_64 (gpu_pkg) (19/46), 5.6 MiB
nvidia-container-toolkit-base-1.16.2-1.x86_64.rpm:
Header V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
nvidia-container-toolkit-base-1.16.2-1.x86_64 (gpu_pkg): Signature verification failed [4-Signatures public key is not available]
Accepting package despite the error. (--no-gpg-checks)
warning: /root/gpu_pkg/nvidia-container-toolkit/nvidia-container-toolkit-base-1.16.2-1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
Looking for gpg key ID F796ECB0 in cache /var/cache/zypp/pubkeys.
Repository gpu_pkg does not define additional &amp;#39;gpgkey=&amp;#39; URLs.
Retrieving: perl-base-5.26.1-150300.17.17.1.x86_64 (gpu_pkg) (20/46), 1.3 MiB
Retrieving: libxcrypt-devel-4.4.15-150300.4.7.1.x86_64 (gpu_pkg) (21/46), 32.6 KiB
Retrieving: libnvidia-container1-1.16.2-1.x86_64 (gpu_pkg) (22/46), 999.8 KiB
libnvidia-container1-1.16.2-1.x86_64.rpm:
Header V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
libnvidia-container1-1.16.2-1.x86_64 (gpu_pkg): Signature verification failed [4-Signatures public key is not available]
Accepting package despite the error. (--no-gpg-checks)
Looking for gpg key ID F796ECB0 in cache /var/cache/zypp/pubkeys.
Repository gpu_pkg does not define additional &amp;#39;gpgkey=&amp;#39; URLs.
Retrieving: libdwarves1-1.25-150600.1.4.x86_64 (gpu_pkg) (23/46), 89.5 KiB
Retrieving: cpp7-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64 (gpu_pkg) (24/46), 7.9 MiB
Retrieving: info-6.5-4.17.x86_64 (gpu_pkg) (25/46), 172.6 KiB
Retrieving: kernel-devel-6.4.0-150600.23.25.1.noarch (gpu_pkg) (26/46), 18.3 MiB
Retrieving: perl-5.26.1-150300.17.17.1.x86_64 (gpu_pkg) (27/46), 6.5 MiB
Retrieving: perl-Bootloader-1.8.2-150600.3.3.1.x86_64 (gpu_pkg) (28/46), 41.2 KiB
Retrieving: glibc-devel-2.38-150600.14.14.2.x86_64 (gpu_pkg) (29/46), 648.6 KiB
Retrieving: libnvidia-container-tools-1.16.2-1.x86_64 (gpu_pkg) (30/46), 39.3 KiB
libnvidia-container-tools-1.16.2-1.x86_64.rpm:
Header V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
libnvidia-container-tools-1.16.2-1.x86_64 (gpu_pkg): Signature verification failed [4-Signatures public key is not available]
Accepting package despite the error. (--no-gpg-checks)
Looking for gpg key ID F796ECB0 in cache /var/cache/zypp/pubkeys.
Repository gpu_pkg does not define additional &amp;#39;gpgkey=&amp;#39; URLs.
Retrieving: dwarves-1.25-150600.1.4.x86_64 (gpu_pkg) (31/46), 113.4 KiB
Retrieving: cpp-7-3.9.1.x86_64 (gpu_pkg) (32/46), 9.4 KiB
Retrieving: libctf0-2.43-150100.7.49.1.x86_64 (gpu_pkg) (33/46), 157.0 KiB
Retrieving: binutils-2.43-150100.7.49.1.x86_64 (gpu_pkg) (34/46), 6.8 MiB
Retrieving: make-4.2.1-7.3.2.x86_64 (gpu_pkg) (35/46), 281.7 KiB
Retrieving: hwdata-0.380-150000.3.68.1.noarch (gpu_pkg) (36/46), 1.5 MiB
Retrieving: zlib-devel-1.2.13-150500.4.3.1.x86_64 (gpu_pkg) (37/46), 121.3 KiB
Retrieving: nvidia-container-toolkit-1.16.2-1.x86_64 (gpu_pkg) (38/46), 1.2 MiB
nvidia-container-toolkit-1.16.2-1.x86_64.rpm:
Header V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
V4 RSA/SHA512 Signature, key ID ddcae044f796ecb0: NOKEY
nvidia-container-toolkit-1.16.2-1.x86_64 (gpu_pkg): Signature verification failed [4-Signatures public key is not available]
Accepting package despite the error. (--no-gpg-checks)
Looking for gpg key ID F796ECB0 in cache /var/cache/zypp/pubkeys.
Repository gpu_pkg does not define additional &amp;#39;gpgkey=&amp;#39; URLs.
Retrieving: gcc7-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64 (gpu_pkg) (39/46), 19.7 MiB
Retrieving: pciutils-3.5.6-150300.13.6.1.x86_64 (gpu_pkg) (40/46), 71.1 KiB
Retrieving: libelf-devel-0.185-150400.5.3.1.x86_64 (gpu_pkg) (41/46), 741.7 KiB
Retrieving: gcc-7-3.9.1.x86_64 (gpu_pkg) (42/46), 10.4 KiB
Retrieving: kernel-default-devel-6.4.0-150600.23.25.1.x86_64 (gpu_pkg) (43/46), 6.8 MiB
Retrieving: nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 (gpu_pkg) (44/46), 39.7 MiB
nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64.rpm:
Header V4 RSA/SHA512 Signature, key ID b1d0d788db27fd5a: NOKEY
V4 RSA/SHA512 Signature, key ID b1d0d788db27fd5a: NOKEY
nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 (gpu_pkg): Signature verification failed [4-Signatures public key is not available]
Accepting package despite the error. (--no-gpg-checks)
warning: /root/gpu_pkg/nvidia-sle15sp6-main/x86_64/nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
Looking for gpg key ID DB27FD5A in cache /var/cache/zypp/pubkeys.
Repository gpu_pkg does not define additional &amp;#39;gpgkey=&amp;#39; URLs.
Retrieving: nvidia-compute-G06-550.90.07-150600.23.1.x86_64 (gpu_pkg) (45/46), 40.1 MiB
nvidia-compute-G06-550.90.07-150600.23.1.x86_64.rpm:
Header V4 RSA/SHA512 Signature, key ID b1d0d788db27fd5a: NOKEY
V4 RSA/SHA512 Signature, key ID b1d0d788db27fd5a: NOKEY
nvidia-compute-G06-550.90.07-150600.23.1.x86_64 (gpu_pkg): Signature verification failed [4-Signatures public key is not available]
Accepting package despite the error. (--no-gpg-checks)
Looking for gpg key ID DB27FD5A in cache /var/cache/zypp/pubkeys.
Repository gpu_pkg does not define additional &amp;#39;gpgkey=&amp;#39; URLs.
Retrieving: nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 (gpu_pkg) (46/46), 674.4 KiB
nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64.rpm:
Header V4 RSA/SHA512 Signature, key ID b1d0d788db27fd5a: NOKEY
V4 RSA/SHA512 Signature, key ID b1d0d788db27fd5a: NOKEY
nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 (gpu_pkg): Signature verification failed [4-Signatures public key is not available]
Accepting package despite the error. (--no-gpg-checks)
Looking for gpg key ID DB27FD5A in cache /var/cache/zypp/pubkeys.
Repository gpu_pkg does not define additional &amp;#39;gpgkey=&amp;#39; URLs.
Checking for file conflicts: ..............................................................................................................[done]
( 1/46) Installing: libasan4-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64 ...........................................................................[done]
( 2/46) Installing: libcilkrts5-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64 ........................................................................[done]
( 3/46) Installing: libcrypt1-4.4.15-150300.4.7.1.x86_64 ..................................................................................[done]
( 4/46) Installing: libelf1-0.185-150400.5.3.1.x86_64 .....................................................................................[done]
( 5/46) Installing: libgdbm4-1.12-1.418.x86_64 ............................................................................................[done]
( 6/46) Installing: libisl15-0.18-1.443.x86_64 ............................................................................................[done]
( 7/46) Installing: libmpc3-1.1.0-1.47.x86_64 .............................................................................................[done]
( 8/46) Installing: libmpx2-8.2.1&amp;#43;r264010-150000.1.6.4.x86_64 .............................................................................[done]
( 9/46) Installing: libmpxwrappers2-8.2.1&amp;#43;r264010-150000.1.6.4.x86_64 .....................................................................[done]
(10/46) Installing: libtsan0-11.3.0&amp;#43;git1637-150000.1.11.2.x86_64 ..........................................................................[done]
(11/46) Installing: libubsan0-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64 ..........................................................................[done]
(12/46) Installing: libzio1-1.06-2.20.x86_64 ..............................................................................................[done]
(13/46) Installing: linux-glibc-devel-6.4-150600.2.17.x86_64 ..............................................................................[done]
(14/46) Installing: kernel-macros-6.4.0-150600.23.25.1.noarch .............................................................................[done]
(15/46) Installing: libatomic1-14.2.0&amp;#43;git10526-150000.1.3.3.x86_64 ........................................................................[done]
(16/46) Installing: libctf-nobfd0-2.43-150100.7.49.1.x86_64 ...............................................................................[done]
(17/46) Installing: libitm1-14.2.0&amp;#43;git10526-150000.1.3.3.x86_64 ...........................................................................[done]
(18/46) Installing: liblsan0-14.2.0&amp;#43;git10526-150000.1.3.3.x86_64 ..........................................................................[done]
warning: /var/cache/zypp/packages/gpu_pkg/nvidia-container-toolkit/nvidia-container-toolkit-base-1.16.2-1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
(19/46) Installing: nvidia-container-toolkit-base-1.16.2-1.x86_64 .........................................................................[done]
(20/46) Installing: perl-base-5.26.1-150300.17.17.1.x86_64 ................................................................................[done]
(21/46) Installing: libxcrypt-devel-4.4.15-150300.4.7.1.x86_64 ............................................................................[done]
warning: /var/cache/zypp/packages/gpu_pkg/nvidia-container-toolkit/libnvidia-container1-1.16.2-1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
(22/46) Installing: libnvidia-container1-1.16.2-1.x86_64 ..................................................................................[done]
(23/46) Installing: libdwarves1-1.25-150600.1.4.x86_64 ....................................................................................[done]
(24/46) Installing: cpp7-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64 ...............................................................................[done]
install-info: No such file or directory for /usr/share/info/info-stnd.info.gz
(25/46) Installing: info-6.5-4.17.x86_64 ..................................................................................................[done]
(26/46) Installing: kernel-devel-6.4.0-150600.23.25.1.noarch ..............................................................................[done]
(27/46) Installing: perl-5.26.1-150300.17.17.1.x86_64 .....................................................................................[done]
(28/46) Installing: perl-Bootloader-1.8.2-150600.3.3.1.x86_64 .............................................................................[done]
(29/46) Installing: glibc-devel-2.38-150600.14.14.2.x86_64 ................................................................................[done]
warning: /var/cache/zypp/packages/gpu_pkg/nvidia-container-toolkit/libnvidia-container-tools-1.16.2-1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
(30/46) Installing: libnvidia-container-tools-1.16.2-1.x86_64 .............................................................................[done]
(31/46) Installing: dwarves-1.25-150600.1.4.x86_64 ........................................................................................[done]
(32/46) Installing: cpp-7-3.9.1.x86_64 ....................................................................................................[done]
(33/46) Installing: libctf0-2.43-150100.7.49.1.x86_64 .....................................................................................[done]
update-alternatives: using /usr/bin/ld.bfd to provide /usr/bin/ld (ld) in auto mode
install-info: No such file or directory for /usr/share/info/as.info.gz
install-info: No such file or directory for /usr/share/info/bfd.info.gz
install-info: No such file or directory for /usr/share/info/binutils.info.gz
install-info: No such file or directory for /usr/share/info/gprof.info.gz
install-info: No such file or directory for /usr/share/info/ld.info.gz
(34/46) Installing: binutils-2.43-150100.7.49.1.x86_64 ....................................................................................[done]
install-info: No such file or directory for /usr/share/info/make.info.gz
(35/46) Installing: make-4.2.1-7.3.2.x86_64 ...............................................................................................[done]
(36/46) Installing: hwdata-0.380-150000.3.68.1.noarch .....................................................................................[done]
(37/46) Installing: zlib-devel-1.2.13-150500.4.3.1.x86_64 .................................................................................[done]
warning: /var/cache/zypp/packages/gpu_pkg/nvidia-container-toolkit/nvidia-container-toolkit-1.16.2-1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
(38/46) Installing: nvidia-container-toolkit-1.16.2-1.x86_64 ..............................................................................[done]
(39/46) Installing: gcc7-7.5.0&amp;#43;r278197-150000.4.41.1.x86_64 ...............................................................................[done]
(40/46) Installing: pciutils-3.5.6-150300.13.6.1.x86_64 ...................................................................................[done]
(41/46) Installing: libelf-devel-0.185-150400.5.3.1.x86_64 ................................................................................[done]
(42/46) Installing: gcc-7-3.9.1.x86_64 ....................................................................................................[done]
(43/46) Installing: kernel-default-devel-6.4.0-150600.23.25.1.x86_64 ......................................................................[done]
warning: /var/cache/zypp/packages/gpu_pkg/nvidia-sle15sp6-main/x86_64/nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
make: Entering directory &amp;#39;/usr/src/linux-6.4.0-150600.23.25-obj/x86_64/default&amp;#39;
MODPOST /usr/src/kernel-modules/nvidia-550.90.07-default/Module.symvers
make: Leaving directory &amp;#39;/usr/src/linux-6.4.0-150600.23.25-obj/x86_64/default&amp;#39;
/usr/src/kernel-modules/nvidia-550.90.07-default /
make[1]: Entering directory &amp;#39;/usr/src/linux-6.4.0-150600.23.25&amp;#39;
make[2]: Entering directory &amp;#39;/usr/src/linux-6.4.0-150600.23.25-obj/x86_64/default&amp;#39;
warning: the compiler differs from the one used to build the kernel
The kernel was built by: gcc (SUSE Linux) 7.5.0
You are using: cc (SUSE Linux) 7.5.0
SYMLINK /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-kernel.o
SYMLINK /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset/nv-modeset-kernel.o
CONFTEST: hash__remap_4k_pfn
CONFTEST: set_pages_uc
CONFTEST: list_is_first
CONFTEST: set_memory_uc
CONFTEST: set_memory_array_uc
CONFTEST: set_pages_array_uc
CONFTEST: ioremap_cache
CONFTEST: ioremap_wc
CONFTEST: ioremap_driver_hardened
CONFTEST: ioremap_driver_hardened_wc
CONFTEST: ioremap_cache_shared
CONFTEST: pci_get_domain_bus_and_slot
CONFTEST: get_num_physpages
CONFTEST: pde_data
CONFTEST: xen_ioemu_inject_msi
CONFTEST: phys_to_dma
CONFTEST: get_dma_ops
CONFTEST: dma_attr_macros
CONFTEST: dma_map_page_attrs
CONFTEST: write_cr4
CONFTEST: of_find_node_by_phandle
CONFTEST: of_node_to_nid
CONFTEST: pnv_pci_get_npu_dev
CONFTEST: of_get_ibm_chip_id
CONFTEST: pci_bus_address
CONFTEST: pci_stop_and_remove_bus_device
CONFTEST: pci_rebar_get_possible_sizes
CONFTEST: wait_for_random_bytes
CONFTEST: register_cpu_notifier
CONFTEST: cpuhp_setup_state
CONFTEST: dma_map_resource
CONFTEST: get_backlight_device_by_name
CONFTEST: timer_setup
CONFTEST: pci_enable_msix_range
CONFTEST: kernel_read_has_pointer_pos_arg
CONFTEST: kernel_write_has_pointer_pos_arg
CONFTEST: dma_direct_map_resource
CONFTEST: tegra_get_platform
CONFTEST: tegra_bpmp_send_receive
CONFTEST: flush_cache_all
CONFTEST: vmf_insert_pfn
CONFTEST: jiffies_to_timespec
CONFTEST: ktime_get_raw_ts64
CONFTEST: ktime_get_real_ts64
CONFTEST: full_name_hash
CONFTEST: pci_enable_atomic_ops_to_root
CONFTEST: vga_tryget
CONFTEST: cc_platform_has
CONFTEST: seq_read_iter
CONFTEST: follow_pfn
CONFTEST: drm_gem_object_get
CONFTEST: drm_gem_object_put_unlocked
CONFTEST: add_memory_driver_managed
CONFTEST: device_property_read_u64
CONFTEST: devm_of_platform_populate
CONFTEST: of_dma_configure
CONFTEST: of_property_count_elems_of_size
CONFTEST: of_property_read_variable_u8_array
CONFTEST: of_property_read_variable_u32_array
CONFTEST: i2c_new_client_device
CONFTEST: i2c_unregister_device
CONFTEST: of_get_named_gpio
CONFTEST: devm_gpio_request_one
CONFTEST: gpio_direction_input
CONFTEST: gpio_direction_output
CONFTEST: gpio_get_value
CONFTEST: gpio_set_value
CONFTEST: gpio_to_irq
CONFTEST: icc_get
CONFTEST: icc_put
CONFTEST: icc_set_bw
CONFTEST: dma_buf_export_args
CONFTEST: dma_buf_ops_has_kmap
CONFTEST: dma_buf_ops_has_kmap_atomic
CONFTEST: dma_buf_ops_has_map
CONFTEST: dma_buf_ops_has_map_atomic
CONFTEST: dma_buf_has_dynamic_attachment
CONFTEST: dma_buf_attachment_has_peer2peer
CONFTEST: dma_set_mask_and_coherent
CONFTEST: devm_clk_bulk_get_all
CONFTEST: get_task_ioprio
CONFTEST: mdev_set_iommu_device
CONFTEST: offline_and_remove_memory
CONFTEST: crypto_tfm_ctx_aligned
CONFTEST: wait_on_bit_lock_argument_count
CONFTEST: radix_tree_empty
CONFTEST: radix_tree_replace_slot
CONFTEST: pnv_npu2_init_context
CONFTEST: cpumask_of_node
CONFTEST: ioasid_get
CONFTEST: mm_pasid_drop
CONFTEST: mmget_not_zero
CONFTEST: mmgrab
CONFTEST: iommu_sva_bind_device_has_drvdata_arg
CONFTEST: vm_fault_to_errno
CONFTEST: find_next_bit_wrap
CONFTEST: iommu_is_dma_domain
CONFTEST: acpi_video_backlight_use_native
CONFTEST: drm_dev_unref
CONFTEST: drm_reinit_primary_mode_group
CONFTEST: get_user_pages_remote
CONFTEST: get_user_pages
CONFTEST: pin_user_pages_remote
CONFTEST: pin_user_pages
CONFTEST: drm_gem_object_lookup
CONFTEST: drm_atomic_state_ref_counting
CONFTEST: drm_driver_has_gem_prime_res_obj
CONFTEST: drm_atomic_helper_connector_dpms
CONFTEST: drm_connector_funcs_have_mode_in_name
CONFTEST: drm_connector_has_vrr_capable_property
CONFTEST: drm_framebuffer_get
CONFTEST: drm_dev_put
CONFTEST: drm_format_num_planes
CONFTEST: drm_connector_for_each_possible_encoder
CONFTEST: drm_rotation_available
CONFTEST: drm_vma_offset_exact_lookup_locked
CONFTEST: nvhost_dma_fence_unpack
CONFTEST: dma_fence_set_error
CONFTEST: fence_set_error
CONFTEST: sync_file_get_fence
CONFTEST: drm_aperture_remove_conflicting_pci_framebuffers
CONFTEST: drm_fbdev_generic_setup
CONFTEST: drm_connector_attach_hdr_output_metadata_property
CONFTEST: drm_helper_crtc_enable_color_mgmt
CONFTEST: drm_crtc_enable_color_mgmt
CONFTEST: drm_atomic_helper_legacy_gamma_set
CONFTEST: is_export_symbol_gpl_of_node_to_nid
CONFTEST: is_export_symbol_gpl_sme_active
CONFTEST: is_export_symbol_present_swiotlb_map_sg_attrs
CONFTEST: is_export_symbol_present_swiotlb_dma_ops
CONFTEST: is_export_symbol_present___close_fd
CONFTEST: is_export_symbol_present_close_fd
CONFTEST: is_export_symbol_present_get_unused_fd
CONFTEST: is_export_symbol_present_get_unused_fd_flags
CONFTEST: is_export_symbol_present_nvhost_get_default_device
CONFTEST: is_export_symbol_present_nvhost_syncpt_unit_interface_get_byte_offset
CONFTEST: is_export_symbol_present_nvhost_syncpt_unit_interface_get_aperture
CONFTEST: is_export_symbol_present_tegra_dce_register_ipc_client
CONFTEST: is_export_symbol_present_tegra_dce_unregister_ipc_client
CONFTEST: is_export_symbol_present_tegra_dce_client_ipc_send_recv
CONFTEST: is_export_symbol_present_dram_clk_to_mc_clk
CONFTEST: is_export_symbol_present_get_dram_num_channels
CONFTEST: is_export_symbol_present_tegra_dram_types
CONFTEST: is_export_symbol_present_pxm_to_node
CONFTEST: is_export_symbol_present_screen_info
CONFTEST: is_export_symbol_gpl_screen_info
CONFTEST: is_export_symbol_present_i2c_bus_status
CONFTEST: is_export_symbol_present_tegra_fuse_control_read
CONFTEST: is_export_symbol_present_tegra_get_platform
CONFTEST: is_export_symbol_present_pci_find_host_bridge
CONFTEST: is_export_symbol_present_tsec_comms_send_cmd
CONFTEST: is_export_symbol_present_tsec_comms_set_init_cb
CONFTEST: is_export_symbol_present_tsec_comms_clear_init_cb
CONFTEST: is_export_symbol_present_tsec_comms_alloc_mem_from_gscco
CONFTEST: is_export_symbol_present_tsec_comms_free_gscco_mem
CONFTEST: is_export_symbol_present_memory_block_size_bytes
CONFTEST: crypto
CONFTEST: is_export_symbol_present_follow_pte
CONFTEST: is_export_symbol_present_int_active_memcg
CONFTEST: is_export_symbol_present_migrate_vma_setup
CONFTEST: dma_ops
CONFTEST: swiotlb_dma_ops
CONFTEST: noncoherent_swiotlb_dma_ops
CONFTEST: vm_fault_has_address
CONFTEST: vm_insert_pfn_prot
CONFTEST: vmf_insert_pfn_prot
CONFTEST: vm_ops_fault_removed_vma_arg
CONFTEST: kmem_cache_has_kobj_remove_work
CONFTEST: sysfs_slab_unlink
CONFTEST: proc_ops
CONFTEST: timespec64
CONFTEST: vmalloc_has_pgprot_t_arg
CONFTEST: mm_has_mmap_lock
CONFTEST: pci_channel_state
CONFTEST: pci_dev_has_ats_enabled
CONFTEST: remove_memory_has_nid_arg
CONFTEST: add_memory_driver_managed_has_mhp_flags_arg
CONFTEST: num_registered_fb
CONFTEST: pci_driver_has_driver_managed_dma
CONFTEST: vm_area_struct_has_const_vm_flags
CONFTEST: memory_failure_has_trapno_arg
CONFTEST: foll_longterm_present
CONFTEST: bus_type_has_iommu_ops
CONFTEST: backing_dev_info
CONFTEST: mm_context_t
CONFTEST: vm_fault_t
CONFTEST: mmu_notifier_ops_invalidate_range
CONFTEST: mmu_notifier_ops_arch_invalidate_secondary_tlbs
CONFTEST: migrate_vma_added_flags
CONFTEST: migrate_device_range
CONFTEST: handle_mm_fault_has_mm_arg
CONFTEST: handle_mm_fault_has_pt_regs_arg
CONFTEST: mempolicy_has_unified_nodes
CONFTEST: mempolicy_has_home_node
CONFTEST: mpol_preferred_many_present
CONFTEST: mmu_interval_notifier
CONFTEST: drm_bus_present
CONFTEST: drm_bus_has_bus_type
CONFTEST: drm_bus_has_get_irq
CONFTEST: drm_bus_has_get_name
CONFTEST: drm_driver_has_device_list
CONFTEST: drm_driver_has_legacy_dev_list
CONFTEST: drm_driver_has_set_busid
CONFTEST: drm_crtc_state_has_connectors_changed
CONFTEST: drm_init_function_args
CONFTEST: drm_helper_mode_fill_fb_struct
CONFTEST: drm_master_drop_has_from_release_arg
CONFTEST: drm_driver_unload_has_int_return_type
CONFTEST: drm_atomic_helper_crtc_destroy_state_has_crtc_arg
CONFTEST: drm_atomic_helper_plane_destroy_state_has_plane_arg
CONFTEST: drm_mode_object_find_has_file_priv_arg
CONFTEST: dma_buf_owner
CONFTEST: drm_connector_list_iter
CONFTEST: drm_atomic_helper_swap_state_has_stall_arg
CONFTEST: drm_driver_prime_flag_present
CONFTEST: drm_gem_object_has_resv
CONFTEST: drm_crtc_state_has_async_flip
CONFTEST: drm_crtc_state_has_pageflip_flags
CONFTEST: drm_crtc_state_has_vrr_enabled
CONFTEST: drm_format_modifiers_present
CONFTEST: drm_vma_node_is_allowed_has_tag_arg
CONFTEST: drm_vma_offset_node_has_readonly
CONFTEST: drm_display_mode_has_vrefresh
CONFTEST: drm_driver_master_set_has_int_return_type
CONFTEST: drm_driver_has_gem_free_object
CONFTEST: drm_prime_pages_to_sg_has_drm_device_arg
CONFTEST: drm_driver_has_gem_prime_callbacks
CONFTEST: drm_crtc_atomic_check_has_atomic_state_arg
CONFTEST: drm_gem_object_vmap_has_map_arg
CONFTEST: drm_plane_atomic_check_has_atomic_state_arg
CONFTEST: drm_device_has_pdev
CONFTEST: drm_crtc_state_has_no_vblank
CONFTEST: drm_mode_config_has_allow_fb_modifiers
CONFTEST: drm_has_hdr_output_metadata
CONFTEST: dma_resv_add_fence
CONFTEST: dma_resv_reserve_fences
CONFTEST: reservation_object_reserve_shared_has_num_fences_arg
CONFTEST: drm_connector_has_override_edid
CONFTEST: drm_master_has_leases
CONFTEST: drm_file_get_master
CONFTEST: drm_modeset_lock_all_end
CONFTEST: drm_connector_lookup
CONFTEST: drm_connector_put
CONFTEST: drm_driver_has_dumb_destroy
CONFTEST: fence_ops_use_64bit_seqno
CONFTEST: drm_aperture_remove_conflicting_pci_framebuffers_has_driver_arg
CONFTEST: drm_mode_create_dp_colorspace_property_has_supported_colorspaces_arg
CONFTEST: drm_unlocked_ioctl_flag_present
CONFTEST: dom0_kernel_present
CONFTEST: nvidia_vgpu_kvm_build
CONFTEST: nvidia_grid_build
CONFTEST: nvidia_grid_csp_build
CONFTEST: pm_runtime_available
CONFTEST: pci_class_multimedia_hd_audio
CONFTEST: drm_available
CONFTEST: vfio_pci_core_available
CONFTEST: mdev_available
CONFTEST: cmd_uphy_display_port_init
CONFTEST: cmd_uphy_display_port_off
CONFTEST: memory_failure_mf_sw_simulated_defined
CONFTEST: drm_atomic_available
CONFTEST: is_export_symbol_gpl_refcount_inc
CONFTEST: is_export_symbol_gpl_refcount_dec_and_test
CONFTEST: drm_alpha_blending_available
CONFTEST: is_export_symbol_present_drm_gem_prime_fd_to_handle
CONFTEST: is_export_symbol_present_drm_gem_prime_handle_to_fd
CONFTEST: ib_peer_memory_symbols
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-pci.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-dmabuf.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-nano-timer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-acpi.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-cray.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-dma.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-i2c.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-mmap.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-p2p.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-pat.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-procfs.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-usermap.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-vm.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-vtophys.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-interface.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-mlock.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-pci.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-registry.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-usermap.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-modeset-interface.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-pci-table.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-kthread-q.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-memdbg.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-ibmnpu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-report-err.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-rsync.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-msi.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-caps.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-caps-imex.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv_uvm_interface.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_aead.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_ecc.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_hkdf.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_rand.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_shash.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_rsa.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_aead_aes_gcm.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_sha.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_hmac_sha.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_internal_crypt_lib.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_hkdf_sha.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_ec.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_x509.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_rsa_ext.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nvlink_linux.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nvlink_caps.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/linux_nvswitch.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/procfs_nvswitch.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/i2c_nvswitch.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ats_sva.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_conf_computing.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_sec2_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_maxwell_sec2.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hopper_sec2.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_common.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_linux.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/nvstatus.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/nvCpuUuid.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/nv-kthread-q.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/nv-kthread-q-selftest.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_tools.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_global.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_gpu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_gpu_isr.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_procfs.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_va_space.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_va_space_mm.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_gpu_semaphore.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_mem.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_rm_mem.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_channel.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_lock.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hal.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_processors.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_range_tree.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_rb_tree.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_range_allocator.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_va_range.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_va_policy.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_va_block.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_range_group.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_gpu_replayable_faults.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_gpu_non_replayable_faults.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_gpu_access_counters.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_events.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_module.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_mmu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pte_batch.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_tlb_batch.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_push.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pushbuffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_thread_context.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_tracker.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_maxwell.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_maxwell_host.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_maxwell_ce.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_maxwell_mmu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_maxwell_fault_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_maxwell_access_counter_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pascal.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pascal_ce.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pascal_host.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pascal_mmu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pascal_fault_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_volta_ce.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_volta_host.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_volta_mmu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_volta.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_volta_fault_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_volta_access_counter_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_turing.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_turing_access_counter_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_turing_fault_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_turing_mmu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_turing_host.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ampere.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ampere_ce.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ampere_host.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ampere_mmu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hopper.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hopper_fault_buffer.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hopper_ce.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hopper_host.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hopper_mmu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ada.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_policy.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_utils.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_kvmalloc.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pmm_sysmem.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pmm_gpu.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_migrate.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_populate_pageable.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_migrate_pageable.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_map_external.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_user_channel.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_hmm.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_heuristics.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_thrashing.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_prefetch.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ats.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ats_ibm.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ats_faults.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_test_rng.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_range_tree_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_range_allocator_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_gpu_semaphore_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_mem_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_rm_mem_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_page_tree_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_tracker_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_push_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_channel_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_ce_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_host_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_lock_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_utils_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_kvmalloc_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pmm_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_pmm_sysmem_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_events_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_perf_module_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_get_rm_ptes_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_fault_buffer_flush_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_peer_identity_mappings_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_va_block_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_range_group_tree_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_thread_context_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm/uvm_rb_tree_test.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset/nvidia-modeset-linux.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset/nv-kthread-q.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-drv.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-utils.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-crtc.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-encoder.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-connector.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-gem.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-fb.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-modeset.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-fence.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-helper.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nv-kthread-q.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nv-pci-table.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-gem-nvkms-memory.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-gem-user-memory.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-gem-dma-buf.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-format.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-os-interface.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm/nvidia-drm-linux.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-peermem/nvidia-peermem.o
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia.o
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm.o
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset.o
ld.bfd -r -o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-interface.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-pci.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-dmabuf.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-nano-timer.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-acpi.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-cray.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-dma.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-i2c.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-mmap.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-p2p.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-pat.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-procfs.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-usermap.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-vm.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-vtophys.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-interface.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-mlock.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-pci.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-registry.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/os-usermap.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-modeset-interface.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-pci-table.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-kthread-q.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-memdbg.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-ibmnpu.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-report-err.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-rsync.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-msi.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-caps.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv-caps-imex.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nv_uvm_interface.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_aead.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_ecc.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_hkdf.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_rand.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_shash.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_rsa.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_aead_aes_gcm.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_sha.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_hmac_sha.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_internal_crypt_lib.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_hkdf_sha.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_ec.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_x509.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/libspdm_rsa_ext.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nvlink_linux.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/nvlink_caps.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/linux_nvswitch.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/procfs_nvswitch.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia/i2c_nvswitch.o
ld.bfd -r -o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset/nv-modeset-interface.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset/nvidia-modeset-linux.o /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset/nv-kthread-q.o
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm.o
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-peermem.o
MODPOST /usr/src/kernel-modules/nvidia-550.90.07-default/Module.symvers
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia.mod.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm.mod.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset.mod.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm.mod.o
CC [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-peermem.mod.o
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia.ko
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm.ko
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset.ko
BTF [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-modeset.ko due to unavailability of vmlinux
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm.ko
BTF [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-drm.ko due to unavailability of vmlinux
BTF [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia.ko due to unavailability of vmlinux
LD [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-peermem.ko
BTF [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-uvm.ko due to unavailability of vmlinux
BTF [M] /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-peermem.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-550.90.07-default/nvidia-peermem.ko due to unavailability of vmlinux
make[2]: Leaving directory &amp;#39;/usr/src/linux-6.4.0-150600.23.25-obj/x86_64/default&amp;#39;
make[1]: Leaving directory &amp;#39;/usr/src/linux-6.4.0-150600.23.25&amp;#39;
ld.bfd -T /usr/src/linux-obj/x86_64/default/scripts/module.lds -r -o nv-linux.o \
nvidia.mod.o nvidia/nv-interface.o
/
depmod: WARNING: could not open modules.order at /usr/lib/modules/6.4.0-150600.23.25-default: No such file or directory
depmod: WARNING: could not open modules.builtin at /usr/lib/modules/6.4.0-150600.23.25-default: No such file or directory
depmod: WARNING: could not open modules.builtin.modinfo at /usr/lib/modules/6.4.0-150600.23.25-default: No such file or directory
/usr/src/kernel-modules/nvidia-550.90.07-default /
rm -f -r conftest
make[1]: *** /lib/modules/6.4.0-18-default/build: No such file or directory. Stop.
make: *** [Makefile:85: clean] Error 2
/
EFI variables are not supported on this system
update-alternatives: using /usr/lib/nvidia/alternate-install-present-default to provide /usr/lib/nvidia/alternate-install-present (alternate-install-present) in auto mode
Modprobe blacklist files have been created at /etc/modprobe.d to prevent Nouveau from loading. This can be reverted by deleting /etc/modprobe.d/nvidia-*.conf.
*** Reboot your computer and verify that the NVIDIA graphics driver can be loaded. ***
WARNING: nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1 does not contain any kernel modules
cat: /var/tmp/weak-modules2.uSa5FP/krel-nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1: No such file or directory
/usr/lib/module-init-tools/weak-modules2: line 146: /var/tmp/weak-modules2.uSa5FP/modules-nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1: No such file or directory
/usr/lib/module-init-tools/weak-modules2: line 658: /var/tmp/weak-modules2.uSa5FP/basenames-nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1: No such file or directory
warning: %post(nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64) scriptlet failed, exit status 1
(44/46) Installing: nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64 ...........................................[done]
warning: /var/cache/zypp/packages/gpu_pkg/nvidia-sle15sp6-main/x86_64/nvidia-compute-G06-550.90.07-150600.23.1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
update-alternatives: using /usr/lib64/nvidia/libOpenCL.so.1 to provide /usr/lib64/libOpenCL.so.1 (libOpenCL.so.1) in auto mode
(45/46) Installing: nvidia-compute-G06-550.90.07-150600.23.1.x86_64 .......................................................................[done]
warning: /var/cache/zypp/packages/gpu_pkg/nvidia-sle15sp6-main/x86_64/nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
Running in chroot, ignoring command &amp;#39;daemon-reload&amp;#39;
Created symlink /etc/systemd/system/multi-user.target.wants/nvidia-powerd.service -&amp;gt; /usr/lib/systemd/system/nvidia-powerd.service.
(46/46) Installing: nvidia-compute-utils-G06-550.90.07-150600.23.1.x86_64 .................................................................[done]
%posttrans(nvidia-container-toolkit-1.16.2-1.x86_64) script output:
Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
Header SHA256 digest: OK
Header SHA1 digest: OK
%posttrans(nvidia-driver-G06-kmp-default-550.90.07_k6.4.0_150600.21-150600.23.1.x86_64) script output:
dracut[I]: Executing: /usr/bin/dracut --kver=6.4.0-18-default -f
dracut[I]: Module &amp;#39;systemd-networkd&amp;#39; will not be installed, because command &amp;#39;networkctl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-networkd&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-networkd&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-networkd&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-networkd-wait-online&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-pcrphase&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-pcrphase&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-portabled&amp;#39; will not be installed, because command &amp;#39;portablectl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-portabled&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-portabled&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-repart&amp;#39; will not be installed, because command &amp;#39;systemd-repart&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-resolved&amp;#39; will not be installed, because command &amp;#39;resolvectl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-resolved&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-resolved&amp;#39; could not be found!
dracut[I]: Module &amp;#39;modsign&amp;#39; will not be installed, because command &amp;#39;keyctl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;dbus-broker&amp;#39; will not be installed, because command &amp;#39;dbus-broker&amp;#39; could not be found!
dracut[I]: Module &amp;#39;rngd&amp;#39; will not be installed, because command &amp;#39;rngd&amp;#39; could not be found!
dracut[I]: Module &amp;#39;connman&amp;#39; will not be installed, because command &amp;#39;connmand&amp;#39; could not be found!
dracut[I]: Module &amp;#39;connman&amp;#39; will not be installed, because command &amp;#39;connmanctl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;connman&amp;#39; will not be installed, because command &amp;#39;connmand-wait-online&amp;#39; could not be found!
dracut[I]: 35network-legacy: Could not find any command of &amp;#39;dhclient wicked&amp;#39;!
dracut[I]: 62bluetooth: Could not find any command of &amp;#39;/usr/lib/bluetooth/bluetoothd /usr/libexec/bluetooth/bluetoothd&amp;#39;!
dracut[I]: Module &amp;#39;dmraid&amp;#39; will not be installed, because command &amp;#39;dmraid&amp;#39; could not be found!
dracut[I]: Module &amp;#39;dmsquash-live-ntfs&amp;#39; will not be installed, because command &amp;#39;ntfs-3g&amp;#39; could not be found!
dracut[I]: Module &amp;#39;pcsc&amp;#39; will not be installed, because command &amp;#39;pcscd&amp;#39; could not be found!
dracut[I]: Module &amp;#39;cifs&amp;#39; will not be installed, because command &amp;#39;mount.cifs&amp;#39; could not be found!
dracut[I]: Module &amp;#39;iscsi&amp;#39; will not be installed, because command &amp;#39;iscsi-iname&amp;#39; could not be found!
dracut[I]: Module &amp;#39;iscsi&amp;#39; will not be installed, because command &amp;#39;iscsiadm&amp;#39; could not be found!
dracut[I]: Module &amp;#39;iscsi&amp;#39; will not be installed, because command &amp;#39;iscsid&amp;#39; could not be found!
dracut[I]: 95nfs: Could not find any command of &amp;#39;rpcbind portmap&amp;#39;!
dracut[I]: Module &amp;#39;nvmf&amp;#39; will not be installed, because command &amp;#39;nvme&amp;#39; could not be found!
dracut[I]: Module &amp;#39;nvmf&amp;#39; will not be installed, because command &amp;#39;jq&amp;#39; could not be found!
dracut[I]: Module &amp;#39;memstrack&amp;#39; will not be installed, because command &amp;#39;memstrack&amp;#39; could not be found!
dracut[I]: memstrack is not available
dracut[I]: If you need to use rd.memdebug&amp;gt;=4, please install memstrack and procps-ng
dracut[I]: Module &amp;#39;squash&amp;#39; will not be installed, because command &amp;#39;mksquashfs&amp;#39; could not be found!
dracut[I]: Module &amp;#39;squash&amp;#39; will not be installed, because command &amp;#39;unsquashfs&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-pcrphase&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-pcrphase&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-portabled&amp;#39; will not be installed, because command &amp;#39;portablectl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-portabled&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-portabled&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-repart&amp;#39; will not be installed, because command &amp;#39;systemd-repart&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-resolved&amp;#39; will not be installed, because command &amp;#39;resolvectl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;systemd-resolved&amp;#39; will not be installed, because command &amp;#39;/usr/lib/systemd/systemd-resolved&amp;#39; could not be found!
dracut[I]: Module &amp;#39;modsign&amp;#39; will not be installed, because command &amp;#39;keyctl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;dbus-broker&amp;#39; will not be installed, because command &amp;#39;dbus-broker&amp;#39; could not be found!
dracut[I]: Module &amp;#39;rngd&amp;#39; will not be installed, because command &amp;#39;rngd&amp;#39; could not be found!
dracut[I]: Module &amp;#39;connman&amp;#39; will not be installed, because command &amp;#39;connmand&amp;#39; could not be found!
dracut[I]: Module &amp;#39;connman&amp;#39; will not be installed, because command &amp;#39;connmanctl&amp;#39; could not be found!
dracut[I]: Module &amp;#39;connman&amp;#39; will not be installed, because command &amp;#39;connmand-wait-online&amp;#39; could not be found!
dracut[I]: 35network-legacy: Could not find any command of &amp;#39;dhclient wicked&amp;#39;!
dracut[I]: 62bluetooth: Could not find any command of &amp;#39;/usr/lib/bluetooth/bluetoothd /usr/libexec/bluetooth/bluetoothd&amp;#39;!
dracut[I]: Module &amp;#39;dmraid&amp;#39; will not be installed, because command &amp;#39;dmraid&amp;#39; could not be found!
dracut[I]: Module &amp;#39;dmsquash-live-ntfs&amp;#39; will not be installed, because command &amp;#39;ntfs-3g&amp;#39; could not be found!
dracut[I]: Module &amp;#39;pcsc&amp;#39; will not be installed, because command &amp;#39;pcscd&amp;#39; could not be found!
dracut[I]: Module &amp;#39;cifs&amp;#39; will not be installed, because command &amp;#39;mount.cifs&amp;#39; could not be found!
dracut[I]: Module &amp;#39;iscsi&amp;#39; will not be installed, because command &amp;#39;iscsi-iname&amp;#39; could not be found!
dracut[I]: Module &amp;#39;iscsi&amp;#39; will not be installed, because command &amp;#39;iscsiadm&amp;#39; could not be found!
dracut[I]: Module &amp;#39;iscsi&amp;#39; will not be installed, because command &amp;#39;iscsid&amp;#39; could not be found!
dracut[I]: 95nfs: Could not find any command of &amp;#39;rpcbind portmap&amp;#39;!
dracut[I]: Module &amp;#39;nvmf&amp;#39; will not be installed, because command &amp;#39;nvme&amp;#39; could not be found!
dracut[I]: Module &amp;#39;nvmf&amp;#39; will not be installed, because command &amp;#39;jq&amp;#39; could not be found!
dracut[I]: Module &amp;#39;memstrack&amp;#39; will not be installed, because command &amp;#39;memstrack&amp;#39; could not be found!
dracut[I]: memstrack is not available
dracut[I]: If you need to use rd.memdebug&amp;gt;=4, please install memstrack and procps-ng
dracut[I]: Module &amp;#39;squash&amp;#39; will not be installed, because command &amp;#39;mksquashfs&amp;#39; could not be found!
dracut[I]: Module &amp;#39;squash&amp;#39; will not be installed, because command &amp;#39;unsquashfs&amp;#39; could not be found!
dracut[I]: *** Including module: systemd ***
dracut[I]: *** Including module: systemd-initrd ***
dracut[I]: *** Including module: i18n ***
dracut[I]: *** Including module: drm ***
dracut[I]: *** Including module: health-checker ***
dracut[I]: *** Including module: transactional-update ***
dracut[I]: *** Including module: btrfs ***
dracut[I]: *** Including module: kernel-modules ***
dracut[I]: *** Including module: kernel-modules-extra ***
dracut[I]: *** Including module: rootfs-block ***
dracut[I]: *** Including module: suse-btrfs ***
dracut[I]: *** Including module: suse-xfs ***
dracut[I]: *** Including module: terminfo ***
dracut[I]: *** Including module: udev-rules ***
dracut[I]: *** Including module: biosdevname ***
dracut[I]: *** Including module: dracut-systemd ***
dracut[I]: *** Including module: selinux-microos ***
dracut[I]: *** Including module: usrmount ***
dracut[I]: *** Including module: base ***
dracut[I]: *** Including module: fs-lib ***
dracut[I]: *** Including module: shutdown ***
dracut[I]: *** Including module: suse ***
dracut[I]: *** Including module: suse-initrd ***
dracut[I]: *** Including modules done ***
dracut-install: Failed to find module &amp;#39;nvidia_drm&amp;#39;
dracut[E]: FAILED: /usr/lib/dracut/dracut-install -D /var/tmp/dracut.NCrOls/initramfs -N ^i2o_scsi$ --kerneldir /lib/modules/6.4.0-18-default/ -m nvidia nvidia_drm nvidia-modeset nvidia-uvm
dracut[I]: *** Installing kernel module dependencies ***
dracut[I]: *** Installing kernel module dependencies done ***
dracut[I]: *** Resolving executable dependencies ***
dracut[I]: *** Resolving executable dependencies done ***
dracut[I]: *** Hardlinking files ***
dracut[I]: *** Hardlinking files done ***
dracut[I]: *** Generating early-microcode cpio image ***
dracut[I]: *** Constructing GenuineIntel.bin ***
dracut[I]: *** Store current command line parameters ***
dracut[I]: Stored kernel commandline:
dracut[I]: rd.driver.pre=btrfs
dracut[I]: rd.driver.pre=overlay
dracut[I]: root=UUID=20915b08-9a5a-4ad3-942e-1427a20648e6 rootfstype=btrfs rootflags=rw,relatime,seclabel,space_cache=v2,subvolid=270,subvol=/@/.snapshots/4/snapshot,subvol=@/.snapshots/4/snapshot
dracut[I]: *** Stripping files ***
dracut[I]: *** Stripping files done ***
dracut[I]: *** Creating image file &amp;#39;/boot/initrd-6.4.0-18-default&amp;#39; ***
dracut[I]: *** Creating initramfs image file &amp;#39;/boot/initrd-6.4.0-18-default&amp;#39; done ***
Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
Header SHA256 digest: OK
Header SHA1 digest: OK
%posttrans(nvidia-compute-G06-550.90.07-150600.23.1.x86_64) script output:
Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
Header SHA1 digest: OK
Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
Header SHA1 digest: OK
Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
Header SHA1 digest: OK
Header V4 RSA/SHA512 Signature, key ID f796ecb0: NOKEY
Header SHA1 digest: OK
Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
Header SHA256 digest: OK
Header SHA1 digest: OK
Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
Header SHA256 digest: OK
Header SHA1 digest: OK
Header V4 RSA/SHA512 Signature, key ID db27fd5a: NOKEY
Header SHA256 digest: OK
Header SHA1 digest: OK
Running post-transaction scripts ..........................................................................................................[done]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Exit the &lt;code&gt;transactional-update&lt;/code&gt; session and reboot to the new snapshot that contains the changes you have made&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ exit
$ reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;3. Ref&lt;span class="hx:absolute hx:-mt-20" id="3-ref"&gt;&lt;/span&gt;
&lt;a href="#3-ref" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suse-ai/1.0/html/NVIDIA-GPU-driver-on-SL-Micro/index.html"target="_blank" rel="noopener"&gt;Installing NVIDIA GPU drivers on SUSE Linux Micro - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Registering and Upgrade RHEL 8</title><link>https://blog.kubeantony.com/archive/suse/registering-and-upgrade-rhel-8/</link><pubDate>Tue, 24 Sep 2024 04:55:02 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/registering-and-upgrade-rhel-8/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，如何成功將 RHEL 8 註冊為 SUSE Manager 的 Red Hat Clients 端，並在離線的環境下透過 SUSE Manager 將 RHEL 8 升級至 RHEL 9&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;PreRequest&lt;span class="hx:absolute hx:-mt-20" id="prerequest"&gt;&lt;/span&gt;
&lt;a href="#prerequest" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;SUSE Manager Server&lt;span class="hx:absolute hx:-mt-20" id="suse-manager-server"&gt;&lt;/span&gt;
&lt;a href="#suse-manager-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 一台正在運作的 SUSE Manager 4.3&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;SUSE Manager Client&lt;span class="hx:absolute hx:-mt-20" id="suse-manager-client"&gt;&lt;/span&gt;
&lt;a href="#suse-manager-client" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 已準備一台尚未註冊的 RHEL 8 機器&lt;/li&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 8 GB 記憶體或更多&lt;/li&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 2 core 以上的 vcpu&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;1. Import Entitlements and Certificates&lt;span class="hx:absolute hx:-mt-20" id="1-import-entitlements-and-certificates"&gt;&lt;/span&gt;
&lt;a href="#1-import-entitlements-and-certificates" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. SSH 連線至 RHEL 8 主機
$ ssh xxx@&amp;lt;ip address&amp;gt;
# 2. 與 Red Hat CDN 註冊 (此步驟需要上網)
$ sudo subscription-manager register
Registering to: subscription.rhsm.redhat.com:443/subscription
Username: xxx
Password:
The system has been registered with ID: bf0de019-8ba0-4442-b1b6-30e6e0ff1466
The registered system name is: localhost.localdomain
# 3. 自動將相容的訂閱附加到該系統
$ sudo subscription-manager attach
All installed products are covered by valid entitlements. No need to update subscriptions at this time.
# 4. 顯示這台主機可以存取的 subscriptions
$ sudo subscription-manager list --available
# 5. 列出系統已啟用且已知的套件儲存庫
$ sudo subscription-manager repos --list-enabled
&amp;#43;----------------------------------------------------------&amp;#43;
Available Repositories in /etc/yum.repos.d/redhat.repo
&amp;#43;----------------------------------------------------------&amp;#43;
Repo ID: rhel-8-for-x86_64-baseos-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
Repo URL: https://cdn.redhat.com/content/dist/rhel8/$releasever/x86_64/baseos/os
Enabled: 1
Repo ID: rhel-8-for-x86_64-appstream-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Repo URL: https://cdn.redhat.com/content/dist/rhel8/$releasever/x86_64/appstream/os
Enabled: 1
# 6. 安裝必要套件
$ sudo yum install vim yum-utils createrepo
# 7. 將權限憑證和金鑰從用戶端系統複製可以連到 SUSE Manager Web UI 的主機：
$ scp -r/etc/pki/entitlement/ user@x.x.x.x:~
# 8. 將 Red Hat CA 憑證檔案從用戶端系統複製到與權利證書和金鑰相同的位置：
$ scp /etc/rhsm/ca/redhat-uep.pem user@x.x.x.x:~&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;若要在您的 Red Hat 用戶端上管理儲存庫，您需要將 CA 和權利憑證匯入 SUSE Manager Server。 這需要您執行三次匯入程序，以建立三個項目：entitlement certificate (權利憑證)、entitlement key (權利金鑰) 和 Red Hat certificate (憑證) 各一個。&lt;/p&gt;
&lt;h3&gt;1.1. Importing Certificates to the Server&lt;span class="hx:absolute hx:-mt-20" id="11-importing-certificates-to-the-server"&gt;&lt;/span&gt;
&lt;a href="#11-importing-certificates-to-the-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;在 SUSE Manager Server Web UI 上，點選到 &lt;strong&gt;Systems&lt;/strong&gt; &amp;gt; &lt;strong&gt;Autoinstallation&lt;/strong&gt; &amp;gt; &lt;strong&gt;GPG and SSL Keys&lt;/strong&gt;.
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJQuVp1AC.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點選 &lt;strong&gt;Create Stored Key/Cert&lt;/strong&gt; 並為權限憑證設定這些參數
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJ5SSp1AC.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在 &lt;strong&gt;Description&lt;/strong&gt; 欄位中，輸入 &lt;code&gt;Entitlement-Cert-date&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;在 &lt;strong&gt;Type&lt;/strong&gt; 欄位中，選擇 &lt;code&gt;SSL&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;在 &lt;strong&gt;Select file to upload&lt;/strong&gt; 欄位中，瀏覽到儲存權限憑證的位置，然後選擇 &lt;code&gt;.pem&lt;/code&gt; 憑證檔案。&lt;/li&gt;
&lt;li&gt;點選 &lt;strong&gt;Create Key&lt;/strong&gt; 按鈕&lt;/li&gt;
&lt;li&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJ_bLTJR0.png" alt="image" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;2. 在 SUSE Manager Server 上管理 Red Hat Enterprise Linux 的 Software Channel&lt;span class="hx:absolute hx:-mt-20" id="2-在-suse-manager-server-上管理-red-hat-enterprise-linux-的-software-channel"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%9c%a8-suse-manager-server-%e4%b8%8a%e7%ae%a1%e7%90%86-red-hat-enterprise-linux-%e7%9a%84-software-channel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. 系統要求&lt;span class="hx:absolute hx:-mt-20" id="21-系統要求"&gt;&lt;/span&gt;
&lt;a href="#21-%e7%b3%bb%e7%b5%b1%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;SUSE Manager Server 的 &lt;code&gt;/var/spacewalk&lt;/code&gt; 目錄區剩餘空間量，必須有 300 G 以上的剩餘空間&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2.2. 開始新增 Software Channels&lt;span class="hx:absolute hx:-mt-20" id="22-開始新增-software-channels"&gt;&lt;/span&gt;
&lt;a href="#22-%e9%96%8b%e5%a7%8b%e6%96%b0%e5%a2%9e-software-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;2.3.1 使用 WebUI 操作步驟&lt;span class="hx:absolute hx:-mt-20" id="231-使用-webui-操作步驟"&gt;&lt;/span&gt;
&lt;a href="#231-%e4%bd%bf%e7%94%a8-webui-%e6%93%8d%e4%bd%9c%e6%ad%a5%e9%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;勾選要加入的 SUSE Liberty Linux (版本)&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Add product&amp;rdquo; ，然後等待同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkpgkCHXp.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;確認同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 Channels 欄位呈現綠勾勾的圖示，代表完成同步&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B16onXqma.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>SUSE Manager curl API integration</title><link>https://blog.kubeantony.com/archive/suse/suse-manager-curl-api-integration/</link><pubDate>Tue, 13 Aug 2024 02:28:00 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suse-manager-curl-api-integration/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章主要會一步一步介紹如何透過 HTTP curl API 的方式，來呼叫 SUSE Manager Server 排程對 Client 端的作業系統進行 Patch 更新。&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Step 1. Login&lt;span class="hx:absolute hx:-mt-20" id="step-1-login"&gt;&lt;/span&gt;
&lt;a href="#step-1-login" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;以下是使用 HTTP over JSON API 的身分驗證 Token 登入流程。&lt;/p&gt;
&lt;p&gt;HTTP over JSON API 使用身分驗證 Token 進行存取。Token 會在呼叫 &lt;code&gt;auth.login&lt;/code&gt; endpoint 的回應中，以名為 &lt;code&gt;pxt-session-cookie&lt;/code&gt; 的 &lt;code&gt;cookie&lt;/code&gt; 傳送。&lt;code&gt;auth.login&lt;/code&gt; endpoint 接受帶有 JSON body 的 POST 請求，該 JSON body 在 top-level object 中包含 &lt;code&gt;login&lt;/code&gt; 和 &lt;code&gt;password&lt;/code&gt; 屬性。&lt;/p&gt;
&lt;h3&gt;Using the request body&lt;span class="hx:absolute hx:-mt-20" id="using-the-request-body"&gt;&lt;/span&gt;
&lt;a href="#using-the-request-body" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# Define Var
$ SUMA_URL=&amp;#39;suma.example.com&amp;#39;
$ AC=&amp;#34;admin&amp;#34;
$ PW=&amp;#34;sumaadmin&amp;#34;
$ API=&amp;#34;https://${SUMA_URL}/rhn/manager/api&amp;#34;
# Run Command
$ curl -k -H &amp;#34;Content-Type: application/json&amp;#34; \
-d &amp;#34;{&amp;#39;login&amp;#39;: &amp;#34;$AC&amp;#34;, &amp;#34;password&amp;#34;: &amp;#34;$PW&amp;#34;}&amp;#34; \
-i $API/auth/login&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;HTTP/1.1 200 200
...
Set-Cookie: pxt-session-cookie=18876x02e2026a1d61069d8ac6a8ce9ef965ad90832c8337cea54aebc1947ebfdb5eb6; Max-Age=3600; Expires=Fri, 31 May 2024 08:03:21 GMT; Path=/; Secure; HttpOnly;HttpOnly;Secure
...
{&amp;#34;success&amp;#34;:true}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;之後 Call API 需使用 &lt;code&gt;Max-Age=3600&lt;/code&gt; 的 &lt;code&gt;Set-Cookie&lt;/code&gt; 值 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;pxt-session-cookie=18876x02e2026a1d61069d8ac6a8ce9ef965ad90832c8337cea54aebc1947ebfdb5eb6&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;登入成功後，得到的 cookie 必須加入到後續每次認證存取的請求中。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h2&gt;Step 2. Get system ID&lt;span class="hx:absolute hx:-mt-20" id="step-2-get-system-id"&gt;&lt;/span&gt;
&lt;a href="#step-2-get-system-id" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;列出 &lt;code&gt;test1&lt;/code&gt; 這台 Client 的系統 &lt;code&gt;id&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# Define Var
$ system=&amp;#39;test1&amp;#39;
$ cookie=&amp;#39;pxt-session-cookie=1448x8837510e9115fee45d7cf5df49709c9967634003ada35b120bd86ed6e4717ea3&amp;#39;
# Run Command
$ curl -s -k -H &amp;#34;Content-Type: application/json&amp;#34; \
--cookie &amp;#34;${cookie}&amp;#34; \
$API/system/getId?name=${system}| jq&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;{
&amp;#34;success&amp;#34;: true,
&amp;#34;result&amp;#34;: [
{
&amp;#34;name&amp;#34;: &amp;#34;test1&amp;#34;,
&amp;#34;id&amp;#34;: 1000010001,
&amp;#34;last_checkin&amp;#34;: &amp;#34;Aug 12, 2024, 3:35:24 PM&amp;#34;,
&amp;#34;outdated_pkg_count&amp;#34;: 218
}
]
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step 3. 列出系統需要套用的所有 Patch 更新&lt;span class="hx:absolute hx:-mt-20" id="step-3-列出系統需要套用的所有-patch-更新"&gt;&lt;/span&gt;
&lt;a href="#step-3-%e5%88%97%e5%87%ba%e7%b3%bb%e7%b5%b1%e9%9c%80%e8%a6%81%e5%a5%97%e7%94%a8%e7%9a%84%e6%89%80%e6%9c%89-patch-%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;傳回與系統相關的所有 Patch 更新。&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# Define Var
# id 是上一個步驟的 result.id
$ id=&amp;#39;1000010001&amp;#39;
# Run Command
$ curl -s -H &amp;#34;Content-Type: application/json&amp;#34; \
--cookie &amp;#34;${cookie}&amp;#34; \
$API/system/getRelevantErrata?sid=${id} | jq&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;{
&amp;#34;success&amp;#34;: true,
&amp;#34;result&amp;#34;: [
{
&amp;#34;date&amp;#34;: &amp;#34;2024-08-10&amp;#34;,
&amp;#34;advisory_name&amp;#34;: &amp;#34;SUSE-15-SP6-2024-2869&amp;#34;,
&amp;#34;advisory_type&amp;#34;: &amp;#34;Security Advisory&amp;#34;,
&amp;#34;advisory_status&amp;#34;: &amp;#34;stable&amp;#34;,
&amp;#34;id&amp;#34;: 4008,
&amp;#34;advisory_synopsis&amp;#34;: &amp;#34;important: Security update for ca-certificates-mozilla&amp;#34;,
&amp;#34;update_date&amp;#34;: &amp;#34;2024-08-10&amp;#34;
},
...以下省略&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step 4. Get Patch Name&lt;span class="hx:absolute hx:-mt-20" id="step-4-get-patch-name"&gt;&lt;/span&gt;
&lt;a href="#step-4-get-patch-name" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# Define Var
# AN is stand for Advisory Name
$ AN=&amp;#39;SUSE-15-SP6-2024-2869&amp;#39;
# Run Command
$ curl -s -k -H &amp;#34;Content-Type: application/json&amp;#34; \
--cookie &amp;#34;${cookie}&amp;#34; \
$API/errata/getDetails?advisoryName=${AN} | jq&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;success&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;result&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;4008&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;issue_date&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;8/10/24&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;update_date&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;8/10/24&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;last_modified_date&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;2024-08-10 02:11:37.071418&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;release&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;advisory_status&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;stable&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;vendor_advisory&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;https://www.suse.com/support/update/announcement/2024/suse-su-20242869-1/&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;product&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;SUSE Updates SLE-Module-Basesystem 15-SP6 x86 64&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;errataFrom&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;maint-coord@suse.de&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;solution&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34; &amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;description&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;This update for ca-certificates-mozilla fixes the following issues:\n\n- Updated to 2.68 state of Mozilla SSL root CAs (bsc#1227525)\n - Added: FIRMAPROFESIONAL CA ROOT-A WEB\n - Distrust: GLOBALTRUST 2020\n\n- Updated to 2.66 state of Mozilla SSL root CAs (bsc#1220356)\n Added:\n - CommScope Public Trust ECC Root-01\n - CommScope Public Trust ECC Root-02\n - CommScope Public Trust RSA Root-01\n - CommScope Public Trust RSA Root-02\n - D-Trust SBR Root CA 1 2022\n - D-Trust SBR Root CA 2 2022\n - Telekom Security SMIME ECC Root 2021\n - Telekom Security SMIME RSA Root 2023\n - Telekom Security TLS ECC Root 2020\n - Telekom Security TLS RSA Root 2023\n - TrustAsia Global Root CA G3\n - TrustAsia Global Root CA G4\n Removed:\n - Autoridad de Certificacion Firmaprofesional CIF A62634068\n - Chambers of Commerce Root - 2008\n - Global Chambersign Root - 2008\n - Security Communication Root CA\n - Symantec Class 1 Public Primary Certification Authority - G6\n - Symantec Class 2 Public Primary Certification Authority - G6\n - TrustCor ECA-1\n - TrustCor RootCert CA-1\n - TrustCor RootCert CA-2\n - VeriSign Class 1 Public Primary Certification Authority - G3\n - VeriSign Class 2 Public Primary Certification Authority - G3\n&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;synopsis&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;important: Security update for ca-certificates-mozilla&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;topic&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34; &amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;references&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;notes&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Security Advisory&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;severity&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Important&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;reboot_suggested&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;restart_suggested&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step 5. Apply Patch(es) to a system&lt;span class="hx:absolute hx:-mt-20" id="step-5-apply-patches-to-a-system"&gt;&lt;/span&gt;
&lt;a href="#step-5-apply-patches-to-a-system" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ id=1000010001
$ errataIds=&amp;#39;3800, 3804&amp;#39;
$ curl -s -k -H &amp;#34;Content-Type: application/json&amp;#34; \
--cookie &amp;#34;${cookie}&amp;#34; \
-d &amp;#34;{&amp;#39;sid&amp;#39;: ${id},&amp;#39;errataIds&amp;#39;: [${errataIds}]}&amp;#34; \
$API/system/scheduleApplyErrata | jq&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;success&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;result&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="mi"&gt;25&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step 6. Get Event Details&lt;span class="hx:absolute hx:-mt-20" id="step-6-get-event-details"&gt;&lt;/span&gt;
&lt;a href="#step-6-get-event-details" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Using the query string&lt;span class="hx:absolute hx:-mt-20" id="using-the-query-string"&gt;&lt;/span&gt;
&lt;a href="#using-the-query-string" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ id=&amp;#39;1000010001&amp;#39;
$ eid=&amp;#39;25&amp;#39;
$ curl -s -k -H &amp;#34;Content-Type: application/json&amp;#34; \
--cookie &amp;#34;${cookie}&amp;#34; \
&amp;#34;$API/system/getEventDetails?sid=${id}&amp;amp;eid=${eid}&amp;#34; | jq&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Using the request body&lt;span class="hx:absolute hx:-mt-20" id="using-the-request-body-1"&gt;&lt;/span&gt;
&lt;a href="#using-the-request-body-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -s -k -H &amp;#34;Content-Type: application/json&amp;#34; \
--cookie &amp;#34;${cookie}&amp;#34; \
&amp;#34;$API/system/getEventDetails&amp;#34; -X GET -d &amp;#34;{
&amp;#39;sid&amp;#39;: ${id},
&amp;#39;eid&amp;#39;: ${eid}}&amp;#34; | jq&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;success&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;result&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;summary&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Combined Patch Update: SUSE-15-SP6-2024-1762 - important: Security update for perl (and 1 more patches) scheduled by sumaadmin&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;result_msg&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;saltutil_|-sync_states_|-sync_states_|-sync_states:\n name: sync_states\n changes: {\n }\n result: true\n comment: No updates to sync\n __sls__: util.syncstates\n __run_num__: 0.0\n start_time: &amp;#39;17:43:54.368173&amp;#39;\n duration: 180.305\n __id__: sync_states\npkg_|-mgr_absent_ca_package_|-rhn-org-trusted-ssl-cert_|-removed:\n name: rhn-org-trusted-ssl-cert\n changes: {\n }\n result: true\n comment: All specified packages are already absent\n __sls__: certs\n __run_num__: 1.0\n start_time: &amp;#39;17:43:55.489188&amp;#39;\n duration: 8.562\n __id__: mgr_absent_ca_package\nfile_|-mgr_ca_cert_|-/etc/pki/trust/anchors/RHN-ORG-TRUSTED-SSL-CERT_|-managed:\n changes: {\n }\n comment: File /etc/pki/trust/anchors/RHN-ORG-TRUSTED-SSL-CERT is in the correct state\n name: /etc/pki/trust/anchors/RHN-ORG-TRUSTED-SSL-CERT\n result: true\n __sls__: certs\n __run_num__: 2.0\n start_time: &amp;#39;17:43:55.499805&amp;#39;\n duration: 35.932\n __id__: mgr_ca_cert\ncmd_|-update-ca-certificates_|-/usr/sbin/update-ca-certificates_|-run:\n changes: {\n }\n result: true\n duration: 0.007\n start_time: &amp;#39;17:43:55.536567&amp;#39;\n comment: State was not run because none of the onchanges reqs changed\n __state_ran__: false\n __run_num__: 3.0\n __sls__: certs\n __id__: update-ca-certificates\n name: /usr/sbin/update-ca-certificates\nfile_|-mgr_proxy_ca_cert_symlink_|-/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT_|-symlink:\n result: true\n name: /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT\n changes: {\n }\n comment: onlyif condition is false\n __sls__: certs\n __id__: mgr_proxy_ca_cert_symlink\n skip_watch: true\n __run_num__: 4.0\n start_time: &amp;#39;17:43:55.536656&amp;#39;\n duration: 385.179\nfile_|-mgr_deploy_tools_uyuni_key_|-/etc/pki/rpm-gpg/uyuni-tools-gpg-pubkey-0d20833e.key_|-managed:\n changes: {\n }\n comment: File /etc/pki/rpm-gpg/uyuni-tools-gpg-pubkey-0d20833e.key is in the correct state\n name: /etc/pki/rpm-gpg/uyuni-tools-gpg-pubkey-0d20833e.key\n result: true\n __sls__: channels.gpg-keys\n __run_num__: 5.0\n start_time: &amp;#39;17:43:55.921947&amp;#39;\n duration: 34.159\n __id__: mgr_deploy_tools_uyuni_key\nfile_|-mgr_deploy_suse_addon_key_|-/etc/pki/rpm-gpg/suse-addon-97a636db0bad8ecc.key_|-managed:\n changes: {\n }\n comment: File /etc/pki/rpm-gpg/suse-addon-97a636db0bad8ecc.key is in the correct state\n name: /etc/pki/rpm-gpg/suse-addon-97a636db0bad8ecc.key\n result: true\n __sls__: channels.gpg-keys\n __run_num__: 6.0\n start_time: &amp;#39;17:43:55.956262&amp;#39;\n duration: 34.735\n __id__: mgr_deploy_suse_addon_key\nfile_|-mgrchannels_repo_|-/etc/zypp/repos.d/susemanager:channels.repo_|-managed:\n changes: {\n }\n comment: File /etc/zypp/repos.d/susemanager:channels.repo is in the correct state\n name: /etc/zypp/repos.d/susemanager:channels.repo\n result: true\n __sls__: channels\n __run_num__: 7.0\n start_time: &amp;#39;17:43:55.991156&amp;#39;\n duration: 123.044\n __id__: mgrchannels_repo\nproduct_|-mgrchannels_install_products_|-mgrchannels_install_products_|-all_installed:\n name: mgrchannels_install_products\n changes: {\n }\n result: true\n comment: All subscribed products are already installed\n __sls__: channels\n __run_num__: 8.0\n start_time: &amp;#39;17:43:56.114639&amp;#39;\n duration: 466.036\n __id__: mgrchannels_install_products\npkg_|-mgrchannels_inst_suse_build_key_|-suse-build-key_|-installed:\n name: suse-build-key\n changes: {\n }\n result: true\n comment: All specified packages are already installed\n __sls__: channels\n __run_num__: 9.0\n start_time: &amp;#39;17:43:56.581182&amp;#39;\n duration: 4321.058\n __id__: mgrchannels_inst_suse_build_key\npkg_|-mgr_regular_patches_|-mgr_regular_patches_|-patch_installed:\n name: mgr_regular_patches\n changes:\n perl-base:\n old:\n - version: 5.26.1\n install_date_time_t: 1.719820515E9\n release: 150300.17.14.1\n epoch: null\n arch: x86_64\n new:\n - version: 5.26.1\n install_date_time_t: 1.723455849E9\n release: 150300.17.17.1\n epoch: null\n arch: x86_64\n perl:\n old:\n - version: 5.26.1\n install_date_time_t: 1.719820534E9\n release: 150300.17.14.1\n epoch: null\n arch: x86_64\n new:\n - version: 5.26.1\n install_date_time_t: 1.72345585E9\n release: 150300.17.17.1\n epoch: null\n arch: x86_64\n perl-core-DB_File:\n old:\n - version: 5.26.1\n install_date_time_t: 1.719820534E9\n
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt; release: 150300.17.14.1\n epoch: null\n arch: x86_64\n new:\n - version: 5.26.1\n install_date_time_t: 1.72345585E9\n release: 150300.17.17.1\n epoch: null\n
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt; arch: x86_64\n ucode-intel:\n old:\n - version: &amp;#39;20240312&amp;#39;\n install_date_time_t: 1.719820562E9\n release: 150200.38.1\n epoch: null\n arch: x86_64\n new:\n - version: &amp;#39;20240514&amp;#39;\n install_date_time_t: 1.723455848E9\n release: 150200.41.1\n
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt; epoch: null\n arch: x86_64\n result: true\n comment: &amp;#39;&amp;#39;\n __sls__: packages.patchinstall\n __run_num__: 10.0\n start_time: &amp;#39;17:44:00.902568&amp;#39;\n duration: 28536.465\n __id__: mgr_regular_patches\n&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;picked_up&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Aug 12, 2024, 5:43:44 PM&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;earliest_action&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Aug 12, 2024, 5:43:44 PM&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;additional_info&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;detail&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;SUSE-15-SP6-2024-1762 (important: Security update for perl)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;detail&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;SUSE-15-SP6-2024-1771 (important: Security update for ucode-intel)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;created&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Aug 12, 2024, 5:43:44 PM&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;history_type&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Patch Update&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;result_code&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;id&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;25&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;completed&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Aug 12, 2024, 5:44:21 PM&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;status&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;Completed&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;參考文件&lt;span class="hx:absolute hx:-mt-20" id="參考文件"&gt;&lt;/span&gt;
&lt;a href="#%e5%8f%83%e8%80%83%e6%96%87%e4%bb%b6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/api/suse-manager/api/system.html#apidoc-system-getId-loggedInUser-name"target="_blank" rel="noopener"&gt;getId - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/api/suse-manager/api/system.html#apidoc-system-getRelevantErrata-loggedInUser-sid"target="_blank" rel="noopener"&gt;getRelevantErrata - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/api/suse-manager/api/auth.html#apidoc-auth-login-username-password"target="_blank" rel="noopener"&gt;auth - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/api/suse-manager/api/errata.html#apidoc-errata-getDetails-loggedInUser-advisoryName"target="_blank" rel="noopener"&gt;getDetails - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/api/suse-manager/api/system.html#apidoc-system-scheduleApplyErrata-loggedInUser-sids-errataIds"target="_blank" rel="noopener"&gt;scheduleApplyErrata - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/api/suse-manager/api/system.html#apidoc-system-getEventDetails-loggedInUser-sid-eid"target="_blank" rel="noopener"&gt;getEventDetails - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Quick Start Rootless SLE OCI Container Registry</title><link>https://blog.kubeantony.com/archive/suse/quick-start-rootless-sle-oci-container-registry/</link><pubDate>Mon, 08 Jul 2024 14:05:30 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/quick-start-rootless-sle-oci-container-registry/</guid><description>
&lt;h2&gt;PreRequest&lt;span class="hx:absolute hx:-mt-20" id="prerequest"&gt;&lt;/span&gt;
&lt;a href="#prerequest" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Podman version: 4.7 以上 (must)&lt;/li&gt;
&lt;li&gt;可以執行 Rootless Podman&lt;/li&gt;
&lt;li&gt;系統需可以上網 Pull Image，或是先準備好 &lt;code&gt;registry.suse.com/suse/registry:latest&lt;/code&gt; 這片 Container Image&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;1. 建立一個永存目錄區&lt;span class="hx:absolute hx:-mt-20" id="1-建立一個永存目錄區"&gt;&lt;/span&gt;
&lt;a href="#1-%e5%bb%ba%e7%ab%8b%e4%b8%80%e5%80%8b%e6%b0%b8%e5%ad%98%e7%9b%ae%e9%8c%84%e5%8d%80" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir /etc/registry &amp;amp;&amp;amp; \
sudo mkdir /var/lib/docker-registry &amp;amp;&amp;amp; \
sudo chown &amp;#34;$(id -u)&amp;#34;:&amp;#34;$(id -g)&amp;#34; /etc/registry /var/lib/docker-registry&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;目錄區的擁有者和群組必須與當前使用者相同。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/etc/registry&lt;/code&gt;， 存放 registry 的設定檔 (&lt;code&gt;config.yml&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/lib/docker-registry&lt;/code&gt;，存放 Container image&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2&gt;2. 設定 Registry&lt;span class="hx:absolute hx:-mt-20" id="2-設定-registry"&gt;&lt;/span&gt;
&lt;a href="#2-%e8%a8%ad%e5%ae%9a-registry" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat &amp;lt;&amp;lt;EOF | sudo tee /etc/registry/config.yml
---
version: 0.1
log:
level: info
storage:
filesystem:
rootdirectory: /var/lib/docker-registry
http:
addr: 0.0.0.0:5000
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;2. 啟動 SLE OCI Container Image Registry&lt;span class="hx:absolute hx:-mt-20" id="2-啟動-sle-oci-container-image-registry"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%95%9f%e5%8b%95-sle-oci-container-image-registry" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ podman run -d -p 5000:5000 \
--uidmap &amp;#34;&amp;#43;499:@$(id -u):1&amp;#34; \
--gidmap &amp;#34;&amp;#43;486:@$(id -g):1&amp;#34; \
-v /etc/registry/config.yml:/etc/registry/config.yml \
-v /var/lib/docker-registry:/var/lib/docker-registry \
--name registry \
registry.suse.com/suse/registry:latest&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. 檢視 Registry 運作狀態&lt;span class="hx:absolute hx:-mt-20" id="3-檢視-registry-運作狀態"&gt;&lt;/span&gt;
&lt;a href="#3-%e6%aa%a2%e8%a6%96-registry-%e9%81%8b%e4%bd%9c%e7%8b%80%e6%85%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ podman ps -a&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
011a050e9087 registry.suse.com/suse/registry:2.8 serve /etc/regist... 6 minutes ago Up 6 minutes 0.0.0.0:5000-&amp;gt;5000/tcp registry&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. 更改 Image Tag&lt;span class="hx:absolute hx:-mt-20" id="4-更改-image-tag"&gt;&lt;/span&gt;
&lt;a href="#4-%e6%9b%b4%e6%94%b9-image-tag" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ podman tag quay.io/hahappyman/alpine 192.168.61.128:5000/alpine&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;5. 測試 Push Container Image&lt;span class="hx:absolute hx:-mt-20" id="5-測試-push-container-image"&gt;&lt;/span&gt;
&lt;a href="#5-%e6%b8%ac%e8%a9%a6-push-container-image" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ podman push --tls-verify=false 192.168.61.128:5000/alpine&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Getting image source signatures
Copying blob b2d5eeeaba3a done |
Copying config 6dbb9cc540 done |
Writing manifest to image destination&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Pacemaker 解析</title><link>https://blog.kubeantony.com/archive/suse/pacemaker-%E8%A7%A3%E6%9E%90/</link><pubDate>Tue, 18 Jun 2024 08:24:48 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/pacemaker-%E8%A7%A3%E6%9E%90/</guid><description>
&lt;h2&gt;1. Introduction&lt;span class="hx:absolute hx:-mt-20" id="1-introduction"&gt;&lt;/span&gt;
&lt;a href="#1-introduction" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1.1. 甚麼是 Pacemaker&lt;span class="hx:absolute hx:-mt-20" id="11-甚麼是-pacemaker"&gt;&lt;/span&gt;
&lt;a href="#11-%e7%94%9a%e9%ba%bc%e6%98%af-pacemaker" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Pacemaker 是一個高可用的 cluster resource manager (叢集資源管理器)，通俗的說法就是一個軟體跑在叢集的每一台 node 上，目的是為了保持所需服務的資料完整性和最小化降低(資源)停機的時間。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;It is maintained by the &lt;a
href="https://www.clusterlabs.org/"target="_blank" rel="noopener"&gt;ClusterLabs&lt;/a&gt; community.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Pacemaker 的核心功能 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;檢測節點級 (node-level) 和服務級 (service-level) 故障並從中恢復&lt;/li&gt;
&lt;li&gt;能夠透過隔離 (fencing) 故障節點來確保資料完整性&lt;/li&gt;
&lt;li&gt;每一個叢集支援 1 台或多台 node&lt;/li&gt;
&lt;li&gt;支援多種 resource interface standards (任何可以編寫腳本的內容都可以 clustered)&lt;/li&gt;
&lt;li&gt;支援 shared storage (不是必須)&lt;/li&gt;
&lt;li&gt;支援幾乎任何 redundancy 的設定 (active/passive, N+1, etc.)&lt;/li&gt;
&lt;li&gt;自動複製設定，可以從任何節點更新&lt;/li&gt;
&lt;li&gt;可以在叢集內指定服務之間的多係，像是 ordering、colocation 和 anti-colocation&lt;/li&gt;
&lt;li&gt;支援高級的 Service 種類，像是 &lt;strong&gt;clones&lt;/strong&gt;(在多個 node 上的服務同時 active)，&lt;strong&gt;promotable clones&lt;/strong&gt;(clones that can run in one of two roles)，和 containerized services&lt;/li&gt;
&lt;li&gt;Unified, scriptable cluster management tools&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;:bulb: &lt;strong&gt;Fencing&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Fencing，也稱為 STONITH (Shoot The Other Node In The Head 的縮寫)，是確保節點不可能運作服務的能力。這是透過 fence devices (隔離設備)來實現的，例如切斷目標電源的智慧電源開關，或切斷目標對本地網路的存取的智慧網路開關。&lt;/p&gt;
&lt;p&gt;Pacemaker 將 fence devices 標示為一種特別的資源。&lt;/p&gt;
&lt;p&gt;如果沒有 fencing，叢集無法從某些故障條件（例如無回應的節點）中安全地恢復。&lt;/p&gt;
&lt;h3&gt;1.1.1. Cluster Architecture&lt;span class="hx:absolute hx:-mt-20" id="111-cluster-architecture"&gt;&lt;/span&gt;
&lt;a href="#111-cluster-architecture" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;在較高的層次上，叢集可以被視為具有以下部分（它們通常一起稱為 &lt;em&gt;cluster stack&lt;/em&gt;）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Resources&lt;/strong&gt;: 這就是叢集存在的原因，服務需要保持高可用性。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Resource agents&lt;/strong&gt;: 這些腳本或作業系統元件可根據一組資源參數啟動、停止和監控資源。它們在 Pacemaker 和託管服務之間提供了統一的介面。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fence agents&lt;/strong&gt;: 這些腳本可根據 target (目標)和 fence device 參數執行節點 fencing 的操作。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cluster membership layer&lt;/strong&gt;: 該元件提供有關叢集的可靠訊息傳遞、成員資格和法定人數資訊。目前，Pacemaker 支援 Corosync 作為該層。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cluster resource manager&lt;/strong&gt;: Pacemaker 是處理叢集中發生的事件並做出反應的大腦。這些事件可能包括節點加入或離開叢集；故障、維護或規劃活動導致的資源事件；以及其他管理作業。為實現所需的可用性，Pacemaker 可啟動和停止資源並 fence 節點。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cluster tools&lt;/strong&gt;: 它們為使用者提供與叢集互動的介面。提供各種命令列和圖形 (GUI) 介面。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;大多數託管服務本身並不具備叢集感知能力。不過，許多流行的開源叢集檔案系統都使用通用的 &lt;em&gt;Distributed Lock Manager&lt;/em&gt;（DLM），它直接使用 Corosync 的訊息傳遞和成員功能，以及 Pacemaker 的 fence 節點功能。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;What is a Distributed Lock Manager?
A Distributed Lock Manager (DLM) is a software component that controls and synchronizes access to shared resources across multiple nodes in a distributed computing system. &lt;strong&gt;It ensures that no two processes access or change shared data simultaneously&lt;/strong&gt;, thereby preventing issues like data corruption. DLMs are widely employed in databases, distributed file systems, and other data management systems.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/rku9r20B0.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;1.1.2. Pacemaker Architecture&lt;span class="hx:absolute hx:-mt-20" id="112-pacemaker-architecture"&gt;&lt;/span&gt;
&lt;a href="#112-pacemaker-architecture" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Pacemaker 本身由多個一起工作 Daemons 組成&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pacemakerd&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pacemaker-attrd&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pacemaker-based&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pacemaker-controld&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pacemaker-execd&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pacemaker-fenced&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pacemaker-schedulerd&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/rkpQw2CHA.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;Pacemaker 的主程序（&lt;code&gt;pacemakerd&lt;/code&gt;）會啟動所有其他背景程序，並在它們意外退出時重新啟動。&lt;/p&gt;
&lt;p&gt;叢集資訊庫（&lt;em&gt;Cluster Information Base&lt;/em&gt;，CIB）是叢集設定檔以及所有節點和資源狀態的 XML 表示形式。 &lt;em&gt;CIB manager&lt;/em&gt;（&lt;code&gt;pacemaker-based&lt;/code&gt;）負責保持整個叢集的 CIB 同步，並處理修改 CIB 的請求。&lt;/p&gt;
&lt;p&gt;&lt;em&gt;attribute manager&lt;/em&gt;（&lt;code&gt;pacemaker-attrd&lt;/code&gt;）維護所有節點的屬性 (attributes) 資料庫，使其在整個叢集中保持同步，並處理修改這些屬性的請求。這些屬性通常記錄在 CIB 中。&lt;/p&gt;
&lt;p&gt;&lt;em&gt;scheduler&lt;/em&gt;（&lt;code&gt;pacemaker-schedulerd&lt;/code&gt;）將 CIB 的快照作為輸入，確定需要採取哪些行動才能實現叢集的理想狀態。&lt;/p&gt;
&lt;p&gt;&lt;em&gt;local executor&lt;/em&gt;（&lt;code&gt;pacemaker-execd&lt;/code&gt;）處理在本機叢集節點上執行 resource agents 程式的請求，並傳回結果。&lt;/p&gt;
&lt;p&gt;&lt;em&gt;fencer&lt;/em&gt;（&lt;code&gt;pacemaker-fenced&lt;/code&gt;）處理 fence 節點的請求。給定一個目標節點後，fencer 會決定哪個叢集節點應執行哪個 fencing device(s)，並呼叫必要的 fencing agents（直接呼叫或透過向其他節點上的 fencer 對節點發出請求），然後傳回結果。&lt;/p&gt;
&lt;p&gt;&lt;em&gt;controller&lt;/em&gt;（&lt;code&gt;pacemaker-controld&lt;/code&gt;）是 Pacemaker 的 coordinator (協調器)，負責維護群集成員的一致視圖並協調所有其他元件。&lt;/p&gt;
&lt;p&gt;Pacemaker 透過選舉其中一個 controller 作為 &lt;em&gt;Designated Controller&lt;/em&gt;（DC）來集中管理叢集決策。如果當選的 DC 程序（或其所在的節點）發生故障，新的 DC 程序會迅速建立。 DC 透過取得 CIB 的目前快照對叢集事件做出回應，並將其回饋給 scheduler，然後要求 executors（直接在本機節點上執行，或透過向其他節點上的 controller 對等節點發出請求）和 fencer 執行任何必要的操作。&lt;/p&gt;
&lt;h3&gt;1.1.3. Node Redundancy Designs&lt;span class="hx:absolute hx:-mt-20" id="113-node-redundancy-designs"&gt;&lt;/span&gt;
&lt;a href="#113-node-redundancy-designs" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Pacemaker 幾乎支援任何 &lt;a
href="https://en.wikipedia.org/wiki/High-availability_cluster#Node_configurations"target="_blank" rel="noopener"&gt;node redundancy configuration&lt;/a&gt;，包含 &lt;em&gt;Active/Active&lt;/em&gt;, &lt;em&gt;Active/Passive&lt;/em&gt;, &lt;em&gt;N+1&lt;/em&gt;, &lt;em&gt;N+M&lt;/em&gt;, &lt;em&gt;N-to-1&lt;/em&gt;, 和 &lt;em&gt;N-to-N&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;在許多情況下，使用 Pacemaker 和 DRBD 的兩個（或更多）節點的 Active/Passive 叢集是一種經濟高效的高可用性解決方案。其中一個節點提供所需的服務，如果它發生故障，另一個節點將接替它。&lt;/p&gt;</description></item><item><title>Install and Setup SLE HAE 15 SP5 Cluster</title><link>https://blog.kubeantony.com/archive/suse/install-and-setup-sle-hae-15-sp5-cluster/</link><pubDate>Mon, 17 Jun 2024 06:44:24 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/install-and-setup-sle-hae-15-sp5-cluster/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會採取 Step by Step 和 ScreenShot 的方式介紹，如何搭建與設定 SUSE Linux Enterprise High Availability Extension 15 SP5 Cluster&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 系統要求&lt;span class="hx:absolute hx:-mt-20" id="1-系統要求"&gt;&lt;/span&gt;
&lt;a href="#1-%e7%b3%bb%e7%b5%b1%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1.1. 硬體要求&lt;span class="hx:absolute hx:-mt-20" id="11-硬體要求"&gt;&lt;/span&gt;
&lt;a href="#11-%e7%a1%ac%e9%ab%94%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;h4&gt;Server&lt;span class="hx:absolute hx:-mt-20" id="server"&gt;&lt;/span&gt;
&lt;a href="#server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;伺服器可以是裸機或虛擬機器，它們不需要完全相同的硬體（記憶體、磁碟空間等），但必須具有相同的架構，不支援跨平台集群。&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;Network&lt;span class="hx:absolute hx:-mt-20" id="network"&gt;&lt;/span&gt;
&lt;a href="#network" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;每個群集節點至少有&lt;strong&gt;兩張網卡&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;網路設備必須支援要用於群集通訊的通訊方式： multicast or unicast。&lt;/li&gt;
&lt;li&gt;網卡應支援 100 Mbit/s 或更高的資料傳輸速率。&lt;/li&gt;
&lt;li&gt;對於支援的群集設置，需要兩個或更多的 communication paths ( 通訊路徑 )，可以透過以下方式實現 :
&lt;ul&gt;
&lt;li&gt;Network Device Bonding（首選）。&lt;/li&gt;
&lt;li&gt;A second communication channel in Corosync.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Node fencing/STONITH&lt;span class="hx:absolute hx:-mt-20" id="node-fencingstonith"&gt;&lt;/span&gt;
&lt;a href="#node-fencingstonith" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;為避免出現 &amp;ldquo;大腦分裂 &amp;ldquo;的情況，集群需要一種 node fencing mechanism ( 節點隔離機制 )。&lt;/p&gt;
&lt;p&gt;在 &amp;ldquo;split-brain ( 分腦 )&amp;ldquo;情況下，叢集節點會被分成兩個或多個互不相識（由於硬體或軟體故障或網路連線被切斷）的群組，隔離機制可隔離相關節點（通常是透過重設或關閉節點電源），這也被稱為 STONITH（&amp;ldquo;向其他節點頭部開槍&amp;rdquo;）。&lt;/p&gt;
&lt;p&gt;節點隔離機制既可以是實體設備（電源開關），也可以是一種類似於 SBD（磁碟 STONITH）的機制，與看門狗相結合。使用 SBD 需要共享儲存空間。&lt;/p&gt;
&lt;p&gt;除非使用 SBD，否則高可用性群集中的每個節點必須至少有一個 STONITH 設備。 我們強烈建議每個節點配備多個 STONITH 設備。&lt;/p&gt;
&lt;p&gt;Important: No Support Without STONITH&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You must have a node fencing mechanism for your cluster.&lt;/li&gt;
&lt;li&gt;The global cluster options &lt;code&gt;stonith-enabled&lt;/code&gt; and &lt;code&gt;startup-fencing&lt;/code&gt; must be set to &lt;code&gt;true&lt;/code&gt;. When you change them, you lose support.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.2. 軟體要求&lt;span class="hx:absolute hx:-mt-20" id="12-軟體要求"&gt;&lt;/span&gt;
&lt;a href="#12-%e8%bb%9f%e9%ab%94%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在叢集中的所有 Node 至少需要以下 modules ( 模組 ) 和 extensions ( 擴充 )：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basesystem Module 15 SP5&lt;/li&gt;
&lt;li&gt;Server Applications Module 15 SP5&lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise High Availability Extension 15 SP5&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;根據在安裝過程中選擇的 system role ( 系統角色 )，預設安裝以下 software patterns：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;h4&gt;HA Node system role&lt;span class="hx:absolute hx:-mt-20" id="ha-node-system-role"&gt;&lt;/span&gt;
&lt;a href="#ha-node-system-role" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;High Availability (sles_ha)
Enhanced Base System (enhanced_base)&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;HA GEO Node system role&lt;span class="hx:absolute hx:-mt-20" id="ha-geo-node-system-role"&gt;&lt;/span&gt;
&lt;a href="#ha-geo-node-system-role" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Geo Clustering for High Availability (ha_geo)
Enhanced Base System (enhanced_base)&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.3. 存儲要求&lt;span class="hx:absolute hx:-mt-20" id="13-存儲要求"&gt;&lt;/span&gt;
&lt;a href="#13-%e5%ad%98%e5%84%b2%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;某些服務需要共享儲存。 如果使用外部 NFS 共享，則所有群集節點必須透過網路能夠存取。&lt;/li&gt;
&lt;li&gt;為使資料具有高可用性，建議叢集使用 shared disk system ( 共用磁碟系統 [儲存區域網路或 SAN] ）。&lt;/li&gt;
&lt;li&gt;如果使用 shared disk subsystem ( 共享磁碟子系統 )，請確保以下幾點：
&lt;ul&gt;
&lt;li&gt;按照製造商的說明正確設定共享磁碟系統並使其正常運作。&lt;/li&gt;
&lt;li&gt;共用磁碟系統中包含的磁碟應配置為使用映像或 RAID，以增加共用磁碟系統的容錯性。&lt;/li&gt;
&lt;li&gt;如果使用 iSCSI 存取共用磁碟系統，請確保已正確設定 iSCSI 啟動程式和目標。&lt;/li&gt;
&lt;li&gt;使用 DRBD* 實作 mirroring RAID 系統（將資料分散到兩台機器）時，請確保只存取 DRBD 提供的設備，而不是 backing ( 後備 ) 設備。 要充分達到高可用性，可以使用與群集其他部分相同的 NICs ( 網卡 )。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;1.4. 其他要求和建議&lt;span class="hx:absolute hx:-mt-20" id="14-其他要求和建議"&gt;&lt;/span&gt;
&lt;a href="#14-%e5%85%b6%e4%bb%96%e8%a6%81%e6%b1%82%e5%92%8c%e5%bb%ba%e8%ad%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;若要實現受支援且有用的高可用性設置，請考慮以下建議：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;h4&gt;cluster nodes 數量&lt;span class="hx:absolute hx:-mt-20" id="cluster-nodes-數量"&gt;&lt;/span&gt;
&lt;a href="#cluster-nodes-%e6%95%b8%e9%87%8f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;對於有兩個以上節點的群集，強烈建議使用&lt;strong&gt;奇數&lt;/strong&gt;個群集節點來達到法定人數。&lt;/li&gt;
&lt;li&gt;普通群集最多可包含 32 個節點。&lt;/li&gt;
&lt;li&gt;使用 &lt;code&gt;pacemaker_remote&lt;/code&gt; 服務，高可用性群集可擴展至包含超出此限制的其他節點。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;時間同步&lt;span class="hx:absolute hx:-mt-20" id="時間同步"&gt;&lt;/span&gt;
&lt;a href="#%e6%99%82%e9%96%93%e5%90%8c%e6%ad%a5" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;群集節點必須同步到叢集外的 NTP Server。&lt;/li&gt;
&lt;li&gt;自 SUSE Linux Enterprise High Availability Extension 15 以來，NTP 的預設實作是 &lt;code&gt;chrony&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Network Interface Card (NIC) names&lt;span class="hx:absolute hx:-mt-20" id="network-interface-card-nic-names"&gt;&lt;/span&gt;
&lt;a href="#network-interface-card-nic-names" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;所有節點上必須相同。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Host name and IP address&lt;span class="hx:absolute hx:-mt-20" id="host-name-and-ip-address"&gt;&lt;/span&gt;
&lt;a href="#host-name-and-ip-address" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;使用靜態 IP 位址。&lt;/li&gt;
&lt;li&gt;只支援私有 IP 位址。&lt;/li&gt;
&lt;li&gt;在 &lt;code&gt;/etc/hosts&lt;/code&gt; 檔案中列出所有叢集節點，並註明其完全合格的主機名稱和簡短主機名稱
&lt;ul&gt;
&lt;li&gt;群集成員必須能透過名稱找到彼此，如果名稱不可用，群集內部通訊就會失敗。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;SSH&lt;span class="hx:absolute hx:-mt-20" id="ssh"&gt;&lt;/span&gt;
&lt;a href="#ssh" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;所有叢集節點必須能夠透過 SSH 互相存取。&lt;/li&gt;
&lt;li&gt;crm report（用於故障排除）和 Hawk2 的歷史記錄資源管理器等工具要求節點之間免密碼 SSH 訪問，否則它們只能從當前節點收集資料。&lt;/li&gt;
&lt;li&gt;如果使用引導腳本設定群集，將自動建立和複製 SSH 金鑰。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;2. 安裝前環境設定&lt;span class="hx:absolute hx:-mt-20" id="2-安裝前環境設定"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%ae%89%e8%a3%9d%e5%89%8d%e7%92%b0%e5%a2%83%e8%a8%ad%e5%ae%9a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. 軟體設定&lt;span class="hx:absolute hx:-mt-20" id="21-軟體設定"&gt;&lt;/span&gt;
&lt;a href="#21-%e8%bb%9f%e9%ab%94%e8%a8%ad%e5%ae%9a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;安裝的 ISO 檔&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;SLE-15-SP5-Full-x86_64-GM-Media1.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;這片 ISO 檔，可以不用註冊碼就能安裝 SLE HAE，如果要訂閱的話，必須在註冊的時候，同時輸入 SLES 15 SP5 和 SLE HAE 的註冊碼，才能訂閱成功。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;
&lt;p&gt;將加入叢集的所有節點上都至少需安裝以下模組和擴充：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basesystem Module 15 SP5&lt;/li&gt;
&lt;li&gt;Server Applications Module 15 SP5&lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise High Availability Extension 15 SP5&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;確認模組和擴充&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper lr&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Repository priorities are without effect. All enabled repositories share the same priority.
# | Alias | Name | Enabled | GPG Check | Refresh
--&amp;#43;-----------------------------------&amp;#43;--------------------------------&amp;#43;---------&amp;#43;-----------&amp;#43;--------
1 | Basesystem-Module_15.5-0 | sle-module-basesystem | Yes | (r ) Yes | No
2 | SLEHA15-SP5_15.5-0 | sle-ha | Yes | (r ) Yes | No
3 | Server-Applications-Module_15.5-0 | sle-module-server-applications | Yes | (r ) Yes | No&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.1. 網路架構&lt;span class="hx:absolute hx:-mt-20" id="21-網路架構"&gt;&lt;/span&gt;
&lt;a href="#21-%e7%b6%b2%e8%b7%af%e6%9e%b6%e6%a7%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;主機名&lt;/th&gt;
&lt;th&gt;心跳網路&lt;/th&gt;
&lt;th&gt;App 網路&lt;/th&gt;
&lt;th&gt;儲存網路&lt;/th&gt;
&lt;th&gt;虛擬 IP 位址&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;sle-ha-1&lt;/td&gt;
&lt;td&gt;10.13.0.31&lt;/td&gt;
&lt;td&gt;192.168.11.171&lt;/td&gt;
&lt;td&gt;10.12.2.11&lt;/td&gt;
&lt;td&gt;192.168.11.170&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;sle-ha-2&lt;/td&gt;
&lt;td&gt;10.13.0.32&lt;/td&gt;
&lt;td&gt;192.168.11.172&lt;/td&gt;
&lt;td&gt;10.12.2.12&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;sle-ha-storage&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;192.168.11.173&lt;/td&gt;
&lt;td&gt;10.12.2.13&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h3&gt;2.1. 設定網路&lt;span class="hx:absolute hx:-mt-20" id="21-設定網路"&gt;&lt;/span&gt;
&lt;a href="#21-%e8%a8%ad%e5%ae%9a%e7%b6%b2%e8%b7%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 lan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;sle-ha-1 網路設定資訊&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## IP info
$ sudo yast2 lan list
id name bootproto
0 eth2 10.13.0.31/24
1 eth0 192.168.11.171/24
2 eth1 10.12.2.11/24
# Route info
$ ip r s
default via 192.168.xx.xx dev eth0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;sle-ha-2 網路設定資訊&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## IP info
$ sudo yast2 lan list
id name bootproto
0 eth2 10.13.0.32/24
1 eth0 192.168.11.172/24
2 eth1 10.12.2.12/24
# Route info
$ ip r s
default via 192.168.xx.xx dev eth0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;sle-ha-storage 網路設定資訊&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## IP info
$ sudo yast2 lan list
id name bootproto
0 eth0 192.168.11.173/24
1 eth1 10.12.2.13/24
# Route info
$ ip r s
default via 192.168.xx.xx dev eth0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.2. 永久禁用 IPv6&lt;span class="hx:absolute hx:-mt-20" id="22-永久禁用-ipv6"&gt;&lt;/span&gt;
&lt;a href="#22-%e6%b0%b8%e4%b9%85%e7%a6%81%e7%94%a8-ipv6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在叢集中的每一台 Node 都要執行&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ echo $&amp;#39;net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1&amp;#39; | sudo tee -a /etc/sysctl.conf&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.3. 編輯 /etc/hosts 檔案&lt;span class="hx:absolute hx:-mt-20" id="23--編輯-etchosts-檔案"&gt;&lt;/span&gt;
&lt;a href="#23--%e7%b7%a8%e8%bc%af-etchosts-%e6%aa%94%e6%a1%88" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在叢集中的每一台 Node 都要執行&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo nano /etc/hosts&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;新增的檔案內容如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;192.168.11.171 sle-ha-1
192.168.11.172 sle-ha-2
192.168.11.173 sle-ha-storage&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.4. 設定 SSH 免密碼&lt;span class="hx:absolute hx:-mt-20" id="24-設定-ssh-免密碼"&gt;&lt;/span&gt;
&lt;a href="#24-%e8%a8%ad%e5%ae%9a-ssh-%e5%85%8d%e5%af%86%e7%a2%bc" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在叢集中的每一台 Node 都要執行&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## 產生金鑰 (如果已經有了，可以跳過這個步驟)
$ ssh-keygen -t rsa -P &amp;#39;&amp;#39;
## 編輯 sshd 設定檔，設定允許透過公鑰認證
$ sudo sed -i &amp;#39;s|#PubkeyAuthentication yes|PubkeyAuthentication yes|g&amp;#39; /etc/ssh/sshd_config
## 重啟 SSHD Service
$ sudo systemctl restart sshd.service
## 在 sle-ha-2 主機 ，將 sle-ha-2 的公鑰複製到 sle-ha-1 主機
$ ssh-copy-id rancher@sle-ha-1
## 在 sle-ha-1 主機 ，將 sle-ha-1 的公鑰複製到 sle-ha-2 主機
$ ssh-copy-id rancher@sle-ha-2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.5. 設定 NTP&lt;span class="hx:absolute hx:-mt-20" id="25-設定-ntp"&gt;&lt;/span&gt;
&lt;a href="#25-%e8%a8%ad%e5%ae%9a-ntp" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在叢集中的每一台 Node 都要執行&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 ntp-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;設定資訊如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Start NTP Daemon:
(x) Now and on Boot
Configuration Source:
Static
Synchronization Servers:
time.google.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.6. 安裝與設定 iSCSI LIO Target Server&lt;span class="hx:absolute hx:-mt-20" id="26-安裝與設定-iscsi-lio-target-server"&gt;&lt;/span&gt;
&lt;a href="#26-%e5%ae%89%e8%a3%9d%e8%88%87%e8%a8%ad%e5%ae%9a-iscsi-lio-target-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;連線至 sle-ha-storage 做以下設定&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;2.6.1. 安裝 iSCSI LIO Target Server&lt;span class="hx:absolute hx:-mt-20" id="261-安裝-iscsi-lio-target-server"&gt;&lt;/span&gt;
&lt;a href="#261-%e5%ae%89%e8%a3%9d-iscsi-lio-target-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y yast2-iscsi-lio-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.6.2. 規劃儲存空間&lt;span class="hx:absolute hx:-mt-20" id="262-規劃儲存空間"&gt;&lt;/span&gt;
&lt;a href="#262-%e8%a6%8f%e5%8a%83%e5%84%b2%e5%ad%98%e7%a9%ba%e9%96%93" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsblk /dev/{sdb,sdc,sdd,sde,sdf}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sdb 8:16 0 1G 0 disk
sdc 8:32 0 1G 0 disk
sdd 8:48 0 1G 0 disk
sde 8:64 0 100G 0 disk
sdf 8:80 0 100G 0 disk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;3 顆 1 GB 的硬碟規劃給 SDB 使用&lt;/li&gt;
&lt;li&gt;2 顆 100 GB 的 Disk 規劃給 Application 使用&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h4&gt;2.6.3. 設定 iSCSI LIO Target Server&lt;span class="hx:absolute hx:-mt-20" id="263-設定-iscsi-lio-target-server"&gt;&lt;/span&gt;
&lt;a href="#263-%e8%a8%ad%e5%ae%9a-iscsi-lio-target-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;啟動 YaST 設定 iSCSI LIO Target S&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 iscsi-lio-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;
&lt;p&gt;切換到 &lt;strong&gt;Service&lt;/strong&gt; 區塊&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;設定開機自動啟動 iSCSI Targets 服務&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;┌Service Configuration─────────────────────────────────────────┐
│Current status: Inactive │
│After writing configuration: │
│Start▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒↓ │
│After reboot: │
│Start on boot▒↓ │
└──────────────────────────────────────────────────────────────┘
[Finish]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;After writing configuration: &lt;strong&gt;&lt;code&gt;Start&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;After reboot: &lt;strong&gt;&lt;code&gt;Start on boot&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;
&lt;p&gt;切換到 &lt;strong&gt;Targets&lt;/strong&gt; 區塊&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;選擇 &lt;strong&gt;Add&lt;/strong&gt;，然後定義給 SDB 用的 iSCSI LIO target group 和 devices:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Target: &lt;code&gt;iqn.2023-11.com.example&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Identifier: &lt;code&gt;sbd-disk1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Portal Group: &lt;code&gt;1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;IP Address: &lt;code&gt;10.12.2.13&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Port Number: &lt;code&gt;3260&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;[x] Bind all IP addresses&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkLuECg4T.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;
&lt;p&gt;新增 Disk&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在 Lun 區塊下點擊 &lt;code&gt;add&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;LUN Path: &lt;code&gt;/dev/sdb&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1-C6BPQT.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;
&lt;p&gt;重複以上兩個步驟，新增 &lt;strong&gt;&lt;code&gt;sdb-disk2&lt;/code&gt;&lt;/strong&gt; 和 &lt;strong&gt;&lt;code&gt;sdb-disk3&lt;/code&gt;&lt;/strong&gt; 這兩個 iSCSI LIO target&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;選擇 &lt;strong&gt;Add&lt;/strong&gt;，然後定義給 APP 用的 iSCSI LIO target group 和 devices:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Target: &lt;code&gt;iqn.2023-11.com.example&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Identifier: &lt;code&gt;app-disk1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Portal Group: &lt;code&gt;1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;IP Address: &lt;code&gt;10.12.2.13&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Port Number: &lt;code&gt;3260&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;[x] Bind all IP addresses&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJFcPRxET.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;
&lt;p&gt;新增 Disk&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在 Lun 區塊下點擊 &lt;code&gt;add&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;LUN Path: &lt;code&gt;/dev/sde&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJXg_Cl4a.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="10"&gt;
&lt;li&gt;
&lt;p&gt;重複以上兩個步驟，新增 &lt;strong&gt;&lt;code&gt;app-disk2&lt;/code&gt;&lt;/strong&gt; 這兩個 iSCSI LIO target&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &lt;strong&gt;&lt;code&gt;Finish&lt;/code&gt;&lt;/strong&gt; 儲存並應用設定&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkoUdRlVa.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;2.7. 安裝與設定 iSCSI initiator&lt;span class="hx:absolute hx:-mt-20" id="27-安裝與設定-iscsi-initiator"&gt;&lt;/span&gt;
&lt;a href="#27-%e5%ae%89%e8%a3%9d%e8%88%87%e8%a8%ad%e5%ae%9a-iscsi-initiator" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;在 sle-ha-1 和 sle-ha-2 做以下設定&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;安裝 iSCSI initiator 套件&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y open-iscsi yast2-iscsi-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;啟動 YaST 設定 開機自動啟動服務&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 iscsi-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;After writing configuration: &lt;code&gt;start&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;After reboot: &lt;code&gt;Start on boot&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rkbATjgET.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;切換到 &lt;strong&gt;&lt;code&gt;Discovered Targets&lt;/code&gt;&lt;/strong&gt; 區塊，並點選 &lt;strong&gt;&lt;code&gt;Discovery&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/By9PRieVa.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;
&lt;p&gt;輸入 IP 資訊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;IP Address: &lt;code&gt;10.12.2.13&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Port: &lt;code&gt;3260&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;點選 Next&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rknCCjg4T.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;與 Targets 連線&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BycuKCeVp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;Startup and Authentication&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;ul&gt;
&lt;li&gt;Startup: &lt;code&gt;automatic&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Next&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryFD13eE6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;
&lt;p&gt;重複以上兩個步驟與剩餘的 4 個 Target 連線&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;確認 Connected Targets&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;確認都沒問題後點擊 OK&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ry-X90e4p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;檢查是否成功將遠端的 Disk 映射過來&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# lsscsi&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[0:0:0:0] disk QEMU QEMU HARDDISK 2.5&amp;#43; /dev/sda
[2:0:0:0] cd/dvd QEMU QEMU DVD-ROM 2.5&amp;#43; /dev/sr0
[3:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdb
[4:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdc
[5:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdd
[6:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sde
[7:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdf&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.7. 安裝與啟動 multipathd Service&lt;span class="hx:absolute hx:-mt-20" id="27-安裝與啟動-multipathd-service"&gt;&lt;/span&gt;
&lt;a href="#27-%e5%ae%89%e8%a3%9d%e8%88%87%e5%95%9f%e5%8b%95-multipathd-service" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper -n in multipath-tools
$ sudo modprobe dm-multipath path
$ sudo systemctl enable multipathd.service --now&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.8. 編輯多路徑設定檔&lt;span class="hx:absolute hx:-mt-20" id="28-編輯多路徑設定檔"&gt;&lt;/span&gt;
&lt;a href="#28-%e7%b7%a8%e8%bc%af%e5%a4%9a%e8%b7%af%e5%be%91%e8%a8%ad%e5%ae%9a%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat &amp;lt;&amp;lt;EOF | sudo tee /etc/multipath.conf
defaults {
user_friendly_names yes
}
devices {
device {
vendor &amp;#34;(LIO-ORG|SUSE)&amp;#34;
product &amp;#34;IBLOCK&amp;#34;
path_grouping_policy &amp;#34;multibus&amp;#34;
}
}
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;新增檔案內容如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;defaults {
user_friendly_names yes
}
devices {
device {
vendor &amp;#34;(LIO-ORG|SUSE)&amp;#34;
product &amp;#34;IBLOCK&amp;#34;
path_grouping_policy &amp;#34;multibus&amp;#34;
}
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.8.1. 重啟服務套用設定檔&lt;span class="hx:absolute hx:-mt-20" id="281-重啟服務套用設定檔"&gt;&lt;/span&gt;
&lt;a href="#281-%e9%87%8d%e5%95%9f%e6%9c%8d%e5%8b%99%e5%a5%97%e7%94%a8%e8%a8%ad%e5%ae%9a%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl restart multipathd.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.9. 查看多路徑狀態，確認多條連結處於 running 狀態&lt;span class="hx:absolute hx:-mt-20" id="29-查看多路徑狀態確認多條連結處於-running-狀態"&gt;&lt;/span&gt;
&lt;a href="#29-%e6%9f%a5%e7%9c%8b%e5%a4%9a%e8%b7%af%e5%be%91%e7%8b%80%e6%85%8b%e7%a2%ba%e8%aa%8d%e5%a4%9a%e6%a2%9d%e9%80%a3%e7%b5%90%e8%99%95%e6%96%bc-running-%e7%8b%80%e6%85%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo multipath -ll&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;pre&gt;
mpathd (360014053be325d33ebb4e7e966df3a4f) dm-0 LIO-ORG,IBLOCK
size=100G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
&lt;font color=red&gt;`- 3:0:0:0 sdb 8:16 active ready running&lt;/font&gt;
mpathe (36001405ee25a89d7a8a4df09f6a3a5f0) dm-1 LIO-ORG,IBLOCK
size=100G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
&lt;font color=red&gt;`- 4:0:0:0 sdc 8:32 active ready running&lt;/font&gt;
mpathf (36001405c2d16cc2065f4004ac0a1c188) dm-2 LIO-ORG,IBLOCK
size=1.0G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
&lt;font color=red&gt;`- 5:0:0:0 sdd 8:48 active ready running&lt;/font&gt;
mpathg (36001405e9b0b982a26f493e97b88ca61) dm-3 LIO-ORG,IBLOCK
size=1.0G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
&lt;font color=red&gt;`- 6:0:0:0 sde 8:64 active ready running&lt;/font&gt;
mpathh (3600140552d947e312e24a4f8a9a0f9b1) dm-4 LIO-ORG,IBLOCK
size=1.0G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
&lt;font color=red&gt;`- 7:0:0:0 sdf 8:80 active ready running&lt;/font&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;h3&gt;2.10. 查看 Disk&lt;span class="hx:absolute hx:-mt-20" id="210-查看-disk"&gt;&lt;/span&gt;
&lt;a href="#210-%e6%9f%a5%e7%9c%8b-disk" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvmdiskscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; /dev/mapper/mpathb [ 100.00 GiB]
/dev/sda1 [ 8.00 MiB]
/dev/mapper/mpathe [ 1.00 GiB]
/dev/sda2 [ 199.99 GiB]
/dev/mapper/mpathf [ 1.00 GiB]
/dev/mapper/mpathd [ 1.00 GiB]
/dev/mapper/mpathc [ 100.00 GiB]
5 disks
2 partitions
0 LVM physical volume whole disks
0 LVM physical volumes&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. 部屬 SUSE Linux Enterprise HAE Cluster&lt;span class="hx:absolute hx:-mt-20" id="3-部屬-suse-linux-enterprise-hae-cluster"&gt;&lt;/span&gt;
&lt;a href="#3-%e9%83%a8%e5%b1%ac-suse-linux-enterprise-hae-cluster" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;3.1. 部屬概述&lt;span class="hx:absolute hx:-mt-20" id="31-部屬概述"&gt;&lt;/span&gt;
&lt;a href="#31-%e9%83%a8%e5%b1%ac%e6%a6%82%e8%bf%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本章節將介紹使用 &lt;code&gt;crm shell&lt;/code&gt; 提供的 bootstrap script ( 引導腳本 ) 設定一個非常基本的雙節點叢集，其中包括將 virtual IP 位址設定為叢集資源，以及在共用儲存上使用 SBD 作為節點隔離機制。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;3.2. 部屬前環境確認&lt;span class="hx:absolute hx:-mt-20" id="32-部屬前環境確認"&gt;&lt;/span&gt;
&lt;a href="#32-%e9%83%a8%e5%b1%ac%e5%89%8d%e7%92%b0%e5%a2%83%e7%a2%ba%e8%aa%8d" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 設定好 NTP&lt;/li&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 已分配好 3 塊 SBD 硬碟&lt;/li&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 具有系統管理員權限的使用者帳號及密碼&lt;/li&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 叢集 Init 之前必須啟動 Watchdog&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 開始部屬第一台節點&lt;span class="hx:absolute hx:-mt-20" id="33-開始部屬第一台節點"&gt;&lt;/span&gt;
&lt;a href="#33-%e9%96%8b%e5%a7%8b%e9%83%a8%e5%b1%ac%e7%ac%ac%e4%b8%80%e5%8f%b0%e7%af%80%e9%bb%9e" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;安裝 High Availability 套件&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper install -t pattern ha_sles&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;每一台 Node 都要安裝&lt;/li&gt;
&lt;li&gt;設定和管理群集的 packages 包含在 High Availability 的 pattern 中，此 pattern 僅在安裝 SUSE Linux Enterprise High Availability Extension 後可用。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;為 SBD 啟用 softdog watchdog&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;2.1. 啟用 softdog watchdog：&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## 啟用 softdog 檢查包
$ echo softdog | sudo tee /etc/modules-load.d/watchdog.conf
$ sudo systemctl restart systemd-modules-load
$ echo &amp;#34;modprobe softdog&amp;#34; | sudo tee -a /etc/init.d/boot.local
$ sudo modprobe softdog&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;2.2. 測試 softdog 模組是否正確載入：&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsmod | grep dog&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;softdog 16384 0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;2.3. 確認 softdog Device 是否可用且工作：&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo ls -l /dev/watchdog* &amp;amp;&amp;amp; sudo sbd query-watchdog&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;crw------- 1 root root 10, 130 Nov 15 09:51 /dev/watchdog
crw------- 1 root root 247, 0 Nov 15 09:51 /dev/watchdog0
Discovered 2 watchdog devices:
[1] /dev/watchdog
Identity: Software Watchdog
Driver: softdog
CAUTION: Not recommended for use with sbd.
[2] /dev/watchdog0
Identity: Software Watchdog
Driver: softdog
CAUTION: Not recommended for use with sbd.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;2.4. 確認 softdog device 是否運作 :&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sbd -w /dev/watchdog test-watchdog &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;WARNING: This operation is expected to force-reboot this system
without following any shutdown procedures.
Proceed? [NO/Proceed]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;輸入 : &lt;code&gt;Proceed&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Initializing /dev/watchdog with a reset countdown of 5 seconds ...
NOTICE: The watchdog device is expected to reset the system
in 5 seconds. If system remains active beyond that time,
watchdog may not be functional.
Reset countdown ... 5 seconds
Reset countdown ... 4 seconds
Reset countdown ... 3 seconds
Reset countdown ... 2 seconds
System expected to reset any moment ...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認 5 秒倒數後，系統會直接被重新開機。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;初始化一個新的 HA Cluaster&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm cluster init --name topgun -u -i eth2 -M -S&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--name&lt;/code&gt;，設定叢集名稱&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u&lt;/code&gt;，設定 corosync 使用單播 (udpu) 進行通信&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-i&lt;/code&gt;，指定心跳網路使用的網卡&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-M&lt;/code&gt;，使用第二條心跳線設定 corosync&lt;/li&gt;
&lt;li&gt;如果需要在 Cluster 通訊中使用 multicast 而不是 unicast（預設），請使用選項 &lt;code&gt;--multicast&lt;/code&gt; (or &lt;code&gt;-U&lt;/code&gt;)。&lt;/li&gt;
&lt;li&gt;腳本會檢查 NTP 設定和硬體看門狗服務。如果需要，它會產生用於 SSH 存取和 Csync2 同步的 SSH 公鑰和私鑰，並啟動相應服務。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Loading &amp;#34;default&amp;#34; profile from /etc/crm/profiles.yml
INFO: SSH key for root does not exist, hence generate it now
INFO: The user &amp;#39;hacluster&amp;#39; will have the login shell configuration changed to /bin/bash
Continue (y/n)? y
INFO: SSH key for hacluster does not exist, hence generate it now
INFO: Configuring csync2
INFO: Starting csync2.socket service on sle-ha-1
INFO: BEGIN csync2 checking files
INFO: END csync2 checking files
INFO: Configure Corosync (unicast):
This will configure the cluster messaging layer. You will need
to specify a network address over which to communicate (default
is eth2&amp;#39;s network, but you can use the network address of any
active interface).
Address for ring0 [10.13.0.31]
Port for ring0 [5405]
Add another heartbeat line (y/n)? y
Address for ring1 [192.168.11.171]
Port for ring1 [5407]
WARNING: Diskless SBD requires cluster with three or more nodes. If you want to use diskless SBD for 2-node cluster, should be combined with QDevice.
INFO: Configuring diskless SBD
INFO: Hawk cluster interface is now running. To see cluster status, open:
INFO: https://10.13.0.31:7630/
INFO: Log in with username &amp;#39;hacluster&amp;#39;, password &amp;#39;linux&amp;#39;
WARNING: You should change the hacluster password to something more secure!
INFO: BEGIN Waiting for cluster
............
INFO: END Waiting for cluster
INFO: Loading initial cluster configuration
INFO: Configure Administration IP Address:
Optionally configure an administration virtual IP
address. The purpose of this IP address is to
provide a single IP that can be used to interact
with the cluster, rather than using the IP address
of any specific cluster node.
Do you wish to configure a virtual IP address (y/n)? y
Virtual IP []192.168.11.170
INFO: BEGIN Configuring virtual IP (192.168.11.170)
.
INFO: END Configuring virtual IP (192.168.11.170)
INFO: Configure Qdevice/Qnetd:
QDevice participates in quorum decisions. With the assistance of
a third-party arbitrator Qnetd, it provides votes so that a cluster
is able to sustain more node failures than standard quorum rules
allow. It is recommended for clusters with an even number of nodes
and highly recommended for 2 node clusters.
Do you want to configure QDevice (y/n)? n&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;檢查叢集狀態&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm status&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Status of pacemakerd: &amp;#39;Pacemaker is running&amp;#39; (last updated 2023-11-17 09:41:03 &amp;#43;08:00)
Cluster Summary:
* Stack: corosync
* Current DC: sle-ha-1 (version 2.1.5&amp;#43;20221208.a3f44794f-150500.4.9-2.1.5&amp;#43;20221208.a3f44794f) - partition with quorum
* Last updated: Fri Nov 17 09:41:04 2023
* Last change: Fri Nov 17 09:40:30 2023 by root via cibadmin on sle-ha-1
* 1 node configured
* 1 resource instance configured
Node List:
* Online: [ sle-ha-1 ]
Full List of Resources:
* admin-ip (ocf::heartbeat:IPaddr2): Started sle-ha-1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;手動設定 SBD 前的要求&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;儲存隔離機制最多可使用三個 SBD 設備。使用一至三個設備時，共用儲存必須可從所有節點存取。&lt;/li&gt;
&lt;li&gt;一個 SBD 設備可以在不同的集群之間共用，只要共用設備的節點不超過 255 個即可。&lt;/li&gt;
&lt;li&gt;對於有兩個以上節點的群集，也可以在無磁碟 ( &lt;em&gt;diskless&lt;/em&gt; ) 模式下使用 SBD。&lt;/li&gt;
&lt;li&gt;在使用 bootstrap script 設定 SBD 之前，必須在每個叢集節點上啟用 watchdog。&lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise Server 隨附的幾個核心模組提供了特定於硬體的 watchdog ( 看門狗 ) 驅動程式，High Availability Extension 核心模組使用 SBD 背景程序作為 &amp;quot; feeds ( 餵食 )&amp;rdquo; 看門狗的軟體元件。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;strong&gt;重要：Softdog 限制&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;softdog 驅動程式假定至少有一個 CPU 仍在運作。 如果所有 CPU 都卡死，softdog 驅動程式中重新啟動系統的程式碼將永遠無法執行。相較之下，hardware watchdogs 即使在所有 CPU 都卡死的情況下也能繼續工作。&lt;/p&gt;
&lt;p&gt;在 production 環境中使用叢集之前，我們強烈建議使用最適合您硬體的硬體模組來取代 softdog 模組。&lt;/p&gt;
&lt;p&gt;不過，如果沒有與硬體相符的看門狗，也可以將 softdog 用作 kernel watchdog 模組。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;初始化 SBD DEVICES&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;6.1. 決定將以下 Block Devices 用於 SBD&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/dev/mapper/mpathd&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/dev/mapper/mpathe&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/dev/mapper/mpathf&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;6.2. 使用以下命令初始化 SBD DEVICES&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sbd -d /dev/mapper/mpathd \
-d /dev/mapper/mpathe \
-d /dev/mapper/mpathf \
-4 60 -1 30 create&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-4&lt;/code&gt; 參數，用於指定 &lt;code&gt;msgwait&lt;/code&gt; 逾時幾秒。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-1&lt;/code&gt; 參數，用於指定 &lt;code&gt;watchdog&lt;/code&gt; 逾時幾秒，最小值是 15 秒。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;6.3. 備份 sbd 設定檔&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo cp /etc/sysconfig/sbd /etc/sysconfig/sbd.bak&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;6.4. 編輯 SBD 設定檔&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sed -i &amp;#39;9i SBD_DEVICE=&amp;#34;/dev/mapper/mpathd;/dev/mapper/mpathe;/dev/mapper/mpathf&amp;#34;&amp;#39; /etc/sysconfig/sbd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;6.5. ENABLING SBD 服務&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl enable sbd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;6.6. 重啟 Cluster&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm cluster restart&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;6.7. 確認 SBD 程序已啟動&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ps -eaf | grep sbd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;pre&gt;
root 7737 1 0 09:49 ? 00:00:00 sbd: inquisitor
root 7739 7737 0 09:49 ? 00:00:00 &lt;font color=red&gt;sbd: watcher: /dev/mapper/mpathd - slot: 0 - uuid: 8fe16007-8fcc-45d6-867f-2a1fd24d5e4b&lt;/font&gt;
root 7740 7737 0 09:49 ? 00:00:00 &lt;font color=red&gt;sbd: watcher: /dev/mapper/mpathe - slot: 0 - uuid: 32929898-fa8d-45b5-8030-b406002d5cf4&lt;/font&gt;
root 7741 7737 0 09:49 ? 00:00:00 &lt;font color=red&gt;sbd: watcher: /dev/mapper/mpathf - slot: 0 - uuid: 682f03ee-cf7d-4378-b0ca-f293b72efb20&lt;/font&gt;
root 7742 7737 0 09:49 ? 00:00:00 sbd: watcher: Pacemaker
root 7743 7737 0 09:49 ? 00:00:00 sbd: watcher: Cluster
rancher 7765 4523 0 09:50 pts/0 00:00:00 grep --color=auto sbd
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.4. 開始部屬第二台節點&lt;span class="hx:absolute hx:-mt-20" id="34-開始部屬第二台節點"&gt;&lt;/span&gt;
&lt;a href="#34-%e9%96%8b%e5%a7%8b%e9%83%a8%e5%b1%ac%e7%ac%ac%e4%ba%8c%e5%8f%b0%e7%af%80%e9%bb%9e" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;安裝 High Availability 套件&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper install -t pattern ha_sles&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;每一台 Node 都要安裝&lt;/li&gt;
&lt;li&gt;設定和管理群集的 packages 包含在 High Availability 的 pattern 中，此 pattern 僅在安裝 SUSE Linux Enterprise High Availability Extension 後可用。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;為 SBD 啟用 softdog watchdog&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;2.1. 啟用 softdog watchdog：&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## 啟用 softdog 檢查包
$ echo softdog | sudo tee /etc/modules-load.d/watchdog.conf
$ sudo systemctl restart systemd-modules-load
$ echo &amp;#34;modprobe softdog&amp;#34; | sudo tee -a /etc/init.d/boot.local
$ sudo modprobe softdog&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;2.2. 測試 softdog 模組是否正確載入：&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsmod | grep dog&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;softdog 16384 0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;2.3. 確認 softdog Device 是否可用且工作：&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo ls -l /dev/watchdog* &amp;amp;&amp;amp; sudo sbd query-watchdog&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;crw------- 1 root root 10, 130 Nov 15 09:51 /dev/watchdog
crw------- 1 root root 247, 0 Nov 15 09:51 /dev/watchdog0
Discovered 2 watchdog devices:
[1] /dev/watchdog
Identity: Software Watchdog
Driver: softdog
CAUTION: Not recommended for use with sbd.
[2] /dev/watchdog0
Identity: Software Watchdog
Driver: softdog
CAUTION: Not recommended for use with sbd.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;2.4. 確認 softdog device 是否運作 :&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sbd -w /dev/watchdog test-watchdog &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;WARNING: This operation is expected to force-reboot this system
without following any shutdown procedures.
Proceed? [NO/Proceed]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;輸入 : &lt;code&gt;Proceed&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Initializing /dev/watchdog with a reset countdown of 5 seconds ...
NOTICE: The watchdog device is expected to reset the system
in 5 seconds. If system remains active beyond that time,
watchdog may not be functional.
Reset countdown ... 5 seconds
Reset countdown ... 4 seconds
Reset countdown ... 3 seconds
Reset countdown ... 2 seconds
System expected to reset any moment ...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認 5 秒倒數後，系統會直接被重新開機。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;確認給 SDB 用的 Disk 資訊與第一台 Node 相同&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvmdiskscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;pre&gt;
/dev/mapper/mpathb [ 100.00 GiB]
/dev/sda1 [ 8.00 MiB]
&lt;font color=red&gt;/dev/mapper/mpathe [ 1.00 GiB]&lt;/font&gt;
/dev/sda2 [ 199.99 GiB]
&lt;font color=red&gt;/dev/mapper/mpathf [ 1.00 GiB]&lt;/font&gt;
&lt;font color=red&gt;/dev/mapper/mpathd [ 1.00 GiB]&lt;/font&gt;
/dev/mapper/mpathc [ 100.00 GiB]
5 disks
2 partitions
0 LVM physical volume whole disks
0 LVM physical volumes
&lt;/pre&gt;
&lt;p&gt;重要 : 如果給 SDB 使用的這三顆硬碟，名稱與第一台節點不同，再將第二台節點加入叢集時會失敗。&lt;/p&gt;
&lt;p&gt;3.1. 在第一台 Node 匯出 multipath 當前的設定檔&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo multipath -T&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
multipaths {
multipath {
wwid &amp;#34;360014053be325d33ebb4e7e966df3a4f&amp;#34;
# alias &amp;#34;mpathb&amp;#34;
}
multipath {
wwid &amp;#34;36001405ee25a89d7a8a4df09f6a3a5f0&amp;#34;
# alias &amp;#34;mpathc&amp;#34;
}
multipath {
wwid &amp;#34;36001405c2d16cc2065f4004ac0a1c188&amp;#34;
# alias &amp;#34;mpathd&amp;#34;
}
multipath {
wwid &amp;#34;36001405e9b0b982a26f493e97b88ca61&amp;#34;
# alias &amp;#34;mpathe&amp;#34;
}
multipath {
wwid &amp;#34;3600140552d947e312e24a4f8a9a0f9b1&amp;#34;
# alias &amp;#34;mpathf&amp;#34;
}
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;3.2. 修改第二台節點 multipath 的設定檔&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo nano /etc/multipath.conf&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;將上個步驟在設定檔中得到的 multipath 區塊複製到 第二台節點 multipath 的設定檔，並把 &lt;code&gt;alias&lt;/code&gt; 前面的 &lt;code&gt;# &lt;/code&gt; 刪除&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
multipaths {
multipath {
wwid &amp;#34;360014053be325d33ebb4e7e966df3a4f&amp;#34;
alias &amp;#34;mpathb&amp;#34;
}
multipath {
wwid &amp;#34;36001405ee25a89d7a8a4df09f6a3a5f0&amp;#34;
alias &amp;#34;mpathc&amp;#34;
}
multipath {
wwid &amp;#34;36001405c2d16cc2065f4004ac0a1c188&amp;#34;
alias &amp;#34;mpathd&amp;#34;
}
multipath {
wwid &amp;#34;36001405e9b0b982a26f493e97b88ca61&amp;#34;
alias &amp;#34;mpathe&amp;#34;
}
multipath {
wwid &amp;#34;3600140552d947e312e24a4f8a9a0f9b1&amp;#34;
alias &amp;#34;mpathf&amp;#34;
}
} &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;3.3. 重啟 multipath 服務&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl restart multipathd.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;3.4. 檢查是否符合預期&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvmdiskscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; /dev/mapper/mpathd [ 1.00 GiB]
/dev/sda1 [ 8.00 MiB]
/dev/mapper/mpathe [ 1.00 GiB]
/dev/sda2 [ 199.99 GiB]
/dev/mapper/mpathf [ 1.00 GiB]
/dev/mapper/mpathb [ 100.00 GiB]
/dev/mapper/mpathc [ 100.00 GiB]
5 disks
2 partitions
0 LVM physical volume whole disks
0 LVM physical volumes&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;ol start="4"&gt;
&lt;li&gt;將第二台節點加入叢集&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm cluster join -i eth2 -i eth0 -c rancher@sle-ha-1 -y&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-i&lt;/code&gt;，指定網卡&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-c&lt;/code&gt;，指定登入現有群集節點的使用者和主機&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-y&lt;/code&gt;，自動回答 &lt;code&gt;yes&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Configuring csync2
INFO: Starting csync2.socket service
INFO: BEGIN csync2 syncing files in cluster
INFO: END csync2 syncing files in cluster
INFO: Merging known_hosts
INFO: BEGIN Probing for new partitions
INFO: END Probing for new partitions
WARNING: IP 192.168.11.172,10.13.0.32 was already configured
INFO: Got SBD configuration
INFO: Hawk cluster interface is now running. To see cluster status, open:
INFO: https://10.13.0.32:7630/
INFO: Log in with username &amp;#39;hacluster&amp;#39;, password &amp;#39;linux&amp;#39;
WARNING: You should change the hacluster password to something more secure!
INFO: BEGIN Waiting for cluster
..
INFO: END Waiting for cluster
INFO: BEGIN Adjusting sbd related timeout values
WARNING: &amp;#34;stonith-timeout&amp;#34; in crm_config is set to 119, it was 60
INFO: END Adjusting sbd related timeout values
INFO: BEGIN Reloading cluster configuration
INFO: END Reloading cluster configuration
INFO: Done (log saved to /var/log/crmsh/crmsh.log)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;檢查叢集狀態&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm status&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Status of pacemakerd: &amp;#39;Pacemaker is running&amp;#39; (last updated 2023-11-17 11:45:37 &amp;#43;08:00)
Cluster Summary:
* Stack: corosync
* Current DC: sle-ha-1 (version 2.1.5&amp;#43;20221208.a3f44794f-150500.4.9-2.1.5&amp;#43;20221208.a3f44794f) - partition with quorum
* Last updated: Fri Nov 17 11:45:38 2023
* Last change: Fri Nov 17 11:08:36 2023 by root via cibadmin on sle-ha-2
* 2 nodes configured
* 1 resource instance configured
Node List:
* Online: [ sle-ha-1 sle-ha-2 ]
Full List of Resources:
* admin-ip (ocf::heartbeat:IPaddr2): Started sle-ha-1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;登入 HAWK2 網站&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;URL : &lt;code&gt;https://10.13.0.31:7630/login&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;兩台主機的 7630 Port 都能登入&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;帳號 : &lt;code&gt;hacluster&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;密碼 : &lt;code&gt;linux&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Bya67D446.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.5. HA 叢集基礎設定&lt;span class="hx:absolute hx:-mt-20" id="35-ha-叢集基礎設定"&gt;&lt;/span&gt;
&lt;a href="#35-ha-%e5%8f%a2%e9%9b%86%e5%9f%ba%e7%a4%8e%e8%a8%ad%e5%ae%9a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;檢查是否啟用 fencing&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure show type:property&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;允許 STONITH 設備 射擊 故障的節點和擁有無法停止的資源的節點。&lt;/li&gt;
&lt;li&gt;STONITH is stands for &amp;ldquo;Shoot The Other Node in the Head&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;pre&gt;
property cib-bootstrap-options: \
have-watchdog=true \
dc-version="2.1.5+20221208.a3f44794f-150500.4.9-2.1.5+20221208.a3f44794f" \
cluster-infrastructure=corosync \
cluster-name=topgun \
&lt;font color=red&gt;stonith-enabled=true&lt;/font&gt; \
stonith-watchdog-timeout=-1 \
stonith-timeout=119
&lt;/pre&gt;
&lt;blockquote&gt;
&lt;p&gt;如果發現 &lt;code&gt;stonith-enabled&lt;/code&gt; 的值等於 &lt;code&gt;false&lt;/code&gt;，那麼請執行以下命令 :
&lt;code&gt;$ sudo crm configure property stonith-enabled=true&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;STONITH 這個動作由 &lt;code&gt;pacemaker-fenced&lt;/code&gt; 這個背景程序執行，這個程序會在叢集中的每一台 Node 的背景中運作，在 DC 節點的 &lt;code&gt;pacemaker-fenced&lt;/code&gt; 負責接收來自 &lt;code&gt;pacemaker-controld&lt;/code&gt; 的 fencing 請求，由 DC 節點的 &lt;code&gt;pacemaker-fenced&lt;/code&gt; 和其他節點的 pacemaker-fenced 程式來執行所需的 fencing 操作。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;將 SBD 設定為 Cluster Resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure primitive sbd stonith:external/sbd params sbd_device=&amp;#34;/dev/mapper/mpathe;/dev/mapper/mpathf;/dev/mapper/mpathd&amp;#34; op start timeout=20 interval=0 op stop timeout=15 interval=0 op monitor timeout=20&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;在 &lt;code&gt;/etc/sysconfig/sbd&lt;/code&gt; 中有設定 &lt;code&gt;SBD_STARTMODE=always&lt;/code&gt; 的話，代表在叢集中的節點被 Fence 之後，會在主機重開機後，自動 Join 回叢集中; 如果把 &lt;code&gt;SBD_STARTMODE&lt;/code&gt; 的值設為 &lt;code&gt;clean&lt;/code&gt; 的話，主機重開機後，就&amp;quot;不會&amp;quot;自動 Join 回叢集中。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;主機被 Fence 之後，手動 Join 回叢集的步驟如下 :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;sudo sbd -d /dev/sda list&lt;/code&gt;，檢查哪一台 Node 是 &lt;code&gt;reset&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;把 &lt;code&gt;reset&lt;/code&gt; 的 node 改回 clear，&lt;code&gt;sudo sbd -d /dev/sda message &amp;lt;node name&amp;gt; clear&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;啟動 &lt;code&gt;pacemaker&lt;/code&gt; 服務，&lt;code&gt;sudo systemctl start pacemaker.service&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;檢查叢集狀態 &lt;code&gt;sudo crm status&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h2&gt;4. 參考資料&lt;span class="hx:absolute hx:-mt-20" id="4-參考資料"&gt;&lt;/span&gt;
&lt;a href="#4-%e5%8f%83%e8%80%83%e8%b3%87%e6%96%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/sle-ha/15-SP5/html/SLE-HA-all/article-installation.html"target="_blank" rel="noopener"&gt;Installation and Setup Quick Start - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/sle-ha/15-SP5/html/SLE-HA-all/cha-ha-storage-protect.html#sec-ha-storage-protect-fencing-setup"target="_blank" rel="noopener"&gt;Storage protection and SBD - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/sles/15-SP1/html/SLES-all/cha-multipath.html#sec-multipath-config"target="_blank" rel="noopener"&gt;Managing Multipath I/O for Devices - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SLES Troubleshooting</title><link>https://blog.kubeantony.com/archive/suse/sles-troubleshooting/</link><pubDate>Thu, 30 May 2024 01:42:32 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/sles-troubleshooting/</guid><description>
&lt;h2&gt;execute zypper with lib error&lt;span class="hx:absolute hx:-mt-20" id="execute-zypper-with-lib-error"&gt;&lt;/span&gt;
&lt;a href="#execute-zypper-with-lib-error" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;錯誤訊息&lt;span class="hx:absolute hx:-mt-20" id="錯誤訊息"&gt;&lt;/span&gt;
&lt;a href="#%e9%8c%af%e8%aa%a4%e8%a8%8a%e6%81%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;/usr/bin/zypper: /usr/local/lib64/libcrypto.so.1.0.0: no version information available (required by /usr/lib64/libcurl.so.4)
/usr/bin/zypper: /usr/local/lib64/libssl.so.1.0.0: no version information available (required by /usr/lib64/libcurl.so.4)
/usr/bin/zypper: /usr/local/lib64/libcrypto.so.1.0.0: no version information available (required by /usr/lib64/libssh.so.4)
/usr/bin/zypper: /usr/local/lib64/libssl.so.1.0.0: no version information available (required by /usr/lib64/libldap-2.4.so.2)
/usr/bin/zypper: /usr/local/lib64/libcrypto.so.1.0.0: no version information available (required by /usr/lib64/libldap-2.4.so.2)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;解決辦法&lt;span class="hx:absolute hx:-mt-20" id="解決辦法"&gt;&lt;/span&gt;
&lt;a href="#%e8%a7%a3%e6%b1%ba%e8%be%a6%e6%b3%95" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 將錯誤路徑的相依檔移到別的目錄區
$ mv /usr/local/lib64/libssl* /tmp
$ mv /usr/local/lib64/libcrypto* /tmp
# 更新 zypper 命令需要的系統相依檔的位置，讓它重新連結到對的路徑。
$ ldconfig /usr/bin/zypper&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Root Cause&lt;span class="hx:absolute hx:-mt-20" id="root-cause"&gt;&lt;/span&gt;
&lt;a href="#root-cause" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;這個問題是由於 zypper 的相依檔案存取位置錯誤導致，預設 &lt;code&gt;libcrypto&lt;/code&gt; 和 &lt;code&gt;libssl&lt;/code&gt; 在 &lt;code&gt;/lib64&lt;/code&gt; 目錄，而這台主機是在 &lt;code&gt;/usr/local/lib64&lt;/code&gt; 目錄，將 &lt;code&gt;/usr/local/lib64&lt;/code&gt; 裡的 &lt;code&gt;libcrypto&lt;/code&gt; 和 &lt;code&gt;libssl&lt;/code&gt; 相關檔案移走後執行 &lt;code&gt;ldconfig&lt;/code&gt;，系統恢復正常。&lt;/p&gt;</description></item><item><title>Installing multiple kernel versions on SLES 15</title><link>https://blog.kubeantony.com/archive/suse/installing-multiple-kernel-versions-on-sles-15/</link><pubDate>Tue, 28 May 2024 09:21:32 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/installing-multiple-kernel-versions-on-sles-15/</guid><description>
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;SUSE Linux Enterprise Server 支援同時安裝多個 Kernel 版本。安裝第二個 Kernel 時，會自動建立啟動項目和 initrd，因此無需進一步手動設定。重新啟動電腦時，新加入的核心可作為附加啟動參數。&lt;/p&gt;
&lt;p&gt;在 SLES 12 以後的版本，預設都有啟用安裝多版本的 Kernel 軟體套件。&lt;/p&gt;
&lt;h2&gt;1. Enabling and configuring multiversion support&lt;span class="hx:absolute hx:-mt-20" id="1-enabling-and-configuring-multiversion-support"&gt;&lt;/span&gt;
&lt;a href="#1-enabling-and-configuring-multiversion-support" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1.1. 檢查設定&lt;span class="hx:absolute hx:-mt-20" id="11-檢查設定"&gt;&lt;/span&gt;
&lt;a href="#11-%e6%aa%a2%e6%9f%a5%e8%a8%ad%e5%ae%9a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo cat /etc/zypp/zypp.conf | grep &amp;#34;^multi&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行結果如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;multiversion = provides:multiversion(kernel)
multiversion.kernels = latest,latest-1,running&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;multiversion = provides:multiversion(kernel)&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;這行的開頭沒有註解，代表作業系統在升級 Kernel 時會保留多版本的 Kernel。&lt;/li&gt;
&lt;li&gt;如果把這行註解掉，再升級 Kernel 的時候，就會把舊的 Kernel 刪除。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;multiversion.kernels = latest,latest-1,running&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;保留最後兩個 Kernel 版本和目前正在運行的 Kernel。(在大部分的情況下就是只保留前一版的 Kernel)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;latest&lt;/code&gt; : keep the kernel with the highest version number&lt;/li&gt;
&lt;li&gt;&lt;code&gt;running&lt;/code&gt; : keep the running kernel
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;latest&lt;/code&gt; 和 &lt;code&gt;running&lt;/code&gt; 的版本基本上會是一樣的。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;latest-N&lt;/code&gt; : keep the kernel with the Nth highest version number&lt;/li&gt;
&lt;li&gt;如果把這行註解掉，但上面那行有設定，代表所有的 Kernel 版本都會被保留。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2&gt;2. 設定保留要保留前三版的 Kernel&lt;span class="hx:absolute hx:-mt-20" id="2-設定保留要保留前三版的-kernel"&gt;&lt;/span&gt;
&lt;a href="#2-%e8%a8%ad%e5%ae%9a%e4%bf%9d%e7%95%99%e8%a6%81%e4%bf%9d%e7%95%99%e5%89%8d%e4%b8%89%e7%89%88%e7%9a%84-kernel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo nano /etc/zypp/zypp.conf&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;要更改的設定如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## 新增 latest-2, latest-3
multiversion.kernels = latest,latest-1,latest-2,latest-3,running&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. 實測升級 Kernel 版本並保留 3 份舊版本的 Kernel&lt;span class="hx:absolute hx:-mt-20" id="3-實測升級-kernel-版本並保留-3-份舊版本的-kernel"&gt;&lt;/span&gt;
&lt;a href="#3-%e5%af%a6%e6%b8%ac%e5%8d%87%e7%b4%9a-kernel-%e7%89%88%e6%9c%ac%e4%b8%a6%e4%bf%9d%e7%95%99-3-%e4%bb%bd%e8%88%8a%e7%89%88%e6%9c%ac%e7%9a%84-kernel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;3.1. 檢查有哪些可升級的 Kernel&lt;span class="hx:absolute hx:-mt-20" id="31-檢查有哪些可升級的-kernel"&gt;&lt;/span&gt;
&lt;a href="#31-%e6%aa%a2%e6%9f%a5%e6%9c%89%e5%93%aa%e4%ba%9b%e5%8f%af%e5%8d%87%e7%b4%9a%e7%9a%84-kernel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 檢查當前 Kernel 版本
$ uname -r
5.3.18-57-default
# 2. 查看可升級的 Kernel 版本
$ sudo zypper se -s &amp;#39;kernel-default&amp;#39; 2&amp;gt; /dev/null | cut -d &amp;#34;|&amp;#34; -f 2,4
...
Loading repository data...
Reading installed packages...
Name | Version
---&amp;#43;----------------------&amp;#43;------------&amp;#43;
kernel-default | 5.3.18-150300.59.161.1
kernel-default | 5.3.18-150300.59.158.1
kernel-default | 5.3.18-150300.59.153.2
kernel-default | 5.3.18-150300.59.150.1
kernel-default | 5.3.18-150300.59.147.2
kernel-default | 5.3.18-150300.59.144.1
kernel-default | 5.3.18-150300.59.141.2
kernel-default | 5.3.18-150300.59.138.1
kernel-default | 5.3.18-150300.59.133.1
...
$ ls /boot | grep 57
config-5.3.18-57-default
initrd-5.3.18-57-default
initrd-5.3.18-57-default-kdump
symvers-5.3.18-57-default.gz
sysctl.conf-5.3.18-57-default
System.map-5.3.18-57-default
vmlinux-5.3.18-57-default.gz
vmlinuz-5.3.18-57-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.2. 升級 Kernel 到指定版本&lt;span class="hx:absolute hx:-mt-20" id="32-升級-kernel-到指定版本"&gt;&lt;/span&gt;
&lt;a href="#32-%e5%8d%87%e7%b4%9a-kernel-%e5%88%b0%e6%8c%87%e5%ae%9a%e7%89%88%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 安裝 5.3.18-150300.59.49.1 版本的 Kernel
$ sudo zypper in kernel-default-5.3.18-150300.59.49.1
# 2. 重新開機
$ sudo init 6
# 3. 檢查 Kernel 版本
$ uname -r
5.3.18-150300.59.49-default
# 4. 檢查是否有保留上一版的 Kernel
$ ls /boot/ | grep 57
config-5.3.18-57-default
initrd-5.3.18-57-default
initrd-5.3.18-57-default-kdump
symvers-5.3.18-57-default.gz
sysctl.conf-5.3.18-57-default
System.map-5.3.18-57-default
vmlinux-5.3.18-57-default.gz
vmlinuz-5.3.18-57-default
$ sudo cat /boot/grub2/grub.cfg | grep 57
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-57-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-57-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-57-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-57-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-57-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-57-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-57-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-57-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-57-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-57-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 第二次升級 Kernel 到指定版本&lt;span class="hx:absolute hx:-mt-20" id="33-第二次升級-kernel-到指定版本"&gt;&lt;/span&gt;
&lt;a href="#33-%e7%ac%ac%e4%ba%8c%e6%ac%a1%e5%8d%87%e7%b4%9a-kernel-%e5%88%b0%e6%8c%87%e5%ae%9a%e7%89%88%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 安裝 5.3.18-150300.59.63.1 版本的 Kernel
$ sudo zypper in kernel-default-5.3.18-150300.59.63.1
# 2. 重新開機
$ sudo init 6
# 3. 檢查 Kernel 版本
$ uname -r
5.3.18-150300.59.63-default
# 4. 檢查是否有保留上上一版的 Kernel
$ ls /boot/ | grep 57
config-5.3.18-57-default
initrd-5.3.18-57-default
initrd-5.3.18-57-default-kdump
symvers-5.3.18-57-default.gz
sysctl.conf-5.3.18-57-default
System.map-5.3.18-57-default
vmlinux-5.3.18-57-default.gz
vmlinuz-5.3.18-57-default
$ sudo cat /boot/grub2/grub.cfg | grep 57
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-57-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-57-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-57-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-57-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-57-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-57-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-57-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-57-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-57-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-57-default
# 5. 檢查是否有保留上一版的 Kernel
$ ls /boot/ | grep 49
config-5.3.18-150300.59.49-default
initrd-5.3.18-150300.59.49-default
initrd-5.3.18-150300.59.49-default-kdump
symvers-5.3.18-150300.59.49-default.gz
sysctl.conf-5.3.18-150300.59.49-default
System.map-5.3.18-150300.59.49-default
vmlinux-5.3.18-150300.59.49-default.gz
vmlinuz-5.3.18-150300.59.49-default
$ sudo cat /boot/grub2/grub.cfg | grep 49
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.49-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.49-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.49-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.49-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-150300.59.49-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.49-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.49-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.49-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.49-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-150300.59.49-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 第三次升級 Kernel 到指定版本&lt;span class="hx:absolute hx:-mt-20" id="33-第三次升級-kernel-到指定版本"&gt;&lt;/span&gt;
&lt;a href="#33-%e7%ac%ac%e4%b8%89%e6%ac%a1%e5%8d%87%e7%b4%9a-kernel-%e5%88%b0%e6%8c%87%e5%ae%9a%e7%89%88%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 安裝 5.3.18-150300.59.109.1 版本的 Kernel
$ sudo zypper in kernel-default-5.3.18-150300.59.109.1
# 2. 重新開機
$ sudo init 6
# 3. 檢查 Kernel 版本
$ uname -r
5.3.18-150300.59.109-default
# 4. 檢查是否有保留最原始的 Kernel
$ ls /boot/ | grep 57
config-5.3.18-57-default
initrd-5.3.18-57-default
initrd-5.3.18-57-default-kdump
symvers-5.3.18-57-default.gz
sysctl.conf-5.3.18-57-default
System.map-5.3.18-57-default
vmlinux-5.3.18-57-default.gz
vmlinuz-5.3.18-57-default
$ sudo cat /boot/grub2/grub.cfg | grep 57
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-57-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-57-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-57-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-57-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-57-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-57-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-57-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-57-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-57-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-57-default
# 5. 檢查是否有保留第一次升級後的 Kernel
$ ls /boot/ | grep 49
config-5.3.18-150300.59.49-default
initrd-5.3.18-150300.59.49-default
initrd-5.3.18-150300.59.49-default-kdump
symvers-5.3.18-150300.59.49-default.gz
sysctl.conf-5.3.18-150300.59.49-default
System.map-5.3.18-150300.59.49-default
vmlinux-5.3.18-150300.59.49-default.gz
vmlinuz-5.3.18-150300.59.49-default
$ sudo cat /boot/grub2/grub.cfg | grep 49
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.49-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.49-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.49-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.49-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-150300.59.49-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.49-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.49-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.49-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.49-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-150300.59.49-default
# 6. 檢查是否保留第二次升級後的 Kernel
$ ls /boot/ | grep 63
config-5.3.18-150300.59.63-default
initrd-5.3.18-150300.59.63-default
initrd-5.3.18-150300.59.63-default-kdump
symvers-5.3.18-150300.59.63-default.gz
sysctl.conf-5.3.18-150300.59.63-default
System.map-5.3.18-150300.59.63-default
vmlinux-5.3.18-150300.59.63-default.gz
vmlinuz-5.3.18-150300.59.63-default
$ sudo cat /boot/grub2/grub.cfg | grep &amp;#39;59.63&amp;#39;
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.63-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.63-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.63-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.63-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-150300.59.63-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.63-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.63-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.63-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.63-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-150300.59.63-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.4. 第四次升級 Kernel 到指定版本&lt;span class="hx:absolute hx:-mt-20" id="34-第四次升級-kernel-到指定版本"&gt;&lt;/span&gt;
&lt;a href="#34-%e7%ac%ac%e5%9b%9b%e6%ac%a1%e5%8d%87%e7%b4%9a-kernel-%e5%88%b0%e6%8c%87%e5%ae%9a%e7%89%88%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 安裝 5.3.18-150300.59.147.2 版本的 Kernel
$ sudo zypper in kernel-default-5.3.18-150300.59.147.2
# 2. 重新開機
$ sudo init 6
# 3. 檢查 Kernel 版本
$ uname -r
5.3.18-150300.59.147-default
# 4. 檢查原始的 Kernel 版本是否被刪除
$ ls /boot/ | grep 57
$ sudo cat /boot/grub2/grub.cfg | grep &amp;#39;57&amp;#39;
# 5. 檢查第一次升級的 Kernel 版本是否保留
$ ls /boot/ | grep 49
config-5.3.18-150300.59.49-default
initrd-5.3.18-150300.59.49-default
initrd-5.3.18-150300.59.49-default-kdump
symvers-5.3.18-150300.59.49-default.gz
sysctl.conf-5.3.18-150300.59.49-default
System.map-5.3.18-150300.59.49-default
vmlinux-5.3.18-150300.59.49-default.gz
vmlinuz-5.3.18-150300.59.49-default
$ sudo cat /boot/grub2/grub.cfg | grep 49
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.49-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.49-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.49-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.49-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-150300.59.49-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.49-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.49-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.49-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.49-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-150300.59.49-default
# 6. 檢查第二次升級的 Kernel 版本是否保留
$ ls /boot/ | grep 63
config-5.3.18-150300.59.63-default
initrd-5.3.18-150300.59.63-default
initrd-5.3.18-150300.59.63-default-kdump
symvers-5.3.18-150300.59.63-default.gz
sysctl.conf-5.3.18-150300.59.63-default
System.map-5.3.18-150300.59.63-default
vmlinux-5.3.18-150300.59.63-default.gz
vmlinuz-5.3.18-150300.59.63-default
$ sudo cat /boot/grub2/grub.cfg | grep &amp;#39;59.63&amp;#39;
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.63-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.63-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.63-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.63-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-150300.59.63-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.63-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.63-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.63-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.63-default root=/dev/mapper/system-root ${extra_cmdline}
initrd /boot/initrd-5.3.18-150300.59.63-default
# 7. 檢查第三次升級的 Kernel 版本是否保留
$ ls /boot | grep 109
config-5.3.18-150300.59.109-default
initrd-5.3.18-150300.59.109-default
initrd-5.3.18-150300.59.109-default-kdump
symvers-5.3.18-150300.59.109-default.gz
sysctl.conf-5.3.18-150300.59.109-default
System.map-5.3.18-150300.59.109-default
vmlinux-5.3.18-150300.59.109-default.gz
vmlinuz-5.3.18-150300.59.109-default
$ sudo cat /boot/grub2/grub.cfg | grep 109
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.109-default&amp;#39; --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.109-default-advanced-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; { echo &amp;#39;Loading Linux 5.3.18-150300.59.109-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.109-default root=/dev/mapper/system-root ${extra_cmdline} splash=silent mitigations=auto quiet crashkernel=195M,high crashkernel=72M,low
initrd /boot/initrd-5.3.18-150300.59.109-default
menuentry &amp;#39;SLES 15-SP3, with Linux 5.3.18-150300.59.109-default (recovery mode)&amp;#39; --hotkey=1 --class sles --class gnu-linux --class gnu --class os $menuentry_id_option &amp;#39;gnulinux-5.3.18-150300.59.109-default-recovery-6500a139-6f62-4060-b6fe-c6314ddc9ab5&amp;#39; {
echo &amp;#39;Loading Linux 5.3.18-150300.59.109-default ...&amp;#39;
linux /boot/vmlinuz-5.3.18-150300.59.109-default root=/dev/mapper/system-root ${extra_cmdline} initrd /boot/initrd-5.3.18-150300.59.109-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. TroubleShooting&lt;span class="hx:absolute hx:-mt-20" id="4-troubleshooting"&gt;&lt;/span&gt;
&lt;a href="#4-troubleshooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;4.1. 問題描述&lt;span class="hx:absolute hx:-mt-20" id="41-問題描述"&gt;&lt;/span&gt;
&lt;a href="#41-%e5%95%8f%e9%a1%8c%e6%8f%8f%e8%bf%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;不小心在升級前，把 &lt;code&gt;/etc/zypp/zypp.conf&lt;/code&gt; 檔案裡面的 &lt;code&gt;multiversion = provides:multiversion(kernel)&lt;/code&gt; 和 &lt;code&gt;multiversion.kernels = latest,latest-1,running&lt;/code&gt; 都註解掉，導致之前所保留的 Kernel 都被刪除了，該如何救回來 ???&lt;/p&gt;
&lt;h3&gt;4.2. 問題解答 : 裝回舊版的 Kernel&lt;span class="hx:absolute hx:-mt-20" id="42-問題解答--裝回舊版的-kernel"&gt;&lt;/span&gt;
&lt;a href="#42-%e5%95%8f%e9%a1%8c%e8%a7%a3%e7%ad%94--%e8%a3%9d%e5%9b%9e%e8%88%8a%e7%89%88%e7%9a%84-kernel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 將保留多個 kernel 版本的設定啟用，並保留所有的 kernel 版本
$ sudo nano /etc/zypp/zypp.conf
...
multiversion = provides:multiversion(kernel)
#multiversion.kernels = latest,latest-1,latest-2,latest-3,running
$ sudo zypper in --oldpackage --download-only kernel-default-5.3.18-150300.59.109.1
$ sudo init 6
## 開機選單選 Advanced options for SLES 15-SP3 -&amp;gt; 選舊版本的 Kernel
$ uname -r
5.3.18-150300.59.109-default
$ sudo zypper in --oldpackage kernel-default-5.3.18-150300.59.63.1
$ sudo init 6
## 開機選單選 Advanced options for SLES 15-SP3 -&amp;gt; 選舊版本的 Kernel
$ uname -r
5.3.18-150300.59.63-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Setup SSH File Transfer Protocol on SLES 12</title><link>https://blog.kubeantony.com/archive/suse/setup-ssh-file-transfer-protocol-on-sles-12/</link><pubDate>Mon, 27 May 2024 02:54:52 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/setup-ssh-file-transfer-protocol-on-sles-12/</guid><description>
&lt;h2&gt;1. 確認 SFTP 是否已啟用&lt;span class="hx:absolute hx:-mt-20" id="1-確認-sftp-是否已啟用"&gt;&lt;/span&gt;
&lt;a href="#1-%e7%a2%ba%e8%aa%8d-sftp-%e6%98%af%e5%90%a6%e5%b7%b2%e5%95%9f%e7%94%a8" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat /etc/ssh/sshd_config | grep &amp;#39;sftp-server&amp;#39;
Subsystem sftp /usr/lib/ssh/sftp-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;SFTP server function 預設會啟用, 如果沒有的話，新增&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Subsystem sftp /usr/lib/ssh/sftp-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;到 &lt;code&gt;/etc/ssh/sshd_config&lt;/code&gt; 中。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;2. 測試上傳和下載檔案&lt;span class="hx:absolute hx:-mt-20" id="2-測試上傳和下載檔案"&gt;&lt;/span&gt;
&lt;a href="#2-%e6%b8%ac%e8%a9%a6%e4%b8%8a%e5%82%b3%e5%92%8c%e4%b8%8b%e8%bc%89%e6%aa%94%e6%a1%88" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 連線到 Clinet 主機
$ ssh rancher@192.168.11.29
# 2. 登入 SFTP Server
$ sftp root@192.168.11.32
Password:
Connected to 192.168.11.32.
sftp&amp;gt;
# 3. 顯示在 SFTP Server 上當前所在的目錄
sftp&amp;gt; pwd
Remote working directory: /root
# 4. 顯示在本地機器上當前所在的目錄
sftp&amp;gt; !pwd
/home/rancher
# 5. 顯示 FTP Server 上目前目錄中的文件
sftp&amp;gt; ls -l
drwxr-xr-x 1 root root 226 Apr 26 11:29 Desktop
...
# 6. 顯示本地機器上目前目錄下的文件
sftp&amp;gt; !ls -l
total 51648
drwxr-xr-x 1 rancher users 0 Mar 15 2022 bin
...
# 7. 切換在 SFTP Server 上的工作目錄
sftp&amp;gt; cd Desktop/
sftp&amp;gt; pwd
Remote working directory: /root/Desktop
# 8. 把檔案上傳到 SFTP Server 德 /root/Desktop 目錄底下
sftp&amp;gt; put haha
Uploading haha to /root/Desktop/haha
haha 100% 0 0.0KB/s 00:00
# 9. 從 SFTP Server 下載檔案
sftp&amp;gt; get haha
Fetching /root/Desktop/haha to haha
sftp&amp;gt; !ls -l haha
-rw-r--r-- 1 rancher users 0 May 27 10:21 haha
# 10. 在 SFTP Server 上建立目錄
sftp&amp;gt; mkdir test
sftp&amp;gt; ls -l
...
drwxr-xr-x 1 root root 0 May 27 10:23 test
# 11. 在 SFTP Server 上刪除空目錄
sftp&amp;gt; rmdir test
sftp&amp;gt; ls -l
# 12. 在 SFTP Server 上刪除檔案
sftp&amp;gt; rm haha
Removing /root/Desktop/haha
# 13. 在本地執行命令
sftp&amp;gt; !touch hehe
sftp&amp;gt; !ls -l hehe
-rw-r--r-- 1 rancher users 0 May 27 10:30 hehe&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. Test internal-sftp&lt;span class="hx:absolute hx:-mt-20" id="3-test-internal-sftp"&gt;&lt;/span&gt;
&lt;a href="#3-test-internal-sftp" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;internal-sftp 是一個設定關鍵字，它告訴 OpenSSH sshd 使用內建於 sshd 二進位檔案中的程序內 SFTP Server。 這表示 sshd 無需執行外部程序（如 sftp-server）來處理 SFTP 請求。 相反，它會使用自己的程式碼來處理。&lt;/p&gt;
&lt;p&gt;使用 internal-sftp 相較於 sftp-server 有一些優點。首先是簡單性。我們不需要安裝或維護一個獨立的 sftp-server 程式。然而，這是以靈活性為代價的。internal-sftp 不允許自訂或細緻地控制 SFTP 的行為或參數。&lt;/p&gt;
&lt;p&gt;要在 sshd_config 設定檔中配置 internal-sftp，我們使用 Subsystem 指令並加上 internal-sftp 關鍵字：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Subsystem sftp internal-sftp&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;我們也可以使用關鍵字 internal-sftp 的 &lt;code&gt;ForceCommand&lt;/code&gt; 指令，強制所有 SSH 連線使用 SFTP。&lt;/p&gt;
&lt;h3&gt;3.1. 功能上與 SFTP 有什麼不同?&lt;span class="hx:absolute hx:-mt-20" id="31-功能上與-sftp-有什麼不同"&gt;&lt;/span&gt;
&lt;a href="#31-%e5%8a%9f%e8%83%bd%e4%b8%8a%e8%88%87-sftp-%e6%9c%89%e4%bb%80%e9%ba%bc%e4%b8%8d%e5%90%8c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;internal-sftp 和 sftp-server 在功能上幾乎是相同的。它們都實現了相同的協議並支持相同的功能。它們也都是從相同的源碼構建的，因此應該具有一致性和可靠性。&lt;/p&gt;
&lt;p&gt;然而，它們之間有一些小的差異可能會影響某些特殊情況。例如，internal-sftp 完全不涉及登入 shell，而 sftp-server 會。這意味著 internal-sftp 會繞過任何 shell 配置或對某些使用者的限制，例如：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;aliases&lt;/li&gt;
&lt;li&gt;environment variables&lt;/li&gt;
&lt;li&gt;login scripts&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;儘管 internal-sftp 支持與 sftp-server 相同的選項，但 internal-sftp 在較舊版本的 OpenSSH 中可能不支持某些功能。因此，當與依賴於較舊 SSH 版本的系統互動時，sftp-server 可能會是更好的選擇。&lt;/p&gt;
&lt;h3&gt;3.2. Security&lt;span class="hx:absolute hx:-mt-20" id="32-security"&gt;&lt;/span&gt;
&lt;a href="#32-security" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;在選擇 internal-sftp 和 sftp-server 時，安全性是另一個重要的考量因素。這兩個子系統都通過 SSH 協議提供加密、認證和完整性功能。&lt;/p&gt;
&lt;p&gt;然而，internal-sftp 可以與 &lt;code&gt;ChrootDirectory&lt;/code&gt; 指令一起使用。這讓我們可以把 SFTP 使用者限制在伺服器上的特定目錄中。這樣增強了使用者的安全性和隔離性，因為他們無法訪問或修改 chroot 目錄外的任何檔案。&lt;/p&gt;
&lt;p&gt;此外，internal-sftp 不需要任何外部檔案或可執行檔來運作。這降低了攻擊面和被入侵的風險。例如，如果攻擊者獲得了 sftp-server 的可執行檔或修改了它，他們可能會在伺服器上執行任意代碼或命令。這個可執行檔也可能存在漏洞或錯誤，進而危害系統安全。&lt;/p&gt;
&lt;p&gt;值得注意的是，sftp-server 支持將 SFTP 活動記錄到檔案或 syslog 中，以便進行稽核和監控。這有助於偵測或防止未授權或惡意的行為。&lt;/p&gt;
&lt;h3&gt;3.3. Use Cases and Recommendations&lt;span class="hx:absolute hx:-mt-20" id="33-use-cases-and-recommendations"&gt;&lt;/span&gt;
&lt;a href="#33-use-cases-and-recommendations" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;根據需求和偏好，internal-sftp 或 sftp-server 可能更適合不同的情境：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;internal-sftp 建議用於安全性和隔離性很重要的情況，例如將使用者 &lt;code&gt;chroot&lt;/code&gt; 到特定目錄。例如，一家網頁代管公司可能會使用 internal-sftp 來為其客戶提供安全的文件傳輸服務。他們會將每個客戶 &lt;code&gt;chroot&lt;/code&gt; 到自己的網站目錄，並限制他們對伺服器上其他檔案或目錄的訪問。&lt;/li&gt;
&lt;li&gt;sftp-server 適合需要高級功能或自訂的複雜且靈活的 SFTP 設置。它也是在兼容性很重要的情況下的首選，包括支持更多 SFTP 功能或擴展，或處理大規模部署或高流量環境。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;3.4. 實作測試 internal-sftp 只允許特定群組使用&lt;span class="hx:absolute hx:-mt-20" id="34-實作測試-internal-sftp-只允許特定群組使用"&gt;&lt;/span&gt;
&lt;a href="#34-%e5%af%a6%e4%bd%9c%e6%b8%ac%e8%a9%a6-internal-sftp-%e5%8f%aa%e5%85%81%e8%a8%b1%e7%89%b9%e5%ae%9a%e7%be%a4%e7%b5%84%e4%bd%bf%e7%94%a8" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 1. 修改 SSHD 設定檔
$ nano /etc/ssh/sshd_config
...
#Subsystem sftp /usr/lib/ssh/sftp-server ## 註解這行
## 新增以下 4 行字串
Match Group root,psftp
ChrootDirectory %h
ForceCommand internal-sftp -f AUTH -l INFO
Match
# 2. 重啟 SSHD 服務
$ &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>SUMA Server Configration</title><link>https://blog.kubeantony.com/archive/suse/suma-server-configration/</link><pubDate>Tue, 14 May 2024 07:47:02 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suma-server-configration/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;檢驗主機名稱&lt;span class="hx:absolute hx:-mt-20" id="檢驗主機名稱"&gt;&lt;/span&gt;
&lt;a href="#%e6%aa%a2%e9%a9%97%e4%b8%bb%e6%a9%9f%e5%90%8d%e7%a8%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; hostname -f &amp;amp;&amp;amp; hostname -s &amp;amp;&amp;amp; hostname -I&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;suma.example.com
suma
192.168.11.69&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;注意，&lt;strong&gt;第一個 &lt;code&gt;hostname -f&lt;/code&gt; 命令須返回 FDQN&lt;/strong&gt;
FQDN，全名 : Fully Qualified Domain Name，一個網際網路上的完整網域名稱，包括主機名稱和完整的網域名稱&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;檢驗工作目錄&lt;span class="hx:absolute hx:-mt-20" id="檢驗工作目錄"&gt;&lt;/span&gt;
&lt;a href="#%e6%aa%a2%e9%a9%97%e5%b7%a5%e4%bd%9c%e7%9b%ae%e9%8c%84" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;ls -ld /var/lib/pgsql /var/spacewalk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;有關權限的部分，螢幕輸出應該是要跟以下一樣&lt;/p&gt;
&lt;pre&gt;
&lt;font color=red&gt;drwxr-x---&lt;/font&gt; 1 &lt;font color=red&gt;postgres postgres&lt;/font&gt; /var/lib/pgsql
&lt;font color=red&gt;drwxrwxr-x&lt;/font&gt; 1 &lt;font color=red&gt;wwwrun www&lt;/font&gt; /var/spacewalk
&lt;/pre&gt;
&lt;p&gt;如果需要，請用這些命令改變權限：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;chmod 750 /var/lib/pgsql
chmod 775 /var/spacewalk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;And owners with:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;chown postgres:postgres /var/lib/pgsql
chown wwwrun:www /var/spacewalk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;以下特定目錄容量要求是官網給的建議，可視情況客製化目錄大小&lt;/p&gt;
&lt;p&gt;![](&lt;a
href="https://i.imgur.com/b4fGVAf.png"target="_blank" rel="noopener"&gt;https://i.imgur.com/b4fGVAf.png&lt;/a&gt; =60%x)&lt;/p&gt;
&lt;p&gt;執行以下命令，確認特定目錄的大小是否符合預期&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; lsblk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;pre&gt;
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 250G 0 disk
├─sda1 8:1 0 8M 0 part
└─sda2 8:2 0 250G 0 part
├─system-root 254:0 0 &lt;font color=red&gt;25G&lt;/font&gt; 0 lvm /var
│ /usr/local
│ /tmp
│ /opt
│ /root
│ /home
│ /boot/grub2/i386-pc
│ /boot/grub2/x86_64-efi
│ /.snapshots
│ &lt;font color=red&gt;/&lt;/font&gt;
├─system-swap 254:1 0 &lt;font color=red&gt;3G&lt;/font&gt; 0 lvm &lt;font color=red&gt;[SWAP]&lt;/font&gt;
├─system-srv 254:2 0 44G 0 lvm /srv
├─system-var_cache 254:3 0 &lt;font color=red&gt;6G&lt;/font&gt; 0 lvm &lt;font color=red&gt;/var/cache&lt;/font&gt;
├─system-var_lib_pgsql 254:4 0 &lt;font color=red&gt;54G&lt;/font&gt; 0 lvm &lt;font color=red&gt;/var/lib/pgsql&lt;/font&gt;
└─system-var_spacewalk 254:5 0 &lt;font color=red&gt;118G&lt;/font&gt; 0 lvm &lt;font color=red&gt;/var/spacewalk&lt;/font&gt;
sr0 11:0 1 15.4G 0 ro
&lt;/pre&gt;
&lt;h2&gt;用戶端管理&lt;span class="hx:absolute hx:-mt-20" id="用戶端管理"&gt;&lt;/span&gt;
&lt;a href="#%e7%94%a8%e6%88%b6%e7%ab%af%e7%ae%a1%e7%90%86" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;SUMA 支援多種用戶端註冊管理方式（Traditional Clients / Salt Clients /SSH），下面以 Salt Client 方式為例，進行客戶端管理。
主要是以下步驟：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;針對產品版本，創建“用戶端倉庫”&lt;/li&gt;
&lt;li&gt;創建Activation Key&lt;/li&gt;
&lt;li&gt;創建用戶端註冊腳本&lt;/li&gt;
&lt;li&gt;用戶端上的註冊操作&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;創建用戶端倉庫&lt;span class="hx:absolute hx:-mt-20" id="創建用戶端倉庫"&gt;&lt;/span&gt;
&lt;a href="#%e5%89%b5%e5%bb%ba%e7%94%a8%e6%88%b6%e7%ab%af%e5%80%89%e5%ba%ab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在軟體倉庫中完成了某個產品(如 SLES15-SP4 )通道的導入後， SUMA 即具備了創建此產品的用戶端倉庫的選項。&lt;/p&gt;
&lt;p&gt;有時這個倉庫也會稱為啟動倉庫，提供用戶端接受SUMA管理的最小軟體元件集合。&lt;/p&gt;
&lt;p&gt;使用以下命令創建指定產品的用戶端倉庫：&lt;/p&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;先檢查 SUMA 目前可用的用戶端倉庫&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; mgr-create-bootstrap-repo -l&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;-l&lt;/code&gt;，列出可用的用戶端倉庫&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;1. SLE-12-SP5-x86_64
2. SLE-15-SP3-x86_64
3. SLE-15-SP4-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;創建用戶端倉庫&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mgr-create-bootstrap-repo --create SLE-15-SP4-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;注意：必須完成軟體通道的導入後，才可創建，否則可能會因 rpm 檔不全而失敗！&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Creating bootstrap repo for SLE-15-SP4-x86_64
copy &amp;#39;dbus-1-glib-0.108-1.29.x86_64&amp;#39;
copy &amp;#39;glib2-tools-2.70.5-150400.3.3.1.x86_64&amp;#39;
...中間省略
Directory walk started
Directory walk done - 81 packages
Temporary output repo path: /srv/www/htdocs/pub/repositories/sle/15/4/bootstrap.tmp/.repodata/
Preparing sqlite DBs
Pool started (with 5 workers)
Pool finished&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;創建 Activation_Key&lt;span class="hx:absolute hx:-mt-20" id="創建-activation_key"&gt;&lt;/span&gt;
&lt;a href="#%e5%89%b5%e5%bb%ba-activation_key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Activation_Key 是一系列配置的集合，用來定義&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;用戶端在註冊時訂閱什麼軟體倉庫，需要額外定義什麼套裝軟體等&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;因此通常使用不同的 Activation_key 來區分不同的軟體倉庫，還可包括用戶端數量， 這一點對於合規性來說，也是很有用的。&lt;/p&gt;
&lt;p&gt;比如， 用戶有 2 個 SLES 12 SP4 訂閱和 2 個 SLES 12 SP5 訂閱，分別用在 WEB 和 DB 兩類伺服器上，則可以生成：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;Activation_Key=“1-sles12-sp4-web”&lt;/code&gt;，包含基本產品通道，限制數量 = 2&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Activation_Key=“1-sles12-sp5-db”&lt;/code&gt;，包含基本產品通道，限制數量 = 2&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/l9wjDdA.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/8JLiFgi.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/tdUVpsg.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/a0YRLra.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;創建註冊腳本範本&lt;span class="hx:absolute hx:-mt-20" id="創建註冊腳本範本"&gt;&lt;/span&gt;
&lt;a href="#%e5%89%b5%e5%bb%ba%e8%a8%bb%e5%86%8a%e8%85%b3%e6%9c%ac%e7%af%84%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;完整的操作分成兩步：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;創建註冊腳本的範本，此範本不能直接運行。&lt;/li&gt;
&lt;li&gt;創建註冊腳本的實例，根據 Activation_Key 綁定具體的訂閱。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/xtJFcOC.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在 4.3 版本的 SUMA 中，&amp;ldquo;Enable SSL&amp;rdquo; 的選項被移除
Bootstrap using Salt，此選項用於指定是否使用 Salt 進行用戶端管理&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;創建成功後，會在網頁的上緣顯示以下訊息&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/i7bEC1x.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;切換到工作目錄&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# cd /srv/www/htdocs/pub/bootstrap/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢視創建註冊腳本的範本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# ll
total 52
-rw-r--r-- 1 root root 39168 Apr 20 10:51 bootstrap.sh
-rw-r--r-- 1 root root 575 Apr 20 10:51 client-config-overrides.txt
-rwxr-xr-x 1 root root 6331 Jan 27 14:28 client_config_update.py&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;拷貝一份特定 Chanel 的註冊腳本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;cp bootstrap.sh bootstrap-SLES15SP4.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;編輯註冊腳本&lt;/p&gt;
&lt;pre&gt;
&lt;font color=orange&gt;88&lt;/font&gt; ACTIVATION_KEYS=&lt;font color=blue&gt;1-SLE-15-SP4&lt;/font&gt;
&lt;/pre&gt;
&lt;blockquote&gt;
&lt;p&gt;在第 88 行，填入對應的 ACTIVATION_KEYS&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;如果沒有 DNS 環境的處理&lt;/p&gt;
&lt;p&gt;在 bootstrap 腳本的“HOSTNAME”下一行，增加以下腳本內容:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;OLDIFS=$IFS
IFS=&amp;#39;&amp;#39;
SUMAHOSTRECORD=&amp;#39;192.168.11.69&amp;#39;$&amp;#39;\t&amp;#39;$HOSTNAME
grep $SUMAHOSTRECORD /etc/hosts &amp;gt; /dev/null || {
sed -i &amp;#34;/$HOSTNAME/d&amp;#34; /etc/hosts
echo $SUMAHOSTRECORD &amp;gt;&amp;gt; /etc/hosts
}
IFS=$OLDIFS&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/wq1qpoI.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;此腳本將在用戶端註冊時，在 Clients 端的 &lt;code&gt;/etc/hosts&lt;/code&gt; 檔案中創建正確的 SUMA 伺服器項目，請注意 &lt;strong&gt;IP 位址不要寫錯&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;用戶端註冊操作&lt;span class="hx:absolute hx:-mt-20" id="用戶端註冊操作"&gt;&lt;/span&gt;
&lt;a href="#%e7%94%a8%e6%88%b6%e7%ab%af%e8%a8%bb%e5%86%8a%e6%93%8d%e4%bd%9c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;CentOS 8 客戶端為例&lt;span class="hx:absolute hx:-mt-20" id="centos-8-客戶端為例"&gt;&lt;/span&gt;
&lt;a href="#centos-8-%e5%ae%a2%e6%88%b6%e7%ab%af%e7%82%ba%e4%be%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;以下命令須以 root 身分執行以下命令&lt;/p&gt;
&lt;p&gt;將 SUMA 的 Domain Name 加到 /etc/hosts&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ nano /etc/hosts&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;新增以下內容&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;192.168.11.69 suma.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行註冊腳本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://suma.example.com/pub/bootstrap/bootstrap-centos-8-x86_64.sh | bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;正確的螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0SUSE Manager Server Client bootstrap script v2022.08
MINOR MANUAL EDITING OF THIS FILE MAY BE REQUIRED!
If this bootstrap script was created during the initial installation
of a SUSE Manager Server, the ACTIVATION_KEYS, and ORG_GPG_KEY values will
probably *not* be set (see below). If this is the case, please do the
following:
- copy this file to a name specific to its use.
(e.g., to bootstrap-SOME_NAME.sh - like bootstrap-web-servers.sh.)
- on the website create an activation key or keys for the system(s) to
be registered.
- edit the values of the VARIABLES below (in this script) as
appropriate:
- ACTIVATION_KEYS needs to reflect the activation key(s) value(s)
from the website. XKEY or XKEY,YKEY
Please note that if you are using this script to boostrap minions,
only the FIRST activation key will be used. Multiple activation keys
are not supported with salt
- ORG_GPG_KEY needs to be set to the name(s) of the corporate public
GPG key filename(s) (residing in /srv/www/htdocs/pub) if appropriate. XKEY or XKEY,YKEY
- When reactivating Salt minion, use REACTIVATION_KEY variable
Consider using environmental variable REACTIVATION_KEY for single use reactivation keys.
Verify that the script variable settings are correct:
- CLIENT_OVERRIDES should be only set differently if a customized
client-config-overrides-VER.txt file was created with a different
name.
- ensure the value of HOSTNAME is correct.
- ensure the value of ORG_CA_CERT is correct.
Enable this script: comment (with #&amp;#39;s) this block (or, at least just
the exit below, if present)
100 39378 100 39378 0 0 610k 0 --:--:-- --:--:-- --:--:-- 610k
UPDATING RHN_REGISTER/UP2DATE CONFIGURATION FILES
-------------------------------------------------
* downloading necessary files
client_config_update.py...
2023-04-20 03:16:26 URL:https://suma.example.com/pub/bootstrap/client_config_update.py [6331/6331] -&amp;gt; &amp;#34;client_config_update.py&amp;#34; [1]
FINISHED --2023-04-20 03:16:26--
Total wall clock time: 0.07s
Downloaded: 1 files, 6.2K in 0s (159 MB/s)
client-config-overrides.txt...
2023-04-20 03:16:26 URL:https://suma.example.com/pub/bootstrap/client-config-overrides.txt [575/575] -&amp;gt; &amp;#34;client-config-overrides.txt&amp;#34; [1]
FINISHED --2023-04-20 03:16:26--
Total wall clock time: 0.06s
Downloaded: 1 files, 575 in 0s (9.21 MB/s)
PREPARE GPG KEYS AND CORPORATE PUBLIC CA CERT
-------------------------------------------------
* no organizational GPG keys to import
* attempting to install corporate public CA cert
2023-04-20 03:16:27 URL:https://suma.example.com/pub/RHN-ORG-TRUSTED-SSL-CERT [1696/1696] -&amp;gt; &amp;#34;RHN-ORG-TRUSTED-SSL-CERT&amp;#34; [1]
FINISHED --2023-04-20 03:16:27--
Total wall clock time: 0.06s
Downloaded: 1 files, 1.7K in 0s (50.9 MB/s)
* update certificates
CLEANING UP OLD SUSE MANAGER REPOSITORIES
-------------------------------------------------
CHECKING THE REGISTRATION STACK
-------------------------------------------------
* check for necessary packages being installed...
* client codebase is centos-8
2023-04-20 03:16:27 URL:https://suma.example.com/pub/repositories/centos/8/bootstrap/repodata/repomd.xml [3087/3087] -&amp;gt; &amp;#34;repomd.xml.1&amp;#34; [1]
FINISHED --2023-04-20 03:16:27--
Total wall clock time: 0.05s
Downloaded: 1 files, 3.0K in 0s (94.5 MB/s)
adding client software repository at https://suma.example.com/pub/repositories/centos/8/bootstrap
adding &amp;#39;module_hotfixes&amp;#39; flag to the repository config
2023-04-20 03:16:27 URL:https://suma.example.com/pub/repositories/centos/8/bootstrap/venv-enabled-x86_64.txt [113/113] -&amp;gt; &amp;#34;venv-enabled-x86_64.txt&amp;#34; [1]
FINISHED --2023-04-20 03:16:27--
Total wall clock time: 0.05s
Downloaded: 1 files, 113 in 0s (300 MB/s)
Bootstrap repo &amp;#39;https://suma.example.com/pub/repositories/centos/8/bootstrap&amp;#39; contains salt bundle.
package venv-salt-minion is not installed
* going to install missing packages...
CentOS Linux 8 - AppStream 6.1 MB/s | 8.4 MB 00:01
CentOS Linux 8 - BaseOS 7.8 MB/s | 4.6 MB 00:00
CentOS Linux 8 - Extras 106 kB/s | 10 kB 00:00
susemanager:bootstrap 2.1 MB/s | 104 kB 00:00
Dependencies resolved.
=====================================================================================================================
Package Architecture Version Repository Size
=====================================================================================================================
Installing:
venv-salt-minion x86_64 3004-1.25.1 susemanager:bootstrap 26 M
Transaction Summary
=====================================================================================================================
Install 1 Package
Total download size: 26 M
Installed size: 103 M
Downloading Packages:
venv-salt-minion-3004-1.25.1.x86_64.rpm 33 MB/s | 26 MB 00:00
---------------------------------------------------------------------------------------------------------------------
Total 33 MB/s | 26 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: venv-salt-minion-3004-1.25.1.x86_64 1/1
Installing : venv-salt-minion-3004-1.25.1.x86_64 1/1
Running scriptlet: venv-salt-minion-3004-1.25.1.x86_64 1/1
Verifying : venv-salt-minion-3004-1.25.1.x86_64 1/1
Installed:
venv-salt-minion-3004-1.25.1.x86_64
Complete!
venv-salt-minion-3004-1.25.1.x86_64
Last metadata expiration check: 0:00:37 ago on Thu 20 Apr 2023 03:16:33 AM EDT.
Dependencies resolved.
Nothing to do.
Complete!
REGISTRATION
------------
* registering
Using activation key: centos-8-x86_64
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service → /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Trouble Shooting&lt;span class="hx:absolute hx:-mt-20" id="trouble-shooting"&gt;&lt;/span&gt;
&lt;a href="#trouble-shooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;錯誤訊息&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Error: Failed to download metadata for repo &amp;#39;appstream&amp;#39;: Cannot prepare internal mirrorlist: No URLs in mirrorlist
package venv-salt-minion is not installed
ERROR: Failed to install all missing packages.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;解決辦法&lt;/p&gt;
&lt;p&gt;執行以下三行命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cd /etc/yum.repos.d/
$ sed -i &amp;#39;s/mirrorlist/#mirrorlist/g&amp;#39; /etc/yum.repos.d/CentOS-*
$ sed -i &amp;#39;s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g&amp;#39; /etc/yum.repos.d/CentOS-*&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;最後再跟 SUMA 註冊一次應該就成功了&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://suma.example.com/pub/bootstrap/bootstrap-centos-8-x86_64.sh | bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;SLES-12-SP5 為例&lt;span class="hx:absolute hx:-mt-20" id="sles-12-sp5-為例"&gt;&lt;/span&gt;
&lt;a href="#sles-12-sp5-%e7%82%ba%e4%be%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;將 SUMA 的 Domain Name 加到 &lt;code&gt;/etc/hosts&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ vim /etc/hosts&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;新增以下內容&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;192.168.11.69 suma.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行註冊腳本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://suma.example.com/pub/bootstrap/bootstrap-SLE-12-SP5.sh | bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;正確的螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 39380 100 39380 0 0 1373k 0 --:--:-- --SUSE Manager Server Client bootstrap script v2022.08
:--:-- --:--:-- 1373k
MINOR MANUAL EDITING OF THIS FILE MAY BE REQUIRED!
If this bootstrap script was created during the initial installation
of a SUSE Manager Server, the ACTIVATION_KEYS, and ORG_GPG_KEY values will
probably *not* be set (see below). If this is the case, please do the
following:
- copy this file to a name specific to its use.
(e.g., to bootstrap-SOME_NAME.sh - like bootstrap-web-servers.sh.)
- on the website create an activation key or keys for the system(s) to
be registered.
- edit the values of the VARIABLES below (in this script) as
appropriate:
- ACTIVATION_KEYS needs to reflect the activation key(s) value(s)
from the website. XKEY or XKEY,YKEY
Please note that if you are using this script to boostrap minions,
only the FIRST activation key will be used. Multiple activation keys
are not supported with salt
- ORG_GPG_KEY needs to be set to the name(s) of the corporate public
GPG key filename(s) (residing in /srv/www/htdocs/pub) if appropriate. XKEY or XKEY,YKEY
- When reactivating Salt minion, use REACTIVATION_KEY variable
Consider using environmental variable REACTIVATION_KEY for single use reactivation keys.
Verify that the script variable settings are correct:
- CLIENT_OVERRIDES should be only set differently if a customized
client-config-overrides-VER.txt file was created with a different
name.
- ensure the value of HOSTNAME is correct.
- ensure the value of ORG_CA_CERT is correct.
Enable this script: comment (with #&amp;#39;s) this block (or, at least just
the exit below, if present)
hostname: Name or service not known
UPDATING RHN_REGISTER/UP2DATE CONFIGURATION FILES
-------------------------------------------------
* downloading necessary files
client_config_update.py...
WARNING: cannot verify suma.example.com&amp;#39;s certificate, issued by ‘/C=TW/ST=Taiwan/L=Taipei City/O=Taishinbank/OU=IT/CN=suma.example.com’:
Unable to locally verify the issuer&amp;#39;s authority.
2023-04-20 15:01:10 URL:https://suma.example.com/pub/bootstrap/client_config_update.py [6331/6331] -&amp;gt; &amp;#34;client_config_update.py&amp;#34; [1]
FINISHED --2023-04-20 15:01:10--
Total wall clock time: 0.1s
Downloaded: 1 files, 6.2K in 0s (3.72 GB/s)
client-config-overrides.txt...
WARNING: cannot verify suma.example.com&amp;#39;s certificate, issued by ‘/C=TW/ST=Taiwan/L=Taipei City/O=Taishinbank/OU=IT/CN=suma.example.com’:
Unable to locally verify the issuer&amp;#39;s authority.
2023-04-20 15:01:10 URL:https://suma.example.com/pub/bootstrap/client-config-overrides.txt [575/575] -&amp;gt; &amp;#34;client-config-overrides.txt&amp;#34; [1]
FINISHED --2023-04-20 15:01:10--
Total wall clock time: 0.05s
Downloaded: 1 files, 575 in 0s (545 MB/s)
PREPARE GPG KEYS AND CORPORATE PUBLIC CA CERT
-------------------------------------------------
* no organizational GPG keys to import
* attempting to install corporate public CA cert
WARNING: cannot verify suma.example.com&amp;#39;s certificate, issued by ‘/C=TW/ST=Taiwan/L=Taipei City/O=Taishinbank/OU=IT/CN=suma.example.com’:
Unable to locally verify the issuer&amp;#39;s authority.
2023-04-20 15:01:11 URL:https://suma.example.com/pub/RHN-ORG-TRUSTED-SSL-CERT [1696/1696] -&amp;gt; &amp;#34;RHN-ORG-TRUSTED-SSL-CERT&amp;#34; [1]
FINISHED --2023-04-20 15:01:11--
Total wall clock time: 0.05s
Downloaded: 1 files, 1.7K in 0s (547 MB/s)
* update certificates
CLEANING UP OLD SUSE MANAGER REPOSITORIES
-------------------------------------------------
CHECKING THE REGISTRATION STACK
-------------------------------------------------
* check for necessary packages being installed...
* client codebase is sle-12-sp5
2023-04-20 15:01:11 URL:https://suma.example.com/pub/repositories/sle/12/5/bootstrap/venv-enabled-x86_64.txt [113/113] -&amp;gt; &amp;#34;venv-enabled-x86_64.txt&amp;#34; [1]
FINISHED --2023-04-20 15:01:11--
Total wall clock time: 0.05s
Downloaded: 1 files, 113 in 0s (121 MB/s)
Bootstrap repo &amp;#39;https://suma.example.com/pub/repositories/sle/12/5/bootstrap&amp;#39; contains salt bundle.
package venv-salt-minion is not installed
* going to install missing packages...
2023-04-20 15:01:11 URL:https://suma.example.com/pub/repositories/sle/12/5/bootstrap/repodata/repomd.xml [3095/3095] -&amp;gt; &amp;#34;repomd.xml&amp;#34; [1]
FINISHED --2023-04-20 15:01:11--
Total wall clock time: 0.05s
Downloaded: 1 files, 3.0K in 0s (995 MB/s)
adding client software repository at https://suma.example.com/pub/repositories/sle/12/5/bootstrap
Retrieving repository &amp;#39;susemanager:bootstrap&amp;#39; metadata ........................................................[done]
Building repository &amp;#39;susemanager:bootstrap&amp;#39; cache .............................................................[done]
Specified repositories have been refreshed.
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following NEW package is going to be installed:
venv-salt-minion
The following package has no support information from it&amp;#39;s vendor:
venv-salt-minion
1 new package to install.
Overall download size: 21.9 MiB. Already cached: 0 B. After the operation, additional 100.6 MiB will be used.
Continue? [y/n/...? shows all options] (y): y
Retrieving package venv-salt-minion-3004-3.25.1.x86_64 (1/1), 21.9 MiB (100.6 MiB unpacked)
Retrieving: venv-salt-minion-3004-3.25.1.x86_64.rpm ...............................................[done (7.4 MiB/s)]
Checking for file conflicts: ..................................................................................[done]
(1/1) Installing: venv-salt-minion-3004-3.25.1.x86_64 .........................................................[done]
venv-salt-minion-3004-3.25.1.x86_64
Loading repository data...
Reading installed packages...
No update candidate for &amp;#39;openssl-1.0.2p-1.13.noarch&amp;#39;. The highest available version is already installed.
No update candidate for &amp;#39;venv-salt-minion-3004-3.25.1.x86_64&amp;#39;. The highest available version is already installed.
Resolving package dependencies...
The following 3 packages are going to be upgraded:
libsolv-tools libzypp zypper
The following 3 packages have no support information from their vendor:
libsolv-tools libzypp zypper
3 packages to upgrade.
Overall download size: 3.8 MiB. Already cached: 0 B. After the operation, additional 126.8 KiB will be used.
Continue? [y/n/...? shows all options] (y): y
Retrieving package libsolv-tools-0.6.39-2.39.2.x86_64 (1/3), 583.9 KiB ( 4.7 MiB unpacked)
Retrieving: libsolv-tools-0.6.39-2.39.2.x86_64.rpm ............................................................[done]
Retrieving package libzypp-16.22.5-39.1.x86_64 (2/3), 2.0 MiB ( 7.4 MiB unpacked)
Retrieving: libzypp-16.22.5-39.1.x86_64.rpm ...................................................................[done]
Retrieving package zypper-1.13.62-21.46.5.x86_64 (3/3), 1.2 MiB ( 6.8 MiB unpacked)
Retrieving: zypper-1.13.62-21.46.5.x86_64.rpm .................................................................[done]
Checking for file conflicts: ..................................................................................[done]
(1/3) Installing: libsolv-tools-0.6.39-2.39.2.x86_64 ..........................................................[done]
(2/3) Installing: libzypp-16.22.5-39.1.x86_64 .................................................................[done]
(3/3) Installing: zypper-1.13.62-21.46.5.x86_64 ...............................................................[done]
REGISTRATION
------------
* registering
Using activation key: SLE-12-SP5-x86_64
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink from /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service to /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Trouble Shooting&lt;span class="hx:absolute hx:-mt-20" id="trouble-shooting-1"&gt;&lt;/span&gt;
&lt;a href="#trouble-shooting-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;如果 Client 端的 VM 是複製出來的 Machine ID 會一樣，導致 Activation Key 激活後，擠掉同 Machine ID 的 VM，如果用 &lt;code&gt;sudo journalctl -u venv-salt-minion.service&lt;/code&gt;，可以查看以下錯誤訊息&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;The Salt Master has cached the public key for this node, this salt minion will wait for 10 seconds before attempting to re-authenticate
...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;解決辦法 :&lt;/p&gt;
&lt;p&gt;在 Client 端上，執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ rm /etc/machine-id &amp;amp;&amp;amp; \
rm /var/lib/dbus/machine-id &amp;amp;&amp;amp; \
dbus-uuidgen --ensure &amp;amp;&amp;amp; \
systemd-machine-id-setup&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;再去檢查 Machine ID 就會變成不一樣的了，此時再重啟服務&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl restart venv-salt-minion.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;然後到 SUMA 去接受 Key 就 OK 拉 ~&lt;/p&gt;
&lt;h4&gt;Add Product 出現 sync failed&lt;span class="hx:absolute hx:-mt-20" id="add-product-出現-sync-failed"&gt;&lt;/span&gt;
&lt;a href="#add-product-%e5%87%ba%e7%8f%be-sync-failed" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;可以到 &lt;code&gt;/var/log/rhn/reposync/&lt;/code&gt; 目錄底下看 log 檔&lt;/p&gt;
&lt;h4&gt;suma 4.2.14 以上的版本，要加 SLES 15 SP3 的 Client 端，需要 LTSS 的 Channel，這樣在建立 Bootstrap Repo 才不會因為缺少套件而失敗&lt;span class="hx:absolute hx:-mt-20" id="suma-4214-以上的版本要加-sles-15-sp3-的-client-端需要-ltss-的-channel這樣在建立-bootstrap-repo-才不會因為缺少套件而失敗"&gt;&lt;/span&gt;
&lt;a href="#suma-4214-%e4%bb%a5%e4%b8%8a%e7%9a%84%e7%89%88%e6%9c%ac%e8%a6%81%e5%8a%a0-sles-15-sp3-%e7%9a%84-client-%e7%ab%af%e9%9c%80%e8%a6%81-ltss-%e7%9a%84-channel%e9%80%99%e6%a8%a3%e5%9c%a8%e5%bb%ba%e7%ab%8b-bootstrap-repo-%e6%89%8d%e4%b8%8d%e6%9c%83%e5%9b%a0%e7%82%ba%e7%bc%ba%e5%b0%91%e5%a5%97%e4%bb%b6%e8%80%8c%e5%a4%b1%e6%95%97" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;錯誤訊息如下&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;error: package &amp;#34;python3-looseversion&amp;#34; not found&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;SUMA Client 註冊失敗，並出現 &lt;code&gt;the salt master has rejected this minion's public key&lt;/code&gt; 錯誤訊息&lt;span class="hx:absolute hx:-mt-20" id="suma-client-註冊失敗並出現-the-salt-master-has-rejected-this-minions-public-key-錯誤訊息"&gt;&lt;/span&gt;
&lt;a href="#suma-client-%e8%a8%bb%e5%86%8a%e5%a4%b1%e6%95%97%e4%b8%a6%e5%87%ba%e7%8f%be-the-salt-master-has-rejected-this-minions-public-key-%e9%8c%af%e8%aa%a4%e8%a8%8a%e6%81%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;解決辦法 : 移除 Client 有關 Salt 的檔案，並停止 Salt-minion 的服務，到 SUMA 上清除 Client 的 Salt Key&lt;/p&gt;
&lt;h3&gt;接受 Salt 用戶端&lt;span class="hx:absolute hx:-mt-20" id="接受-salt-用戶端"&gt;&lt;/span&gt;
&lt;a href="#%e6%8e%a5%e5%8f%97-salt-%e7%94%a8%e6%88%b6%e7%ab%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;在 SUMA 的 WEB 介面上，進入 &lt;code&gt;[SUSE Manager]&lt;/code&gt; &amp;gt; &lt;code&gt;Systems&lt;/code&gt; &amp;gt; &lt;code&gt;System List&lt;/code&gt; &amp;gt; &lt;code&gt;All&lt;/code&gt; 頁面，可以看到新註冊的用戶端系統。&lt;/p&gt;
&lt;p&gt;如果是 Salt 用戶端，&lt;code&gt;[SUSE Manager]&lt;/code&gt; &amp;gt; &lt;code&gt;Salt&lt;/code&gt; &amp;gt; &lt;code&gt;Keys&lt;/code&gt;，首先需要在 WEB 介面的 Salt 功能表，接受新的 Salt-Key 方能讓新用戶端系統進入 System 清單中。&lt;/p&gt;
&lt;p&gt;示意圖&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/nrLsAUe.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;接受以後&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/yjX1Twa.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;最後就可以在 System OverView 上看到用戶端拉 ~&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/K8Yr16u.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;單個用戶端全量補丁&lt;span class="hx:absolute hx:-mt-20" id="單個用戶端全量補丁"&gt;&lt;/span&gt;
&lt;a href="#%e5%96%ae%e5%80%8b%e7%94%a8%e6%88%b6%e7%ab%af%e5%85%a8%e9%87%8f%e8%a3%9c%e4%b8%81" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;img src="https://i.imgur.com/QnT0ABk.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;”Select All&amp;quot; ，按鈕選擇所有補丁&lt;/li&gt;
&lt;li&gt;“Apply Patchs” ，按鈕會提示升級補丁的時間安排：&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/QjvG6d2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;選擇時間後，再提交操作請求。&lt;/p&gt;
&lt;p&gt;提交後，可以到 Events 的 History 下，檢查 Patch 後的狀態&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/i7f5UeN.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;有關補丁的部分還可以完成&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;單個用戶端特定補丁&lt;/li&gt;
&lt;li&gt;按特定 CVE 實施補丁
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;[SUSE Manager]&lt;/code&gt; &amp;gt; &lt;code&gt;Audit&lt;/code&gt; &amp;gt; &lt;code&gt;CVE Audit&lt;/code&gt; 頁面，在搜尋框輸入 CVE 編號&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;批量用戶端應用補丁&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;移除註冊 Client&lt;span class="hx:absolute hx:-mt-20" id="移除註冊-client"&gt;&lt;/span&gt;
&lt;a href="#%e7%a7%bb%e9%99%a4%e8%a8%bb%e5%86%8a-client" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1. 先在 SUMA Server 上執行&lt;span class="hx:absolute hx:-mt-20" id="1-先在-suma-server-上執行"&gt;&lt;/span&gt;
&lt;a href="#1-%e5%85%88%e5%9c%a8-suma-server-%e4%b8%8a%e5%9f%b7%e8%a1%8c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sudo spacecmd system_delete FQDN
sudo salt-key -d FQDN
spacecmd -- clear_caches&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2. 在 Client 端上執行&lt;span class="hx:absolute hx:-mt-20" id="2-在-client-端上執行"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%9c%a8-client-%e7%ab%af%e4%b8%8a%e5%9f%b7%e8%a1%8c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;請依 system type 選擇刪除方法&lt;/p&gt;
&lt;h4&gt;2.1 Salt Bundle Client - Manual Registration Cleanup&lt;span class="hx:absolute hx:-mt-20" id="21-salt-bundle-client---manual-registration-cleanup"&gt;&lt;/span&gt;
&lt;a href="#21-salt-bundle-client---manual-registration-cleanup" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl stop venv-salt-minion.service; \
sudo rm /etc/zypp/repos.d/susemanager\:channels.repo /etc/venv-salt-minion/*; \
zypper rm -y venv-salt-minion; \
sudo rm -r /etc/venv-salt-minion/*&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.2 Deleting SLES 12 and 15 Salt Clients&lt;span class="hx:absolute hx:-mt-20" id="22-deleting-sles-12-and-15-salt-clients"&gt;&lt;/span&gt;
&lt;a href="#22-deleting-sles-12-and-15-salt-clients" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ systemctl stop salt-minion; \
rm /etc/zypp/repos.d/susemanager\:channels.repo; \
rm -r /etc/sysconfig/rhn/; \
rm -r /etc/salt/; \
zypper rm salt salt-minion python*-salt sle-manager-tools-release&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;透過 spacecmd 指令管理 SUMA&lt;span class="hx:absolute hx:-mt-20" id="透過-spacecmd-指令管理-suma"&gt;&lt;/span&gt;
&lt;a href="#%e9%80%8f%e9%81%8e-spacecmd-%e6%8c%87%e4%bb%a4%e7%ae%a1%e7%90%86-suma" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Login&lt;span class="hx:absolute hx:-mt-20" id="login"&gt;&lt;/span&gt;
&lt;a href="#login" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- login&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Spacewalk Username: admin
Spacewalk Password:
INFO: Connected to https://suma.example.com/rpc/api as admin&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;填入 Username 和 Password (與 SUMA Web Console 登入的帳密相同)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;列出 SUMA 中已安裝的 base channel&lt;span class="hx:absolute hx:-mt-20" id="列出-suma-中已安裝的-base-channel"&gt;&lt;/span&gt;
&lt;a href="#%e5%88%97%e5%87%ba-suma-%e4%b8%ad%e5%b7%b2%e5%ae%89%e8%a3%9d%e7%9a%84-base-channel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- softwarechannel_listbasechannels -v&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin
sle-product-sles15-sp3-pool-x86_64 : SUSE Linux Enterprise Server 15 SP3 x86_64
sle-product-sles15-sp4-pool-x86_64 : SUSE Linux Enterprise Server 15 SP4 x86_64
sle-product-sles15-sp5-pool-x86_64 : SUSE Linux Enterprise Server 15 SP5 x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;列出 SUMA 中已安裝的 Child Channel&lt;span class="hx:absolute hx:-mt-20" id="列出-suma-中已安裝的-child-channel"&gt;&lt;/span&gt;
&lt;a href="#%e5%88%97%e5%87%ba-suma-%e4%b8%ad%e5%b7%b2%e5%ae%89%e8%a3%9d%e7%9a%84-child-channel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- softwarechannel_listchildchannels sle-product-sles15-sp4-pool-x86_64 -v&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin
sle-manager-tools15-pool-x86_64-sp4 : SUSE Manager Client Tools for SLE 15 x86_64
sle-manager-tools15-updates-x86_64-sp4 : SUSE Manager Client Tools for SLE 15 x86_64
sle-module-basesystem15-sp4-pool-x86_64 : Basesystem Module 15 SP4 x86_64
sle-module-basesystem15-sp4-updates-x86_64 : Basesystem Module 15 SP4 x86_64
sle-module-containers15-sp4-pool-x86_64 : Containers Module 15 SP4 x86_64
sle-module-containers15-sp4-updates-x86_64 : Containers Module 15 SP4 x86_64
sle-module-desktop-applications15-sp4-pool-x86_64 : Desktop Applications Module 15 SP4 x86_64
sle-module-desktop-applications15-sp4-updates-x86_64 : Desktop Applications Module 15 SP4 x86_64
sle-module-packagehub-subpackages15-sp4-pool-x86_64 : SUSE Package Hub 15 SP4 x86_64
sle-module-packagehub-subpackages15-sp4-updates-x86_64 : SUSE Package Hub 15 SP4 x86_64
sle-module-python3-15-sp4-pool-x86_64 : Python 3 Module 15 SP4 x86_64
sle-module-python3-15-sp4-updates-x86_64 : Python 3 Module 15 SP4 x86_64
sle-module-server-applications15-sp4-pool-x86_64 : Server Applications Module 15 SP4 x86_64
sle-module-server-applications15-sp4-updates-x86_64 : Server Applications Module 15 SP4 x86_64
sle-module-transactional-server15-sp4-pool-x86_64 : Transactional Server Module 15 SP4 x86_64
sle-module-transactional-server15-sp4-updates-x86_64 : Transactional Server Module 15 SP4 x86_64
sle-product-sles15-sp4-updates-x86_64 : SUSE Linux Enterprise Server 15 SP4 x86_64
sle15-sp4-installer-updates-x86_64 : SUSE Linux Enterprise Server 15 SP4 x86_64
suse-packagehub-15-sp4-backports-pool-x86_64 : SUSE Package Hub 15 SP4 x86_64
suse-packagehub-15-sp4-pool-x86_64 : SUSE Package Hub 15 SP4 x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;創建 Activation key&lt;span class="hx:absolute hx:-mt-20" id="創建-activation-key"&gt;&lt;/span&gt;
&lt;a href="#%e5%89%b5%e5%bb%ba-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_create [options]
options:
-n NAME
-d DESCRIPTION
-b BASE_CHANNEL
-u set key as universal default
-e [enterprise_entitled,virtualization_host]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example"&gt;&lt;/span&gt;
&lt;a href="#example" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_create \
-n sles-15-sp4 \
-d sles-15-sp4 \
-b sle-product-sles15-sp4-pool-x86_64 \
-e virtualization_host&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin
INFO: Created activation key 1-sles-15-sp4&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Set the usage limit of an activation key&lt;span class="hx:absolute hx:-mt-20" id="set-the-usage-limit-of-an-activation-key"&gt;&lt;/span&gt;
&lt;a href="#set-the-usage-limit-of-an-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;can be a number or unlimited.&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_setusagelimit KEY &amp;lt;usage limit&amp;gt;
usage: activationkey_setusagelimit KEY unlimited&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-1"&gt;&lt;/span&gt;
&lt;a href="#example-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_setusagelimit 1-sles-15-sp4 30&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin
INFO: Created activation key 1-sles-15-sp4&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Set the base channel for an activation key&lt;span class="hx:absolute hx:-mt-20" id="set-the-base-channel-for-an-activation-key"&gt;&lt;/span&gt;
&lt;a href="#set-the-base-channel-for-an-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_setbasechannel KEY CHANNEL&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-2"&gt;&lt;/span&gt;
&lt;a href="#example-2" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_setbasechannel sles-15-sp4 sle-product-sles15-sp4-pool-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Add child channels to an activation key&lt;span class="hx:absolute hx:-mt-20" id="add-child-channels-to-an-activation-key"&gt;&lt;/span&gt;
&lt;a href="#add-child-channels-to-an-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_addchildchannels KEY &amp;lt;CHANNEL ...&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-3"&gt;&lt;/span&gt;
&lt;a href="#example-3" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## Set a var which has include all child channel of sle 15 sp4 base channel
channel=$(spacecmd -- softwarechannel_listchildchannels sle-product-sles15-sp4-pool-x86_64 2&amp;gt; /dev/null)
$ spacecmd -- activationkey_addchildchannels 1-sles-15-sp4 $channel&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Remove child channels from an activation key&lt;span class="hx:absolute hx:-mt-20" id="remove-child-channels-from-an-activation-key"&gt;&lt;/span&gt;
&lt;a href="#remove-child-channels-from-an-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_removechildchannels KEY &amp;lt;CHANNEL ...&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-4"&gt;&lt;/span&gt;
&lt;a href="#example-4" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_removechildchannels 1-sles-15-sp4 sle-module-containers15-sp4-pool-x86_64 sle-module-containers15-sp4-updates-x86_64 sle-module-desktop-applications15-sp4-pool-x86_64 sle-module-desktop-applications15-sp4-updates-x86_64 sle-module-transactional-server15-sp4-pool-x86_64 sle-module-server-applications15-sp4-updates-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;List the base channel associated with an activation key&lt;span class="hx:absolute hx:-mt-20" id="list-the-base-channel-associated-with-an-activation-key"&gt;&lt;/span&gt;
&lt;a href="#list-the-base-channel-associated-with-an-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_listbasechannel KEY&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-5"&gt;&lt;/span&gt;
&lt;a href="#example-5" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_listbasechannel 1-sles-15-sp4&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin
sle-product-sles15-sp4-pool-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;List child channels associated with an activation key&lt;span class="hx:absolute hx:-mt-20" id="list-child-channels-associated-with-an-activation-key"&gt;&lt;/span&gt;
&lt;a href="#list-child-channels-associated-with-an-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_listchildchannels KEY&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-6"&gt;&lt;/span&gt;
&lt;a href="#example-6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_listchildchannels 1-sles-15-sp4&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin
sle-manager-tools15-pool-x86_64-sp4
sle-manager-tools15-updates-x86_64-sp4
sle-module-basesystem15-sp4-pool-x86_64
sle-module-basesystem15-sp4-updates-x86_64
sle-module-packagehub-subpackages15-sp4-pool-x86_64
sle-module-packagehub-subpackages15-sp4-updates-x86_64
sle-module-python3-15-sp4-pool-x86_64
sle-module-python3-15-sp4-updates-x86_64
sle-module-server-applications15-sp4-pool-x86_64
sle-module-transactional-server15-sp4-updates-x86_64
sle-product-sles15-sp4-updates-x86_64
sle15-sp4-installer-updates-x86_64
suse-packagehub-15-sp4-backports-pool-x86_64
suse-packagehub-15-sp4-pool-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Delete an existing activation key&lt;span class="hx:absolute hx:-mt-20" id="delete-an-existing-activation-key"&gt;&lt;/span&gt;
&lt;a href="#delete-an-existing-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_delete KEY&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-7"&gt;&lt;/span&gt;
&lt;a href="#example-7" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_delete 1-sles-15-sp4&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;INFO: Connected to https://suma.example.com/rpc/api as admin
1-sles-15-sp4
Delete activation key(s) [y/N]: y&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;輸入 &lt;code&gt;y&lt;/code&gt;，確認刪除&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;List all existing activation keys&lt;span class="hx:absolute hx:-mt-20" id="list-all-existing-activation-keys"&gt;&lt;/span&gt;
&lt;a href="#list-all-existing-activation-keys" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_list&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-8"&gt;&lt;/span&gt;
&lt;a href="#example-8" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -q -- activationkey_list&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;1-liberty-linux-centos-7
1-liberty-linux-rhel-7
1-oracle-linux-7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Set the contact method to use for systems registered with a specific key&lt;span class="hx:absolute hx:-mt-20" id="set-the-contact-method-to-use-for-systems-registered-with-a-specific-key"&gt;&lt;/span&gt;
&lt;a href="#set-the-contact-method-to-use-for-systems-registered-with-a-specific-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;usage: activationkey_setcontactmethod KEY CONTACT_METHOD&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;The following contact methods are available for use with traditional spacecmd: [&amp;lsquo;default&amp;rsquo;, &amp;lsquo;ssh-push&amp;rsquo;, &amp;lsquo;ssh-push-tunnel&amp;rsquo;]&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4&gt;Example&lt;span class="hx:absolute hx:-mt-20" id="example-9"&gt;&lt;/span&gt;
&lt;a href="#example-9" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -q -- activationkey_setcontactmethod 1-liberty-linux-rhel-7 ssh-push&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>SUMA 從 SUSE Custom Center 同步 Products</title><link>https://blog.kubeantony.com/archive/suse/suma-%E5%BE%9E-suse-custom-center-%E5%90%8C%E6%AD%A5-products/</link><pubDate>Tue, 16 Apr 2024 09:13:46 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suma-%E5%BE%9E-suse-custom-center-%E5%90%8C%E6%AD%A5-products/</guid><description>
&lt;h3&gt;1. SUMA 從 SUSE Custom Center 同步 Products&lt;span class="hx:absolute hx:-mt-20" id="1-suma-從-suse-custom-center-同步-products"&gt;&lt;/span&gt;
&lt;a href="#1-suma-%e5%be%9e-suse-custom-center-%e5%90%8c%e6%ad%a5-products" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;1.1. 新增 Organization Credentials&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;ol&gt;
&lt;li&gt;在 SUSE Manager Web UI, 選擇 &lt;code&gt;Admin&lt;/code&gt; -&amp;gt; &lt;code&gt;Setup Wizard&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;從 &lt;code&gt;Setup Wizard&lt;/code&gt; 頁面選擇 &lt;code&gt;Organization Credentials&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;點選 &lt;code&gt;Add a new credential&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r15J-noda.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;輸入 &lt;code&gt;Username&lt;/code&gt; 和 &lt;code&gt;Password&lt;/code&gt;，確認沒問題後按 &lt;code&gt;Save&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkP3b3i_T.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在 SCC 的 Users -&amp;gt; Organization Credentials 可以看到使用者帳號和密碼
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hy0oGhj_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;1.2. 確認組織憑證已新增成功&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkfNX2jOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;1.3. 列出可加入的 Products&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點選 &lt;code&gt;Products&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1tVDnoda.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>SUSE Linux Enterprise HAE</title><link>https://blog.kubeantony.com/archive/suse/suse-linux-enterprise-hae/</link><pubDate>Wed, 13 Mar 2024 01:29:48 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suse-linux-enterprise-hae/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會介紹，什麼是 SUSE Linux Enterprise HAE，並且介紹它的架構&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h1&gt;Introduction to SUSE Linux Enterprise HA&lt;/h1&gt;&lt;h2&gt;SLE HA Product Overview&lt;span class="hx:absolute hx:-mt-20" id="sle-ha-product-overview"&gt;&lt;/span&gt;
&lt;a href="#sle-ha-product-overview" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;SUSE Linux Enterprise High Availability 可作為 SLE15 的 Extension ( 擴充 ) 來提供&lt;/li&gt;
&lt;li&gt;它由多項 open source clustering technologies 組合而成，包括主要的兩個技術：
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pacemaker&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;資源管理器，用來管理在叢集中的資源，例如: VIP、檔案系統、Apache、資料庫&amp;hellip;等，都可以透過它來管理，來防止服物被中斷&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Corosync&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;確保在叢集中的 Node 之間的資訊進行同步，假設有一台 Node 故障，能夠快速發現，並且要恢復時，能夠把節點快速加回叢集中。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;藉由 SLE HAE 使您能夠在虛擬機、在雲端上的虛擬機和實體機實施的高可用性解決方案&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;SLE HAE 目標&lt;span class="hx:absolute hx:-mt-20" id="sle-hae-目標"&gt;&lt;/span&gt;
&lt;a href="#sle-hae-%e7%9b%ae%e6%a8%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;消除單點故障，以 HANA 為例，它本身就是一種克隆資源，第二台節點本身會去跟第一台主節點同步所有的資料，一但第一台節點當機，第二台節點能夠立即提供服務。&lt;/li&gt;
&lt;li&gt;確保服務的高可用性，一旦有服務在本機發生故障，它能夠幫你把服務檢測，一但在本機不可恢復就會遷移到其他節點上繼續提供服務。&lt;/li&gt;
&lt;li&gt;實現 critical network resources ( 關鍵網路資源 ) 的管理
&lt;ul&gt;
&lt;li&gt;確保 Data ( 數據 ) 能夠一直被存取&lt;/li&gt;
&lt;li&gt;確保 Applications ( 應用 ) 能夠跑的長長久久、穩穩當當&lt;/li&gt;
&lt;li&gt;Services ( 服務 )&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;建立 SLE HAE 的好處&lt;span class="hx:absolute hx:-mt-20" id="建立-sle-hae-的好處"&gt;&lt;/span&gt;
&lt;a href="#%e5%bb%ba%e7%ab%8b-sle-hae-%e7%9a%84%e5%a5%bd%e8%99%95" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;讓服務能夠變成高可用
&lt;ul&gt;
&lt;li&gt;朝著零停機時間邁進&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;降低故障恢復所需的時間&lt;/li&gt;
&lt;li&gt;減少計劃更新所需的停機時間
&lt;ul&gt;
&lt;li&gt;將服務移轉至另一台節點上&lt;/li&gt;
&lt;li&gt;更新 Node 的系統&lt;/li&gt;
&lt;li&gt;再將服務移轉回來&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Cluster Types&lt;span class="hx:absolute hx:-mt-20" id="cluster-types"&gt;&lt;/span&gt;
&lt;a href="#cluster-types" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;SUSE Linux Enterprise HA supports:
&lt;ul&gt;
&lt;li&gt;Local Clusters&lt;/li&gt;
&lt;li&gt;Metro Clusters&lt;/li&gt;
&lt;li&gt;Geo Clusters&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Local Cluster
&lt;ul&gt;
&lt;li&gt;單一個 Cluster 在一個地點&lt;/li&gt;
&lt;li&gt;例如，叢集的所有節點都在一個 Datacenter ( 資料中心 ) 內&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Metro Cluster
&lt;ul&gt;
&lt;li&gt;單一個 Cluster 分佈在多棟建築物中&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Geo Cluster
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;多個&lt;/strong&gt; local clusters ，在地理位置上相互遠離&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Geo Clustering&lt;span class="hx:absolute hx:-mt-20" id="geo-clustering"&gt;&lt;/span&gt;
&lt;a href="#geo-clustering" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;A Geo Cluster consists of:
&lt;ul&gt;
&lt;li&gt;Multiple geographically dispersed sites ( 多個地理分散的地點 )&lt;/li&gt;
&lt;li&gt;A local cluster on each site ( 每個不同的地點都會有一個 local cluster )&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A subscription for SUSE Linux Enterprise HA Extension includes Geo Clustering for SLE HA&lt;/li&gt;
&lt;li&gt;Geo Clustering 提供跨不同地點的故障切換&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SySorrAZa.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;以 SUSE Linux Enterprise High Availability Extension 為基礎建立的 Geo clusters 可以被視為 “overlay” clusters ，每一個 cluster 在傳統的 cluster 中對應的是一個 node，overlay cluster 由 booth cluster ticket manager 管理&lt;/li&gt;
&lt;li&gt;Geo Cluster 中的每一個 Local Cluster 都執行一個 booth 背景程序。 它連接到其他不同地點的 Cluster 中運行的 booth 背景程序，並交換連線詳情。&lt;/li&gt;
&lt;li&gt;booth 背景程序依賴 ticket (在 Cluster 中的一個物件) 來實現叢集資源跨地點的高可用性。 ticket 會決定要在哪一個地點的 Cluster 上要執行哪些 Application。 booth 保證每張 ticket 一次只能授予一個地點的 Cluster。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果兩個 booth 程序之間的通訊中斷，Application 的轉移會由誰決策?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;可能是因為兩個 Cluster 所在的地點之間的網路故障，也可能是因為某個 Cluster 所在的地點網路被中斷，在這種情況下，你需要一個額外的實例 ( 第三個不同地點的 Cluster 或是一個 arbitrator [仲裁器]） 來就跨地點的資源故障轉移等決策達成共識。&lt;/p&gt;
&lt;p&gt;Arbitrator ( 仲裁器 )&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;是叢集之外的單一台 Node，以特殊模式執行 booth 服務。 每個 Geo Cluster 可以有一個或多個 arbitrator。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;最常見的情況可能是一個 Geo Cluster 有兩個地點，在第三個地點上有一個 arbitrator。 這就需要三個 booth 服務。&lt;/p&gt;
&lt;p&gt;也可以運行一個在 兩個地點 的 Geo Cluster 但是沒有 arbitrator。 在這種情況下，Geo Cluster 的管理員需要手動管理 ticket。 如果要同時向多個地點的 Cluster 授予 ticket， booth 會顯示警告。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Primary Components of SLE HA&lt;span class="hx:absolute hx:-mt-20" id="primary-components-of-sle-ha"&gt;&lt;/span&gt;
&lt;a href="#primary-components-of-sle-ha" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;HA Base Components&lt;span class="hx:absolute hx:-mt-20" id="ha-base-components"&gt;&lt;/span&gt;
&lt;a href="#ha-base-components" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Corosync (負責管理叢集的心跳)&lt;/li&gt;
&lt;li&gt;Pacemaker (資源管理器和策略控制器)&lt;/li&gt;
&lt;li&gt;crm shell ( crm 命令來管理叢集)&lt;/li&gt;
&lt;li&gt;Hawk (Web 介面來管理叢集)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Storage Components (可選的)&lt;span class="hx:absolute hx:-mt-20" id="storage-components-可選的"&gt;&lt;/span&gt;
&lt;a href="#storage-components-%e5%8f%af%e9%81%b8%e7%9a%84" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;以下是能做為 HAE Storage 的技術
&lt;ul&gt;
&lt;li&gt;Clustered NFS&lt;/li&gt;
&lt;li&gt;cLVM&lt;/li&gt;
&lt;li&gt;OCFS2 (可以給 Active/Active 的服務使用)&lt;/li&gt;
&lt;li&gt;GFS2 (可以給 Active/Active 的服務使用)&lt;/li&gt;
&lt;li&gt;Cluster Managed MDRAID&lt;/li&gt;
&lt;li&gt;DRBD (只能給 Active/Standby 的服務使用，Active 那台主機可以 rw，Standby 的那台主機只能 read)&lt;/li&gt;
&lt;li&gt;Samba&lt;/li&gt;
&lt;li&gt;Ceph (SES)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Network Load Balancing&lt;span class="hx:absolute hx:-mt-20" id="network-load-balancing"&gt;&lt;/span&gt;
&lt;a href="#network-load-balancing" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Linux IP Virtual Server (LVS)
&lt;ul&gt;
&lt;li&gt;Operates at OSI layer 4 (Transport)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;HAProxy
&lt;ul&gt;
&lt;li&gt;Operates at OSI layer 7 (Application)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Conntracked
&lt;ul&gt;
&lt;li&gt;User state tools for stateful packet inspection for iptables&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Rear
&lt;ul&gt;
&lt;li&gt;Disaster Recovery, Relax and Recover (Rear)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;SLE HA Licensing&lt;span class="hx:absolute hx:-mt-20" id="sle-ha-licensing"&gt;&lt;/span&gt;
&lt;a href="#sle-ha-licensing" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Required subscriptions
&lt;ul&gt;
&lt;li&gt;SLE 15&lt;/li&gt;
&lt;li&gt;SLE 15 HA
&lt;ul&gt;
&lt;li&gt;Includes geo clustering&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Questions and Answers&lt;span class="hx:absolute hx:-mt-20" id="questions-and-answers"&gt;&lt;/span&gt;
&lt;a href="#questions-and-answers" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Q. A SUSE Linux Enterprise HA subscription is included with a SLE15 subscription, True or false?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. False, a SLE HA scbscription is required&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Q. What are the two open source clustering technologies
used by SLE HA?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. Pacemaker and Corosync&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Q. SUSE Linux Enterprise HA supports which types of
cluster?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. Local Clusters, Metro Clusters and Geo Clusters&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Q. A subscription for Geo Clustering for SLE HA is included
with the SLE HA Extension subscription, true or false?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. True&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Terms&lt;span class="hx:absolute hx:-mt-20" id="terms"&gt;&lt;/span&gt;
&lt;a href="#terms" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;RTO - Rcovery Time Objective
&lt;ul&gt;
&lt;li&gt;故障後恢復正常運行的目標時間&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;RPO - Recovery Point Objective
&lt;ul&gt;
&lt;li&gt;可能遺失的資料量&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Cluster Terminology&lt;span class="hx:absolute hx:-mt-20" id="cluster-terminology"&gt;&lt;/span&gt;
&lt;a href="#cluster-terminology" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;High Availability Cluster&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;高可用性叢集的設計主要是為了確保服務的最高可用性。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Node&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;任何電腦，無論是真實電腦還是虛擬電腦，都是 Cluster 的成員。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;CCM&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;Consensus Cluster Membership ( 共識叢集成員資格 )。&lt;/p&gt;
&lt;p&gt;這是決定哪些 Node 組成叢集，並把這個資訊分享給叢集中的所有 Node 。每個叢集的 Node 都運行一個 CCM module。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Quorum&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;如果一個 cluster partition 擁有多數節點 (或投票權)，就被定義為具有仲裁的能力 (quorate)&lt;/p&gt;
&lt;p&gt;A cluster partition is defined to have quorum (is “quorate”) if it has the majority of nodes (or votes)&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Epoch&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;cluster configuration/status 的版本號&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Split Brain&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;cluster nodes 被分為兩個或多個群組，而這些群組彼此不知道對方的存在。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;發生 Split Brain 的原因有可能只是因為機器跟機器之間網路斷線，在只有 2 個節點的情況下，HA 本身不具備要殺死 A 節點還是 B 節點的能力，理論上雙方都會認為自己是存活的一方，此時為了保證共享資源的完整性，雙方都會調用 Fencing 的機制，這時候就會啟動 SDB，就有可能出現一種狀況，那就是 Double Fencing，雙方同時要 Fencing 對方，為了避免這種情況發生，HA 之中可以設定一種參數，來防止雙方同時發出 Fencing。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Fencing&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;防止在 Cluster 中被隔離或 failing 的 Node 存取 shared resource ( 共享資源 ) 。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;何時會觸發這種機制?
答: 在叢集發生 Split Brain 和 啟動/停止服務的動作超過預設的時間時會觸發 Fencing。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Active/Passive&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;active node 上運行一個或多個服務，而 Passive node 則等待 active node 發生故障後再接管服務。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Active/Active&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;每個 node 同時都是 active 和 passive 的。
例如，一個 node 上有一些服務在運行，但它也可以接手另一個 node 上的其他服務。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;SLE 15 HA Architecture&lt;span class="hx:absolute hx:-mt-20" id="sle-15-ha-architecture"&gt;&lt;/span&gt;
&lt;a href="#sle-15-ha-architecture" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJBPyOR-6.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;Membership and messaging layer (Corosync)&lt;span class="hx:absolute hx:-mt-20" id="membership-and-messaging-layer-corosync"&gt;&lt;/span&gt;
&lt;a href="#membership-and-messaging-layer-corosync" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;此元件負責在叢集內傳遞訊息、確保叢集成員資格的一致性，以及計算足夠節點的數量。這些資訊由群組通訊系統 Corosync cluster engine 處理。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sends out messages
&lt;ul&gt;
&lt;li&gt;Example: “I am alive”&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Can use unicast (單播) or multicast (多播)
&lt;ul&gt;
&lt;li&gt;Unicast
&lt;ul&gt;
&lt;li&gt;More secure if multiple cluster share the same network infrastructure&lt;/li&gt;
&lt;li&gt;當叢集中新增或刪除節點時，需要重新配置 corosync&lt;/li&gt;
&lt;li&gt;cloud hosted HA clusters 需要&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Multicast
&lt;ul&gt;
&lt;li&gt;Easy to add nodes with reconfiguring all the existing nodes&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Corosync is a seperate systemd service
- Cloud hosted HA clusters 不能使用 multicast&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByrafuRW6.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Resource Allocation Layer&lt;span class="hx:absolute hx:-mt-20" id="resource-allocation-layer"&gt;&lt;/span&gt;
&lt;a href="#resource-allocation-layer" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;The Resource Allocation Layer is provided by &lt;strong&gt;Pacemaker&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Components&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cluster Resource Manager - CRM&lt;/li&gt;
&lt;li&gt;Cluster Information DataBase - CIB&lt;/li&gt;
&lt;li&gt;Designated Coordinator - DC&lt;/li&gt;
&lt;li&gt;Policy Engine - PE&lt;/li&gt;
&lt;li&gt;Local Resource Manager - LRM&lt;/li&gt;
&lt;li&gt;STONITH&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Cluster Resouce Manager (Pacemaker)&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;Pacemaker 作為叢集資源管理器，是叢集中所有事件的「大腦」。它以 &lt;code&gt;pacemaker-controld&lt;/code&gt; 的形式實現，它是叢集控制器，負責協調所有動作。&lt;/p&gt;
&lt;p&gt;事件可以是節點加入或退出叢集、資源故障，或者計劃的活動，例如維護等。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在 Resouce Allocation layer 和更高層的通訊都是透過 CRM 去溝通&lt;/li&gt;
&lt;li&gt;維運和管理 Cluster Information Base - CIB&lt;/li&gt;
&lt;li&gt;在 Cluster 中的其中一個 CRM 會晉升為 Designated Coordinator – DC&lt;/li&gt;
&lt;li&gt;Local CRM 會在叢集中的每一個 Node 上跑&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Cluster Information Database (CIB)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pacemaker 會在每一台 node 上維護 cluster information database。&lt;/li&gt;
&lt;li&gt;它是一個 XML 的叢集設定檔，包含 :
&lt;ul&gt;
&lt;li&gt;All cluster options&lt;/li&gt;
&lt;li&gt;nodes&lt;/li&gt;
&lt;li&gt;resources&lt;/li&gt;
&lt;li&gt;constraints&lt;/li&gt;
&lt;li&gt;the relationship to each other&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;它不僅是叢集的設定檔，也會反映叢集目前的狀態&lt;/li&gt;
&lt;li&gt;每個叢集節點都會儲存一個 CIB 的副本，並且會在叢集中同步&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pacemaker-based&lt;/code&gt; 背景程序，負責讀取和寫入 Cluster 的設定和狀態。&lt;/li&gt;
&lt;li&gt;設定檔的版本儲存在每個 Node 的硬碟上&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Designated Coordinator (DC)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在 Cluster 的所有 Node 上，其中一個 CRM 會透過選舉晉升為 Designated Coordinator
&lt;ul&gt;
&lt;li&gt;當 Cluster 中沒有 DC 存在時，會進行選舉&lt;/li&gt;
&lt;li&gt;如果當前 DC 因任何原因離開 Cluster 時，也會進行選舉&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;決定是否必須在整個叢集範圍內進行變更
&lt;ul&gt;
&lt;li&gt;範例
&lt;ul&gt;
&lt;li&gt;移動資源&lt;/li&gt;
&lt;li&gt;封鎖一個節點&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Maintains the master copy of the CIB&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Policy Engine (PE)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Policy Engine 在每個 Node 上運行，但 DC 上的引擎是 active 的。&lt;/li&gt;
&lt;li&gt;以 &lt;code&gt;pacemaker-schedulerd&lt;/code&gt; 背景程序的形式實現。&lt;/li&gt;
&lt;li&gt;當需要進行 cluster transition 時，&lt;code&gt;pacemaker-schedulerd&lt;/code&gt; 會根據目前狀態和設定計算叢集的下一個狀態。&lt;/li&gt;
&lt;li&gt;它決定需要安排哪些操作來實現下一狀態。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;strong&gt;描述&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;根據 CIB 的信息，Policy Engine 會計算出 Cluster 的理想狀態以及實現該狀態的方法。 PE 向 DC 發送指令清單。 DC 透過 Corosync 發送指令，其他節點上的 crmd 對等節點會接收到這些指令。 每個 crmd 使用其 LRM 執行資源修改。 lrmd 不具備叢集感知能力，可直接與資源代理程式互動。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Local resource manager (LRM)&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;負責接收 CRM 的請求&lt;/li&gt;
&lt;li&gt;呼叫 local Resource Agents
&lt;ul&gt;
&lt;li&gt;CRM → LRM → RA&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Task performed on Resource Agents:
&lt;ul&gt;
&lt;li&gt;Start&lt;/li&gt;
&lt;li&gt;Stop&lt;/li&gt;
&lt;li&gt;Monitor&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Is authoritative ( 有權威性的 ) about the state of resouces on the local node&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;strong&gt;STONITH&lt;/strong&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;STONITH 是一種隔離技術，用來隔離故障的節點，防止它繼續造成影響。 STONITH 的英文全名是 Shoot-The-Other-Node-In-The-Head。&lt;/p&gt;
&lt;p&gt;STONITH 通常使用遠端電源開關來實現。 當 Pacemaker 偵測到某個節點故障時，會發出命令給 STONITHd，要求它隔離故障節點。STONITHd 會根據 CIB 中的設定，選擇合適的 STONITH 裝置，並對它發出指令，將故障節點關機或斷電。&lt;/p&gt;
&lt;p&gt;在 Pacemaker 中，STONITH 裝置被當作資源來管理，以便於對其故障進行監控，而STONITHd 則負責了解 STONITH 拓撲 (裝置的類型、名稱、位置等資訊)，因此其客戶端只需請求對節點進行圍欄，剩下的就交給 STONITHd 了。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1GNNyNuT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Summary&lt;span class="hx:absolute hx:-mt-20" id="summary"&gt;&lt;/span&gt;
&lt;a href="#summary" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;CIB 使用 XML 格式記錄叢集的設定和所有資源的狀況，所有叢集的節點都會自動同步 CIB 的內容，讓 PEngine 可以根據這些資料來計算出叢集的理想狀態，並想出達成理想狀態的方法。&lt;/p&gt;
&lt;p&gt;PEngine 會把一連串指示交給 DC，DC 可以想像成是指揮官，負責指揮整個叢集的運作。 Pacemaker 會選出一個 CRMd 當成 DC，由它來統一做決策。如果選出來的 CRMd 失效了，就會趕快選出另一個來接手。&lt;/p&gt;
&lt;p&gt;DC 會按照 PEngine 的指示，指揮其他節點上的 LRMd 或 CRMd 工作。 它會透過叢集的通訊系統發送指令，叫這些節點照著做。&lt;/p&gt;
&lt;p&gt;所有節點都會把自己的工作結果回報給 DC。 DC 會比對預期結果和實際結果，如果有問題，就會請 PEngine 重新計算理想狀態，想出解決辦法。&lt;/p&gt;
&lt;p&gt;有時候，為了保護資料或讓資源復原，可能需要強制關閉某些節點。 這時 Pacemaker 就會用 STONITHd 來處理。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Resource Layer&lt;span class="hx:absolute hx:-mt-20" id="resource-layer"&gt;&lt;/span&gt;
&lt;a href="#resource-layer" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;包含一個或多個 Resource Agents&lt;/li&gt;
&lt;li&gt;Examples of resources include:
&lt;ul&gt;
&lt;li&gt;IPaddr2
&lt;ul&gt;
&lt;li&gt;An ip address resource&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;STONITH
&lt;ul&gt;
&lt;li&gt;A fencing resource&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Resource Agent&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Resouce Agents 就是程式
&lt;ul&gt;
&lt;li&gt;通常是 shell scripts&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Resource Agents can:
&lt;ul&gt;
&lt;li&gt;Start&lt;/li&gt;
&lt;li&gt;Stop&lt;/li&gt;
&lt;li&gt;Monitor&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;致力於特定類型的服務
&lt;ul&gt;
&lt;li&gt;Example: IPaddr2&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;會被 Local Resouce Manager 呼叫
&lt;ul&gt;
&lt;li&gt;回傳值會傳回 CRM&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Resource Agent Providers&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;以下是多個 Resource Agent providers
&lt;ul&gt;
&lt;li&gt;OCF
&lt;ul&gt;
&lt;li&gt;Open Cluster Framework&lt;/li&gt;
&lt;li&gt;Recommended to use OCF providers if available&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;LSB
&lt;ul&gt;
&lt;li&gt;Linux Standards Base&lt;/li&gt;
&lt;li&gt;Provided by the operating system and found in /etc/init.dge&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;systemd
&lt;ul&gt;
&lt;li&gt;Directly manage systemd services&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;service
&lt;ul&gt;
&lt;li&gt;Sopports systemd, init and upstart
&lt;ul&gt;
&lt;li&gt;Useful if the cluster has a mix of service types&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;STONITH
&lt;ul&gt;
&lt;li&gt;Used exclusivly for fencing related resources&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Third Party Resource Agents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Third parties can include custom Resouce Agents
&lt;ul&gt;
&lt;li&gt;These provide out of the box cluster integration for third party applications&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;STONITH&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;全名 : “Shoot The Other Node In The Head”&lt;/li&gt;
&lt;li&gt;Pacemaker provides STONITH&lt;/li&gt;
&lt;li&gt;Provides a node level fencing mechanism&lt;/li&gt;
&lt;li&gt;Fencing is required if a problem occurs and a node must be denied access to a cluster resource
&lt;ul&gt;
&lt;li&gt;Example: A node is denied access to a filesystem so it can be loaded on another node&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Distributed Lock Manager&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Provides generic cluster wide locking facilities
&lt;ul&gt;
&lt;li&gt;Allow the use of active/active storage&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Utilizes Pacemaker cluster membership services that run in user space
&lt;ul&gt;
&lt;li&gt;Therefore runs as a reources on each node&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Cluster Logical Volume Manager&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Uses the daemon &lt;code&gt;lvmlockd&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Replaces clvmd&lt;/li&gt;
&lt;li&gt;lvmlockd introduced with SLE15 HA&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Used with LVM2 in a cluster enviroment&lt;/li&gt;
&lt;li&gt;Protects the LVM metadata on shared storage&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;Questions and Answers&lt;span class="hx:absolute hx:-mt-20" id="questions-and-answers-1"&gt;&lt;/span&gt;
&lt;a href="#questions-and-answers-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Q. Name three components of the Resource Allocation Layer&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. Cluster Resource Manager, Cluster Information Base, Designated Coordinator, Policy Engine, Local Resource Manager&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Q. What does SLE HA use as its Cluster Resource
Manager?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. Pacemaker&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Q. What does SLE HA use as its Messaging component?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. Corosync&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Q. What type of tasks does a Resource Agent perform, give three examples?&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;A. Start, Stop and Monitor resouces&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Cluster Managed Storage</title><link>https://blog.kubeantony.com/archive/suse/cluster-managed-storage/</link><pubDate>Wed, 13 Mar 2024 01:24:38 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/cluster-managed-storage/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會採取 Step by Step 和 ScreenShot 的方式介紹，如何建立與管理 Cluster Managed Storage&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 設定 sle-ha-1 存取 san 上用於 DRBD 的 storage&lt;span class="hx:absolute hx:-mt-20" id="1-設定-sle-ha-1-存取-san-上用於-drbd-的-storage"&gt;&lt;/span&gt;
&lt;a href="#1-%e8%a8%ad%e5%ae%9a-sle-ha-1-%e5%ad%98%e5%8f%96-san-%e4%b8%8a%e7%94%a8%e6%96%bc-drbd-%e7%9a%84-storage" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Task 1: Connect sle-ha-1 to the iSCSI device to be used for the DRBD&lt;span class="hx:absolute hx:-mt-20" id="task-1-connect-sle-ha-1-to-the-iscsi-device-to-be-used-for-the-drbd"&gt;&lt;/span&gt;
&lt;a href="#task-1-connect-sle-ha-1-to-the-iscsi-device-to-be-used-for-the-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;SSH 連線至 sle-ha-1&lt;/li&gt;
&lt;li&gt;啟動 Yast 的 iSCSI initiator module&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 iscsi-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;After writing configuration 的值改成 : &lt;code&gt;Restart&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkHnDNWOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;選擇 Connected Targets 選項&lt;/li&gt;
&lt;li&gt;選擇 Add&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkjAu4b_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;輸入以下訊息 :&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;IP Address: 10.12.2.13
Port: 3260
No Discovery Authentication: Box checked&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;選擇 Next&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1-DYVWOp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在 iSCSI Initiator Discovery 螢幕中會看到多個 targets&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;選擇 &lt;code&gt;iqn.2023-11.com.example:app-disk1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;選擇 &lt;code&gt;Connect&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJTE5EWdT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;把 &lt;code&gt;Startup&lt;/code&gt; 選項的值改成 : &lt;code&gt;automatic&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;選擇 &lt;code&gt;Next&lt;/code&gt; → &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJqY9NbO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1cncEWOa.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="11"&gt;
&lt;li&gt;In the iSCSI Initiator Overview screens Connected Targets tab check the Start-up is set to automatic&lt;/li&gt;
&lt;li&gt;點選 OK&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rkRKoNZO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Task 2: Check the iscsi configuration&lt;span class="hx:absolute hx:-mt-20" id="task-2-check-the-iscsi-configuration"&gt;&lt;/span&gt;
&lt;a href="#task-2-check-the-iscsi-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;檢查總共有 4 個連接，3 個是 sbd，另外一個是給 DRBD&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo iscsiadm -m session&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;tcp: [11] 10.12.2.13:3260,1 iqn.2023-11.com.example:sbd-disk1 (non-flash)
tcp: [12] 10.12.2.13:3260,1 iqn.2023-11.com.example:sdb-disk2 (non-flash)
tcp: [13] 10.12.2.13:3260,1 iqn.2023-11.com.example:sdb-disk3 (non-flash)
tcp: [14] 10.12.2.13:3260,1 iqn.2023-11.com.example:app-disk1 (non-flash)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;列出 scsi disks&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsscsi&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[0:0:0:0] disk QEMU QEMU HARDDISK 2.5&amp;#43; /dev/sda
[2:0:0:0] cd/dvd QEMU QEMU DVD-ROM 2.5&amp;#43; /dev/sr0
[3:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdb
[4:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdc
[5:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdd
[6:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sde&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;檢查 persistent device names 和空間大小&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsblk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 8M 0 part
└─sda2 8:2 0 200G 0 part /boot/grub2/x86_64-efi
/home
/boot/grub2/i386-pc
/root
/var
/opt
/tmp
/usr/local
/srv
/.snapshots
/
sdb 8:16 0 1G 0 disk
└─mpathd 254:0 0 1G 0 mpath
sdc 8:32 0 1G 0 disk
└─mpathe 254:3 0 1G 0 mpath
sdd 8:48 0 1G 0 disk
└─mpathf 254:1 0 1G 0 mpath
sde 8:64 0 100G 0 disk
└─mpathb 254:2 0 100G 0 mpath
sr0 11:0 1 13.5G 0 rom&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;2. Configure sle-ha-2 access to storage for DRBD&lt;span class="hx:absolute hx:-mt-20" id="2-configure-sle-ha-2-access-to-storage-for-drbd"&gt;&lt;/span&gt;
&lt;a href="#2-configure-sle-ha-2-access-to-storage-for-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Task 1: Connect sle-ha-2 to the iSCSI device to be used for the DRBD&lt;span class="hx:absolute hx:-mt-20" id="task-1-connect-sle-ha-2-to-the-iscsi-device-to-be-used-for-the-drbd"&gt;&lt;/span&gt;
&lt;a href="#task-1-connect-sle-ha-2-to-the-iscsi-device-to-be-used-for-the-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;SSH 連線至 &lt;code&gt;sle-ha-2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;啟動 Yast 的 iSCSI initiator module&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 iscsi-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;After writing configuration 的值改成 : &lt;code&gt;Restart&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkHnDNWOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;選擇 Connected Targets 選項&lt;/li&gt;
&lt;li&gt;選擇 Add&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkjAu4b_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;輸入以下訊息 :&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;IP Address: 10.12.2.13
Port: 3260
No Discovery Authentication: Box checked&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;選擇 Next&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1-DYVWOp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在 iSCSI Initiator Discovery 螢幕中會看到多個 targets&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;選擇 &lt;code&gt;iqn.2023-11.com.example:app-disk2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;選擇 &lt;code&gt;Connect&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJmmerZup.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;把 &lt;code&gt;Startup&lt;/code&gt; 選項的值改成 : &lt;code&gt;automatic&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;選擇 &lt;code&gt;Next&lt;/code&gt; → &lt;code&gt;Next&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJqY9NbO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1CUgrZdT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="11"&gt;
&lt;li&gt;In the iSCSI Initiator Overview screens Connected Targets tab check the Start-up is set to automatic&lt;/li&gt;
&lt;li&gt;點選 OK&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByKOgBbup.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Task 2: Check the iscsi configuration&lt;span class="hx:absolute hx:-mt-20" id="task-2-check-the-iscsi-configuration-1"&gt;&lt;/span&gt;
&lt;a href="#task-2-check-the-iscsi-configuration-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;檢查總共有 4 個連接，3 個是 sbd，另外一個是給 DRBD&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo iscsiadm -m session&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;tcp: [11] 10.12.2.13:3260,1 iqn.2023-11.com.example:sbd-disk1 (non-flash)
tcp: [12] 10.12.2.13:3260,1 iqn.2023-11.com.example:sdb-disk2 (non-flash)
tcp: [13] 10.12.2.13:3260,1 iqn.2023-11.com.example:sdb-disk3 (non-flash)
tcp: [14] 10.12.2.13:3260,1 iqn.2023-11.com.example:app-disk2 (non-flash)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;列出 scsi disks&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsscsi&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[0:0:0:0] disk QEMU QEMU HARDDISK 2.5&amp;#43; /dev/sda
[2:0:0:0] cd/dvd QEMU QEMU DVD-ROM 2.5&amp;#43; /dev/sr0
[3:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdb
[4:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdc
[5:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdd
[6:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sde&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;檢查 persistent device names 和空間大小&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsblk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 8M 0 part
└─sda2 8:2 0 200G 0 part /var
/tmp
/home
/root
/usr/local
/srv
/boot/grub2/i386-pc
/boot/grub2/x86_64-efi
/.snapshots
/opt
/
sdb 8:16 0 1G 0 disk
└─mpathd 254:1 0 1G 0 mpath
sdc 8:32 0 1G 0 disk
└─mpathe 254:2 0 1G 0 mpath
sdd 8:48 0 1G 0 disk
└─mpathf 254:3 0 1G 0 mpath
sde 8:64 0 100G 0 disk
└─mpathc 254:0 0 100G 0 mpath
sr0 11:0 1 13.5G 0 rom&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. Create cluster IPaddr2 resources for DRBD&lt;span class="hx:absolute hx:-mt-20" id="3-create-cluster-ipaddr2-resources-for-drbd"&gt;&lt;/span&gt;
&lt;a href="#3-create-cluster-ipaddr2-resources-for-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Task 1: Create the first IP address resource&lt;span class="hx:absolute hx:-mt-20" id="task-1-create-the-first-ip-address-resource"&gt;&lt;/span&gt;
&lt;a href="#task-1-create-the-first-ip-address-resource" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;SSH 連線至 sle-ha-1&lt;/li&gt;
&lt;li&gt;open the crm shell in the configure context&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;建立 IPaddr2 Resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ primitive p-IP_20 IPaddr2 \
params ip=10.12.2.20 nic=eth1 cidr_netmask=24 \
op start timeout=20 \
op stop timeout=20 \
op monitor interval=10 timeout=20&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Commit the changes:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ commit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;Change to the resource context&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cd ../resource&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;Show the status of the new resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ status p-IP_20&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;resource p-IP_20 is running on: sle-ha-2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Task 2: Create the second IP address resource&lt;span class="hx:absolute hx:-mt-20" id="task-2-create-the-second-ip-address-resource"&gt;&lt;/span&gt;
&lt;a href="#task-2-create-the-second-ip-address-resource" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;In the crm shell change back to the configure context:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cd ../configure&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立 IPaddr2 Resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ primitive p-IP_21 IPaddr2 \
params ip=10.12.2.21 nic=eth1 cidr_netmask=24 \
op start timeout=20 \
op stop timeout=20 \
op monitor interval=10 timeout=20&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Commit the changes:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ commit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Change to the resource context&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cd ../resource&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;Show the status of the new resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ status p-IP_21&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;resource p-IP_21 is running on: sle-ha-2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;Exit the crm shell:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ q&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. Configure and test DRBD outside the cluster environment&lt;span class="hx:absolute hx:-mt-20" id="4-configure-and-test-drbd-outside-the-cluster-environment"&gt;&lt;/span&gt;
&lt;a href="#4-configure-and-test-drbd-outside-the-cluster-environment" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Task 1: Create mount points for DRBD&lt;span class="hx:absolute hx:-mt-20" id="task-1-create-mount-points-for-drbd"&gt;&lt;/span&gt;
&lt;a href="#task-1-create-mount-points-for-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 sle-ha-1 上執行以下建立目錄的命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir /drbdvol&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;在 sle-ha-2 上執行以下建立目錄的命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir /drbdvol&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Task 2: Configure DRBD using YaST&lt;span class="hx:absolute hx:-mt-20" id="task-2-configure-drbd-using-yast"&gt;&lt;/span&gt;
&lt;a href="#task-2-configure-drbd-using-yast" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 sle-ha-1 節點上找出測試 DRBD 用的 Disk 對應的 ID&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo multipath -ll mpathb&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mpathb (360014053be325d33ebb4e7e966df3a4f) dm-2 LIO-ORG,IBLOCK
size=100G features=&amp;#39;1 queue_if_no_path&amp;#39; hwhandler=&amp;#39;1 alua&amp;#39; wp=rw
`-&amp;#43;- policy=&amp;#39;service-time 0&amp;#39; prio=50 status=active
`- 6:0:0:0 sde 8:64 active ready running&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;透過 ID 列出 Disk&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /dev/disk/by-id/scsi-3600*&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該和以下類似 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;/dev/disk/by-id/scsi-360014053be325d33ebb4e7e966df3a4f -&amp;gt; ../../dm-2
/dev/disk/by-id/scsi-3600140552d947e312e24a4f8a9a0f9b1 -&amp;gt; ../../dm-1
/dev/disk/by-id/scsi-36001405c2d16cc2065f4004ac0a1c188 -&amp;gt; ../../dm-0
/dev/disk/by-id/scsi-36001405e9b0b982a26f493e97b88ca61 -&amp;gt; ../../dm-3&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;確認 &lt;code&gt;/dev/disk/by-id/scsi-360014053be325d33ebb4e7e966df3a4f&lt;/code&gt; 對應的是測試 DRBD 用的 Disk&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Configure DRBD on sle-ha-1 using yast:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 drbd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;At the Warning screen click &lt;code&gt;YES&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Syp48SZdp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;讓 Booting option 保留預設值: &lt;code&gt;Off - Server Only Starts Manually&lt;/code&gt; ，因為不要透過 &lt;code&gt;systemd&lt;/code&gt; 去管理 DRBD&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryyRUBW_6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;在左側選單選 &lt;code&gt;Resource Configuration&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;選擇 &lt;code&gt;Add&lt;/code&gt; 開始新增 DRBD configuration&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1QBwSb_a.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;輸入以下內容 :&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;Resource Name: &lt;code&gt;r0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Address Port: &lt;code&gt;10.12.2.20:7788&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Device: &lt;code&gt;/dev/drbd0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Disk: &lt;code&gt;&amp;lt;enter the disk by id noted in step 2 above&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;for example: &lt;code&gt;/dev/disk/by-id/scsi-360014053be325d33ebb4e7e966df3a4f&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Meta-disk: &lt;code&gt;internal&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;點選 &lt;code&gt;Save&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryKjTSbuT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="10"&gt;
&lt;li&gt;開始新增 sle-ha-2 到 DRBD configuration&lt;/li&gt;
&lt;li&gt;在 sle-ha-2 節點上找出測試 DRBD 用的 Disk 對應的 ID&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo multipath -ll mpathc&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mpathc (36001405ee25a89d7a8a4df09f6a3a5f0) dm-0 LIO-ORG,IBLOCK
size=100G features=&amp;#39;1 queue_if_no_path&amp;#39; hwhandler=&amp;#39;1 alua&amp;#39; wp=rw
`-&amp;#43;- policy=&amp;#39;service-time 0&amp;#39; prio=50 status=active
`- 6:0:0:0 sde 8:64 active ready running&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="12"&gt;
&lt;li&gt;透過 ID 列出 Disk&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /dev/disk/by-id/scsi-3600*&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該和以下類似 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;/dev/disk/by-id/scsi-3600140552d947e312e24a4f8a9a0f9b1 -&amp;gt; ../../dm-3
/dev/disk/by-id/scsi-36001405c2d16cc2065f4004ac0a1c188 -&amp;gt; ../../dm-1
/dev/disk/by-id/scsi-36001405e9b0b982a26f493e97b88ca61 -&amp;gt; ../../dm-2
/dev/disk/by-id/scsi-36001405ee25a89d7a8a4df09f6a3a5f0 -&amp;gt; ../../dm-0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;確認 &lt;code&gt;/dev/disk/by-id/scsi-36001405ee25a89d7a8a4df09f6a3a5f0&lt;/code&gt; 對應的是測試 DRBD 用的 Disk&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="13"&gt;
&lt;li&gt;Continue configuring DRBD using yast. in the DRBD - Resource Basic Configuration screen click &lt;code&gt;Add&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Complete the form using the details below:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;Name: &lt;code&gt;sle-ha-2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryTEPLZ_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="15"&gt;
&lt;li&gt;點選 &lt;code&gt;OK&lt;/code&gt;，再輸入以下內容 :&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;Resource Name: &lt;code&gt;r0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Address Port: &lt;code&gt;10.12.2.21:7788&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Device: &lt;code&gt;/dev/drbd0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Disk: &lt;code&gt;&amp;lt;enter the disk by id noted in step 12 above&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;for example: &lt;code&gt;/dev/disk/by-id/scsi-36001405ee25a89d7a8a4df09f6a3a5f0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Meta-disk: &lt;code&gt;internal&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="16"&gt;
&lt;li&gt;點選 Save&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ry3dPUbda.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="17"&gt;
&lt;li&gt;點選 OK -&amp;gt; Finish&lt;/li&gt;
&lt;li&gt;View the content of the &lt;code&gt;r0.res&lt;/code&gt; file&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo cat /etc/drbd.d/r0.res&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;resource r0 {
disk {
on-io-error pass_on;
}
net {
protocol C;
}
connection-mesh {
hosts sle-ha-1 sle-ha-2;
}
on sle-ha-1 {
address 10.12.2.20:7788;
device /dev/drbd0;
disk /dev/disk/by-id/scsi-360014053be325d33ebb4e7e966df3a4f;
meta-disk internal;
node-id 0;
}
on sle-ha-2 {
address 10.12.2.21:7788;
device /dev/drbd0;
disk /dev/disk/by-id/scsi-36001405ee25a89d7a8a4df09f6a3a5f0;
meta-disk internal;
node-id 1;
}
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="20"&gt;
&lt;li&gt;把設定檔同步到 sle-ha-2&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo csync2 -xv&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Marking file as dirty: /etc/sysconfig/nfs
Marking file as dirty: /etc/lvm/lvm.conf
Marking file as dirty: /etc/drbd.d/r0.res
Marking file as dirty: /etc/drbd.d/global_common.conf.YaST2save
Marking file as dirty: /etc/drbd.d/global_common.conf
Marking file as dirty: /etc/drbd.conf
Connecting to host sle-ha-2 (SSL) ...
Connect to 192.168.11.172:30865 (sle-ha-2).
Updating /etc/drbd.conf on sle-ha-2 ...
Updating /etc/drbd.d/global_common.conf on sle-ha-2 ...
Updating /etc/drbd.d/global_common.conf.YaST2save on sle-ha-2 ...
Updating /etc/drbd.d/r0.res on sle-ha-2 ...
Updating /etc/lvm/lvm.conf on sle-ha-2 ...
Updating /etc/sysconfig/nfs on sle-ha-2 ...
File is already up to date on peer.
Connection closed.
Finished with 0 errors.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Task 3: Complete the configuration of DRBD&lt;span class="hx:absolute hx:-mt-20" id="task-3-complete-the-configuration-of-drbd"&gt;&lt;/span&gt;
&lt;a href="#task-3-complete-the-configuration-of-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;把 &lt;code&gt;10.12.2.20&lt;/code&gt; 這個 IP 設定在 sle-ha-1 主機上，並且設定 &lt;code&gt;10.12.2.21&lt;/code&gt; 在 sle-ha-2 主機上&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure
$ location loc_p-IP_20 p-IP_20 -inf: sle-ha-2
$ location loc_p-IP_21 p-IP_21 -inf: sle-ha-1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Ensure the resources are running on the required nodes:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cd ../resource
$ stop p-IP_20
$ stop p-IP_21
$ start p-IP_20
$ locate p-IP_20
resource p-IP_20 is running on: sle-ha-1
$ start p-IP_21
$ locate p-IP_21
resource p-IP_21 is running on: sle-ha-2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Exit the crm shell:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ q&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;在 sle-ha-1 上建立 DRBD Resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm create-md r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;initializing activity log
initializing bitmap (3200 KB) to all zero
Writing meta data...
New drbd meta data block successfully created.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;Bring up r0&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm up r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --== Thank you for participating in the global usage survey ==--
The server&amp;#39;s response is:
you are the 116812th user to install this version&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;
&lt;p&gt;You will now repeat some steps on sle-ha-2&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;在 sle-ha-2 上建立 DRBD Resource&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm create-md r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;initializing activity log
initializing bitmap (3200 KB) to all zero
Writing meta data...
New drbd meta data block successfully created.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;Bring up r0&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm up r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --== Thank you for participating in the global usage survey ==--
The server&amp;#39;s response is:
you are the 116812th user to install this version&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;
&lt;p&gt;To finalize and test the DRBD configuration you need to temporarily start the service. Do NOT enable the DRBD service because it will be managed by the cluster. Start the drbd service on nodes 1 and 2. Note: The startup on the first node will wait to contact the drbd service on the second node&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;先在 sle-ha-2 啟動 drbd 服務&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh rancher@sle-ha-2 sudo systemctl start drbd &amp;amp;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[1] 23818&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="11"&gt;
&lt;li&gt;在 sle-ha-1 啟動 drbd 服務&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl start drbd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[1]&amp;#43; Done ssh rancher@sle-ha-2 sudo systemctl start drbd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="12"&gt;
&lt;li&gt;Check the status of drbd resource r0 on sle-ha-2:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh rancher@sle-ha-2 sudo drbdadm status r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;r0 role:Secondary
disk:Inconsistent
sle-ha-1 role:Secondary
peer-disk:Inconsistent&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="12"&gt;
&lt;li&gt;Check the status of drbd resource r0 on sle-ha-1:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm status r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;r0 role:Secondary
disk:Inconsistent
sle-ha-2 role:Secondary
peer-disk:Inconsistent&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="13"&gt;
&lt;li&gt;force sle-ha-1 to be the primary and initiate a synchronization&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm primary --force r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="14"&gt;
&lt;li&gt;View the status:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm status r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;r0 role:Primary
disk:UpToDate
sle-ha-2 role:Secondary
replication:SyncSource peer-disk:Inconsistent done:0.29&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="15"&gt;
&lt;li&gt;Note the last line, the disks are preforming and initial synchronization. Do NOT continue until synchronization has completed&lt;/li&gt;
&lt;li&gt;When synchronization has completed the output of the command drbdadm status r0 should look like this:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;r0 role:Primary
disk:UpToDate
sle-ha-2 role:Secondary
peer-disk:UpToDate&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="16"&gt;
&lt;li&gt;Create a file system on the DRBD r0 resource:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkfs.xfs /dev/drbd0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;meta-data=/dev/drbd0 isize=512 agcount=4, agsize=6553398 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=0 bigtime=0 inobtcount=0
data = bsize=4096 blocks=26213591, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=12799, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Task 4: Test the DRBD configuration&lt;span class="hx:absolute hx:-mt-20" id="task-4-test-the-drbd-configuration"&gt;&lt;/span&gt;
&lt;a href="#task-4-test-the-drbd-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 sle-ha-1 上 mount the filesystem:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mount /dev/drbd0 /mnt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Create a file:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo touch /mnt/file.txt &amp;amp;&amp;amp; ls -l /mnt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0
-rw-r--r-- 1 root root 0 Jan 2 18:26 file.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Unmount the filesystem:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo umount /mnt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Demote sle-ha-1 to secondary&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm secondary r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;promote sle-ha-2 to primary&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh sle-ha-2 &amp;#39;sudo drbdadm primary r0&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;View the status of the DRBD device&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm status r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;r0 role:Secondary
disk:UpToDate
sle-ha-2 role:Primary
peer-disk:UpToDate&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;在 sle-ha-2 上 Mount the filesystem，並查看檔案是否存在&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh sle-ha-2 &amp;#39;sudo mount /dev/drbd0 /mnt &amp;amp;&amp;amp; ls -l /mnt&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0
-rw-r--r-- 1 root root 0 Jan 2 18:26 file.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;在 sle-ha-2 上 Create a file&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh sle-ha-2 &amp;#39;sudo touch /mnt/node2.txt &amp;amp;&amp;amp; ls -l /mnt&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0
-rw-r--r-- 1 root root 0 Jan 2 18:26 file.txt
-rw-r--r-- 1 root root 0 Jan 2 18:32 node2.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;在 sle-ha-2 上 Unmount the filesystem:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh sle-ha-2 &amp;#39;sudo umount /mnt&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="10"&gt;
&lt;li&gt;在 sle-ha-2 上 Demote this node to secondary:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ssh sle-ha-2 &amp;#39;sudo drbdadm secondary r0&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;the primary is going to be managed by the cluster. So we do not want
either of these to be a primary when it&amp;rsquo;s under cluster control.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="11"&gt;
&lt;li&gt;Confirm node2 r0 is a secondary:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo drbdadm status r0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;r0 role:Secondary
disk:UpToDate
sle-ha-2 role:Secondary
peer-disk:UpToDate&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="12"&gt;
&lt;li&gt;Stop the DRBD service on sle-ha-1 and sle-ha-2&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl stop drbd &amp;amp;&amp;amp; ssh sle-ha-2 &amp;#39;sudo systemctl stop drbd&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;5. Create and configure cluster resources required for DRBD&lt;span class="hx:absolute hx:-mt-20" id="5-create-and-configure-cluster-resources-required-for-drbd"&gt;&lt;/span&gt;
&lt;a href="#5-create-and-configure-cluster-resources-required-for-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Task 1: Create a DRBD cluster resource and a make it a multistate resource&lt;span class="hx:absolute hx:-mt-20" id="task-1-create-a-drbd-cluster-resource-and-a-make-it-a-multistate-resource"&gt;&lt;/span&gt;
&lt;a href="#task-1-create-a-drbd-cluster-resource-and-a-make-it-a-multistate-resource" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 sle-ha-1 執行 crm shell in the configure context:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;crm(live/sle-ha-1)configure#&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立 DRBD Primitive Reources&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ primitive p-drbd0 ocf:linbit:drbd \
params drbd_resource=r0 drbdconf=&amp;#34;/etc/drbd.conf&amp;#34; \
op monitor interval=29s role=Master \
op monitor interval=31s role=Slave&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;建立 DRBD Multi-State resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ clone ms-drbd0 p-drbd0 meta master-max=1 master-node-max=1 \
clone-max=2 clone-node-max=1 notify=true promotable=true&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Commit the changes&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ commit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Task 2: Create a file system cluster resource for the drbd volume, a colocation constraint and an order constraint&lt;span class="hx:absolute hx:-mt-20" id="task-2-create-a-file-system-cluster-resource-for-the-drbd-volume-a-colocation-constraint-and-an-order-constraint"&gt;&lt;/span&gt;
&lt;a href="#task-2-create-a-file-system-cluster-resource-for-the-drbd-volume-a-colocation-constraint-and-an-order-constraint" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 sle-ha-1 執行 crm shell in the configure context:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;crm(live/sle-ha-1)configure#&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;create a filesystem resource for the DBRD device:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ primitive p-drbdvol Filesystem \
params device=&amp;#34;/dev/drbd0&amp;#34; directory=&amp;#34;/drbdvol&amp;#34; fstype=xfs \
op start timeout=60 \
op stop timeout=60 \
op monitor timeout=40 interval=20&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Create an order constraint to ensure that the DRBD Multi-State resource is promoted to master before the filesystem resource is started (mounted):&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ order drbdvol_after_ms-drbd0 inf: ms-drbd0:promote \
p-drbdvol:start&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Create a colocation constraint to mount the filesystem on the node running the DRBD Multi-State master:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ colocation coloc_ms-drbd0_p-drbdvol inf: p-drbdvol \
ms-drbd0:Master&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;Commit the changes:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ commit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;Exit the crm shell&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ q&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Task 3: Check the resources and constrains are correctly configured&lt;span class="hx:absolute hx:-mt-20" id="task-3-check-the-resources-and-constrains-are-correctly-configured"&gt;&lt;/span&gt;
&lt;a href="#task-3-check-the-resources-and-constrains-are-correctly-configured" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;In Firefox access the Hawk Web UI, the url is &lt;code&gt;https://172.17.11.10:7630&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If required from the left select &lt;code&gt;Monitoring&lt;/code&gt; -&amp;gt; &lt;code&gt;Status&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Check that the &lt;code&gt;ms-drbd0&lt;/code&gt; and its child resource &lt;code&gt;p-drbd0&lt;/code&gt; are running, to see the child resource click on the &lt;code&gt;+&lt;/code&gt; icon next to the &lt;code&gt;ms-drbd0&lt;/code&gt; resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hkmf58Mup.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Check the &lt;code&gt;p-drbdvol&lt;/code&gt; cluster resource is running&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ry2c9LM_T.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;Notice which node is the Master for the &lt;code&gt;ms-drbd0&lt;/code&gt; resource, it is displayed in &lt;code&gt;bold&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1-XIDGd6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;在 sle-ha-1 上列出 &lt;code&gt;/drbdvol&lt;/code&gt; 目錄區的內容&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /drbdvol&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0
-rw-r--r-- 1 root root 0 Jan 2 18:26 file.txt
-rw-r--r-- 1 root root 0 Jan 2 18:32 node2.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;The files named &lt;code&gt;file.txt&lt;/code&gt; and &lt;code&gt;node2.txt&lt;/code&gt; are listed&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;Using the Hawk Web UI check the resources constraints are correctly configured, first stop the &lt;code&gt;ms-drbd0&lt;/code&gt; resource: In the Status screen make sure the Resources tab is selected&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1k7YPGOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;Click OK to confirm&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sy9dFvM_6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;在 sle-ha-1 上列出 &lt;code&gt;/drbdvol&lt;/code&gt; 目錄區的內容&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /drbdvol&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;The files are not listed because the volume is not mounted&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="10"&gt;
&lt;li&gt;Using the Hawk Web UI start the &lt;code&gt;ms-drbd0&lt;/code&gt; resource by clicking the &lt;code&gt;Play&lt;/code&gt; icon&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryOu9vzOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="11"&gt;
&lt;li&gt;Click OK to start the resources&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyL39wGOT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="12"&gt;
&lt;li&gt;Check the ms-drbd-r0, p-drbd-r0 and p-drbdvol resources are active&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ry5yiDMdT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="13"&gt;
&lt;li&gt;在 sle-ha-1 上列出 &lt;code&gt;/drbdvol&lt;/code&gt; 目錄區的內容&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /drbdvol&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0
-rw-r--r-- 1 root root 0 Jan 2 18:26 file.txt
-rw-r--r-- 1 root root 0 Jan 2 18:32 node2.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;The test files are listed&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;Summary&lt;span class="hx:absolute hx:-mt-20" id="summary"&gt;&lt;/span&gt;
&lt;a href="#summary" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本章節建立了 drbd cluster resource，然後建立了 multistate parent resource。&lt;/p&gt;
&lt;p&gt;接著，為 drbd volume 創建了一個 cluster resource，並創建了一個 colocation constraint，以確保它在 multistate master 的主機上運作，還創建了一個 order constrain，以確保 drbdvol resource 在 multistate drbd resource promoted 之後被激活。&lt;/p&gt;
&lt;p&gt;檢查掛載點的內容以確保 Cluster Resource 已啟動，然後停止 multistate resource 並測試 constraints.&lt;/p&gt;
&lt;p&gt;最後再次啟動 multistate resource，檢查 resources 和檔案系統掛載點的內容。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;6. Test failover of clustered DRBD&lt;span class="hx:absolute hx:-mt-20" id="6-test-failover-of-clustered-drbd"&gt;&lt;/span&gt;
&lt;a href="#6-test-failover-of-clustered-drbd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Task 1: Test DRBD configuration in a failover situation&lt;span class="hx:absolute hx:-mt-20" id="task-1-test-drbd-configuration-in-a-failover-situation"&gt;&lt;/span&gt;
&lt;a href="#task-1-test-drbd-configuration-in-a-failover-situation" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;建立測試檔案&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo touch /drbdvol/isthisfilehere.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;檢查檔案是否建立&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /drbdvol/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0
-rw-r--r-- 1 root root 0 Jan 2 18:26 file.txt
-rw-r--r-- 1 root root 0 Jan 3 13:32 isthisfilehere.txt
-rw-r--r-- 1 root root 0 Jan 2 18:32 node2.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;在沒有運作 master 的節點 (sle-ha-2) 上，執行 cluster monitor&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm_mon&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Cluster Summary:
* Stack: corosync
* Current DC: sle-ha-1 (version 2.1.5&amp;#43;20221208.a3f44794f-150500.4.9-2.1.5&amp;#43;20221208.a3f44794f) - partition with quorum
* Last updated: Wed Jan 3 13:49:25 2024
* Last change: Wed Jan 3 13:03:50 2024 by hacluster via cibadmin on sle-ha-1
* 2 nodes configured
* 8 resource instances configured
Node List:
* Online: [ sle-ha-1 sle-ha-2 ]
Active Resources:
* sbd (stonith:external/sbd): Started sle-ha-1
* Resource Group: Group-mysql:
* admin-ip (ocf::heartbeat:IPaddr2): Started sle-ha-1
* mysql (systemd:mariadb): Started sle-ha-1
* p-IP_20 (ocf::heartbeat:IPaddr2): Started sle-ha-1
* p-IP_21 (ocf::heartbeat:IPaddr2): Started sle-ha-2
* Clone Set: ms-drbd0 [p-drbd0] (promotable):
* Masters: [ sle-ha-1 ]
* Slaves: [ sle-ha-2 ]
* p-drbdvol (ocf::heartbeat:Filesystem): Started sle-ha-1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;關閉執行 ms-drbd0 master 程式的節點 (sle-ha-1)：&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo poweroff&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;View the cluster monitor session, the cluster will reconfigure to restore the services. In this test we are only interested in DRBD failing over&lt;/li&gt;
&lt;li&gt;Because you have a two node cluster the &lt;code&gt;ms-drbd0&lt;/code&gt; resource will have the Master running on this node, confirm this from &lt;code&gt;crm_mon&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Cluster Summary:
* Stack: corosync
* Current DC: sle-ha-2 (version 2.1.5&amp;#43;20221208.a3f44794f-150500.4.9-2.1.5&amp;#43;20221208.a3f44794f) - partition with quorum
* Last updated: Wed Jan 3 13:52:58 2024
* Last change: Wed Jan 3 13:03:50 2024 by hacluster via cibadmin on sle-ha-1
* 2 nodes configured
* 8 resource instances configured
Node List:
* Online: [ sle-ha-2 ]
* OFFLINE: [ sle-ha-1 ]
Active Resources:
* sbd (stonith:external/sbd): Started sle-ha-2
* Resource Group: Group-mysql:
* admin-ip (ocf::heartbeat:IPaddr2): Started sle-ha-2
* mysql (systemd:mariadb): Started sle-ha-2
* p-IP_21 (ocf::heartbeat:IPaddr2): Started sle-ha-2
* Clone Set: ms-drbd0 [p-drbd0] (promotable):
* Masters: [ sle-ha-2 ]
* p-drbdvol (ocf::heartbeat:Filesystem): Started sle-ha-2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;Cancel crm_mon:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;code&gt;CTRL +c&lt;/code&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;List the contents of /drbdvol&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /drbdvol&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 0
-rw-r--r-- 1 root root 0 Jan 2 18:26 file.txt
-rw-r--r-- 1 root root 0 Jan 3 13:32 isthisfilehere.txt
-rw-r--r-- 1 root root 0 Jan 2 18:32 node2.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;The test files are listed&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;</description></item><item><title>在 SLES 12 SP5 安裝和設定 SELinux</title><link>https://blog.kubeantony.com/archive/suse/%E5%9C%A8-sles-12-sp5-%E5%AE%89%E8%A3%9D%E5%92%8C%E8%A8%AD%E5%AE%9A-selinux/</link><pubDate>Fri, 01 Mar 2024 03:28:14 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/%E5%9C%A8-sles-12-sp5-%E5%AE%89%E8%A3%9D%E5%92%8C%E8%A8%AD%E5%AE%9A-selinux/</guid><description>
&lt;h2&gt;安裝 SELinux Packages&lt;span class="hx:absolute hx:-mt-20" id="安裝-selinux-packages"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-selinux-packages" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in policycoreutils setools-console selinux-policy selinux-policy-devel setools-tcl mcstrans ruby-selinux selinux-doc selinux-policy-minimum setools-gui setools-java&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;啟動 SElinux&lt;span class="hx:absolute hx:-mt-20" id="啟動-selinux"&gt;&lt;/span&gt;
&lt;a href="#%e5%95%9f%e5%8b%95-selinux" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;切換為 permissive mode&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sudo sed -i &amp;#34;s|`cat /etc/selinux/config | grep &amp;#39;^SELINUX=&amp;#39;`|SELINUX=permissive|g&amp;#34; /etc/selinux/config&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;切換為 enforce mode&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sudo sed -i &amp;#34;s|`cat /etc/selinux/config | grep &amp;#39;^SELINUX=&amp;#39;`|SELINUX=enforcing|g&amp;#34; /etc/selinux/config&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;設定 GRUB 開機選單&lt;span class="hx:absolute hx:-mt-20" id="設定-grub-開機選單"&gt;&lt;/span&gt;
&lt;a href="#%e8%a8%ad%e5%ae%9a-grub-%e9%96%8b%e6%a9%9f%e9%81%b8%e5%96%ae" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Application &amp;gt; System Tools &amp;gt; YaST &amp;gt; System › Boot Loader › Kernel Parameters.&lt;/p&gt;
&lt;p&gt;將以下參數新增至可選的核心命令列參數：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;security=selinux selinux=1 enforcing=0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/BJ8ZIhRn6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;重啟電腦&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;觀察目前的 SELinux 模式&lt;span class="hx:absolute hx:-mt-20" id="觀察目前的-selinux-模式"&gt;&lt;/span&gt;
&lt;a href="#%e8%a7%80%e5%af%9f%e7%9b%ae%e5%89%8d%e7%9a%84-selinux-%e6%a8%a1%e5%bc%8f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ getenforce&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Permissive&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;顯示詳細的 SELinux 設定值&lt;span class="hx:absolute hx:-mt-20" id="顯示詳細的-selinux-設定值"&gt;&lt;/span&gt;
&lt;a href="#%e9%a1%af%e7%a4%ba%e8%a9%b3%e7%b4%b0%e7%9a%84-selinux-%e8%a8%ad%e5%ae%9a%e5%80%bc" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sestatus&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: minimum
Current mode: permissive
Mode from config file: permissive
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 30&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;檢查目前的核心是否有 SELinux 的參數&lt;span class="hx:absolute hx:-mt-20" id="檢查目前的核心是否有-selinux-的參數"&gt;&lt;/span&gt;
&lt;a href="#%e6%aa%a2%e6%9f%a5%e7%9b%ae%e5%89%8d%e7%9a%84%e6%a0%b8%e5%bf%83%e6%98%af%e5%90%a6%e6%9c%89-selinux-%e7%9a%84%e5%8f%83%e6%95%b8" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat /proc/cmdline&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;BOOT_IMAGE=/boot/vmlinuz-4.12.14-120-default root=UUID=1f1bc5cf-d039-4291-a353-ad891228007c resume=/dev/sda1 splash=silent quiet showopts crashkernel=165M,high crashkernel=72M,low security=selinux selinux=1 enforcing=0 mitigations=auto&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;SELinux boolean&lt;span class="hx:absolute hx:-mt-20" id="selinux-boolean"&gt;&lt;/span&gt;
&lt;a href="#selinux-boolean" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo setsebool -P ssh_sysadm_login on
$ sudo semanage boolean -l | tail -n 4
ssh_sysadm_login (on , on) Allow ssh to sysadm login
logging_syslogd_use_tty (on , on) Allow logging to syslogd use tty
nfs_export_all_ro (on , on) Allow nfs to export all ro
cron_can_relabel (off , off) Allow cron to can relabel&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>SUSE Manager Basic Operations</title><link>https://blog.kubeantony.com/archive/suse/suse-manager-basic-operations/</link><pubDate>Wed, 24 Jan 2024 05:41:28 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suse-manager-basic-operations/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會實作 SUSE Manager 各項管理功能&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;PreRequest&lt;span class="hx:absolute hx:-mt-20" id="prerequest"&gt;&lt;/span&gt;
&lt;a href="#prerequest" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 已完成建置 SUSE Manager Server&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Monitoring with Prometheus and Grafana&lt;span class="hx:absolute hx:-mt-20" id="monitoring-with-prometheus-and-grafana"&gt;&lt;/span&gt;
&lt;a href="#monitoring-with-prometheus-and-grafana" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1. Prometheus and Grafana&lt;span class="hx:absolute hx:-mt-20" id="1-prometheus-and-grafana"&gt;&lt;/span&gt;
&lt;a href="#1-prometheus-and-grafana" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;可以使用 Prometheus 和 Grafana 監控 SUSE Manager 環境。 SUSE Manager Server 能夠提供自我健康檢查指標。也可以在 Salt 用戶端上安裝和管理多個 &lt;code&gt;Prometheus exporters&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;Prometheus 和 Grafana 軟體包包含在 SUSE Manager Client Tools ：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SUSE Linux Enterprise 12&lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise 15&lt;/li&gt;
&lt;li&gt;openSUSE Leap 15.x&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;需要將 Prometheus 和 Grafana 安裝在獨立於 SUSE Manager Server 的機器上。我們建議使用受管 Salt SUSE Client 作為 monitoring server，不支援將其他類型的客戶端用作 monitoring server。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Prometheus 使用 pull mechanism 來取得 metrics ( 指標 )，因此伺服器必須能夠與受監控的用戶端建立 TCP 連線。客戶端必須有相應的開放端口，並且可以透過網路連接。或者，也可以使用反向代理建立連線。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;You must have a monitoring add-on subscription for each client you want to monitor. Visit the SUSE Customer Center to manage your SUSE Manager subscriptions.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4&gt;&lt;font size=4&gt;1.1. Prometheus&lt;/font&gt;&lt;span class="hx:absolute hx:-mt-20" id="11-prometheus"&gt;&lt;/span&gt;
&lt;a href="#11-prometheus" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Prometheus 是一款開源監控工具，用於在時間序列資料庫中記錄即時指標。指標透過 HTTP pull，具有高效能和可擴展性。&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;&lt;font size=4&gt;1.2. Prometheus Exporters&lt;/font&gt;&lt;span class="hx:absolute hx:-mt-20" id="12-prometheus-exporters"&gt;&lt;/span&gt;
&lt;a href="#12-prometheus-exporters" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Exporters 是一種函式庫，可協助從第三方系統匯出指標作為 Prometheus 可以用的指標。 如果無法直接使用 Prometheus 指標對特定應用程式或系統進行檢測，Exporters 就非常有用。 在一台受監控的主機上可以執行多個 Exporters 來匯出本機指標。&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;&lt;font size=4&gt;1.3. Grafana&lt;/font&gt;&lt;span class="hx:absolute hx:-mt-20" id="13-grafana"&gt;&lt;/span&gt;
&lt;a href="#13-grafana" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Grafana 是一款用於資料視覺化、監控和分析的工具。它用於建立帶有面板的儀表板，顯示設定時間段內的特定指標。 Grafana 通常與 Prometheus 一起使用，但也支援 ElasticSearch、MySQL、PostgreSQL 和 Influx DB 等其他資料來源。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2. Set up the Monitoring Server&lt;span class="hx:absolute hx:-mt-20" id="2-set-up-the-monitoring-server"&gt;&lt;/span&gt;
&lt;a href="#2-set-up-the-monitoring-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;設定 monitoring server，需要安裝 Prometheus 和 Grafana 並設定它們。&lt;/p&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2&gt;Ansible integration&lt;span class="hx:absolute hx:-mt-20" id="ansible-integration"&gt;&lt;/span&gt;
&lt;a href="#ansible-integration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1. Feature Overview&lt;span class="hx:absolute hx:-mt-20" id="1-feature-overview"&gt;&lt;/span&gt;
&lt;a href="#1-feature-overview" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSE Manager 使系統管理員能夠操作他們的 Ansible Control Nodes。 支援的功能有 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;inspection of inventory files&lt;/li&gt;
&lt;li&gt;discovery of playbooks&lt;/li&gt;
&lt;li&gt;execution of playbooks&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;2. Requirements and basic configuration&lt;span class="hx:absolute hx:-mt-20" id="2-requirements-and-basic-configuration"&gt;&lt;/span&gt;
&lt;a href="#2-requirements-and-basic-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;若要使用 Ansible 功能，您需要將現有的 Ansible Control Node 註冊為 SUSE Manager Server 的 Salt 用戶端。&lt;/p&gt;
&lt;p&gt;在 Web UI 中，點選已註冊系統的 System Details &amp;gt; Properties 頁面上，勾選 Add-on System Types 中的 Ansible Control Node 系統類型，最後點選 Update Properties。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/ryEqMQRKT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;開啟 Ansible Control Node 系統類型，會確保透過將 ansible 套件加入 highstate 中來安裝在系統上，並在「System Details」下的 Ansible 標籤啟動 Ansible 功能。&lt;/p&gt;
&lt;p&gt;下一步，在 &amp;ldquo;系統詳細資料 Ansible 控制節點 &amp;ldquo;頁面上設定 Ansible 清單和 playbook 檔案的路徑。 作為清單路徑，可以使用標準的 Ansible 清單路徑 /etc/ansible/hosts。 作為 playbook 目錄，可以使用控制節點上儲存 playbook 檔案的任何目錄。 一個 playbook 目錄既可以包含 .yml 文件，也可以包含包含 .yml 文件的子目錄。&lt;/p&gt;</description></item><item><title>Install SUSE Linux Enterprise Server 15 SP5</title><link>https://blog.kubeantony.com/archive/suse/install-suse-linux-enterprise-server-15-sp5/</link><pubDate>Fri, 19 Jan 2024 06:28:52 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/install-suse-linux-enterprise-server-15-sp5/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如何安裝 SUSE Linux Enterprise Server 15 SP5&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;下載安裝 SLES 的 ISO 檔&lt;span class="hx:absolute hx:-mt-20" id="下載安裝-sles-的-iso-檔"&gt;&lt;/span&gt;
&lt;a href="#%e4%b8%8b%e8%bc%89%e5%ae%89%e8%a3%9d-sles-%e7%9a%84-iso-%e6%aa%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;使用以下來源網站的 &lt;code&gt;SLE-15-SP5-Full-ARCH-GM-media1.iso&lt;/code&gt; image 安裝，可以不用先註冊且安裝時不用上網&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://www.suse.com/download/sles/"target="_blank" rel="noopener"&gt;https://www.suse.com/download/sles/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;SLE ISO 檔名介紹&lt;span class="hx:absolute hx:-mt-20" id="sle-iso-檔名介紹"&gt;&lt;/span&gt;
&lt;a href="#sle-iso-%e6%aa%94%e5%90%8d%e4%bb%8b%e7%b4%b9" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;SLE-15-SP5-Full-x86_64-GM-Media1.iso&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SLE，代表 &amp;ldquo;SUSE Linux Enterprise&amp;rdquo; 的縮寫&lt;/li&gt;
&lt;li&gt;15，是主要的版本&lt;/li&gt;
&lt;li&gt;SP5，代表 Service Pack 更新到第五版
&lt;blockquote&gt;
&lt;p&gt;Service Pack（服務包）是指一個包含了多個軟體更新和補丁的集合，用於更新 SUSE Linux 版本。這些更新和補丁通常包括新的功能、修正錯誤、改善安全性等。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;Full，表示可以全離線安裝; 跟它相反的是 online ，意思是需要能上網才能成功安裝作業系統&lt;/li&gt;
&lt;li&gt;GM(General Media)，首次發行時提供的套件(package)，建議第一次安裝時，使用此版本; 與之不同的是 QU(Quarterly Updated) ，它包含初始版本發布時的套件，再加上所有的維護更新套件，當你需要再安裝後立即獲得最新更新的安裝版本，就選擇 QU
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;GM&lt;/th&gt;
&lt;th&gt;QU&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;packages 的版本&lt;/td&gt;
&lt;td&gt;首次發行時提供的套件&lt;/td&gt;
&lt;td&gt;初始版本發布時的套件，再加上所有的維護更新&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;建議使用&lt;/td&gt;
&lt;td&gt;對於第一次安裝&lt;/td&gt;
&lt;td&gt;對於需要立即取得最新更新的安裝&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;兩種版本的安裝過程是相同的。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;“x86_64” 的文件適用於 AMD64 和 Intel* 64 平台。
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;名稱中帶有“s390x”的文件適用於 IBM* z System 或 LinuxONE&lt;/li&gt;
&lt;li&gt;名稱中帶有“ppc64le”的文件適用於 IBM* Power LE 平台&lt;/li&gt;
&lt;li&gt;名稱中帶有“aarch64”的文件適用於 Arm* 64 平台&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;Media1，代表在安裝過程中，會包含需要的二進制套件的檔案。
&lt;ul&gt;
&lt;li&gt;Media2，通常 SLES 安裝媒體會分成多個部分，例如 DVD 或 USB 隨身碟。Media2 就是其中的第二個部分，包含了額外的軟體套件、驅動程式或其他擴充功能。這些額外的內容不會包含在主要的安裝媒體中，因此如果需要安裝這些額外的軟體或功能，就需要使用 Media2。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;System Requirements&lt;span class="hx:absolute hx:-mt-20" id="system-requirements"&gt;&lt;/span&gt;
&lt;a href="#system-requirements" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Minimum Linux server system requirements for installation&lt;span class="hx:absolute hx:-mt-20" id="minimum-linux-server-system-requirements-for-installation"&gt;&lt;/span&gt;
&lt;a href="#minimum-linux-server-system-requirements-for-installation" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Local installation: 1024 MiB RAM, 512 MiB Swap recommended&lt;/li&gt;
&lt;li&gt;2 GiB available disk space (more recommended, 8.5 GiB for all patterns)&lt;/li&gt;
&lt;li&gt;32 GiB for snapshot/rollback of the OS&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Recommendations for specific uses&lt;span class="hx:absolute hx:-mt-20" id="recommendations-for-specific-uses"&gt;&lt;/span&gt;
&lt;a href="#recommendations-for-specific-uses" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;1 GiB to 8 GiB RAM, at least 512 MiB per CPU&lt;/li&gt;
&lt;li&gt;8 GiB hard-disk space, 32 GiB for snapshot/rollback of the OS&lt;/li&gt;
&lt;li&gt;Network interface&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Boot options&lt;span class="hx:absolute hx:-mt-20" id="boot-options"&gt;&lt;/span&gt;
&lt;a href="#boot-options" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;多個設定之間是用一個空格做分隔&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hkmn2KPYT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;設定網路&lt;span class="hx:absolute hx:-mt-20" id="設定網路"&gt;&lt;/span&gt;
&lt;a href="#%e8%a8%ad%e5%ae%9a%e7%b6%b2%e8%b7%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ifcfg=*=&amp;#34;IPS_NETMASK,GATEWAYS,NAMESERVERS,DOMAINS&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;實際 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;ifcfg=eth0=&amp;#34;192.168.11.11/24,192.168.11.253,192.168.11.85,example.com&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;設定主機名稱&lt;span class="hx:absolute hx:-mt-20" id="設定主機名稱"&gt;&lt;/span&gt;
&lt;a href="#%e8%a8%ad%e5%ae%9a%e4%b8%bb%e6%a9%9f%e5%90%8d%e7%a8%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ hostname=host.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;實際 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;hostname=test.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;開始安裝 SLES 15 SP5&lt;span class="hx:absolute hx:-mt-20" id="開始安裝-sles-15-sp5"&gt;&lt;/span&gt;
&lt;a href="#%e9%96%8b%e5%a7%8b%e5%ae%89%e8%a3%9d-sles-15-sp5" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Step1: Language, keyboard, and product selection&lt;span class="hx:absolute hx:-mt-20" id="step1-language-keyboard-and-product-selection"&gt;&lt;/span&gt;
&lt;a href="#step1-language-keyboard-and-product-selection" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;選擇 &amp;ldquo;SUSE Linux Enterprise Server 15 SP5&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1WuITQ2n.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step2: License agreement&lt;span class="hx:absolute hx:-mt-20" id="step2-license-agreement"&gt;&lt;/span&gt;
&lt;a href="#step2-license-agreement" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;勾選同意
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyLR8amh3.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step3: Network settings&lt;span class="hx:absolute hx:-mt-20" id="step3-network-settings"&gt;&lt;/span&gt;
&lt;a href="#step3-network-settings" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;點選右上角的 &amp;ldquo;Network Configuration&amp;rdquo; 按鈕
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1uDDTQ32.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;Edit&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SklAPp7nh.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;Statically Assigned IP Address&amp;rdquo;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;IP Address 輸入 &lt;code&gt;一個 IP Address&lt;/code&gt; ( Example: &lt;code&gt;192.168.61.11&lt;/code&gt; )&lt;/li&gt;
&lt;li&gt;Subnet Mask 輸入 &lt;code&gt;/24&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Hostname 輸入 &lt;code&gt;rmt-server&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sk3FjTmn2.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;Hostname/DNS&amp;rdquo;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Static Hostname 輸入 &lt;code&gt;rmt-server&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Name Server 1 輸入 &lt;code&gt;DNS Server IP Address&lt;/code&gt; ( Example: &lt;code&gt;8.8.8.8&lt;/code&gt; )
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1jRFamnh.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;Routing&amp;rdquo;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Add&amp;rdquo;
&lt;ul&gt;
&lt;li&gt;Gateway 輸入 &lt;code&gt;Gateway IP Address&lt;/code&gt; ( Example: &lt;code&gt;192.168.61.2&lt;/code&gt; )&lt;/li&gt;
&lt;li&gt;點擊 Device 的下拉選單，選擇網路卡 ( Example: &lt;code&gt;eth0&lt;/code&gt; )&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;OK&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rkOvo6Qhh.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;確認網路設定完畢後，點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryme3TX2h.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step4: Registration&lt;span class="hx:absolute hx:-mt-20" id="step4-registration"&gt;&lt;/span&gt;
&lt;a href="#step4-registration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Skip registration&amp;rdquo;&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1kZC6m33.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step5: Extension and module selection&lt;span class="hx:absolute hx:-mt-20" id="step5-extension-and-module-selection"&gt;&lt;/span&gt;
&lt;a href="#step5-extension-and-module-selection" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;勾選要安裝的 module
&lt;ul&gt;
&lt;li&gt;Containers Module&lt;/li&gt;
&lt;li&gt;Legacy Module&lt;/li&gt;
&lt;li&gt;選好後，點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1vlJAmhn.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step6: Add-on product&lt;span class="hx:absolute hx:-mt-20" id="step6-add-on-product"&gt;&lt;/span&gt;
&lt;a href="#step6-add-on-product" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;如果要新增 Software 安裝來源可以點 &amp;ldquo;Add&amp;rdquo;&lt;/li&gt;
&lt;li&gt;沒有的話，點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJOrJRX2n.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step7: System role&lt;span class="hx:absolute hx:-mt-20" id="step7-system-role"&gt;&lt;/span&gt;
&lt;a href="#step7-system-role" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;使用預設 &amp;ldquo;Text Mode&amp;rdquo;&lt;/li&gt;
&lt;li&gt;直接點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hy-oJRXnn.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step8: Suggested partitioning&lt;span class="hx:absolute hx:-mt-20" id="step8-suggested-partitioning"&gt;&lt;/span&gt;
&lt;a href="#step8-suggested-partitioning" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;Export Paritioner&amp;rdquo; 展開下拉式選單&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Start with Current Proposal&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJRHe0m22.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;sda4&amp;rdquo;，刪除 swap 空間&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Delete&amp;rdquo;&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Yes&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BknReAQn2.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;sda3&amp;rdquo;，刪除 &lt;code&gt;/home&lt;/code&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Delete&amp;rdquo;&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Yes&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1aEbRX3n.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;sda2&amp;rdquo;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Device&amp;rdquo;
&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Resize&amp;rdquo;&lt;/li&gt;
&lt;li&gt;選擇 &amp;ldquo;Maximum Size&amp;rdquo;&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Bydjb0Qnh.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;Add Subvolume&amp;rdquo;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Path 輸入 &lt;code&gt;@/home&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;確認硬碟都規劃好以後，點擊 &amp;ldquo;Accept&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryy6GAmh3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;再次確認，點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJBkm0X3n.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step9: Clock and time zone&lt;span class="hx:absolute hx:-mt-20" id="step9-clock-and-time-zone"&gt;&lt;/span&gt;
&lt;a href="#step9-clock-and-time-zone" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;點地圖上台灣的位置&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HkCwmRX22.jpg" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step10: Local user&lt;span class="hx:absolute hx:-mt-20" id="step10-local-user"&gt;&lt;/span&gt;
&lt;a href="#step10-local-user" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;User&amp;rsquo;s Full Name 輸入 &lt;code&gt;使用者名稱&lt;/code&gt; ( Example: &lt;code&gt;test&lt;/code&gt; )&lt;/li&gt;
&lt;li&gt;Username 輸入 &lt;code&gt;使用者名稱&lt;/code&gt; ( Example: &lt;code&gt;test&lt;/code&gt; )&lt;/li&gt;
&lt;li&gt;Password 輸入 &lt;code&gt;使用者密碼&lt;/code&gt; ( Example: &lt;code&gt;test123&lt;/code&gt; )&lt;/li&gt;
&lt;li&gt;Confirm Password 輸入 &lt;code&gt;使用者密碼&lt;/code&gt; ( Example: &lt;code&gt;test123&lt;/code&gt; )&lt;/li&gt;
&lt;li&gt;勾選 &amp;ldquo;Use this password for system administrator&amp;rdquo;&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Next&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rkg8VAmn2.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step11: Installation settings&lt;span class="hx:absolute hx:-mt-20" id="step11-installation-settings"&gt;&lt;/span&gt;
&lt;a href="#step11-installation-settings" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Firewall will be enabled 點擊 &amp;ldquo;disable&amp;rdquo;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;點擊 &amp;ldquo;Install&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1jerAmn3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Confirm Installation&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;點擊 &amp;ldquo;Install&amp;rdquo;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJgBH0Qhh.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step12: The installation process&lt;span class="hx:absolute hx:-mt-20" id="step12-the-installation-process"&gt;&lt;/span&gt;
&lt;a href="#step12-the-installation-process" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJXDrCQhh.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Step13: 訂閱 SLES 15&lt;span class="hx:absolute hx:-mt-20" id="step13-訂閱-sles-15"&gt;&lt;/span&gt;
&lt;a href="#step13-%e8%a8%82%e9%96%b1-sles-15" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo SUSEConnect -e &amp;#34;Your Email&amp;#34; -r &amp;#34;Registration Code&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;pre&gt;
Using E-Mail:antony.chen@suse.com
Announcing system to https://scc.suse.com ...
Activating SLES 15.5 x86_64 ...
-&gt; Adding service to system ...
Activating sle-module-basesystem 15.5 x86_64 ...
-&gt; Adding service to system ...
-&gt; Installing release package ...
Activating sle-module-server-applications 15.5 x86_64 ...
-&gt; Adding service to system ...
-&gt; Installing release package ...
&lt;font color=green&gt;Successfully registered system&lt;/font&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;h3&gt;Step14: Update Installed Packages&lt;span class="hx:absolute hx:-mt-20" id="step14-update-installed-packages"&gt;&lt;/span&gt;
&lt;a href="#step14-update-installed-packages" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;Refersh SUSE repository from the Internet or local server&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper refresh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Retrieving repository &amp;#39;SLE-Module-Basesystem15-SP5-Pool&amp;#39; metadata .............................................[done]
Building repository &amp;#39;SLE-Module-Basesystem15-SP5-Pool&amp;#39; cache ..................................................[done]
Retrieving repository &amp;#39;SLE-Module-Basesystem15-SP5-Updates&amp;#39; metadata ..........................................[done]
Building repository &amp;#39;SLE-Module-Basesystem15-SP5-Updates&amp;#39; cache ...............................................[done]
Retrieving repository &amp;#39;SLE-Product-SLES15-SP5-Pool&amp;#39; metadata ..................................................[done]
Building repository &amp;#39;SLE-Product-SLES15-SP5-Pool&amp;#39; cache .......................................................[done]
Retrieving repository &amp;#39;SLE-Product-SLES15-SP5-Updates&amp;#39; metadata ...............................................[done]
Building repository &amp;#39;SLE-Product-SLES15-SP5-Updates&amp;#39; cache ....................................................[done]
Retrieving repository &amp;#39;SLE-Module-Server-Applications15-SP5-Pool&amp;#39; metadata ....................................[done]
Building repository &amp;#39;SLE-Module-Server-Applications15-SP5-Pool&amp;#39; cache .........................................[done]
Retrieving repository &amp;#39;SLE-Module-Server-Applications15-SP5-Updates&amp;#39; metadata .................................[done]
Building repository &amp;#39;SLE-Module-Server-Applications15-SP5-Updates&amp;#39; cache ......................................[done]
All repositories have been refreshed.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;upgrade all installed packages on SUSE Linux system&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;sudo zypper list-updates&lt;/code&gt;，可以檢查有哪些套件需要更新&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Reboot the system&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;可能會需要的安裝套件&lt;span class="hx:absolute hx:-mt-20" id="可能會需要的安裝套件"&gt;&lt;/span&gt;
&lt;a href="#%e5%8f%af%e8%83%bd%e6%9c%83%e9%9c%80%e8%a6%81%e7%9a%84%e5%ae%89%e8%a3%9d%e5%a5%97%e4%bb%b6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;安裝 nano&lt;span class="hx:absolute hx:-mt-20" id="安裝-nano"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-nano" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ wget -q https://download.opensuse.org/repositories/editors/openSUSE_Leap_15.4/x86_64/nano-7.2-lp154.179.1.x86_64.rpm &amp;amp;&amp;amp; sudo rpm -i nano-7.2-lp154.179.1.x86_64.rpm &amp;amp;&amp;amp; rm nano-7.2-lp154.179.1.x86_64.rpm&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;參考網址: &lt;a
href="https://software.opensuse.org/download/package?package=nano&amp;amp;project=editors"target="_blank" rel="noopener"&gt;https://software.opensuse.org/download/package?package=nano&amp;project=editors&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;安裝 ping&lt;span class="hx:absolute hx:-mt-20" id="安裝-ping"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-ping" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y iputils&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Repository : sle-module-basesystem
Description :
This package contains some small network tools for IPv4 and IPv6 like
rdisc, ping, arping and tracepath.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;安裝 Yast 的 Network modules&lt;span class="hx:absolute hx:-mt-20" id="安裝-yast-的-network-modules"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-yast-%e7%9a%84-network-modules" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y yast2-network&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Repository : sle-module-basesystem
Description :
This package contains the YaST2 component for network configuration.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;安裝 sudo&lt;span class="hx:absolute hx:-mt-20" id="安裝-sudo"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-sudo" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y sudo&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Repository : sle-module-basesystem&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;安裝 wget&lt;span class="hx:absolute hx:-mt-20" id="安裝-wget"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-wget" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y wget&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Repository : sle-module-basesystem&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;安裝 Netcat&lt;span class="hx:absolute hx:-mt-20" id="安裝-netcat"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-netcat" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y netcat-openbsd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Repository : sle-module-basesystem&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;安裝 ifconfig, route&lt;span class="hx:absolute hx:-mt-20" id="安裝-ifconfig-route"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-ifconfig-route" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y net-tools-deprecated&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Repository : sle-module-basesystem
Description :
This package contains the deprecated network utilities arp, ifconfig, netstat and route,which have been replaced by tools from the iproute2 package:
* arp -&amp;gt; ip [-r] neigh
* ifconfig -&amp;gt; ip a
* netstat -&amp;gt; ss [-r]
* route -&amp;gt; ip r&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>Registering SUSE Liberty Linux 7 Clients</title><link>https://blog.kubeantony.com/archive/suse/registering-suse-liberty-linux-7-clients/</link><pubDate>Mon, 15 Jan 2024 06:43:22 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/registering-suse-liberty-linux-7-clients/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，如何成功將 SUSE Liberty Linux 7 Client 註冊到 SUSE Manager Server&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 注意事項&lt;span class="hx:absolute hx:-mt-20" id="1-注意事項"&gt;&lt;/span&gt;
&lt;a href="#1-%e6%b3%a8%e6%84%8f%e4%ba%8b%e9%a0%85" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;SUSE Liberty Linux clients 指的就是將 Red Hat Enterprise Linux 或是 CentOS 系統的 Packages Repository 換成 SUSE Liberty Linux 的套件儲存庫。&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;blockquote&gt;
&lt;p&gt;SUSE Liberty Linux clients 有時候也被稱為以下 4 種名稱&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SUSE Linux Enterprise Server with Expanded Support (SLESES)&lt;/li&gt;
&lt;li&gt;Liberty&lt;/li&gt;
&lt;li&gt;RES&lt;/li&gt;
&lt;li&gt;Red Hat Expanded Support.&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;SUSE Liberty Linux software channels &lt;strong&gt;僅提供套件的更新，不提供套件本身&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;要註冊 SUSE Liberty Linux Client，需要在 SUSE Manager Server 新增 SUSE Liberty Linux Product 以建立必要的基本頻道，然後將任何必需的 Red Hat 或 CentOS 套件匯入為自訂子頻道。&lt;/li&gt;
&lt;li&gt;必須直接從 Red Hat 或 CentOS 獲得 initial packages ( 初始套件 )，然後才能套用由 SUSE Liberty Linux 軟體頻道提供的更新。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;2. 在 SUSE Manager Server 新增 Software Channels&lt;span class="hx:absolute hx:-mt-20" id="2-在-suse-manager-server-新增-software-channels"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%9c%a8-suse-manager-server-%e6%96%b0%e5%a2%9e-software-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. 系統要求&lt;span class="hx:absolute hx:-mt-20" id="21-系統要求"&gt;&lt;/span&gt;
&lt;a href="#21-%e7%b3%bb%e7%b5%b1%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;SUSE Manager Server 的 &lt;code&gt;/var/spacewalk&lt;/code&gt; 目錄區剩餘空間量，必須有 600 G 以上的剩餘空間&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2.2. 注意事項&lt;span class="hx:absolute hx:-mt-20" id="22-注意事項"&gt;&lt;/span&gt;
&lt;a href="#22-%e6%b3%a8%e6%84%8f%e4%ba%8b%e9%a0%85" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSE Liberty Linux 的某些必需套件包含在 Red Hat Enterprise Linux 或 CentOS installation media 中，在註冊 SUSE Liberty Linux 客戶端之前，您必須先安裝這些套件。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SUSE Liberty Linux 產品由 SUSE Custom Center 提供，這也包括客戶端工具套件。&lt;/li&gt;
&lt;li&gt;在將 SUSE Liberty Linux 客戶端註冊到 SUSE Manager Server 之前，您需要添加所需的 software channels 並同步它們。&lt;/li&gt;
&lt;li&gt;您需要選擇兩組不同的通道，一組是 SUSE Liberty Linux，另一組是 Client Tools.。&lt;/li&gt;
&lt;li&gt;需要與正確的 SUSE Liberty Linux channels 關聯的 activation key。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;2.3. 開始新增 Software Channels&lt;span class="hx:absolute hx:-mt-20" id="23-開始新增-software-channels"&gt;&lt;/span&gt;
&lt;a href="#23-%e9%96%8b%e5%a7%8b%e6%96%b0%e5%a2%9e-software-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;以下 WebUI 和 CLI 的操作步驟選擇其中一種執行即可&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;2.3.1 使用 WebUI 操作步驟&lt;span class="hx:absolute hx:-mt-20" id="231-使用-webui-操作步驟"&gt;&lt;/span&gt;
&lt;a href="#231-%e4%bd%bf%e7%94%a8-webui-%e6%93%8d%e4%bd%9c%e6%ad%a5%e9%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;勾選要加入的 SUSE Liberty Linux (版本)&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Add product&amp;rdquo; ，然後等待同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkpgkCHXp.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;確認同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 Channels 欄位呈現綠勾勾的圖示，代表完成同步&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B16onXqma.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;2.3.2. 使用 CLI 操作步驟&lt;span class="hx:absolute hx:-mt-20" id="232-使用-cli-操作步驟"&gt;&lt;/span&gt;
&lt;a href="#232-%e4%bd%bf%e7%94%a8-cli-%e6%93%8d%e4%bd%9c%e6%ad%a5%e9%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;連線至 SUSE Manager Server，並使用具有系統管理員權限的使用者帳號執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync add channel rhel-x86_64-server-7 &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;輸入 SUSE Manager 管理員的帳號密碼&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Please enter the credentials of SUSE Manager Administrator.
Login: admin
Password:
Added &amp;#39;rhel-x86_64-server-7&amp;#39; channel
Scheduling reposync for following channels:
- rhel-x86_64-server-7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.4. SUSE Liberty Linux 在 SUSE Manager 上的資訊&lt;span class="hx:absolute hx:-mt-20" id="24-suse-liberty-linux-在-suse-manager-上的資訊"&gt;&lt;/span&gt;
&lt;a href="#24-suse-liberty-linux-%e5%9c%a8-suse-manager-%e4%b8%8a%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;下表是 SUSE Liberty Linux 每個版本對應的 Product 名稱 :&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;OS Version&lt;/th&gt;
&lt;th&gt;Product Name&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;SUSE Liberty Linux 7&lt;/td&gt;
&lt;td&gt;SUSE Linux Enterprise Server with Expanded Support 7 x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SUSE Liberty Linux 8&lt;/td&gt;
&lt;td&gt;RHEL or SLES ES or CentOS 8 Base x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SUSE Liberty Linux 9&lt;/td&gt;
&lt;td&gt;RHEL and Liberty 9 Base x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;下表是 SUSE Liberty Linux 每個版本對應的 Base Channel 和 Client Tools Channel :&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;SUSE Liberty Linux&lt;/th&gt;
&lt;th&gt;Base Channel&lt;/th&gt;
&lt;th&gt;Tools Channel&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;RHEL Expanded Support 7&lt;/td&gt;
&lt;td&gt;RES7-SUSE-Manager-Tools x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;RHEL or SLES ES or CentOS 8 Base&lt;/td&gt;
&lt;td&gt;RES8-Manager-Tools-Pool for x86_64 and RES8-Manager-Tools-Updates for x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;RHEL and Liberty 9 Base&lt;/td&gt;
&lt;td&gt;EL9-Manager-Tools-Pool for x86_64 and EL9-Manager-Tools-Updates for x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.5. 檢視 Product 下載過程&lt;span class="hx:absolute hx:-mt-20" id="25-檢視-product-下載過程"&gt;&lt;/span&gt;
&lt;a href="#25-%e6%aa%a2%e8%a6%96-product-%e4%b8%8b%e8%bc%89%e9%81%8e%e7%a8%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;以 SUSE Liberty Linux 7 為例，這個 Product 有 3 個必要的 Channel&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;res7-suse-manager-tools-x86_64
res7-x86_64
rhel-x86_64-server-7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.5.1. 檢視下載 res7-suse-manager-tools-x86_64 Channel 的 log 資訊&lt;span class="hx:absolute hx:-mt-20" id="251-檢視下載-res7-suse-manager-tools-x86_64-channel-的-log-資訊"&gt;&lt;/span&gt;
&lt;a href="#251-%e6%aa%a2%e8%a6%96%e4%b8%8b%e8%bc%89-res7-suse-manager-tools-x86_64-channel-%e7%9a%84-log-%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tail -f /var/log/rhn/reposync/res7-suse-manager-tools-x86_64.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該要看到類似以下資訊 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2023/11/06 10:13:14 &amp;#43;08:00 Command: [&amp;#39;/usr/bin/spacewalk-repo-sync&amp;#39;, &amp;#39;--channel&amp;#39;, &amp;#39;res7-suse-manager-tools-x86_64&amp;#39;, &amp;#39;--type&amp;#39;, &amp;#39;yum&amp;#39;, &amp;#39;--non-interactive&amp;#39;]
2023/11/06 10:13:14 &amp;#43;08:00 Sync of channel started.
2023/11/06 10:13:23 &amp;#43;08:00 Repo URL: https://updates.suse.com/repo/$RCE/RES7-SUSE-Manager-Tools/x86_64/?&amp;lt;token&amp;gt;
2023/11/06 10:13:23 &amp;#43;08:00 Packages in repo: 1667
2023/11/06 10:13:28 &amp;#43;08:00 Packages already synced: 572
2023/11/06 10:13:28 &amp;#43;08:00 Packages to sync: 1095
2023/11/06 10:13:29 &amp;#43;08:00 New packages to download: 1095
2023/11/06 10:13:29 &amp;#43;08:00 Downloading packages:
2023/11/06 10:13:31 &amp;#43;08:00 1/1095 : golang-github-QubitProducts-exporter_exporter-0.4.0-4.1.x86_64.rpm
...中間省略
2023/11/06 10:17:55 &amp;#43;08:00 1093/1095 : zeromq-devel-4.0.5-14.1.x86_64.rpm
2023/11/06 10:17:55 &amp;#43;08:00 1094/1095 : zeromq-devel-4.0.5-5.1.x86_64.rpm
2023/11/06 10:17:55 &amp;#43;08:00 1095/1095 : zeromq-devel-4.0.5-8.1.x86_64.rpm
...中間省略
2023/11/06 10:17:56 &amp;#43;08:00 Importing packages started.
2023/11/06 10:17:56 &amp;#43;08:00
2023/11/06 10:17:56 &amp;#43;08:00 Importing packages to DB:
2023/11/06 10:21:40 &amp;#43;08:00 Package batch #1 of 55 completed...
...中間省略
2023/11/06 10:28:52 &amp;#43;08:00 Syncing 107 new patch(es) to channel.
2023/11/06 10:28:56 &amp;#43;08:00 Regenerating bootstrap repositories.
2023/11/06 10:30:19 &amp;#43;08:00 Sync completed.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;下載完成後會在 log 檔中看到 &lt;code&gt;Sync completed.&lt;/code&gt; 代表完成&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.5.2.檢視下載 res7-x86_64 Channel 的 log 資訊&lt;span class="hx:absolute hx:-mt-20" id="252檢視下載-res7-x86_64-channel-的-log-資訊"&gt;&lt;/span&gt;
&lt;a href="#252%e6%aa%a2%e8%a6%96%e4%b8%8b%e8%bc%89-res7-x86_64-channel-%e7%9a%84-log-%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tail -f /var/log/rhn/reposync/res7-x86_64.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;這個 Channel 同步的時間花了整整 24 個小時又 22 分鐘，Disk 使用的空間約 500G&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出應該要看到類似以下資訊 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2023/11/06 09:32:29 &amp;#43;08:00 Command: [&amp;#39;/usr/bin/spacewalk-repo-sync&amp;#39;, &amp;#39;--channel&amp;#39;, &amp;#39;res7-x86_64&amp;#39;, &amp;#39;--type&amp;#39;, &amp;#39;yum&amp;#39;, &amp;#39;--non-interactive&amp;#39;]2023/11/06 09:32:29 &amp;#43;08:00 Sync of channel started.
2023/11/06 10:30:20 &amp;#43;08:00 Command: [&amp;#39;/usr/bin/spacewalk-repo-sync&amp;#39;, &amp;#39;--channel&amp;#39;, &amp;#39;res7-x86_64&amp;#39;, &amp;#39;--type&amp;#39;, &amp;#39;yum&amp;#39;, &amp;#39;--non-interactive&amp;#39;]
2023/11/06 10:30:20 &amp;#43;08:00 Sync of channel started.
2023/11/06 10:30:47 &amp;#43;08:00 Repo URL: https://updates.suse.com/repo/$RCE/RES7/x86_64/?&amp;lt;token&amp;gt;
2023/11/06 10:30:47 &amp;#43;08:00 Packages in repo: 582792023/11/06 10:33:39 &amp;#43;08:00 Packages already synced: 02023/11/06 10:33:39 &amp;#43;08:00 Packages to sync: 582792023/11/06 10:33:43 &amp;#43;08:00 New packages to download: 582792023/11/06 10:33:43 &amp;#43;08:00 Downloading packages:
2023/11/06 10:33:45 &amp;#43;08:00 1/58279 : 389-ds-base-1.3.1.6-26.el7_0.x86_64.rpm
...中間省略
2023/11/07 09:54:06 &amp;#43;08:00 Add Patch RHSA-2023:5761
2023/11/07 09:54:06 &amp;#43;08:00 Syncing 6299 new patch(es) to channel.
2023/11/07 09:56:37 &amp;#43;08:00 Regenerating bootstrap repositories.
2023/11/07 09:57:04 &amp;#43;08:00 Sync completed.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.5.3.檢視下載 rhel-x86_64-server-7 Channel 的 log 資訊&lt;span class="hx:absolute hx:-mt-20" id="253檢視下載-rhel-x86_64-server-7-channel-的-log-資訊"&gt;&lt;/span&gt;
&lt;a href="#253%e6%aa%a2%e8%a6%96%e4%b8%8b%e8%bc%89-rhel-x86_64-server-7-channel-%e7%9a%84-log-%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tail -f /var/log/rhn/reposync/rhel-x86_64-server-7.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該要看到類似以下資訊 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2023/11/06 09:32:26 &amp;#43;08:00 Command: [&amp;#39;/usr/bin/spacewalk-repo-sync&amp;#39;, &amp;#39;--channel&amp;#39;, &amp;#39;rhel-x86_64-server-7&amp;#39;, &amp;#39;--type&amp;#39;, &amp;#39;yum&amp;#39;, &amp;#39;--non-interactive&amp;#39;]
2023/11/06 09:32:26 &amp;#43;08:00 Sync of channel started.
2023/11/06 09:32:27 &amp;#43;08:00 Repo URL: http://localhost/pub/repositories/empty/
2023/11/06 09:32:27 &amp;#43;08:00 Packages in repo: 0
2023/11/06 09:32:27 &amp;#43;08:00 No new packages to sync.
2023/11/06 09:32:27 &amp;#43;08:00
2023/11/06 09:32:27 &amp;#43;08:00 Patches in repo: 0.
2023/11/06 09:32:28 &amp;#43;08:00 Sync completed.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.6. Trouble Shooting&lt;span class="hx:absolute hx:-mt-20" id="26-trouble-shooting"&gt;&lt;/span&gt;
&lt;a href="#26-trouble-shooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;2.6.1. 透過 CLI 重新同步 Channel&lt;span class="hx:absolute hx:-mt-20" id="261-透過-cli-重新同步-channel"&gt;&lt;/span&gt;
&lt;a href="#261-%e9%80%8f%e9%81%8e-cli-%e9%87%8d%e6%96%b0%e5%90%8c%e6%ad%a5-channel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync sync channel &amp;lt;channel_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.6.2. 在 SCC 有新增 Product 的訂閱，但是 SUSE Manager Server 沒有認到&lt;span class="hx:absolute hx:-mt-20" id="262-在-scc-有新增-product-的訂閱但是-suse-manager-server-沒有認到"&gt;&lt;/span&gt;
&lt;a href="#262-%e5%9c%a8-scc-%e6%9c%89%e6%96%b0%e5%a2%9e-product-%e7%9a%84%e8%a8%82%e9%96%b1%e4%bd%86%e6%98%af-suse-manager-server-%e6%b2%92%e6%9c%89%e8%aa%8d%e5%88%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Refresh the local copy of products, channels, and subscriptions&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync -d 3 refresh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.6.3. &lt;code&gt;mgr-sync&lt;/code&gt; log 檔案所在的位置&lt;span class="hx:absolute hx:-mt-20" id="263-mgr-sync-log-檔案所在的位置"&gt;&lt;/span&gt;
&lt;a href="#263-mgr-sync-log-%e6%aa%94%e6%a1%88%e6%89%80%e5%9c%a8%e7%9a%84%e4%bd%8d%e7%bd%ae" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/var/log/rhn/mgr-sync.log&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/log/rhn/rhn_web_api.log&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;3. 新增 Base Media&lt;span class="hx:absolute hx:-mt-20" id="3-新增-base-media"&gt;&lt;/span&gt;
&lt;a href="#3-%e6%96%b0%e5%a2%9e-base-media" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;3.1. 注意事項&lt;span class="hx:absolute hx:-mt-20" id="31-注意事項"&gt;&lt;/span&gt;
&lt;a href="#31-%e6%b3%a8%e6%84%8f%e4%ba%8b%e9%a0%85" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;SUSE Liberty Linux 的 base channel 沒有任何套件，因為 SUSE 沒有提供 Red Hat Enterprise Linux 或 CentOS 的 base media。&lt;/li&gt;
&lt;li&gt;需要從 Red Hat 或 CentOS 取得 base media，並將其新增為 SUSE Liberty Linux parent channel 的 child channel。為了確保有需要的所有套件，請使用完整的 DVD image，而不是最小或 JeOS image。&lt;/li&gt;
&lt;li&gt;可以使用 SUSE Manager custom channels 來設定 Red Hat Enterprise Linux 或 CentOS 的 media。base media 上的所有套件都必須 mirror 到 child channel。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;3.2. 建立 CentOS 7 Custom Channels&lt;span class="hx:absolute hx:-mt-20" id="32-建立-centos-7-custom-channels"&gt;&lt;/span&gt;
&lt;a href="#32-%e5%bb%ba%e7%ab%8b-centos-7-custom-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;使用 SUSE Manager Server 管理員帳號登入&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- login &amp;lt;admin_name&amp;gt;
&amp;gt; enter admin password&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立 CentOS 7 Custom Channel&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- softwarechannel_create -n &amp;#34;Centos7 Media&amp;#34; -l centos7-media -p rhel-x86_64-server-7 -a x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt;，Custom Channel NAME&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;，Custom Channel LABEL&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-p&lt;/code&gt;，PARENT_CHANNEL of Custom Channel&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-a&lt;/code&gt;，ARCHITECTURE&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 將 CentOS 7 的 Base Media 加到 Custom Channels 中&lt;span class="hx:absolute hx:-mt-20" id="33-將-centos-7-的-base-media-加到-custom-channels-中"&gt;&lt;/span&gt;
&lt;a href="#33-%e5%b0%87-centos-7-%e7%9a%84-base-media-%e5%8a%a0%e5%88%b0-custom-channels-%e4%b8%ad" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 SUSE Manager Server 的 &lt;code&gt;/tmp&lt;/code&gt; 目錄區底下準備 CentOS 7 的 ISO 檔&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -# -L http://ftp.twaren.net/Linux/CentOS/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso -o /tmp/CentOS-7-x86_64-DVD-2009.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;############################################################################ 100.0%&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立一個包含 media 內容的目錄，用 &lt;code&gt;sll7&lt;/code&gt;、&lt;code&gt;sll8&lt;/code&gt; 或 &lt;code&gt;sll9&lt;/code&gt; 取代 &lt;code&gt;&amp;lt;os_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir -p /srv/www/htdocs/pub/&amp;lt;os_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;s117&lt;/code&gt; 對應的是 SUSE Liberty Linux 7&lt;/li&gt;
&lt;li&gt;&lt;code&gt;s118&lt;/code&gt; 對應的是 SUSE Liberty Linux 8&lt;/li&gt;
&lt;li&gt;&lt;code&gt;s119&lt;/code&gt; 對應的是 SUSE Liberty Linux 9&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;將 CentOS-7 的 image 掛載到 &lt;code&gt;/srv/www/htdocs/pub/sll7&lt;/code&gt; 目錄區&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mount -o loop /tmp/CentOS-7-x86_64-DVD-2009.iso /srv/www/htdocs/pub/sll7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;將 Packages 匯入到先前建立的 Custom Channel 中&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo spacewalk-repo-sync -c centos7-media -u file:///srv/www/htdocs/pub/sll7/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-c&lt;/code&gt;，指定 channel-label&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u&lt;/code&gt;，指定 Repository 的 URL&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
14:29:08 Sync completed.
14:29:08 Total time: 0:32:04&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;umont &lt;code&gt;/srv/www/htdocs/pub/sll7&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ umount /srv/www/htdocs/pub/sll7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.4. 建立 RHEL 7 Custom Channels&lt;span class="hx:absolute hx:-mt-20" id="34-建立-rhel-7-custom-channels"&gt;&lt;/span&gt;
&lt;a href="#34-%e5%bb%ba%e7%ab%8b-rhel-7-custom-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;建立 RHEL 7 Custom Channel&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- softwarechannel_create -n &amp;#34;RHEL Media&amp;#34; -l rhel-media -p rhel-x86_64-server-7 -a x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt;，Custom Channel NAME&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;，Custom Channel LABEL&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-p&lt;/code&gt;，PARENT_CHANNEL of Custom Channel&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-a&lt;/code&gt;，ARCHITECTURE&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 將 RHEL 7 的 Base Media 加到 Custom Channels 中&lt;span class="hx:absolute hx:-mt-20" id="33-將-rhel-7-的-base-media-加到-custom-channels-中"&gt;&lt;/span&gt;
&lt;a href="#33-%e5%b0%87-rhel-7-%e7%9a%84-base-media-%e5%8a%a0%e5%88%b0-custom-channels-%e4%b8%ad" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在 SUSE Manager Server 的 &lt;code&gt;/tmp&lt;/code&gt; 目錄區底下準備 RHEL 7 的 ISO 檔&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l /tmp/rhel-server-7.9-x86_64-dvd.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;-rw-r--r-- 1 root root 4526702592 Jan 11 14:20 /tmp/rhel-server-7.9-x86_64-dvd.iso&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立一個包含 media 內容的目錄，用 &lt;code&gt;sll7&lt;/code&gt;、&lt;code&gt;sll8&lt;/code&gt; 或 &lt;code&gt;sll9&lt;/code&gt; 取代 &lt;code&gt;&amp;lt;os_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir -p /srv/www/htdocs/pub/&amp;lt;os_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;sll7&lt;/code&gt; 對應的是 SUSE Liberty Linux 7&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sll8&lt;/code&gt; 對應的是 SUSE Liberty Linux 8&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sll9&lt;/code&gt; 對應的是 SUSE Liberty Linux 9&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;將 CentOS-7 的 image 掛載到 &lt;code&gt;/srv/www/htdocs/pub/sll7&lt;/code&gt; 目錄區&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mount -o loop /tmp/rhel-server-7.9-x86_64-dvd.iso /srv/www/htdocs/pub/sll7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;將 Packages 匯入到先前建立的 Custom Channel 中&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo spacewalk-repo-sync -c rhel-media -u file:///srv/www/htdocs/pub/sll7/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-c&lt;/code&gt;，指定 channel-label&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u&lt;/code&gt;，指定 Repository 的 URL&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
15:42:34 Linking packages to the channel.
15:42:41 1000 packages linked
15:43:03 2000 packages linked
15:43:50 3000 packages linked
15:43:52 4000 packages linked
15:43:54 5000 packages linked
15:43:55 5230 packages linked
15:43:55
15:43:55 Patches in repo: 0.
15:43:56 Regenerating bootstrap repositories.
Generating bootstrap repos for all available products which had changes.
Nothing to do.
15:43:58 Sync completed.
15:43:58 Total time: 0:07:42&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. 將 CentOS 7 註冊為 SUSE Liberty Linux Clients&lt;span class="hx:absolute hx:-mt-20" id="4-將-centos-7-註冊為-suse-liberty-linux-clients"&gt;&lt;/span&gt;
&lt;a href="#4-%e5%b0%87-centos-7-%e8%a8%bb%e5%86%8a%e7%82%ba-suse-liberty-linux-clients" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;4.1. 手動創建用戶端倉庫&lt;span class="hx:absolute hx:-mt-20" id="41-手動創建用戶端倉庫"&gt;&lt;/span&gt;
&lt;a href="#41-%e6%89%8b%e5%8b%95%e5%89%b5%e5%bb%ba%e7%94%a8%e6%88%b6%e7%ab%af%e5%80%89%e5%ba%ab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-create-bootstrap-repo --create RES7-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.2. 創建 Activation_Key&lt;span class="hx:absolute hx:-mt-20" id="42-創建-activation_key"&gt;&lt;/span&gt;
&lt;a href="#42-%e5%89%b5%e5%bb%ba-activation_key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_create \
-n liberty-linux-centos-7 \
-d liberty-linux-centos-7 \
-b rhel-x86_64-server-7 \
-e virtualization_host&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;activationkey_create&lt;/code&gt; 參數介紹 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt; ，activationkey 的名稱&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt; ，activationkey 的描述&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-b&lt;/code&gt; ，指定 activationkey 的 BASE_CHANNEL&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-e&lt;/code&gt; ，[enterprise_entitled,virtualization_host]&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h4&gt;4.2.1 將 Centos-7 Base Media channel 加入 activation key&lt;span class="hx:absolute hx:-mt-20" id="421-將-centos-7-base-media-channel-加入-activation-key"&gt;&lt;/span&gt;
&lt;a href="#421-%e5%b0%87-centos-7-base-media-channel-%e5%8a%a0%e5%85%a5-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_addchildchannels 1-liberty-linux-centos-7 centos7-media&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.3. 創建 Bootstrap Script&lt;span class="hx:absolute hx:-mt-20" id="43-創建-bootstrap-script"&gt;&lt;/span&gt;
&lt;a href="#43-%e5%89%b5%e5%bb%ba-bootstrap-script" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-bootstrap --activation-key=1-liberty-linux-centos-7 --script=bootstrap-liberty-linux-centos-7.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.4. 在 CentOS-7 執行 Bootstrap Script 註冊&lt;span class="hx:absolute hx:-mt-20" id="44-在-centos-7-執行-bootstrap-script-註冊"&gt;&lt;/span&gt;
&lt;a href="#44-%e5%9c%a8-centos-7-%e5%9f%b7%e8%a1%8c-bootstrap-script-%e8%a8%bb%e5%86%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;請連線到 CentOS 7 的主機，執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://&amp;lt;SUMA_FQDN&amp;gt;/pub/bootstrap/bootstrap-liberty-linux-centos-7.sh | sudo bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;......................以上省略
REGISTRATION
------------
* registering
Using activation key: 1-liberty-linux-7
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink from /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service to /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.5. 在 SUSE Manager Web UI 上同意 Salt Key&lt;span class="hx:absolute hx:-mt-20" id="45-在-suse-manager-web-ui-上同意-salt-key"&gt;&lt;/span&gt;
&lt;a href="#45-%e5%9c%a8-suse-manager-web-ui-%e4%b8%8a%e5%90%8c%e6%84%8f-salt-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;點擊左側選單 Salt -&amp;gt; Keys
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1-z4IMKT.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;4.6. 檢查 Packages Repository&lt;span class="hx:absolute hx:-mt-20" id="46-檢查-packages-repository"&gt;&lt;/span&gt;
&lt;a href="#46-%e6%aa%a2%e6%9f%a5-packages-repository" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;執行以下命令，列出已啟用的 Packages Repository&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum repolist enabled&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Loaded plugins: fastestmirror, langpacks, susemanagerplugin, venv-yumnotify
Loading mirror speeds from cached hostfile
repo id repo name status
susemanager:centos7-media Centos7 Media 4,070
susemanager:res7-suse-manager-tools-x86_64 RES7 SUSE-Manager-Tools x86_64 1,111
susemanager:res7-x86_64 RES7 for x86_64 58,516
susemanager:rhel-x86_64-server-7 RHEL x86_64 Server 7 0
repolist: 63,697&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認已更換為 SUSE Liberty Linux 7 的 Packages Repository&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.1 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="461-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#461-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSEManager &amp;gt; Systems &amp;gt; Overview&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJEE7mTOp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.2 透過 CLI 的方式檢查 Client 系統資訊&lt;span class="hx:absolute hx:-mt-20" id="462-透過-cli-的方式檢查-client-系統資訊"&gt;&lt;/span&gt;
&lt;a href="#462-%e9%80%8f%e9%81%8e-cli-%e7%9a%84%e6%96%b9%e5%bc%8f%e6%aa%a2%e6%9f%a5-client-%e7%b3%bb%e7%b5%b1%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -q -- system_details centos7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Name: centos7
System ID: 1000010026
UUID: f8167264b57240cd950413eb2dfbe7f8
Locked: False
Registered: 20231109T16:10:22
Last Checkin: 20231109T16:12:13
OSA Status: unknown
Last Boot: 20231109T16:01:58
Contact Method:default
Hostname: centos7
IP Address: x.x.x.x
Kernel: 3.10.0-1160.el7.x86_64
Activation Keys
---------------
1-liberty-linux-7
Software Channels
-----------------
rhel-x86_64-server-7
|-- res7-x86_64
|-- res7-suse-manager-tools-x86_64
|-- centos7-media
Entitlements
------------
salt_entitled
System Groups
-------------&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.7. 測試系統更新&lt;span class="hx:absolute hx:-mt-20" id="47-測試系統更新"&gt;&lt;/span&gt;
&lt;a href="#47-%e6%b8%ac%e8%a9%a6%e7%b3%bb%e7%b5%b1%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Client 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;... 以上省略
Transaction Summary
==================================================================
Install 1 Package (&amp;#43;1 Dependent package)
Upgrade 153 Packages
Total download size: 289 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/155): NetworkManager-libnm-1.18.8-2.el7_9.x86_64.rpm | 1.7 MB 00:00:00
... 中間省略
------------------------------------------------------------------
Total 40 MB/s | 289 MB 00:00:07
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
... 中間省略
Installed:
kernel.x86_64 0:3.10.0-1160.102.1.el7
Dependency Installed:
sles_es-release-server.x86_64 0:7.9-6.el7
Updated:
NetworkManager.x86_64 1:1.18.8-2.el7_9 ...
Complete!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.7.1 TroubleShooting&lt;span class="hx:absolute hx:-mt-20" id="471-troubleshooting"&gt;&lt;/span&gt;
&lt;a href="#471-troubleshooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;遇到 Transaction check error&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Transaction check error:
file /usr/share/redhat-release from install of sles_es-release-server-7.9-6.el7.x86_64 conflicts with file from package centos-release-7-9.2009.0.el7.centos.x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;解決辦法 : 執行以下命令，刪除 &lt;code&gt;centos-release&lt;/code&gt; 套件&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rpm -e --nodeps centos-release-7-9.2009.0.el7.centos.x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.7.2 重啟系統&lt;span class="hx:absolute hx:-mt-20" id="472-重啟系統"&gt;&lt;/span&gt;
&lt;a href="#472-%e9%87%8d%e5%95%9f%e7%b3%bb%e7%b5%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.7.3. 再次更新測試&lt;span class="hx:absolute hx:-mt-20" id="473-再次更新測試"&gt;&lt;/span&gt;
&lt;a href="#473-%e5%86%8d%e6%ac%a1%e6%9b%b4%e6%96%b0%e6%b8%ac%e8%a9%a6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
No packages marked for update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.7.4. 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="474-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#474-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJy8_Q5Xa.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Updates 欄位已經是綠勾勾代表系統已更新至最新&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;5. 將 RHEL 7 註冊為 SUSE Liberty Linux Clients&lt;span class="hx:absolute hx:-mt-20" id="5-將-rhel-7-註冊為-suse-liberty-linux-clients"&gt;&lt;/span&gt;
&lt;a href="#5-%e5%b0%87-rhel-7-%e8%a8%bb%e5%86%8a%e7%82%ba-suse-liberty-linux-clients" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;5.1. 手動刷新用戶端倉庫&lt;span class="hx:absolute hx:-mt-20" id="51-手動刷新用戶端倉庫"&gt;&lt;/span&gt;
&lt;a href="#51-%e6%89%8b%e5%8b%95%e5%88%b7%e6%96%b0%e7%94%a8%e6%88%b6%e7%ab%af%e5%80%89%e5%ba%ab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-create-bootstrap-repo --create RES7-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;5.1. 創建 Activation_Key&lt;span class="hx:absolute hx:-mt-20" id="51-創建-activation_key"&gt;&lt;/span&gt;
&lt;a href="#51-%e5%89%b5%e5%bb%ba-activation_key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_create \
-n liberty-linux-rhel-7 \
-d liberty-linux-rhel-7 \
-b rhel-x86_64-server-7 \
-e virtualization_host&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;activationkey_create&lt;/code&gt; 參數介紹 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt; ，activationkey 的名稱&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt; ，activationkey 的描述&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-b&lt;/code&gt; ，指定 activationkey 的 BASE_CHANNEL&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-e&lt;/code&gt; ，[enterprise_entitled,virtualization_host]&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h4&gt;5.1.1 將 RHEL 7 Base Media channel 加入 activation key&lt;span class="hx:absolute hx:-mt-20" id="511-將-rhel-7-base-media-channel-加入-activation-key"&gt;&lt;/span&gt;
&lt;a href="#511-%e5%b0%87-rhel-7-base-media-channel-%e5%8a%a0%e5%85%a5-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_addchildchannels 1-liberty-linux-rhel-7 rhel-media&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;5.2. 創建 Bootstrap Script&lt;span class="hx:absolute hx:-mt-20" id="52-創建-bootstrap-script"&gt;&lt;/span&gt;
&lt;a href="#52-%e5%89%b5%e5%bb%ba-bootstrap-script" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-bootstrap --activation-key=1-liberty-linux-rhel-7 --script=bootstrap-liberty-linux-rhel-7.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;5.3. 在 RHEL 7 執行 Bootstrap Script 註冊&lt;span class="hx:absolute hx:-mt-20" id="53-在-rhel-7-執行-bootstrap-script-註冊"&gt;&lt;/span&gt;
&lt;a href="#53-%e5%9c%a8-rhel-7-%e5%9f%b7%e8%a1%8c-bootstrap-script-%e8%a8%bb%e5%86%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;請連線到 RHEL 7 的主機，執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://&amp;lt;SUMA_FQDN&amp;gt;/pub/bootstrap/bootstrap-liberty-linux-rhel-7.sh | sudo bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;......................以上省略
REGISTRATION
------------
* registering
Using activation key: 1-liberty-linux-rhel-7
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink from /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service to /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;5.4. 在 SUSE Manager Web UI 上同意 Salt Key&lt;span class="hx:absolute hx:-mt-20" id="54-在-suse-manager-web-ui-上同意-salt-key"&gt;&lt;/span&gt;
&lt;a href="#54-%e5%9c%a8-suse-manager-web-ui-%e4%b8%8a%e5%90%8c%e6%84%8f-salt-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;點擊左側選單 Salt -&amp;gt; Keys&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1zJuXTd6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;5.5. 檢查 Packages Repository&lt;span class="hx:absolute hx:-mt-20" id="55-檢查-packages-repository"&gt;&lt;/span&gt;
&lt;a href="#55-%e6%aa%a2%e6%9f%a5-packages-repository" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;執行以下命令，列出已啟用的 Packages Repository&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum repolist enabled&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Loaded plugins: fastestmirror, langpacks, susemanagerplugin, venv-yumnotify
Loading mirror speeds from cached hostfile
repo id repo name status
susemanager:res7-suse-manager-tools-x86_64 RES7 SUSE-Manager-Tools x86_64 1,111
susemanager:res7-x86_64 RES7 for x86_64 58,516
susemanager:rhel-media RHEL Media 5,230
susemanager:rhel-x86_64-server-7 RHEL x86_64 Server 7 0
repolist: 64,857&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認已更換為 SUSE Liberty Linux 7 的 Packages Repository&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h4&gt;5.5.1 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="551-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#551-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSEManager &amp;gt; Systems &amp;gt; Overview&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJwCuXpO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;5.5.2 透過 CLI 的方式檢查 Client 系統資訊&lt;span class="hx:absolute hx:-mt-20" id="552-透過-cli-的方式檢查-client-系統資訊"&gt;&lt;/span&gt;
&lt;a href="#552-%e9%80%8f%e9%81%8e-cli-%e7%9a%84%e6%96%b9%e5%bc%8f%e6%aa%a2%e6%9f%a5-client-%e7%b3%bb%e7%b5%b1%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -q -- system_details rhel7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;如果 Web UI 上有顯示，但命令沒有，可能是 Cache 住了，執行以下命令清除&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -q -- clear_caches&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Name: rhel7
System ID: 1000010001
UUID: cec08a0cad1348889a9465513f00fd2b
Locked: False
Registered: 20240111T16:34:25
Last Checkin: 20240111T16:36:21
OSA Status: unknown
Last Boot: 20240111T15:49:11
Contact Method:default
Hostname: rhel7
IP Address: 192.168.11.95
Kernel: 3.10.0-1160.el7.x86_64
Activation Keys
---------------
1-liberty-linux-rhel-7
Software Channels
-----------------
rhel-x86_64-server-7
|-- res7-suse-manager-tools-x86_64
|-- res7-x86_64
|-- rhel-media
Entitlements
------------
salt_entitled&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;5.6. 測試系統更新&lt;span class="hx:absolute hx:-mt-20" id="56-測試系統更新"&gt;&lt;/span&gt;
&lt;a href="#56-%e6%b8%ac%e8%a9%a6%e7%b3%bb%e7%b5%b1%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Client 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;... 以上省略
Transaction Summary
======================================================================================================================================
Install 9 Packages (&amp;#43;33 Dependent packages)
Upgrade 124 Packages
Total download size: 296 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/166): NetworkManager-1.18.8-2.el7_9.x86_64.rpm | 1.9 MB 00:00:00
... 中間省略
------------------------------------------------------------------
Total 40 MB/s | 289 MB 00:00:07
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
... 中間省略
Replaced:
python-hwdata.noarch 0:1.7.3-4.el7 redhat-logos.noarch 0:70.7.0-1.el7 redhat-release-eula.noarch 0:7.8-0.el7
redhat-release-server.x86_64 0:7.9-3.el7 rhn-check.x86_64 0:2.0.2-24.el7 rhn-client-tools.x86_64 0:2.0.2-24.el7
rhn-setup.x86_64 0:2.0.2-24.el7 rhnlib.noarch 0:2.5.65-8.el7 rhnsd.x86_64 0:5.0.13-10.el7
Complete!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.7.1 TroubleShooting&lt;span class="hx:absolute hx:-mt-20" id="571-troubleshooting"&gt;&lt;/span&gt;
&lt;a href="#571-troubleshooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;遇到 Transaction check error&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Public key for spacewalk-client-setup-4.3.17-141.1.noarch.rpm is not installed&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;原因 : 傳統的 Red Hat Enterprise Linux 7 和 SLES Expanded Support 7 用戶端需要一些未簽署的軟體套件才能與 SUSE Manager 正常運作，因此這些用戶端類型的通道通常會取消設定該標誌 gpgcheck&lt;/p&gt;
&lt;p&gt;解決辦法 1 : 新增參數 : &lt;code&gt;--nogpgcheck&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update --nogpgcheck&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;解決辦法 2 : 在 SUMA Manager Web UI 上關閉 Software Channel 的 GPGCheck&lt;/p&gt;
&lt;p&gt;Software -&amp;gt; Channel List -&amp;gt; 展開 RHEL x86_64 Server 7，將 &lt;code&gt;RHEL x86_64 Server 7&lt;/code&gt;、&lt;code&gt;RES7 for x86_64&lt;/code&gt;、&lt;code&gt;RES7 SUSE-Manager-Tools x86_64 &lt;/code&gt; 和 &lt;code&gt; RHEL Media&lt;/code&gt; 這 4 個 Software Channel 的 &lt;code&gt;GPG Check&lt;/code&gt; 取消勾選並點擊 &lt;code&gt;Update&lt;/code&gt; 按鈕&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJQjbMCda.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;5.7.2 重啟系統&lt;span class="hx:absolute hx:-mt-20" id="572-重啟系統"&gt;&lt;/span&gt;
&lt;a href="#572-%e9%87%8d%e5%95%9f%e7%b3%bb%e7%b5%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.7.3. 再次更新測試&lt;span class="hx:absolute hx:-mt-20" id="573-再次更新測試"&gt;&lt;/span&gt;
&lt;a href="#573-%e5%86%8d%e6%ac%a1%e6%9b%b4%e6%96%b0%e6%b8%ac%e8%a9%a6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
No packages marked for update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;5.7.4. 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="574-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#574-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJkKxKpdp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Updates 欄位已經是綠勾勾代表系統已更新至最新&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;6. 參考資料&lt;span class="hx:absolute hx:-mt-20" id="6-參考資料"&gt;&lt;/span&gt;
&lt;a href="#6-%e5%8f%83%e8%80%83%e8%b3%87%e6%96%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/client-configuration/clients-sleses.html"target="_blank" rel="noopener"&gt;Registering SUSE Liberty Linux Clients - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/administration/mgr-sync.html"target="_blank" rel="noopener"&gt;Using mgr-sync - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://www.suse.com/support/kb/doc/?id=000019020"target="_blank" rel="noopener"&gt;Creating Child Channel for Red Hat Base Media in SUSE Manager 3.1 - SUSE Support&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/suma/4.3/en/suse-manager/administration/troubleshooting/tshoot-registertradrhel.html"target="_blank" rel="noopener"&gt;Troubleshooting Registering Traditional Red Hat Clients - SUSE Manager Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Registering Oracle Linux Clients</title><link>https://blog.kubeantony.com/archive/suse/registering-oracle-linux-clients/</link><pubDate>Mon, 15 Jan 2024 05:43:10 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/registering-oracle-linux-clients/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，如何成功將 Oracle Linux 7 Client 註冊到 SUSE Manager Server&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 注意事項&lt;span class="hx:absolute hx:-mt-20" id="1-注意事項"&gt;&lt;/span&gt;
&lt;a href="#1-%e6%b3%a8%e6%84%8f%e4%ba%8b%e9%a0%85" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;Oracle Linux 套件存儲庫 URL 可從 SUSE Custom Center 獲取&lt;/li&gt;
&lt;li&gt;Packages 和 Metadata 由 Oracle 提供而非 SUSE&lt;/li&gt;
&lt;li&gt;Oracle Linux base media 儲存庫可從 &lt;code&gt;https://yum.oracle.com/&lt;/code&gt; 免費下載&lt;/li&gt;
&lt;li&gt;有關支持的產品，請參閱支持表和發行說明&lt;/li&gt;
&lt;li&gt;目前不支援將 Unbreakable Linux Network (ULN) 資源庫與 SUSE Manager 直接同步。 必須使用用於 ULN 的 Oracle 本地發行版。&lt;/li&gt;
&lt;li&gt;Traditional clients 在 Oracle Linux 9 and 8 不適用，Oracle Linux 9 和 Oracle Linux 8 clients 只支援 Salt clients.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;2. 在 SUSE Manager Server 新增 Software Channels&lt;span class="hx:absolute hx:-mt-20" id="2-在-suse-manager-server-新增-software-channels"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%9c%a8-suse-manager-server-%e6%96%b0%e5%a2%9e-software-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. 系統要求&lt;span class="hx:absolute hx:-mt-20" id="21-系統要求"&gt;&lt;/span&gt;
&lt;a href="#21-%e7%b3%bb%e7%b5%b1%e8%a6%81%e6%b1%82" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;SUSE Manager Server 的 &lt;code&gt;/var/spacewalk&lt;/code&gt; 目錄區剩餘空間量，必須有 150 G 以上的剩餘空間 ( 150 G 是最基礎的，如果可選的 Channels 都要加，保守估計 300 GB 以上)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2.2. 開始新增 Software Channels&lt;span class="hx:absolute hx:-mt-20" id="22-開始新增-software-channels"&gt;&lt;/span&gt;
&lt;a href="#22-%e9%96%8b%e5%a7%8b%e6%96%b0%e5%a2%9e-software-channels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;以下 WebUI 和 CLI 的操作步驟選擇其中一種執行即可&lt;/p&gt;
&lt;h4&gt;2.2.1 使用 WebUI 操作步驟&lt;span class="hx:absolute hx:-mt-20" id="221-使用-webui-操作步驟"&gt;&lt;/span&gt;
&lt;a href="#221-%e4%bd%bf%e7%94%a8-webui-%e6%93%8d%e4%bd%9c%e6%ad%a5%e9%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;勾選要加入的 &lt;code&gt;Oracle Linux 7 x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Add product&amp;rdquo; ，然後等待同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/rJGxRMCO6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;確認同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 Channels 欄位呈現綠勾勾的圖示，代表完成同步&lt;/p&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/BJ6XRfC_p.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;2.3.2. 使用 CLI 操作步驟&lt;span class="hx:absolute hx:-mt-20" id="232-使用-cli-操作步驟"&gt;&lt;/span&gt;
&lt;a href="#232-%e4%bd%bf%e7%94%a8-cli-%e6%93%8d%e4%bd%9c%e6%ad%a5%e9%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;連線至 SUSE Manager Server，並使用具有系統管理員權限的使用者帳號執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync add channel oraclelinux7-x86_64 &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;輸入 SUSE Manager 管理員的帳號密碼&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Please enter the credentials of SUSE Manager Administrator.
Login: sumaadmin
Password:
Channel &amp;#39;oraclelinux7-x86_64&amp;#39; has already been added
Scheduling reposync for following channels:
- oraclelinux7-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.3. Oracle Linux 在 SUSE Manager 上的資訊&lt;span class="hx:absolute hx:-mt-20" id="23-oracle-linux-在-suse-manager-上的資訊"&gt;&lt;/span&gt;
&lt;a href="#23-oracle-linux-%e5%9c%a8-suse-manager-%e4%b8%8a%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;下表是 Oracle Linux 每個版本對應的 Product 名稱 :&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;OS Version&lt;/th&gt;
&lt;th&gt;Product Name&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Oracle Linux 9&lt;/td&gt;
&lt;td&gt;Oracle Linux 9 x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Oracle Linux 8&lt;/td&gt;
&lt;td&gt;Oracle Linux 8 x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Oracle Linux 7&lt;/td&gt;
&lt;td&gt;Oracle Linux 7 x86_64&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h3&gt;2.4. 檢查是否同步成功&lt;span class="hx:absolute hx:-mt-20" id="24-檢查是否同步成功"&gt;&lt;/span&gt;
&lt;a href="#24-%e6%aa%a2%e6%9f%a5%e6%98%af%e5%90%a6%e5%90%8c%e6%ad%a5%e6%88%90%e5%8a%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;h4&gt;2.4.1. 檢視下載 &lt;code&gt;oraclelinux7-x86_64&lt;/code&gt; Channel 的 log 資訊&lt;span class="hx:absolute hx:-mt-20" id="241-檢視下載-oraclelinux7-x86_64-channel-的-log-資訊"&gt;&lt;/span&gt;
&lt;a href="#241-%e6%aa%a2%e8%a6%96%e4%b8%8b%e8%bc%89-oraclelinux7-x86_64-channel-%e7%9a%84-log-%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tail -f /var/log/rhn/reposync/oraclelinux7-x86_64.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該要看到類似以下資訊 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2024/01/11 19:02:00 &amp;#43;08:00 Command: [&amp;#39;/usr/bin/spacewalk-repo-sync&amp;#39;, &amp;#39;--channel&amp;#39;, &amp;#39;oraclelinux7-x86_64&amp;#39;, &amp;#39;--type&amp;#39;, &amp;#39;yum&amp;#39;, &amp;#39;--non-interactive&amp;#39;]
2024/01/11 19:02:00 &amp;#43;08:00 Sync of channel started.
2024/01/11 19:02:17 &amp;#43;08:00
2024/01/11 19:02:17 &amp;#43;08:00 Importing comps file bbe5fe5a8fc06e1d34af14daa449db87f7fc3755-comps.xml.
2024/01/11 19:02:17 &amp;#43;08:00 Renaming non-standard filename bbe5fe5a8fc06e1d34af14daa449db87f7fc3755-comps.xml to comps.xml.
2024/01/11 19:02:17 &amp;#43;08:00 *** NOTE: Importing comps file for the channel &amp;#39;oraclelinux7-x86_64&amp;#39;. Previous comps will be discarded.
2024/01/11 19:02:18 &amp;#43;08:00 Repo URL: https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/
2024/01/11 19:02:18 &amp;#43;08:00 Packages in repo: 26473
2024/01/11 19:03:37 &amp;#43;08:00 Packages already synced: 5236
2024/01/11 19:03:37 &amp;#43;08:00 Packages to sync: 21237
2024/01/11 19:03:39 &amp;#43;08:00 New packages to download: 21237
2024/01/11 19:03:39 &amp;#43;08:00 Downloading packages:
2024/01/11 19:03:43 &amp;#43;08:00 1/21237 : 389-ds-base-1.3.10.1-14.el7_8.x86_64.rpm
...中間省略
2024/01/11 21:03:33 &amp;#43;08:00 21235/21237 : zziplib-0.13.62-9.el7.i686.rpm
2024/01/11 21:03:33 &amp;#43;08:00 21236/21237 : zziplib-0.13.62-9.el7.x86_64.rpm
2024/01/11 21:03:33 &amp;#43;08:00 21237/21237 : zsh-5.0.2-34.el7_8.2.x86_64.rp
...中間省略
2024/01/11 21:03:33 &amp;#43;08:00 Importing packages started.
2024/01/11 21:03:33 &amp;#43;08:00
2024/01/11 21:03:33 &amp;#43;08:00 Importing packages to DB:
2024/01/11 21:04:05 &amp;#43;08:00 Package batch #5 of 1062 completed..
...中間省略
2024/01/11 22:24:43 &amp;#43;08:00 Add Patch ELBA-2019-2067
2024/01/11 22:24:43 &amp;#43;08:00 Syncing 3359 new patch(es) to channel.
2024/01/11 22:25:15 &amp;#43;08:00 Regenerating bootstrap repositories.
2024/01/11 22:25:16 &amp;#43;08:00 Sync completed&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;下載完成後會在 log 檔中看到 &lt;code&gt;Sync completed.&lt;/code&gt; 代表完成&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h4&gt;2.4.2. 檢視下載 &lt;code&gt;res-7-suse-manager-tools-x86_64-ol7&lt;/code&gt; Channel 的 log 資訊&lt;span class="hx:absolute hx:-mt-20" id="242-檢視下載-res-7-suse-manager-tools-x86_64-ol7-channel-的-log-資訊"&gt;&lt;/span&gt;
&lt;a href="#242-%e6%aa%a2%e8%a6%96%e4%b8%8b%e8%bc%89-res-7-suse-manager-tools-x86_64-ol7-channel-%e7%9a%84-log-%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tail -f /var/log/rhn/reposync/res-7-suse-manager-tools-x86_64-ol7.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該要看到類似以下資訊 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2024/01/11 22:25:58 &amp;#43;08:00 Command: [&amp;#39;/usr/bin/spacewalk-repo-sync&amp;#39;, &amp;#39;--channel&amp;#39;, &amp;#39;res-7-suse-manager-tools-x86_64-ol7&amp;#39;, &amp;#39;--type&amp;#39;, &amp;#39;yum&amp;#39;, &amp;#39;--non-interactive&amp;#39;]
2024/01/11 22:25:58 &amp;#43;08:00 Sync of channel started.
2024/01/11 22:26:10 &amp;#43;08:00 Repo URL: https://updates.suse.com/repo/$RCE/RES7-SUSE-Manager-Tools/x86_64/?&amp;lt;token&amp;gt;
2024/01/11 22:26:10 &amp;#43;08:00 Packages in repo: 1689
2024/01/11 22:26:14 &amp;#43;08:00 Packages already synced: 578
2024/01/11 22:26:14 &amp;#43;08:00 Packages to sync: 1111
2024/01/11 22:26:14 &amp;#43;08:00 New packages to download: 0
2024/01/11 22:26:14 &amp;#43;08:00 Downloading packages:
2024/01/11 22:26:14 &amp;#43;08:00 Importing packages started.
2024/01/11 22:26:14 &amp;#43;08:00
2024/01/11 22:26:14 &amp;#43;08:00 Importing packages to DB:
2024/01/11 22:26:14 &amp;#43;08:00 Package batch #1 of 56 completed...
...中間省略
2024/01/11 22:26:29 &amp;#43;08:00 Add Patch client-tools-201811-13899
2024/01/11 22:26:29 &amp;#43;08:00 Add Patch client-tools-201811-13900
2024/01/11 22:26:29 &amp;#43;08:00 Add Patch salt-201811-13898
2024/01/11 22:26:29 &amp;#43;08:00 Syncing 111 new patch(es) to channel.
2024/01/11 22:26:33 &amp;#43;08:00 Regenerating bootstrap repositories.
2024/01/11 22:26:38 &amp;#43;08:00 Sync completed.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.5. Trouble Shooting&lt;span class="hx:absolute hx:-mt-20" id="25-trouble-shooting"&gt;&lt;/span&gt;
&lt;a href="#25-trouble-shooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;h4&gt;2.5.1. 透過 CLI 重新同步 Channel&lt;span class="hx:absolute hx:-mt-20" id="251-透過-cli-重新同步-channel"&gt;&lt;/span&gt;
&lt;a href="#251-%e9%80%8f%e9%81%8e-cli-%e9%87%8d%e6%96%b0%e5%90%8c%e6%ad%a5-channel" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync sync channel &amp;lt;channel_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.5.2. 在 SCC 有新增 Product 的訂閱，但是 SUSE Manager Server 沒有認到&lt;span class="hx:absolute hx:-mt-20" id="252-在-scc-有新增-product-的訂閱但是-suse-manager-server-沒有認到"&gt;&lt;/span&gt;
&lt;a href="#252-%e5%9c%a8-scc-%e6%9c%89%e6%96%b0%e5%a2%9e-product-%e7%9a%84%e8%a8%82%e9%96%b1%e4%bd%86%e6%98%af-suse-manager-server-%e6%b2%92%e6%9c%89%e8%aa%8d%e5%88%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Refresh the local copy of products, channels, and subscriptions&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-sync -d 3 refresh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;2.5.3. &lt;code&gt;mgr-sync&lt;/code&gt; log 檔案所在的位置&lt;span class="hx:absolute hx:-mt-20" id="253-mgr-sync-log-檔案所在的位置"&gt;&lt;/span&gt;
&lt;a href="#253-mgr-sync-log-%e6%aa%94%e6%a1%88%e6%89%80%e5%9c%a8%e7%9a%84%e4%bd%8d%e7%bd%ae" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/var/log/rhn/mgr-sync.log&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/var/log/rhn/rhn_web_api.log&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. 建立 Activation Key&lt;span class="hx:absolute hx:-mt-20" id="3-建立-activation-key"&gt;&lt;/span&gt;
&lt;a href="#3-%e5%bb%ba%e7%ab%8b-activation-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;3.1. 手動創建 bootstrap 倉庫&lt;span class="hx:absolute hx:-mt-20" id="31-手動創建-bootstrap-倉庫"&gt;&lt;/span&gt;
&lt;a href="#31-%e6%89%8b%e5%8b%95%e5%89%b5%e5%bb%ba-bootstrap-%e5%80%89%e5%ba%ab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-create-bootstrap-repo --create oracle-7-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.2. 創建 Activation_Key&lt;span class="hx:absolute hx:-mt-20" id="32-創建-activation_key"&gt;&lt;/span&gt;
&lt;a href="#32-%e5%89%b5%e5%bb%ba-activation_key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -- activationkey_create \
-n oracle-linux-7 \
-d oracle-linux-7 \
-b oraclelinux7-x86_64 \
-e virtualization_host&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;activationkey_create&lt;/code&gt; 參數介紹 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt; ，activationkey 的名稱&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt; ，activationkey 的描述&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-b&lt;/code&gt; ，指定 activationkey 的 BASE_CHANNEL&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-e&lt;/code&gt; ，[enterprise_entitled,virtualization_host]&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 創建 Bootstrap Script&lt;span class="hx:absolute hx:-mt-20" id="33-創建-bootstrap-script"&gt;&lt;/span&gt;
&lt;a href="#33-%e5%89%b5%e5%bb%ba-bootstrap-script" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-bootstrap \
--activation-key=1-oracle-linux-7 \
--gpg-key=/srv/www/htdocs/pub/ol67-gpg-pubkey-72F97B74EC551F03.key \
--script=bootstrap-oracle-linux-7.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;4. 將 Orcale Linux 7 註冊為 Client&lt;span class="hx:absolute hx:-mt-20" id="4-將-orcale-linux-7-註冊為-client"&gt;&lt;/span&gt;
&lt;a href="#4-%e5%b0%87-orcale-linux-7-%e8%a8%bb%e5%86%8a%e7%82%ba-client" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;4.1. SSH 連線至 Orcale Linux 7 主機&lt;span class="hx:absolute hx:-mt-20" id="41-ssh-連線至-orcale-linux-7-主機"&gt;&lt;/span&gt;
&lt;a href="#41-ssh-%e9%80%a3%e7%b7%9a%e8%87%b3-orcale-linux-7-%e4%b8%bb%e6%a9%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h3&gt;4.2. 禁用 Public 套件儲存庫&lt;span class="hx:absolute hx:-mt-20" id="42-禁用-public-套件儲存庫"&gt;&lt;/span&gt;
&lt;a href="#42-%e7%a6%81%e7%94%a8-public-%e5%a5%97%e4%bb%b6%e5%84%b2%e5%ad%98%e5%ba%ab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ find /etc/yum.repos.d/ -type f -not -name susemanager*.repo | xargs sed -i &amp;#39;s/enabled=1/enabled=0/g&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.3. 禁用與 susemanager 不相關的 yum plugin&lt;span class="hx:absolute hx:-mt-20" id="43-禁用與-susemanager-不相關的-yum-plugin"&gt;&lt;/span&gt;
&lt;a href="#43-%e7%a6%81%e7%94%a8%e8%88%87-susemanager-%e4%b8%8d%e7%9b%b8%e9%97%9c%e7%9a%84-yum-plugin" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ find /etc/yum/pluginconf.d/ -type f -not -name susemanager*.conf | xargs sed -i &amp;#39;s/enabled = 1/enabled = 0/g&amp;#39;
$ find /etc/yum/pluginconf.d/ -type f -not -name susemanager*.conf | xargs sed -i &amp;#39;s/enabled=1/enabled=0/g&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.3. 執行 Bootstrap Script 註冊&lt;span class="hx:absolute hx:-mt-20" id="43-執行-bootstrap-script-註冊"&gt;&lt;/span&gt;
&lt;a href="#43-%e5%9f%b7%e8%a1%8c-bootstrap-script-%e8%a8%bb%e5%86%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://&amp;lt;SUMA_FQDN&amp;gt;/pub/bootstrap/bootstrap-oracle-linux-7.sh | sudo bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;......................以上省略
REGISTRATION
------------
* registering
Using activation key: 1-liberty-linux-7
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink from /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service to /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.4. 在 SUSE Manager Web UI 上同意 Salt Key&lt;span class="hx:absolute hx:-mt-20" id="44-在-suse-manager-web-ui-上同意-salt-key"&gt;&lt;/span&gt;
&lt;a href="#44-%e5%9c%a8-suse-manager-web-ui-%e4%b8%8a%e5%90%8c%e6%84%8f-salt-key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;點擊左側選單 Salt -&amp;gt; Keys&lt;/p&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/SJqI0vAda.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;4.5. 檢查 Packages Repository&lt;span class="hx:absolute hx:-mt-20" id="45-檢查-packages-repository"&gt;&lt;/span&gt;
&lt;a href="#45-%e6%aa%a2%e6%9f%a5-packages-repository" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;執行以下命令，列出已啟用的 Packages Repository&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum repolist enabled&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;repo id repo name status
susemanager:oraclelinux7-x86_64 oraclelinux7 for x86_64 21,237
susemanager:res-7-suse-manager-tools-x86_64-ol7 RES-7-SUSE-Manager-Tools for x86_64 OL7 1,111
repolist: 22,348&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認Packages Repository 已更換&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;4.6. 檢查 Client 端基本資訊&lt;span class="hx:absolute hx:-mt-20" id="46-檢查-client-端基本資訊"&gt;&lt;/span&gt;
&lt;a href="#46-%e6%aa%a2%e6%9f%a5-client-%e7%ab%af%e5%9f%ba%e6%9c%ac%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;h4&gt;4.6.1 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="461-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#461-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSEManager &amp;gt; Systems &amp;gt; Overview&lt;/p&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/r14FbvCua.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;4.6.2 透過 CLI 的方式檢查 Client 系統資訊&lt;span class="hx:absolute hx:-mt-20" id="462-透過-cli-的方式檢查-client-系統資訊"&gt;&lt;/span&gt;
&lt;a href="#462-%e9%80%8f%e9%81%8e-cli-%e7%9a%84%e6%96%b9%e5%bc%8f%e6%aa%a2%e6%9f%a5-client-%e7%b3%bb%e7%b5%b1%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ spacecmd -q -- system_details orcale7&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Name: orcale7
System ID: 1000010007
UUID: af9895b6a5db40ee90920743d1f1b33d
Locked: False
Registered: 20240112T14:44:40
Last Checkin: 20240112T14:47:20
OSA Status: unknown
Last Boot: 20240112T13:57:02
Contact Method:default
Hostname: orcale7
IP Address: xxx.xxx.xxx.xxx
Kernel: 5.4.17-2102.201.3.el7uek.x86_64
Activation Keys
---------------
1-oracle-linux-7
Software Channels
-----------------
oraclelinux7-x86_64
|-- res-7-suse-manager-tools-x86_64-ol7
|-- oracle7v2-media
Entitlements
------------
salt_entitled&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;4.7. 測試系統更新&lt;span class="hx:absolute hx:-mt-20" id="47-測試系統更新"&gt;&lt;/span&gt;
&lt;a href="#47-%e6%b8%ac%e8%a9%a6%e7%b3%bb%e7%b5%b1%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Client 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;... 以上省略
Transaction Summary
====================================================================
Install 7 Packages (&amp;#43;39 Dependent packages)
Upgrade 138 Packages
Total download size: 533 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/184): NetworkManager-config-server-1.18.8-2.0.1.el7_9.noarch.rpm | 151 kB 00:00:00
... 中間省略
------------------------------------------------------------------
Total 36 MB/s | 533 MB 00:00:14
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Updating : 1:grub2-common-2.02-0.87.0.25.el7.9.11.noarch 1/328
... 中間省略
Installed:
kernel.x86_64 0:3.10.0-1160.105.1.0.1.el7 ...
Dependency Installed:
iwlax2xx-firmware.noarch 999:20231102-999.29.el7 ...
Updated:
NetworkManager.x86_64 1:1.18.8-2.0.1.el7_9 ...
Replaced:
python-hwdata.noarch 0:1.7.3-4.el7 ...
Complete!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.7.2 重啟系統&lt;span class="hx:absolute hx:-mt-20" id="472-重啟系統"&gt;&lt;/span&gt;
&lt;a href="#472-%e9%87%8d%e5%95%9f%e7%b3%bb%e7%b5%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.7.3. 再次更新測試&lt;span class="hx:absolute hx:-mt-20" id="473-再次更新測試"&gt;&lt;/span&gt;
&lt;a href="#473-%e5%86%8d%e6%ac%a1%e6%9b%b4%e6%96%b0%e6%b8%ac%e8%a9%a6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yum update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出應該如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Loaded plugins: susemanagerplugin, venv-yumnotify
No packages marked for update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;4.7.4. 在 SUSE Manager Server Web UI 檢視 Client 端的資訊&lt;span class="hx:absolute hx:-mt-20" id="474-在-suse-manager-server-web-ui-檢視-client-端的資訊"&gt;&lt;/span&gt;
&lt;a href="#474-%e5%9c%a8-suse-manager-server-web-ui-%e6%aa%a2%e8%a6%96-client-%e7%ab%af%e7%9a%84%e8%b3%87%e8%a8%8a" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/HyI0UDR_6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Updates 欄位已經是綠勾勾代表系統已更新至最新&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description></item><item><title>Basic HA Troubleshooting</title><link>https://blog.kubeantony.com/archive/suse/basic-ha-troubleshooting/</link><pubDate>Wed, 03 Jan 2024 08:54:44 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/basic-ha-troubleshooting/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會介紹在 SLE HAE v15 上如何進行基本的故障修復&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;General Troubleshooting&lt;span class="hx:absolute hx:-mt-20" id="general-troubleshooting"&gt;&lt;/span&gt;
&lt;a href="#general-troubleshooting" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Cluster nodes are SLE 15 servers
&lt;ul&gt;
&lt;li&gt;Standard SLE troubleshooting techniques and tools can be used&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Check the basics:
&lt;ul&gt;
&lt;li&gt;時間有沒有校時&lt;/li&gt;
&lt;li&gt;名稱解析&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Monitor bonded network interfaces
&lt;ul&gt;
&lt;li&gt;The system may be using its last working interface&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A cluster is inherently less stable than a single server:
&lt;ul&gt;
&lt;li&gt;It is running SBD/Watchdog and could self fence&lt;/li&gt;
&lt;li&gt;Other nodes are monitoring it with the intention of shooting it&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Maintanance Tasks&lt;span class="hx:absolute hx:-mt-20" id="maintanance-tasks"&gt;&lt;/span&gt;
&lt;a href="#maintanance-tasks" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;The following tasks will enable you to potentially catch a potential problem early&lt;/li&gt;
&lt;li&gt;Perform regular health checks&lt;/li&gt;
&lt;li&gt;Follow documented procedures to clean up after a failure&lt;/li&gt;
&lt;li&gt;Using Maintanance mode&lt;/li&gt;
&lt;li&gt;Manage logs&lt;/li&gt;
&lt;li&gt;Patching nodes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Command Line Troubleshooting Tools&lt;span class="hx:absolute hx:-mt-20" id="command-line-troubleshooting-tools"&gt;&lt;/span&gt;
&lt;a href="#command-line-troubleshooting-tools" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Clean up after Resouce Failures&lt;span class="hx:absolute hx:-mt-20" id="clean-up-after-resouce-failures"&gt;&lt;/span&gt;
&lt;a href="#clean-up-after-resouce-failures" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;當 resource 失敗達到叢集屬性 &lt;code&gt;migration-threshold&lt;/code&gt; 指定的次數時，它將被遷移到不同的節點&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;將為失敗的節點建立一個 &lt;code&gt;-INFINITY&lt;/code&gt; 的分數&lt;/li&gt;
&lt;li&gt;To display the scores:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm resource scores&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;請記住，分數也會被 constraints 設定&lt;/li&gt;
&lt;li&gt;To view constraints:
&lt;ul&gt;
&lt;li&gt;crm resources constraints &lt;code&gt;&amp;lt;resouce-name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Before cleaning up resources:
&lt;ul&gt;
&lt;li&gt;調查問題原因&lt;/li&gt;
&lt;li&gt;尋找解決方案&lt;/li&gt;
&lt;li&gt;解決問題&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果要通知叢集可以再次在該節點上執行資源：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm resource cleanup &amp;lt;resource-name&amp;gt; [node]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;可以提供一個可選的節點參數，以便僅在該節點上執行 cleanup 程序。&lt;/li&gt;
&lt;li&gt;如果未指定可選節點，則會清除所有節點上資源的 fail counts ( 失敗計數 ) 和 negative scores ( 負分數 )&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Remove Relocation Constraints created by a move or ban&lt;span class="hx:absolute hx:-mt-20" id="remove-relocation-constraints-created-by-a-move-or-ban"&gt;&lt;/span&gt;
&lt;a href="#remove-relocation-constraints-created-by-a-move-or-ban" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;The following create relocation constraints:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm resource move&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;crm resource ban&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;To clear the constraint created by a move:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm resource clear &amp;lt;resouce-name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;To clear the constraint created by a ban:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm resource unban &amp;lt;resouce-name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Resouce Agent Tracing&lt;span class="hx:absolute hx:-mt-20" id="resouce-agent-tracing"&gt;&lt;/span&gt;
&lt;a href="#resouce-agent-tracing" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;A resource agent can be placed into trace mode&lt;/li&gt;
&lt;li&gt;Syntax:&lt;/li&gt;
&lt;li&gt;&lt;code&gt;crm &amp;lt;resource-name&amp;gt; [&amp;lt;op&amp;gt; [&amp;lt;interval&amp;gt;] ]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;To enable a simple trace for all operations:&lt;/li&gt;
&lt;li&gt;&lt;code&gt;crm resouce trace &amp;lt;resouce-name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;When enabled, trace mode will create debug level log files for every action
&lt;ul&gt;
&lt;li&gt;Saved to &lt;code&gt;/var/lib/heartbeat/trace_ra/&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;If the folder &lt;code&gt;trace_ra&lt;/code&gt; does not exist it is created&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Log files are stored on the node where operations happen&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Filename format:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;name.operation.date:time&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;E.g. &lt;code&gt;p-IP_101.monitor.2019-01-23.11:59:08&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If the resource has a monitor operation a large number of files will be generated&lt;/li&gt;
&lt;li&gt;Use trace mode for as short a time as possible&lt;/li&gt;
&lt;li&gt;To stop a trace:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm resource untrace &amp;lt;resource-name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;This does not remove the trace files&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Maintenance Mode&lt;span class="hx:absolute hx:-mt-20" id="maintenance-mode"&gt;&lt;/span&gt;
&lt;a href="#maintenance-mode" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Maintenance mode 用於暫停正常的叢集操作，像是:
&lt;ul&gt;
&lt;li&gt;Resource monitoring&lt;/li&gt;
&lt;li&gt;Failover&lt;/li&gt;
&lt;li&gt;Node fencing&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;允許管理員在不受群集幹擾的情況下手動停止或啟動服務&lt;/li&gt;
&lt;li&gt;Maintenance Mode can be applied at different levels:
&lt;ul&gt;
&lt;li&gt;Resouce&lt;/li&gt;
&lt;li&gt;Node&lt;/li&gt;
&lt;li&gt;Cluster&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Useful when:
&lt;ul&gt;
&lt;li&gt;Applying patches&lt;/li&gt;
&lt;li&gt;Performing planned maintenance tasks&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;不當的使用 cluster maintenance mode 可能導致資料 loss/corruption
&lt;ul&gt;
&lt;li&gt;Nodes cannot be fenced&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Maintenance Mode Targets&lt;span class="hx:absolute hx:-mt-20" id="maintenance-mode-targets"&gt;&lt;/span&gt;
&lt;a href="#maintenance-mode-targets" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Level&lt;/th&gt;
&lt;th&gt;Result&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Resource&lt;/td&gt;
&lt;td&gt;- 這個資源將被設定為 unmanaged ( 不管理 )，並且監控的動作會被暫停，在底層運作的項目 (service, IP address/filesystem) 可以被手動啟動或停止&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Node&lt;/td&gt;
&lt;td&gt;- 節點上的所有資源都設定為 unmanaged ( 不管理 )&lt;br&gt;- 不會為該節點分配資源&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cluster&lt;/td&gt;
&lt;td&gt;- 在叢集中的所有資源全部設定為 unmanaged ( 不管理 )&lt;br&gt;- 叢集不會進行資源分配&lt;br&gt;- Poison Pills/STONITH 將被暫停&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h3&gt;Managing Maintenance Mode&lt;span class="hx:absolute hx:-mt-20" id="managing-maintenance-mode"&gt;&lt;/span&gt;
&lt;a href="#managing-maintenance-mode" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Resource
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm resource meta &amp;lt;resource-name&amp;gt; set maintenance true&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;crm resource meta &amp;lt;resource-name&amp;gt; set maintenance false&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Node
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm node maintenance &amp;lt;node&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;crm node ready &amp;lt;node&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Cluster
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm configure property maintenance-mode=true&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;crm configure property maintenance-mode=false&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Cluster Health Check&lt;span class="hx:absolute hx:-mt-20" id="cluster-health-check"&gt;&lt;/span&gt;
&lt;a href="#cluster-health-check" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;A general healthcheck command is available:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm cluster health &amp;gt; /path/to/and/filename&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;產生的檔案將提供叢集狀態報告，並顯示最近出現的錯誤&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Cluster Report&lt;span class="hx:absolute hx:-mt-20" id="cluster-report"&gt;&lt;/span&gt;
&lt;a href="#cluster-report" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;hb_report&lt;/code&gt; 或 &lt;code&gt;crm report&lt;/code&gt; 命令可用於收集所有相關的叢集資訊/日誌/等，以進行故障排除&lt;/li&gt;
&lt;li&gt;Basic Syntax:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;hb_report -f START_TIME [-t END_TIME] FILENAME&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Note: &lt;code&gt;END_TIME&lt;/code&gt; defaults to &amp;rsquo;now&amp;rsquo; if not specified&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Examples:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;hb_report -f &amp;quot;2018/11/21 01:00&amp;quot; report_2018-11-21&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;File created: &lt;code&gt;./report_2018-11-21.tar.bz2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;hb_report&lt;/code&gt; 目前快被廢棄了，但是考試的時候，如果看到這兩個選項放在一起，要選 &lt;code&gt;hb_report&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;Cluster Report Content&lt;span class="hx:absolute hx:-mt-20" id="cluster-report-content"&gt;&lt;/span&gt;
&lt;a href="#cluster-report-content" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Cluster Report 檔案包含有關叢集和單一節點的信息&lt;/p&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;收集報告&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm report -f &amp;#34;2024/1/3 12:00&amp;#34; report_2024-1-3&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sle-ha-2: INFO: The report is saved in ./report_2024-1-3.tar.bz2
sle-ha-2: INFO: Report timespan: 01/03/24 12:00:00 - 01/03/24 15:43:32
sle-ha-2: INFO: Thank you for taking time to create this report.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;建立存放報告的目錄區&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;把報告解壓縮至特定目錄區&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo tar -xvjf report_2024-1-3.tar.bz2 -C log/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;report_2024-1-3/
report_2024-1-3/journal.log
...以下省略&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;檢視報告的目錄區內容&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l log/report_2024-1-3/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 604
-rw-r--r-- 1 root root 17339 Jan 3 15:43 analysis.txt
-rw-r--r-- 1 root root 937 Nov 17 11:08 corosync.conf
-rw-r--r-- 1 root root 953 Jan 3 15:43 crm_mon.txt
-rw-r--r-- 1 root root 5144 Jan 3 15:43 description.txt
-rw-r--r-- 1 root root 802 Jan 3 15:43 events.txt
-rw-r--r-- 1 root root 329585 Jan 3 15:43 ha-log.txt
-rw-r--r-- 1 root root 25 Jan 3 15:43 ha-log.txt.info
-rw-r--r-- 1 root root 231691 Jan 3 15:43 journal.log
-rw-r--r-- 1 root root 18 Jan 3 15:43 members.txt
drwxr-xr-x 1 root root 656 Jan 3 15:43 sle-ha-1
drwxr-xr-x 1 root root 644 Jan 3 15:43 sle-ha-2
-rw-r--r-- 1 root root 2116 Jan 3 15:43 sysinfo.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;sle-ha-1&lt;/code&gt; 和 &lt;code&gt;sle-ha-2&lt;/code&gt; 為包含節點特定詳細資料的目錄&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;Cluster Report Node Specific Details&lt;span class="hx:absolute hx:-mt-20" id="cluster-report-node-specific-details"&gt;&lt;/span&gt;
&lt;a href="#cluster-report-node-specific-details" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Cluster Report 在每個節點的目錄中儲存節點的具體詳細信息&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ls -l log/report_2024-1-3/sle-ha-1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;total 2032
-rw-r--r-- 1 root root 22743 Jan 3 15:43 cib.xml
lrwxrwxrwx 1 root root 16 Jan 3 15:43 corosync.conf -&amp;gt; ../corosync.conf
-rw-r--r-- 1 root root 3301 May 18 2023 crm.conf
-rw-r--r-- 1 root root 22 Jan 3 15:43 crm.conf.info
lrwxrwxrwx 1 root root 14 Jan 3 15:43 crm_mon.txt -&amp;gt; ../crm_mon.txt
-rw-r--r-- 1 root root 63899 Jan 3 15:43 crmsh.log
-rw-r--r-- 1 root root 30 Jan 3 15:43 crmsh.log.info
-rw-r--r-- 1 root root 0 Jan 3 15:43 crm_verify.txt
-rw-r--r-- 1 root root 71 Jan 3 15:43 dlm_dump.txt
-rw-r--r-- 1 root root 117 Jan 2 17:32 drbd.conf
drwxr-xr-x 1 root root 104 Jan 2 17:34 drbd.d
-rw-r--r-- 1 root root 0 Jan 3 15:43 events.txt
-rw-r--r-- 2 root root 485436 Jan 3 15:43 ha-log.txt
-rw-r--r-- 1 root root 24 Jan 3 15:43 ha-log.txt.info
-rw-r--r-- 1 root root 184740 Jan 3 15:43 journal.log
lrwxrwxrwx 1 root root 14 Jan 3 15:43 members.txt -&amp;gt; ../members.txt
-rw-r--r-- 2 root root 485436 Jan 3 15:43 messages
-rw-r--r-- 1 root root 25 Jan 3 15:43 ocfs2.txt
-rw-r--r-- 1 root root 689875 Jan 3 15:43 pacemaker.log
-rw-r--r-- 1 root root 40 Jan 3 15:43 pacemaker.log.info
drwxr-xr-x 1 root root 960 Jan 3 15:43 pengine
-rw-r--r-- 1 root root 147 Jan 3 15:43 permissions.txt
-rw-r--r-- 1 root root 986 May 18 2023 profiles.yml
-rw-r--r-- 1 root root 25 Jan 3 15:43 profiles.yml.info
-rw-r--r-- 1 root root 0 Jan 3 15:43 RUNNING
-rw-r--r-- 1 root root 4274 Nov 17 11:08 sbd
-rw-r--r-- 1 root root 1164 Jan 3 15:43 sbd.txt
lrwxrwxrwx 1 root root 14 Jan 3 15:43 sysinfo.txt -&amp;gt; ../sysinfo.txt
-rw-r--r-- 1 root root 55689 Jan 3 15:43 sysstats.txt
-rw-r--r-- 1 root root 39 Jan 3 15:43 time.txt
drwxr-xr-x 1 root root 14 Jan 3 15:43 trace_ra&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Cluster File Differences&lt;span class="hx:absolute hx:-mt-20" id="cluster-file-differences"&gt;&lt;/span&gt;
&lt;a href="#cluster-file-differences" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;The crm command can check whether a file is the same on all nodes:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;crm cluster diff &amp;lt;filename&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Any differences will be shown&lt;/li&gt;
&lt;li&gt;Optional parameter &lt;code&gt;--checksum&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;After checking why the files are different
&lt;ul&gt;
&lt;li&gt;Use &lt;code&gt;csync2&lt;/code&gt; to re-sync the file&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Log Files&lt;span class="hx:absolute hx:-mt-20" id="log-files"&gt;&lt;/span&gt;
&lt;a href="#log-files" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Cluster Logging&lt;span class="hx:absolute hx:-mt-20" id="cluster-logging"&gt;&lt;/span&gt;
&lt;a href="#cluster-logging" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;By default the cluster stack logs via rsyslog
&lt;ul&gt;
&lt;li&gt;rsyslog has no rules for cluster messages, so they end up in &lt;code&gt;/var/log/messages&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Hard to find all cluster logs&lt;/li&gt;
&lt;li&gt;Hard to find anything else&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Two choices:
&lt;ul&gt;
&lt;li&gt;Configure rsyslog rules to put all cluster messages in a separate file
&lt;ul&gt;
&lt;li&gt;Need to enable logrotate&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Turn off syslog and log directly to a file
&lt;ul&gt;
&lt;li&gt;No option for logrotate&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Don’t forget that troubleshooting a problem will probably require logs from all nodes
&lt;ul&gt;
&lt;li&gt;Use &lt;code&gt;hb_report&lt;/code&gt; to gather them&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;-l &amp;lt;path&amp;gt;&lt;/code&gt; option if you have moved the cluster logs&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;systemd Logs&lt;span class="hx:absolute hx:-mt-20" id="systemd-logs"&gt;&lt;/span&gt;
&lt;a href="#systemd-logs" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;systemd keeps its own binary log
&lt;ul&gt;
&lt;li&gt;It preserves metadata much better than text logs&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Searchable using &lt;code&gt;journalctl&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Warning: The systemd journal is not stored on disk by&lt;/li&gt;
&lt;li&gt;default
&lt;ul&gt;
&lt;li&gt;Will be lost after a reboot&lt;/li&gt;
&lt;li&gt;Change this behaviour by reconfiguring systemd for persistent journal storage&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;journalctl&lt;span class="hx:absolute hx:-mt-20" id="journalctl"&gt;&lt;/span&gt;
&lt;a href="#journalctl" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-2"&gt;
&lt;p&gt;Syntax: &lt;code&gt;journalctl&lt;/code&gt; OPTIONS&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mode&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-x&lt;/td&gt;
&lt;td&gt;Add message explanations where available&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-r&lt;/td&gt;
&lt;td&gt;反向輸出，以便先顯示最新的 Log 資訊。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-u corosync&lt;/td&gt;
&lt;td&gt;Cluster communication issues&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-u pacemaker&lt;/td&gt;
&lt;td&gt;Pacemaker related details&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-u sbd&lt;/td&gt;
&lt;td&gt;Startup issues if SBD_STARTMODE=&amp;lsquo;clean&amp;rsquo;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-f&lt;/td&gt;
&lt;td&gt;Follow the journal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ndash;since=DATE&lt;/td&gt;
&lt;td&gt;Show entries not older than the specified date&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;ndash;until=DATE&lt;/td&gt;
&lt;td&gt;Show entries not newer than the specified date&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h2&gt;Managing the Epoch&lt;span class="hx:absolute hx:-mt-20" id="managing-the-epoch"&gt;&lt;/span&gt;
&lt;a href="#managing-the-epoch" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;The Cluster Epoch&lt;span class="hx:absolute hx:-mt-20" id="the-cluster-epoch"&gt;&lt;/span&gt;
&lt;a href="#the-cluster-epoch" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;The epoch is the cluster “version” number&lt;/li&gt;
&lt;li&gt;The cluster increments the epoch value every time the configuration is updated
&lt;ul&gt;
&lt;li&gt;Usually as a result of the administrator making changes&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;When the epoch changes the CRMs communicate the change to all nodes
&lt;ul&gt;
&lt;li&gt;Network communication issues can stop these messages getting through&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Any node that does not update will be fenced&lt;/li&gt;
&lt;li&gt;To view the current value of the epoch:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;sudo cibadmin --query --local | tr -s &amp;quot; &amp;quot; &amp;quot;\n&amp;quot; | grep -w epoch&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;The option &lt;code&gt;--local&lt;/code&gt; should only be used for queries&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Updating the Cluster Epoch&lt;span class="hx:absolute hx:-mt-20" id="updating-the-cluster-epoch"&gt;&lt;/span&gt;
&lt;a href="#updating-the-cluster-epoch" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;If you discover a node is not keeping up with CIB updates then you can force an increment of the epoch value&lt;/li&gt;
&lt;li&gt;Use cibadmin to do this:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;sudo cibadmin -B&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;在正常的節點上執行此命令&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## on sle-ha-2 node
$ sudo cibadmin --query --local | tr -s &amp;#34; &amp;#34; &amp;#34;\n&amp;#34; | grep -w epoch
epoch=&amp;#34;49&amp;#34;
$ sudo cibadmin -B
$ sudo cibadmin --query --local | tr -s &amp;#34; &amp;#34; &amp;#34;\n&amp;#34; | grep -w epoch
epoch=&amp;#34;50&amp;#34;
## on sle-ha-1 node
$ sudo cibadmin --query --local | tr -s &amp;#34; &amp;#34; &amp;#34;\n&amp;#34; | grep -w epoch
epoch=&amp;#34;50&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;SBD Startup Behavior&lt;span class="hx:absolute hx:-mt-20" id="sbd-startup-behavior"&gt;&lt;/span&gt;
&lt;a href="#sbd-startup-behavior" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;SBD Behaviour&lt;span class="hx:absolute hx:-mt-20" id="sbd-behaviour"&gt;&lt;/span&gt;
&lt;a href="#sbd-behaviour" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;A feature of the SBD daemon is the ability to prevent a node from re-joining the cluster after it has been fenced
&lt;ul&gt;
&lt;li&gt;Introduced in SLE12 HA&lt;/li&gt;
&lt;li&gt;Previously, the only option was to set the cluster stack to manual start&lt;/li&gt;
&lt;li&gt;After a normal reboot the node will rejoin the cluster&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;To enable this behaviour, edit &lt;code&gt;/etc/sysconfig/sbd&lt;/code&gt; and set &lt;code&gt;SBD_STARTMODE=&amp;quot;clean&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If the node is fenced via the SBD, the SBD daemon will not clear its slot at startup
&lt;ul&gt;
&lt;li&gt;An administrator must clear the node’s slot in all SBDs&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sbd -d DEV1 [-d DEV2 -d DEV3] message &amp;lt;node-name&amp;gt; clear&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The corosync service must then be restarted&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Working with the CIB&lt;span class="hx:absolute hx:-mt-20" id="working-with-the-cib"&gt;&lt;/span&gt;
&lt;a href="#working-with-the-cib" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Shadow CIBs&lt;span class="hx:absolute hx:-mt-20" id="shadow-cibs"&gt;&lt;/span&gt;
&lt;a href="#shadow-cibs" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Pacemaker supports shadow CIBs
&lt;ul&gt;
&lt;li&gt;Used to create and test cluster configuration without touching the live CIB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A Shadow CIB is a direct copy of the live CIB&lt;/li&gt;
&lt;li&gt;Shadow CIBs can be:
&lt;ul&gt;
&lt;li&gt;Created&lt;/li&gt;
&lt;li&gt;Modified&lt;/li&gt;
&lt;li&gt;Saved&lt;/li&gt;
&lt;li&gt;Deleted&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A Shadow CIB can be committed to the live CIB when you are satisfied with its behaviour&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;ptest&lt;/code&gt; command can be used within a shadow CIB to see the effect of changes to the cluster&lt;/li&gt;
&lt;li&gt;It generates:
&lt;ul&gt;
&lt;li&gt;Log messages&lt;/li&gt;
&lt;li&gt;Cluster status&lt;/li&gt;
&lt;li&gt;A transition graph
&lt;ul&gt;
&lt;li&gt;Displayed using Graphviz if X windows is available&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Configure and Create Cluster Resources</title><link>https://blog.kubeantony.com/archive/suse/configure-and-create-cluster-resources/</link><pubDate>Thu, 28 Dec 2023 08:45:00 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/configure-and-create-cluster-resources/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會採取 Step by Step 和 ScreenShot 的方式介紹，如何在 SUSE Linux Enterprise High Availability Extension 15 SP5 Cluster 中建立和設定 Cluster Resources。&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Overview of Cluster Resouces&lt;span class="hx:absolute hx:-mt-20" id="overview-of-cluster-resouces"&gt;&lt;/span&gt;
&lt;a href="#overview-of-cluster-resouces" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;What is Cluster Resource?&lt;span class="hx:absolute hx:-mt-20" id="what-is-cluster-resource"&gt;&lt;/span&gt;
&lt;a href="#what-is-cluster-resource" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;由 Cluster 管理的 Linux Process 或 Resource
&lt;ul&gt;
&lt;li&gt;Cluster 不會使用本機的 &lt;code&gt;systemd&lt;/code&gt; 來管理 Cluster Resouces&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Examples:
&lt;ul&gt;
&lt;li&gt;IP Address&lt;/li&gt;
&lt;li&gt;Daemons/Services&lt;/li&gt;
&lt;li&gt;Filesystems&lt;/li&gt;
&lt;li&gt;Web Server&lt;/li&gt;
&lt;li&gt;Database&lt;/li&gt;
&lt;li&gt;VM&lt;/li&gt;
&lt;li&gt;任何其他 server-based 的 applications 或 Service&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Cluster Resouces 被定義在 Cluster Information Database (CIB) 中&lt;/li&gt;
&lt;li&gt;Cluster 會使用 Resouce Agent scripts 來管理&lt;/li&gt;
&lt;li&gt;Active/Passive
&lt;ul&gt;
&lt;li&gt;一次在一個節點上運行&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Active/Active
&lt;ul&gt;
&lt;li&gt;同時在多個節點上運作，甚至是所有的節點&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;h4&gt;描述&lt;span class="hx:absolute hx:-mt-20" id="描述"&gt;&lt;/span&gt;
&lt;a href="#%e6%8f%8f%e8%bf%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;假設把網站伺服器、IP Address 和 DataBase 都定義成 Cluster Resource，並將他們組成一個 Group ( 群組 )，此時 Cluster 會管理這些服務之間的關係，以及發生故障時如何管理這些服務。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Cluster Resource 命名規則&lt;span class="hx:absolute hx:-mt-20" id="cluster-resource-命名規則"&gt;&lt;/span&gt;
&lt;a href="#cluster-resource-%e5%91%bd%e5%90%8d%e8%a6%8f%e5%89%87" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;A cluster resource naming convention is recommended&lt;/li&gt;
&lt;li&gt;Examples:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;p-apache2_1&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;程序名稱: apache2, 序號一 ( 本尊 )&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;g-apache2_1&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;群組名稱: apache2, 序號一 ( 本尊 )&lt;/li&gt;
&lt;li&gt;群組可能包含一個 ip address, apache2 和 database, for example:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;p-IP_177&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;p-apache2_1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;p-mariadb_1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;loc_g-apache2_1_on_node4&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;限制 apache2_1 這個群組包含的所有 Cluster Resource 都只能在 node4 上運作&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Cluster Resources 的種類&lt;span class="hx:absolute hx:-mt-20" id="cluster-resources-的種類"&gt;&lt;/span&gt;
&lt;a href="#cluster-resources-%e7%9a%84%e7%a8%ae%e9%a1%9e" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Primitives&lt;span class="hx:absolute hx:-mt-20" id="primitives"&gt;&lt;/span&gt;
&lt;a href="#primitives" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Primitive Resource 是在 SLE HAE 中最基本的資源類型，Process 在任何時間點都只在一台節點上執行，Process 沒有分身。&lt;/p&gt;
&lt;p&gt;由 resource agent 管理和監控，因此叢集可以監控並確保它正在運行，如果它運作失敗、停止運作或因某種原因沒有回應，你就可以對其進行設定，例如嘗試重啟一次或重啟兩次。然後，在同一個節點上，我們會考慮將它移到另一個節點上。這些都是設定參數，其中包括 Timeout ( 超時 ) 的設定，譬如可以在設定檔中定義 Process 的啟動、停止和監控，超過某一段時間都沒有回應的時間。&lt;/p&gt;
&lt;p&gt;要建立 Primitive Resource，需要定義一個 ID 和指定一些參數，像是 class, provider 和 type。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Groups&lt;span class="hx:absolute hx:-mt-20" id="groups"&gt;&lt;/span&gt;
&lt;a href="#groups" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;將一個或多個 Primitive 類型的 Cluster Resource 合併為一個 entity ( 實體 )&lt;/li&gt;
&lt;li&gt;Groups 包含一組需要一起定位、依序啟動和以相反順序停止的資源。&lt;/li&gt;
&lt;li&gt;只要資源分組後，必須直接對群組來管理，而不是單一組員資源進行管理。&lt;/li&gt;
&lt;li&gt;如果在群組中的一個資源在啟動時發生錯誤，排在後面的資源將不會運作。&lt;/li&gt;
&lt;li&gt;可以為 group 設定 Constraints，而不是單獨設定在各個成員上。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Stickiness score&lt;/code&gt; = 所有群組組員資源的得分總和&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;h4&gt;舉例&lt;span class="hx:absolute hx:-mt-20" id="舉例"&gt;&lt;/span&gt;
&lt;a href="#%e8%88%89%e4%be%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;假設要建立一個網站伺服器需要一個 IP address 和一個 file system&lt;/p&gt;
&lt;p&gt;在 SLE HAE 叢集中，可以設定這 3 個獨立的 Primitive Resource :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Web server&lt;/li&gt;
&lt;li&gt;IP address&lt;/li&gt;
&lt;li&gt;File system&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;再將以上 3 個獨立的 Primitive Resource 組一個 Group Resource&lt;/p&gt;
&lt;p&gt;這樣做的好處是，如果發生軟體或硬體故障，Group Resource 將切換到另一個叢集中的節點上繼續運作，類似於單一叢集資源的 failing over&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Clones&lt;span class="hx:absolute hx:-mt-20" id="clones"&gt;&lt;/span&gt;
&lt;a href="#clones" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;在多個節點上同時運作的 Cluster Resource&lt;/li&gt;
&lt;li&gt;Clone types:
&lt;ul&gt;
&lt;li&gt;Anonymous
&lt;ul&gt;
&lt;li&gt;每個節點上同時運作相同的 primitive Cluster Resource&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Globally Unique
&lt;ul&gt;
&lt;li&gt;每個節點上同時運作不相同的 primitive Cluster Resource&lt;/li&gt;
&lt;li&gt;Example: IP address&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The number of clones per cluster can be limited
&lt;ul&gt;
&lt;li&gt;Typically the same as the number of nodes&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;To avoid all clones being stopped or started together use the option:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;interleave=true&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Multi-state Resource&lt;span class="hx:absolute hx:-mt-20" id="multi-state-resource"&gt;&lt;/span&gt;
&lt;a href="#multi-state-resource" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;A specialized type of clone resource&lt;/li&gt;
&lt;li&gt;Instances are in one of two states
&lt;ul&gt;
&lt;li&gt;Active&lt;/li&gt;
&lt;li&gt;Passive&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;resources 會同時在不同的 Node 上，不過只有 Active 狀態的 resources 會正在運作，Passive 狀態的 resources 不會運作。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;可以使用 colocation rules 跟其他 resources 連接。&lt;/li&gt;
&lt;li&gt;Have additional operations:
&lt;ul&gt;
&lt;li&gt;Promote ( 把 Passive 狀態的 resources 變成 Active )&lt;/li&gt;
&lt;li&gt;Demote ( 把 Active 狀態的 resources 變成 Passive )&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;To avoid all clones being stopped or started together use the option:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;interleave=true&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Like clone resources&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Promotable Resource&lt;span class="hx:absolute hx:-mt-20" id="promotable-resource"&gt;&lt;/span&gt;
&lt;a href="#promotable-resource" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Promotable resources are a specialization of clones.&lt;/li&gt;
&lt;li&gt;They allow the instances to be in one of two operating modes. When first starting up, the resource is considered promotable. A subset of instances can subsequently be promoted.&lt;/li&gt;
&lt;li&gt;To create a promotable resource, define an ID and select the child resource that you want to use for the promotable resource&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Supported resource agent classes&lt;span class="hx:absolute hx:-mt-20" id="supported-resource-agent-classes"&gt;&lt;/span&gt;
&lt;a href="#supported-resource-agent-classes" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;對於新增的每個叢集資源，都需要定義 resource agent 所遵循的標準，resource agent 將它們提供的服務抽象為叢集可以理解的資訊，從而使叢集對其管理的資源不作承諾，叢集依靠 resource agent 在收到啟動、停止或監控命令時做出適當反應。&lt;/p&gt;
&lt;p&gt;Resource Agent 通常以 shell script 的形式出現。&lt;/p&gt;
&lt;p&gt;SUSE Linux Enterprise High Availability 支援以下類別的 resource agents:&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Open Cluster Framework (OCF) resource agents&lt;span class="hx:absolute hx:-mt-20" id="open-cluster-framework-ocf-resource-agents"&gt;&lt;/span&gt;
&lt;a href="#open-cluster-framework-ocf-resource-agents" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;這個 agents 通常在 &lt;code&gt;/usr/lib/ocf/resource.d/&lt;/code&gt; 目錄區中，所有的 OCF Resource Agents 都必須至少具備 &lt;code&gt;start&lt;/code&gt;, &lt;code&gt;stop&lt;/code&gt;, &lt;code&gt;status&lt;/code&gt;, &lt;code&gt;monitor&lt;/code&gt; 和 &lt;code&gt;meta-data&lt;/code&gt; 的 action，meta-data action 可取得有關如何設定 resource agents 的資訊。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Linux Standards Base (LSB) scripts&lt;span class="hx:absolute hx:-mt-20" id="linux-standards-base-lsb-scripts"&gt;&lt;/span&gt;
&lt;a href="#linux-standards-base-lsb-scripts" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;LSB resource agent 通常由作業系統提供，可在 &lt;code&gt;/etc/init.d&lt;/code&gt; 中找到。 例如，它們必須執行若干操作，至少包括 &lt;code&gt;start&lt;/code&gt;, &lt;code&gt;stop&lt;/code&gt;, &lt;code&gt;restart&lt;/code&gt;, &lt;code&gt;reload&lt;/code&gt;, &lt;code&gt;force-reload&lt;/code&gt; 和 &lt;code&gt;status&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;這些服務的設定並沒有標準化。 如果您打算在高可用性中使用 LSB 腳本，請確保您了解相關腳本的配置方式。 通常可以在 &lt;code&gt;/usr/share/doc/packages/PACKAGENAME&lt;/code&gt; 中的相關套件檔案中找到相關資訊。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;systemd&lt;span class="hx:absolute hx:-mt-20" id="systemd"&gt;&lt;/span&gt;
&lt;a href="#systemd" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Pacemaker 可以管理 systemd 的服務。 systemd 有 unit files，而不是 init scripts。 一般來說，服務（或 unit files）由作業系統提供。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Service&lt;span class="hx:absolute hx:-mt-20" id="service"&gt;&lt;/span&gt;
&lt;a href="#service" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;目前有多種類型的系統服務同時存在： &lt;code&gt;LSB&lt;/code&gt; （ 屬於 System V init ）、&lt;code&gt;systemd&lt;/code&gt; 和 &lt;code&gt;upstart&lt;/code&gt;。 因此，Pacemaker 支援一種特殊的 alias ( 別名 )，它能找出特定叢集節點適用的系統服務。 當叢集包含 systemd、upstart 和 LSB 服務時，這一點尤其有用。 Pacemaker 會依照以下順序尋找已命名的服務：LSB (SYS-V) 啟動腳本、systemd unit file 或 upstart job。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Nagios&lt;span class="hx:absolute hx:-mt-20" id="nagios"&gt;&lt;/span&gt;
&lt;a href="#nagios" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Monitoring plugins（以前稱為 Nagios plugins）允許監控遠端主機上的服務。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;STONITH (fencing) resource agents&lt;span class="hx:absolute hx:-mt-20" id="stonith-fencing-resource-agents"&gt;&lt;/span&gt;
&lt;a href="#stonith-fencing-resource-agents" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;此類別專用於與 fencing 相關的資源。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Timeout values&lt;span class="hx:absolute hx:-mt-20" id="timeout-values"&gt;&lt;/span&gt;
&lt;a href="#timeout-values" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;resource 的超時值可受下列參數影響：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;op_defaults&lt;/code&gt; （ global timeout for operations ）&lt;/li&gt;
&lt;li&gt;resource template 中，特定定義的超時值&lt;/li&gt;
&lt;li&gt;為 resource 定義的特定超時值&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果為 resource 定義了特定值，則該值優先於全域預設值，資源的特定值也優先於 resource template 中定義的值。&lt;/p&gt;
&lt;p&gt;正確設定超時值非常重要。 設定過低的超時值會導致大量（不必要的）fencing 操作，原因如下：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;如果資源逾時，則會發生故障，叢集會嘗試停止該資源。&lt;/li&gt;
&lt;li&gt;如果停止資源也失敗（例如，由於停止超時設定過低），叢集就會 fences 該節點，叢集會認為發生這種情況的節點已失控。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;您可以使用 &lt;code&gt;crmsh&lt;/code&gt; 和 &lt;code&gt;Hawk2&lt;/code&gt; 調整操作的全域預設值，並設定任何特定的逾時值。 確定和設定超時值的最佳做法如下：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;檢查資源啟動和停止所需的時間。&lt;/li&gt;
&lt;li&gt;如果需要，請新增 &lt;code&gt;op_defaults&lt;/code&gt; 參數並相應設定（預設）逾時值：
&lt;ul&gt;
&lt;li&gt;例如，將 &lt;code&gt;op_defaults&lt;/code&gt; 設定為 60 秒：
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure op_defaults timeout=60&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;對於需要較長時間的資源，可定義單獨的逾時值。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;為資源設定操作時，新增單獨的 &lt;code&gt;start&lt;/code&gt; 和 &lt;code&gt;stop&lt;/code&gt; 操作。 使用 &lt;code&gt;Hawk2&lt;/code&gt; 設定操作時，它會為這些操作提供有用的超時建議。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;建立 primitive resources&lt;span class="hx:absolute hx:-mt-20" id="建立-primitive-resources"&gt;&lt;/span&gt;
&lt;a href="#%e5%bb%ba%e7%ab%8b-primitive-resources" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;在群集中使用資源之前，必須先設定。 例如，要將 Apache 伺服器用作群集資源，請先設定 Apache 伺服器並完成 Apache 配置，然後再啟動群集中的相應資源。&lt;/p&gt;
&lt;p&gt;如果資源有特定的環境要求，請確保所有群集節點上都有相同的環境需求。 SUSE Linux Enterprise High Availability 無法管理此類配置。 您必須自己完成這項工作。&lt;/p&gt;
&lt;p&gt;您可以使用 &lt;code&gt;Hawk2&lt;/code&gt; 或 &lt;code&gt;crmsh&lt;/code&gt; 建立原始資源。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;如果需要在服務已在叢集控制下執行測試或維護任務，請確保在手動觸控其中任何一個之前將資源、節點或整個叢集設為 maintenance 模式。&lt;/li&gt;
&lt;li&gt;Cluster resources 和 cluster nodes 的命名應有所不同。否則，&lt;code&gt;Hawk2&lt;/code&gt; 將失效。&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Set up SUSE Manager Synchronization with RMT Server</title><link>https://blog.kubeantony.com/archive/suse/set-up-suse-manager-synchronization-with-rmt-server/</link><pubDate>Thu, 07 Dec 2023 14:16:02 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/set-up-suse-manager-synchronization-with-rmt-server/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，如何將 RMT Server 到 SCC 下載的套件儲存庫同步到 SUSE Mangaer Server&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;實作目標&lt;span class="hx:absolute hx:-mt-20" id="實作目標"&gt;&lt;/span&gt;
&lt;a href="#%e5%af%a6%e4%bd%9c%e7%9b%ae%e6%a8%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在全離線的 SUSE Manager 環境中，透過 RMT Server 使用外部網路連線到 SUSE Customer Center 下載套件。&lt;/p&gt;
&lt;p&gt;所有 software channels 和 repositories 都匯出到 RMT Server 上的 NFS Share Storage 上，然後 SUSE Manager Server 透過掛載 NFS 的共享目錄區來同步套件。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;環境介紹&lt;span class="hx:absolute hx:-mt-20" id="環境介紹"&gt;&lt;/span&gt;
&lt;a href="#%e7%92%b0%e5%a2%83%e4%bb%8b%e7%b4%b9" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;一台機器同時扮演 RMT Server 和 NFS Server 的角色&lt;/li&gt;
&lt;li&gt;NFS Server 的目錄區會獨自使用一顆 Disk 並且做成 LVM&lt;/li&gt;
&lt;li&gt;一台 SUSE Manager Server&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;1. 環境準備&lt;span class="hx:absolute hx:-mt-20" id="1-環境準備"&gt;&lt;/span&gt;
&lt;a href="#1-%e7%92%b0%e5%a2%83%e6%ba%96%e5%82%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;1.1. 建立 LVM&lt;span class="hx:absolute hx:-mt-20" id="11-建立-lvm"&gt;&lt;/span&gt;
&lt;a href="#11-%e5%bb%ba%e7%ab%8b-lvm" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## 建立 PV
$ sudo pvcreate /dev/sdb
## 建立 VG
$ sudo vgcreate nfsvg /dev/sdb
## 建立 LV
$ sudo lvcreate -n nfslv -l &amp;#43;100%FREE nfsvg
## 將 LVM 格式化為 XFS 檔案系統
$ sudo mkfs.xfs /dev/nfsvg/nfslv&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.2. 建立共享目錄區&lt;span class="hx:absolute hx:-mt-20" id="12-建立共享目錄區"&gt;&lt;/span&gt;
&lt;a href="#12-%e5%bb%ba%e7%ab%8b%e5%85%b1%e4%ba%ab%e7%9b%ae%e9%8c%84%e5%8d%80" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir /var/nfs_repo &amp;amp;&amp;amp; sudo chown _rmt:nginx /var/nfs_repo/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;此目錄區會儲存 RMT Server 上網到 SCC 下載的所有套件，並會使用 NFS 透過網路將資料共享給 SUSE Manager Server 使用&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;1.3. 將 LV 掛載到 &lt;code&gt;/var/nfs_repo&lt;/code&gt; 目錄&lt;span class="hx:absolute hx:-mt-20" id="13-將-lv-掛載到-varnfs_repo-目錄"&gt;&lt;/span&gt;
&lt;a href="#13-%e5%b0%87-lv-%e6%8e%9b%e8%bc%89%e5%88%b0-varnfs_repo-%e7%9b%ae%e9%8c%84" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ echo &amp;#39;/dev/nfsvg/nfslv /var/nfs_repo xfs defaults 0 0&amp;#39; | sudo tee -a /etc/fstab
$ sudo mount -a&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.4. 安裝 NFS Server&lt;span class="hx:absolute hx:-mt-20" id="14-安裝-nfs-server"&gt;&lt;/span&gt;
&lt;a href="#14-%e5%ae%89%e8%a3%9d-nfs-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper -n install nfs-kernel-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.5. 設定共享資料夾&lt;span class="hx:absolute hx:-mt-20" id="15-設定共享資料夾"&gt;&lt;/span&gt;
&lt;a href="#15-%e8%a8%ad%e5%ae%9a%e5%85%b1%e4%ba%ab%e8%b3%87%e6%96%99%e5%a4%be" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ echo &amp;#39;/var/nfs_repo 192.168.11.100/24(rw,sync,no_subtree_check,no_root_squash)&amp;#39; | sudo tee /etc/exports&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.6. 啟動 NFS Server 並設為開機自動啟動&lt;span class="hx:absolute hx:-mt-20" id="16-啟動-nfs-server-並設為開機自動啟動"&gt;&lt;/span&gt;
&lt;a href="#16-%e5%95%9f%e5%8b%95-nfs-server-%e4%b8%a6%e8%a8%ad%e7%82%ba%e9%96%8b%e6%a9%9f%e8%87%aa%e5%8b%95%e5%95%9f%e5%8b%95" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl enable nfs-server --now&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.7. 檢查是否設定正確&lt;span class="hx:absolute hx:-mt-20" id="17-檢查是否設定正確"&gt;&lt;/span&gt;
&lt;a href="#17-%e6%aa%a2%e6%9f%a5%e6%98%af%e5%90%a6%e8%a8%ad%e5%ae%9a%e6%ad%a3%e7%a2%ba" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsblk /dev/sdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sdb 8:16 0 500G 0 disk
└─nfsvg-nfslv 254:0 0 500G 0 lvm /var/nfs_repo
$ df -hT /var/nfs_repo
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/nfsvg-nfslv xfs 500G 542M 500G 1% /var/nfs_repo&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.7. 在 SUSE Manager Server 上掛載 NFS Share Folder&lt;span class="hx:absolute hx:-mt-20" id="17-在-suse-manager-server-上掛載-nfs-share-folder"&gt;&lt;/span&gt;
&lt;a href="#17-%e5%9c%a8-suse-manager-server-%e4%b8%8a%e6%8e%9b%e8%bc%89-nfs-share-folder" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mkdir /var/nfs_repo
$ sudo mount -t nfs 192.168.11.100:/var/nfs_repo /var/nfs_repo
$ echo &amp;#39;haha&amp;#39; &amp;gt; /var/nfs_repo/test&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;1.8. 回到 NFS Server 的機器確認&lt;span class="hx:absolute hx:-mt-20" id="18-回到-nfs-server-的機器確認"&gt;&lt;/span&gt;
&lt;a href="#18-%e5%9b%9e%e5%88%b0-nfs-server-%e7%9a%84%e6%a9%9f%e5%99%a8%e7%a2%ba%e8%aa%8d" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat /var/nfs_repo/test &amp;amp;&amp;amp; sudo rm /var/nfs_repo/test&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;haha&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;2. Synchronize RMT Server&lt;span class="hx:absolute hx:-mt-20" id="2-synchronize-rmt-server"&gt;&lt;/span&gt;
&lt;a href="#2-synchronize-rmt-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;2.1. PreRequest&lt;span class="hx:absolute hx:-mt-20" id="21-prerequest"&gt;&lt;/span&gt;
&lt;a href="#21-prerequest" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;input checked="" disabled="" type="checkbox"&gt; 已建立 RMT Server&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a
href="https://hackmd.io/@QI-AN/Use-SUSE-Liberty-Linux-to-update-Red-Hat-Enterprise-Linux-9"target="_blank" rel="noopener"&gt;RMT Server 建置手冊&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;2.2. 檢視已同步的 Package Repositories&lt;span class="hx:absolute hx:-mt-20" id="22-檢視已同步的-package-repositories"&gt;&lt;/span&gt;
&lt;a href="#22-%e6%aa%a2%e8%a6%96%e5%b7%b2%e5%90%8c%e6%ad%a5%e7%9a%84-package-repositories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli repos list&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;#43;------&amp;#43;-----------------------------&amp;#43;------------&amp;#43;---------&amp;#43;-------------------------&amp;#43;
| ID | Product | Mandatory? | Mirror? | Last mirrored |
&amp;#43;------&amp;#43;-----------------------------&amp;#43;------------&amp;#43;---------&amp;#43;-------------------------&amp;#43;
| 3878 | RES-8-Updates for x86_64 | Mandatory | Mirror | 2023-11-28 00:35:55 UTC |
| 3921 | RES-AS-8-Updates for x86_64 | Mandatory | Mirror | 2023-11-28 00:37:16 UTC |
| 3924 | RES-CB-8-Updates for x86_64 | Mandatory | Mirror | 2023-11-28 00:37:30 UTC |
| 5963 | SLL-9-Updates for x86_64 | Mandatory | Mirror | 2023-11-28 00:38:12 UTC |
| 5966 | SLL-AS-9-Updates for x86_64 | Mandatory | Mirror | 2023-11-28 00:38:42 UTC |
| 5969 | SLL-CB-9-Updates for x86_64 | Mandatory | Mirror | 2023-11-28 00:38:52 UTC |
&amp;#43;------&amp;#43;-----------------------------&amp;#43;------------&amp;#43;---------&amp;#43;-------------------------&amp;#43;
Only enabled repositories are shown by default. Use the &amp;#39;--all&amp;#39; option to see all repositories.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.3. Export the synchronized data to NFS Share storage&lt;span class="hx:absolute hx:-mt-20" id="23-export-the-synchronized-data-to-nfs-share-storage"&gt;&lt;/span&gt;
&lt;a href="#23-export-the-synchronized-data-to-nfs-share-storage" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli export data /var/nfs_repo&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Store SCC data in files at &lt;code&gt;/var/nfs_repo&lt;/code&gt; Folder&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;I, [2023-12-07T19:45:51.716586 #1900] INFO -- : Exporting data from SCC to /var/nfs_repo
I, [2023-12-07T19:45:51.716843 #1900] INFO -- : Exporting products
I, [2023-12-07T19:46:29.160945 #1900] INFO -- : Exporting repositories
I, [2023-12-07T19:46:40.768586 #1900] INFO -- : Exporting subscriptions
I, [2023-12-07T19:46:41.701698 #1900] INFO -- : Exporting orders&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.4. Export the enabled repositories to NFS Share storage&lt;span class="hx:absolute hx:-mt-20" id="24-export-the-enabled-repositories-to-nfs-share-storage"&gt;&lt;/span&gt;
&lt;a href="#24-export-the-enabled-repositories-to-nfs-share-storage" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli export settings /var/nfs_repo/ &amp;amp;&amp;amp; sudo rmt-cli export repos /var/nfs_repo/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Store repository settings and Mirror repos at &lt;code&gt;/var/nfs_repo&lt;/code&gt; Folder&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
I, [2023-12-07T22:09:16.418825 #1924] INFO -- : ↓ ruby-libguestfs-1.50.1-6.el9.x86_64.rpm&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;3. Synchronize a Disconnected Server&lt;span class="hx:absolute hx:-mt-20" id="3-synchronize-a-disconnected-server"&gt;&lt;/span&gt;
&lt;a href="#3-synchronize-a-disconnected-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;SSH 連線至 SUSE Manager Server&lt;/li&gt;
&lt;li&gt;&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Install and Setup MySQL on SLE HAE</title><link>https://blog.kubeantony.com/archive/suse/install-and-setup-mysql-on-sle-hae/</link><pubDate>Wed, 29 Nov 2023 07:28:16 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/install-and-setup-mysql-on-sle-hae/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會介紹，如何在 SUSE Linux Enterprise HAE 上安裝和設定 MySQL，並將 MySQL 創建為 HAE 中的 Cluster Resource ，目標是模擬 MySQL 服務所在的機器完全故障時，如何實現 MySQL 服務會在故障時自動移轉，來繼續提供服務。&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;環境準備&lt;span class="hx:absolute hx:-mt-20" id="環境準備"&gt;&lt;/span&gt;
&lt;a href="#%e7%92%b0%e5%a2%83%e6%ba%96%e5%82%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;機器 3 台，兩台是 HAE 叢集，另外一台在叢集外部提供 Share Storage 的服務&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;安裝和設定 NFS Server&lt;span class="hx:absolute hx:-mt-20" id="安裝和設定-nfs-server"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d%e5%92%8c%e8%a8%ad%e5%ae%9a-nfs-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;code&gt;ssh&lt;/code&gt; 連線至提供 Share Storage 服務的機器&lt;/li&gt;
&lt;li&gt;安裝 NFS Server&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y yast2-nfs-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;啟動和設定 NFS Server&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 nfs_server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;設定啟動 NFS Server&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/SkYMEMEH6.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;設定好後 &lt;code&gt;Next&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;選擇 &lt;code&gt;[Add Directory]&lt;/code&gt; ，新增要共享的目錄，輸入 &lt;code&gt;/var/lib/mysql&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/HkmhNMNBp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;將權限調整為 &lt;code&gt;rw&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/BkW-BMVra.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;設定好後 &lt;code&gt;OK&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;確認設定都正確後，選 &lt;code&gt;[Finish]&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/rJ6HBfNrp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;建立 MySQL 使用者&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ /usr/sbin/useradd -r -c MySQL database admin -d /var/lib/mysql -U -u 60 mysql -s /usr/sbin/nologin&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;更改 &lt;code&gt;/var/lib/mysql&lt;/code&gt; 的目錄擁有者和群組為 &lt;code&gt;mysql&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo chown -R mysql:mysql /var/lib/mysql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;安裝和設定 NFS Client&lt;span class="hx:absolute hx:-mt-20" id="安裝和設定-nfs-client"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d%e5%92%8c%e8%a8%ad%e5%ae%9a-nfs-client" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;在兩台 SLE HAE 叢集的 Node 上安裝 NFS Client&lt;/li&gt;
&lt;li&gt;執行以下命令安裝 NFS Client&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y yast2-nfs-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;設定 NFS Client&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 nfs&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;點選 &lt;code&gt;Add&lt;/code&gt; 新增 NFS Server 的資訊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;NFS Server Hostname: &lt;code&gt;192.168.11.173&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Remote Directory: &lt;code&gt;/var/lib/mysql&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Mount Point (local): &lt;code&gt;/var/lib/mysql&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;設定好後，點選 &lt;code&gt;OK&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/S18SOzVSp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;確認資訊都正確後，點選 &lt;code&gt;OK&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/SJqrFG4Hp.png" alt="image" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;&lt;code&gt;ssh&lt;/code&gt; 連線至另一台機器做同樣的安裝和設定操作&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;安裝和設定 MySQL Server 和 Client&lt;span class="hx:absolute hx:-mt-20" id="安裝和設定-mysql-server-和-client"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d%e5%92%8c%e8%a8%ad%e5%ae%9a-mysql-server-%e5%92%8c-client" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;在兩台 SLE HAE 叢集的機器上都要安裝 MySQL Server 和 Client 端&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;連線至第一台機器，執行以下安裝命令&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y mysql mysql-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;設定任意 IP 都可以連線到 MySQL&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo nano /etc/my.cnf&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;修改檔案內容如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;bind-address = 0.0.0.0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;將 &lt;code&gt;bind-address&lt;/code&gt; 的值設定為 &lt;code&gt;0.0.0.0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;啟動 MySQL&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl start mariadb&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;安全性設定&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mysql_secure_installation&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;設定內容如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Enter current password for root (enter for none):
（輸入現有root密碼,enter）
Switch to unix_socket authentication [Y/n]
（ y，啟用unix_socket 身份驗證）
Change the root password? [Y/n]
（ y，更換 root 密碼）
New password: root
Re-enter new password: root
Remove anonymous users? [Y/n]
（ Y，移除匿名登入）
Disallow root login remotely? [Y/n]
（ Y，移除遠端 root 登入權限）
Remove test database and access to it? [Y/n]
（ Y，移除測試資料庫及帳號）
Reload privilege tables now? [Y/n]
（ Y，重新載入權限表） &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;關閉 MySQL 服務&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl stop mariadb&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;
&lt;p&gt;連線至第二台機器執行以上同樣安裝和設定步驟&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;在 MySQL 建立使用者，並允許透過任何網路登入&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## 登入 MySQL
$ sudo mysql
## 建立 bigred 使用者並且設定最高權限
$ GRANT ALL PRIVILEGES ON *.* TO &amp;#39;bigred&amp;#39;@&amp;#39;%&amp;#39; IDENTIFIED BY &amp;#39;bigred&amp;#39; WITH GRANT OPTION;
Query OK, 0 rows affected (0.007 sec)
## 立刻生效
$ FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.001 sec)
## 檢查
$ SELECT user,host FROM mysql.user;
&amp;#43;-------------&amp;#43;-----------&amp;#43;
| User | Host |
&amp;#43;-------------&amp;#43;-----------&amp;#43;
| bigred | % |
| mariadb.sys | localhost |
| mysql | localhost |
| root | localhost |
&amp;#43;-------------&amp;#43;-----------&amp;#43;
4 rows in set (0.007 sec)
## 離開
$ \q
Bye&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;使用 bigred 使用者透過網路登入 MySQL&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mysql -u bigred -pbigred -h 192.168.11.172 -P 3306&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;將 MySQL 設定為 Cluster Resource&lt;span class="hx:absolute hx:-mt-20" id="將-mysql-設定為-cluster-resource"&gt;&lt;/span&gt;
&lt;a href="#%e5%b0%87-mysql-%e8%a8%ad%e5%ae%9a%e7%82%ba-cluster-resource" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;執行以下命令將 MySQL 設定為 Cluster Resource&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure primitive mysql systemd:mariadb op start timeout=100 interval=0 op stop timeout=100 interval=0 op monitor timeout=100 interval=60 meta target-role=Stopped&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;透過 &lt;code&gt;crm&lt;/code&gt; 啟動 MySQL&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm resource start mysql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;檢查 MySQL Cluster Resource 的狀態&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm status&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Status of pacemakerd: &amp;#39;Pacemaker is running&amp;#39; (last updated 2023-11-29 13:39:04 &amp;#43;08:00)
Cluster Summary:
* Stack: corosync
* Current DC: sle-ha-1 (version 2.1.5&amp;#43;20221208.a3f44794f-150500.4.9-2.1.5&amp;#43;20221208.a3f44794f) - partition with quorum
* Last updated: Wed Nov 29 13:39:05 2023
* Last change: Wed Nov 29 11:03:19 2023 by root via cibadmin on sle-ha-2
* 2 nodes configured
* 3 resource instances configured
Node List:
* Online: [ sle-ha-1 sle-ha-2 ]
Full List of Resources:
* sbd (stonith:external/sbd): Started sle-ha-1
* Resource Group: Group-mysql:
* admin-ip (ocf::heartbeat:IPaddr2): Started sle-ha-1
* mysql (systemd:mariadb): Started sle-ha-1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;將 MySQL 和 VIP 組成群組&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm configure group Group-mysql admin-ip mysql meta target-role=Stopped&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;將群組資源啟動&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm resource start Group-mysql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;透過 VIP 登入 MySQL 測試&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mysql -u bigred -pbigred -h 192.168.11.170 -P 3306&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;建立資料庫、資料表和匯入資料&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;## 建立 haha Database
&amp;gt; create database haha;
## 進入 Database
&amp;gt; use haha;
## 建 customer 資料表
&amp;gt; CREATE TABLE customer (
ID int NOT NULL,
NAME varchar(100) NOT NULL,
AGE int,
ADDRESS varchar(255),
SALARY DECIMAL(10,2),
PRIMARY KEY (ID)
);
## 新增 7 筆資料
&amp;gt; INSERT INTO customer
VALUES (1,&amp;#39;Ramesh&amp;#39;,32,&amp;#39;Ahmedabad&amp;#39;,&amp;#39;2000.00&amp;#39;),
(2,&amp;#39;Khilan&amp;#39;,25,&amp;#39;Delhi&amp;#39;,&amp;#39;1500.00&amp;#39;),
(3,&amp;#39;kaushik&amp;#39;,23,&amp;#39;kota&amp;#39;,&amp;#39;2000.00&amp;#39;),
(4,&amp;#39;Chaitali&amp;#39;,25,&amp;#39;Mumbai&amp;#39;,&amp;#39;6500.00&amp;#39;),
(5,&amp;#39;Hardik&amp;#39;,27,&amp;#39;Bhopal&amp;#39;,&amp;#39;8500.00&amp;#39;),
(6,&amp;#39;Komal&amp;#39;,22,&amp;#39;MP&amp;#39;,&amp;#39;4500.00&amp;#39;),
(7,&amp;#39;Muffy&amp;#39;,24,&amp;#39;Indore&amp;#39;,&amp;#39;10000.00&amp;#39;);
## 顯示 customer 的所有資料
&amp;gt; select * from customer;
&amp;#43;----&amp;#43;----------&amp;#43;------&amp;#43;-----------&amp;#43;----------&amp;#43;
| ID | NAME | AGE | ADDRESS | SALARY |
&amp;#43;----&amp;#43;----------&amp;#43;------&amp;#43;-----------&amp;#43;----------&amp;#43;
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
&amp;#43;----&amp;#43;----------&amp;#43;------&amp;#43;-----------&amp;#43;----------&amp;#43;
7 rows in set (0.001 sec)
## 離開
&amp;gt; \q&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;故障模擬測試&lt;span class="hx:absolute hx:-mt-20" id="故障模擬測試"&gt;&lt;/span&gt;
&lt;a href="#%e6%95%85%e9%9a%9c%e6%a8%a1%e6%93%ac%e6%b8%ac%e8%a9%a6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;目標&lt;span class="hx:absolute hx:-mt-20" id="目標"&gt;&lt;/span&gt;
&lt;a href="#%e7%9b%ae%e6%a8%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;將 MySQL 服務所在的 Node 關閉，並測試 SLE HAE 是否會自動執行服務故障轉移到叢集中健康的 Node 上。&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;實作&lt;span class="hx:absolute hx:-mt-20" id="實作"&gt;&lt;/span&gt;
&lt;a href="#%e5%af%a6%e4%bd%9c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;由於當前 MySQL 在叢集中的第一台 Node 上，故將第一台 Node 關閉&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo poweroff&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;檢視 MySQL 服務與 VIP 這兩個 Cluster Resources 是否被移轉&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo crm status&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Status of pacemakerd: &amp;#39;Pacemaker is running&amp;#39; (last updated 2023-11-29 14:45:47 &amp;#43;08:00)
Cluster Summary:
* Stack: corosync
* Current DC: sle-ha-2 (version 2.1.5&amp;#43;20221208.a3f44794f-150500.4.9-2.1.5&amp;#43;20221208.a3f44794f) - partition with quorum
* Last updated: Wed Nov 29 14:45:48 2023
* Last change: Wed Nov 29 11:03:19 2023 by root via cibadmin on sle-ha-2
* 2 nodes configured
* 3 resource instances configured
Node List:
* Online: [ sle-ha-2 ]
* OFFLINE: [ sle-ha-1 ]
Full List of Resources:
* sbd (stonith:external/sbd): Started sle-ha-2
* Resource Group: Group-mysql:
* admin-ip (ocf::heartbeat:IPaddr2): Started sle-ha-2
* mysql (systemd:mariadb): Started sle-ha-2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;可以看到在 Node List 區塊中，第一台 Node 已離線&lt;/li&gt;
&lt;li&gt;在 Full List of Resources 區塊中，MySQL 服務與 VIP 已被移轉至第二台 Node 上&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;測試能否透過 VIP 連接 MySQL&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mysql -u bigred -pbigred -h 192.168.11.170 -P 3306&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.6.12-MariaDB MariaDB package
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type &amp;#39;help;&amp;#39; or &amp;#39;\h&amp;#39; for help. Type &amp;#39;\c&amp;#39; to clear the current input statement.
MariaDB [(none)]&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;檢查資料是否還存在&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;gt; show databases;
&amp;#43;--------------------&amp;#43;
| Database |
&amp;#43;--------------------&amp;#43;
| haha |
| information_schema |
| mysql |
| performance_schema |
| sys |
&amp;#43;--------------------&amp;#43;
&amp;gt; select * from haha.customer;
&amp;#43;----&amp;#43;----------&amp;#43;------&amp;#43;-----------&amp;#43;----------&amp;#43;
| ID | NAME | AGE | ADDRESS | SALARY |
&amp;#43;----&amp;#43;----------&amp;#43;------&amp;#43;-----------&amp;#43;----------&amp;#43;
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
&amp;#43;----&amp;#43;----------&amp;#43;------&amp;#43;-----------&amp;#43;----------&amp;#43;
7 rows in set (0.003 sec)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>擴充 SUSE Manager Database 儲存空間</title><link>https://blog.kubeantony.com/archive/suse/%E6%93%B4%E5%85%85-suse-manager-database-%E5%84%B2%E5%AD%98%E7%A9%BA%E9%96%93/</link><pubDate>Thu, 23 Nov 2023 07:49:46 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/%E6%93%B4%E5%85%85-suse-manager-database-%E5%84%B2%E5%AD%98%E7%A9%BA%E9%96%93/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSE Manager 要升級時，遇到 PostgrasSQL 使用的&lt;code&gt;/var/lib/pgsql&lt;/code&gt; 目錄區空間不夠辣。&lt;/p&gt;
&lt;p&gt;本篇會介紹，如何擴充 LVM 做出來的 &lt;code&gt;/var/lib/pgsql&lt;/code&gt; 目錄區的空間。&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Step1: 環境準備&lt;span class="hx:absolute hx:-mt-20" id="step1-環境準備"&gt;&lt;/span&gt;
&lt;a href="#step1-%e7%92%b0%e5%a2%83%e6%ba%96%e5%82%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;檢查 &lt;code&gt;/var/lib/pgsql&lt;/code&gt; 在哪一顆 Disk 上&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ lsblk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 600G 0 disk
├─sda1 8:1 0 8M 0 part
└─sda2 8:2 0 500G 0 part
...中間省略
├─system-var_lib_pgsql 254:4 0 60G 0 lvm /var/lib/pgsql
...以下省略&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;由以上訊息得知，&lt;code&gt;/var/lib/pgsql&lt;/code&gt; 在 &lt;code&gt;/dev/sda&lt;/code&gt; 這顆硬碟上&lt;/li&gt;
&lt;li&gt;目前 &lt;code&gt;/var/lib/pgsql&lt;/code&gt; 這個目錄的 SIZE 是 60G，目標要擴充至 110G&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;關機&lt;/li&gt;
&lt;li&gt;加 &lt;code&gt;/dev/sda&lt;/code&gt; 這顆硬碟空間&lt;/li&gt;
&lt;li&gt;對整台虛擬機建立 SnapShot&lt;/li&gt;
&lt;li&gt;開機&lt;/li&gt;
&lt;li&gt;將 SUSE Manager 的所有 Service 關閉&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo spacewalk-service stop&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;檢查是否 Service 是否都關閉&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo spacewalk-service status&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step2: Resize Disk Partition&lt;span class="hx:absolute hx:-mt-20" id="step2-resize-disk-partition"&gt;&lt;/span&gt;
&lt;a href="#step2-resize-disk-partition" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo fdisk /dev/sda
# 輸入 p 顯示當前 Disk 的 Partition 資訊
Command (m for help): p
...
Device Start End Sectors Size Type
/dev/sda1 2048 18431 16384 8M BIOS boot
/dev/sda2 18432 1048575966 1048557535 500G Linux LVM
# 輸入 d 刪除 Partition，並輸入 2 指定刪除第 2 個 Partition
Command (m for help): d
Partition number (1,2, default 2): 2
Partition 2 has been deleted.
# 輸入 n 新增 Partition，並輸入 2 指定新增第 2 個 Partition
## First sector 以及 Last sector 直接按 Enter 使用預設值
Command (m for help): n
Partition number (2-128, default 2):
First sector (18432-1258291166, default 18432):
Last sector, &amp;#43;/-sectors or &amp;#43;/-size{K,M,G,T,P} (18432-1258291166, default 1258291166):
Created a new partition 2 of type &amp;#39;Linux filesystem&amp;#39; and of size 600 GiB.
Partition #2 contains a LVM2_member signature.
# 輸入 N (大寫)，不要刪除 signature
Do you want to remove the signature? [Y]es/[N]o: N
# 輸入 p 顯示當前 Disk 的 Partition 資訊，檢查 /dev/sda2 已 RESIZE 為 600G
Command (m for help): p
...中間省略
Device Start End Sectors Size Type
/dev/sda1 2048 18431 16384 8M BIOS boot
/dev/sda2 18432 1258291166 1258272735 600G Linux filesystem
# 輸入 w ，將以上動作寫入儲存
Command (m for help): w
The partition table has been altered.
Syncing disks.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step3: 將 PV RESIZE&lt;span class="hx:absolute hx:-mt-20" id="step3-將-pv-resize"&gt;&lt;/span&gt;
&lt;a href="#step3-%e5%b0%87-pv-resize" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;檢查 &lt;code&gt;/var/lib/pgsql&lt;/code&gt; 在哪個 PV&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;1.1 要先檢查在哪個 LV&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...
ACTIVE &amp;#39;/dev/system/var_lib_pgsql&amp;#39; [60.00 GiB] inherit
...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;1.2 再查看使用哪個 VG&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvdisplay /dev/system/var_lib_pgsql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
VG Name system
...以下省略&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;1.3 最後再檢查使用哪個 PV&lt;/p&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo pvscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; PV /dev/sda2 VG system lvm2 [499.99 GiB / 7.99 GiB free]
Total: 1 [499.99 GiB] / in use: 1 [499.99 GiB] / in no VG: 0 [0 ]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;將 &lt;code&gt;/dev/sda2&lt;/code&gt; 這個 PV RESIZE&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo pvresize /dev/sda2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; Physical volume &amp;#34;/dev/sda2&amp;#34; changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;檢查 PV 是否有 RESIZE 成功&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo pvdisplay /dev/sda2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --- Physical volume ---
PV Name /dev/sda2
VG Name system
PV Size 599.99 GiB / not usable 1.98 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 153597
Free PE 27645
Allocated PE 125952
PV UUID 1rnqQf-hgXH-mNCO-ZLSU-nOPY-xsfd-kzi1Nc&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;PV SIZE 已從 500 GiB RESIZE 為 600 GiB&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;檢查 VG 是否已經擴充&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo vgdisplay system&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --- Volume group ---
VG Name system
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 8
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 6
Open LV 6
Max PV 0
Cur PV 1
Act PV 1
VG Size 599.99 GiB
PE Size 4.00 MiB
Total PE 153597
Alloc PE / Size 125952 / 492.00 GiB
Free PE / Size 27645 / 107.99 GiB
VG UUID o1Ru8g-QiEv-grT3-wyfv-s7MB-2lsY-zp8A0W&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;PV SIZE 已從 500 GiB RESIZE 為 600 GiB&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Step4: 將 LV 擴充 50% 可用空間&lt;span class="hx:absolute hx:-mt-20" id="step4-將-lv-擴充-50-可用空間"&gt;&lt;/span&gt;
&lt;a href="#step4-%e5%b0%87-lv-%e6%93%b4%e5%85%85-50-%e5%8f%af%e7%94%a8%e7%a9%ba%e9%96%93" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;執行以下命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvresize -l &amp;#43;50%FREE /dev/system/var_lib_pgsql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; Size of logical volume system/var_lib_pgsql changed from 60.00 GiB (15360 extents) to 114.00 GiB (29183 extents).
Logical volume system/var_lib_pgsql successfully resized.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;檢查是否擴充成功&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvdisplay /dev/system/var_lib_pgsql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --- Logical volume ---
LV Path /dev/system/var_lib_pgsql
LV Name var_lib_pgsql
VG Name system
LV UUID 2SuUkw-6TjW-78l2-48KQ-vNUM-km4B-AX8CaE
LV Write Access read/write
LV Creation host, time suma, 2023-10-06 13:45:16 &amp;#43;0800
LV Status available
# open 1
LV Size 114.00 GiB
Current LE 29183
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 1024
Block device 254:4&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step5: 擴展 XFS 檔案系統&lt;span class="hx:absolute hx:-mt-20" id="step5-擴展-xfs-檔案系統"&gt;&lt;/span&gt;
&lt;a href="#step5-%e6%93%b4%e5%b1%95-xfs-%e6%aa%94%e6%a1%88%e7%b3%bb%e7%b5%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;執行以下命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo xfs_growfs /dev/system/var_lib_pgsql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;meta-data=/dev/mapper/system-var_lib_pgsql isize=512 agcount=4, agsize=3932160 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=0, rmapbt=0
= reflink=0 bigtime=0 inobtcount=0
data = bsize=4096 blocks=15728640, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=7680, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 15728640 to 29883392&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;檢查&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ df -hT /var/lib/pgsql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/system-var_lib_pgsql xfs 114G 29G 86G 26% /var/lib/pgsql&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;補充資料&lt;span class="hx:absolute hx:-mt-20" id="補充資料"&gt;&lt;/span&gt;
&lt;a href="#%e8%a3%9c%e5%85%85%e8%b3%87%e6%96%99" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://yallalabs.com/linux/how-to-reduce-shrink-the-size-of-a-lvm-partition-formatted-with-xfs-filesystem/#:~:text=%E2%80%93%20How%20can%20I%20reduce%20the%20size%20of,the%20filesystem%206%29%20Restore%20the%20data%20using%20xfsrestore"target="_blank" rel="noopener"&gt;如何縮小透過 LVM 做出來的 XFS 檔案系統的大小 ?&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Registering SLE Micro Clients</title><link>https://blog.kubeantony.com/archive/suse/registering-sle-micro-clients/</link><pubDate>Thu, 09 Nov 2023 07:57:38 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/registering-sle-micro-clients/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，如何將 SUSE Linux Enterprise Micro Client 註冊到 SUSE Manager Server&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Step1: Add Software Channels on SUSE Manager Server&lt;span class="hx:absolute hx:-mt-20" id="step1-add-software-channels-on-suse-manager-server"&gt;&lt;/span&gt;
&lt;a href="#step1-add-software-channels-on-suse-manager-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在將 SLE Micro 客戶端註冊到 SUSE Manager Server 之前，需要添加所需的 software channels ( 套件通道 ) 並同步它們。&lt;/p&gt;
&lt;p&gt;操作步驟 :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;勾選要加入的 SUSE Linux Enterprise Micro (版本)&lt;/li&gt;
&lt;li&gt;點擊 &amp;ldquo;Add product&amp;rdquo; ，然後等待同步完成&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rktu2Bon3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;如果在 Products 的列表沒有看到 SUSE Linux Enterprise Micro 就代表在 SUMA 設定 Organization Credentials 的時候，沒有 SUSE Linux Enterprise Micro 的 subscription ( 訂閱 )，所以要重新設定一次，之後按右上角的 &amp;ldquo;Refresh&amp;rdquo; 按鈕，就會看到 SUSE Linux Enterprise Micro 出現&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Step2: Checking Synchronization Progress from the Command Prompt&lt;span class="hx:absolute hx:-mt-20" id="step2-checking-synchronization-progress-from-the-command-prompt"&gt;&lt;/span&gt;
&lt;a href="#step2-checking-synchronization-progress-from-the-command-prompt" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ tail -f /var/log/rhn/reposync/&amp;lt;channel-label&amp;gt;.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;在同步的過程中，每個子通道都會生成自己的日誌。要檢查所有基本通道和子通道的 log 檔，以確保同步完成。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step3: Register Clients&lt;span class="hx:absolute hx:-mt-20" id="step3-register-clients"&gt;&lt;/span&gt;
&lt;a href="#step3-register-clients" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;創建用戶端倉庫&lt;span class="hx:absolute hx:-mt-20" id="創建用戶端倉庫"&gt;&lt;/span&gt;
&lt;a href="#%e5%89%b5%e5%bb%ba%e7%94%a8%e6%88%b6%e7%ab%af%e5%80%89%e5%ba%ab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-create-bootstrap-repo -l | grep -i &amp;#34;micro&amp;#34;
4. SLE-MICRO-5.3-x86_64
$ sudo mgr-create-bootstrap-repo --create SLE-MICRO-5.3-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Activation_Key&lt;span class="hx:absolute hx:-mt-20" id="activation_key"&gt;&lt;/span&gt;
&lt;a href="#activation_key" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;打開瀏覽器，連線至 SUSE Manager Server&lt;/p&gt;
&lt;p&gt;點擊 Systems &amp;gt; Activation Keys &amp;gt; Create Key&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Description: &lt;code&gt;SLE-MICRO-5.3-x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Key: &lt;code&gt;SLE-MICRO-5.3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Usage: &lt;code&gt;2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Child Channels: &lt;code&gt;SLE-Micro-5.3-Pool for x86_64&lt;/code&gt; (全選)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;選好後按 &amp;ldquo;Create Activation Key&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJjroUlT2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyvDiUx62.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1_pi8xan.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;創建註冊腳本&lt;span class="hx:absolute hx:-mt-20" id="創建註冊腳本"&gt;&lt;/span&gt;
&lt;a href="#%e5%89%b5%e5%bb%ba%e8%a8%bb%e5%86%8a%e8%85%b3%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;p&gt;切換到工作目錄&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# cd /srv/www/htdocs/pub/bootstrap/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;拷貝一份特定 Chanel 的註冊腳本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo cp bootstrap.sh bootstrap-sle-micro-5.3.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;修改註冊腳本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$　sudo sed -i &amp;#34;s|ACTIVATION_KEYS=|ACTIVATION_KEYS=1-SLE-MICRO-5.3|g&amp;#34; bootstrap-sle-micro-5.3.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在 bootstrap 腳本的“HOSTNAME”(第 98 行)下一行，增加以下內容:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;OLDIFS=$IFS
IFS=&amp;#39;&amp;#39;
SUMAHOSTRECORD=&amp;#39;192.168.11.210&amp;#39;$&amp;#39;\t&amp;#39;$HOSTNAME
grep $SUMAHOSTRECORD /etc/hosts &amp;gt; /dev/null || {
sed -i &amp;#34;/$HOSTNAME/d&amp;#34; /etc/hosts
echo $SUMAHOSTRECORD &amp;gt;&amp;gt; /etc/hosts
}
IFS=$OLDIFS&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SUMAHOSTRECORD&lt;/code&gt; 的 IP 位址為 SUSE Manager Server 的 IP&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;用戶端註冊操作&lt;span class="hx:absolute hx:-mt-20" id="用戶端註冊操作"&gt;&lt;/span&gt;
&lt;a href="#%e7%94%a8%e6%88%b6%e7%ab%af%e8%a8%bb%e5%86%8a%e6%93%8d%e4%bd%9c" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;將 SUMA 的 Domain Name 加到 /etc/hosts&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo nano /etc/hosts&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;新增以下內容&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;192.168.11.210 antony-suma.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;執行註冊腳本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://antony-suma.example.com/pub/bootstrap/bootstrap-sle-micro-5.3.sh | bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;接受 Salt 用戶端&lt;span class="hx:absolute hx:-mt-20" id="接受-salt-用戶端"&gt;&lt;/span&gt;
&lt;a href="#%e6%8e%a5%e5%8f%97-salt-%e7%94%a8%e6%88%b6%e7%ab%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 SUMA 的 WEB 介面上，進入 &lt;code&gt;[SUSE Manager]&lt;/code&gt; &amp;gt; &lt;code&gt;Systems&lt;/code&gt; &amp;gt; &lt;code&gt;System List&lt;/code&gt; &amp;gt; &lt;code&gt;All&lt;/code&gt; 頁面，可以看到新註冊的用戶端系統。&lt;/p&gt;
&lt;p&gt;如果是 Salt 用戶端，&lt;code&gt;[SUSE Manager]&lt;/code&gt; &amp;gt; &lt;code&gt;Salt&lt;/code&gt; &amp;gt; &lt;code&gt;Keys&lt;/code&gt;，首先需要在 WEB 介面的 Salt 功能表，接受新的 Salt-Key 方能讓新用戶端系統進入 System 清單中。&lt;/p&gt;
&lt;p&gt;示意圖&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/nrLsAUe.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;接受以後&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Bkd3ZOea2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;最後就可以在 System OverView 上看到用戶端拉 ~&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJq6-Og6n.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>Disable automatic updates on SLE Micro</title><link>https://blog.kubeantony.com/archive/suse/disable-automatic-updates-on-sle-micro/</link><pubDate>Thu, 09 Nov 2023 04:26:22 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/disable-automatic-updates-on-sle-micro/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會先介紹 SLE Micro 如何自動更新系統，並介紹如何永久關閉這個功能。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;SLE Micro 如何自動更新系統&lt;span class="hx:absolute hx:-mt-20" id="sle-micro-如何自動更新系統"&gt;&lt;/span&gt;
&lt;a href="#sle-micro-%e5%a6%82%e4%bd%95%e8%87%aa%e5%8b%95%e6%9b%b4%e6%96%b0%e7%b3%bb%e7%b5%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;SLE Micro 會靠 &lt;code&gt;transactional-update.timer&lt;/code&gt; 這個 systemd.timer 每天會去執行 &lt;code&gt;transactional-update.service&lt;/code&gt; 這個服務。&lt;/li&gt;
&lt;li&gt;這個服務會執行 &lt;code&gt;/usr/sbin/transactional-update cleanup ${UPDATE_METHOD} reboot&lt;/code&gt; 這個命令，&lt;code&gt;${UPDATE_METHOD}&lt;/code&gt; 預設的值是 &lt;code&gt;up&lt;/code&gt;。
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;up&lt;/code&gt; 參數會去 call &lt;code&gt;zypper up&lt;/code&gt; 命令。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;reboot&lt;/code&gt; 參數會去追蹤如果系統有更新的話會重啟電腦。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;所以代表 SLE Micro 每天都會去執行更新系統的命令，並自動重開機套用新的套件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;禁止系統自動更新&lt;span class="hx:absolute hx:-mt-20" id="禁止系統自動更新"&gt;&lt;/span&gt;
&lt;a href="#%e7%a6%81%e6%ad%a2%e7%b3%bb%e7%b5%b1%e8%87%aa%e5%8b%95%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ systemctl --now disable transactional-update.timer&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Getting Started, configuring iSCSI on SLES 15 SP5</title><link>https://blog.kubeantony.com/archive/suse/getting-started-configuring-iscsi-on-sles-15-sp5/</link><pubDate>Wed, 08 Nov 2023 06:32:12 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/getting-started-configuring-iscsi-on-sles-15-sp5/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會主要會先介紹 iSCSI 是什麼，它的架構長得如何，以及它如何運作，最後實際在 SLES 15 SP5 上部屬與設定 iSCSI&lt;/p&gt;
&lt;p&gt;可以透過點擊以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;1. 什麼是 iSCSI ?&lt;span class="hx:absolute hx:-mt-20" id="1-什麼是-iscsi-"&gt;&lt;/span&gt;
&lt;a href="#1-%e4%bb%80%e9%ba%bc%e6%98%af-iscsi-" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;iSCSI：Internet Small Computer System Interface
&lt;ul&gt;
&lt;li&gt;iSCSI 是一種儲存網路的通訊協定，它可簡化區塊儲存設備和伺服器之間透過 TCP/IP 網路進行的 SCSI 封包傳輸。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;讓 Server 能夠透過 TCP/IP 的技術直接存取硬碟&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;ISCSI 讓建立共享儲存網路成為可能，在這個網路中，多個伺服器和用戶端可以存取中央儲存資源，就像存取本機連線的裝置一樣。&lt;/li&gt;
&lt;li&gt;iSCSI 利用了 TCP/IP 的 port 860 和 3260 作為溝通的管道。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;h3&gt;1.1. iSCSI 和 NFS 差在哪?&lt;span class="hx:absolute hx:-mt-20" id="11-iscsi-和-nfs-差在哪"&gt;&lt;/span&gt;
&lt;a href="#11-iscsi-%e5%92%8c-nfs-%e5%b7%ae%e5%9c%a8%e5%93%aa" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;iSCSI 是由 IBM 發明的基於乙太網路的儲存協議，該協議與 NFS 協議都是為了解決儲存資源共享問題的解決方案。兩者意圖一致，只不過兩者是不同的實作方式，前者在客戶機上呈現的是一個 Block Device ( 區塊設備 )，而後者則是目錄樹。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BJ25OMMQ6.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;iSCSI 是一種儲存設備遠端映射技術，它可以將一個遠端伺服器上的儲存設備映射到本地，並呈現為一個區塊設備（說白了就是磁碟）。從一般使用者的角度，映射過來的磁碟與本機安裝的磁碟毫無差異。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkuXcGzm6.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;br&gt;
&lt;p&gt;&lt;strong&gt;Block devices file&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;當透過區塊裝置檔案存取硬碟時，系統會先將資料讀取或寫入記憶體中的緩衝區，再將資料傳輸到實際的硬碟。&lt;/li&gt;
&lt;li&gt;優點：可以改善對實體磁碟的輸入輸出效能。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Character device file&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;字元裝置檔案 (character device file) 也稱為原始裝置檔案 (raw device file)。&lt;/li&gt;
&lt;li&gt;字元裝置檔案會一次傳輸一個字元到裝置。&lt;/li&gt;
&lt;li&gt;磁帶機通常透過字元裝置檔案存取。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;2. 它如何運作 ?&lt;span class="hx:absolute hx:-mt-20" id="2-它如何運作-"&gt;&lt;/span&gt;
&lt;a href="#2-%e5%ae%83%e5%a6%82%e4%bd%95%e9%81%8b%e4%bd%9c-" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;iSCSI 主要是透過 TCP/IP 的技術，將儲存設備端透過 iSCSI target ( iSCSI 標的 ) 功能，做成可以提供磁碟的伺服器端，再透過 iSCSI initiator ( iSCSI 初始化用戶 ) 功能，做成能夠掛載使用 iSCSI target 的用戶端，如此便能透過 iSCSI 協定來進行磁碟的應用了。&lt;/p&gt;
&lt;p&gt;也就是說，iSCSI 這個架構主要將儲存裝置與使用的主機分為兩個部分，分別是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;iSCSI target：就是儲存設備端，存放磁碟或 RAID 的設備，目前也能夠將 Linux 主機模擬成 iSCSI target 了！目的在提供其他主機使用的『磁碟』。&lt;/li&gt;
&lt;li&gt;iSCSI initiator：就是能夠使用 target 的用戶端，通常是伺服器。 也就是說，想要連接到 iSCSI target 的伺服器，也必須要安裝 iSCSI initiator 的相關功能後才能夠使用 iSCSI target 提供的磁碟就是了。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rk6i_bGXT.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;2.1. 舉例&lt;span class="hx:absolute hx:-mt-20" id="21-舉例"&gt;&lt;/span&gt;
&lt;a href="#21-%e8%88%89%e4%be%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol start="0"&gt;
&lt;li&gt;iSCSI LIO target server 和 iSCSI initiator servers 在區域網路 IP 層傳送 SCSI 封包進行通訊。&lt;/li&gt;
&lt;li&gt;當 initiator server 上執行的應用程式開始查詢在 iSCSI LIO target 的 Disk 中的資料時，作業系統會產生必要的 SCSI 命令。&lt;/li&gt;
&lt;li&gt;然後，SCSI 指令被嵌入 IP 封包，並由 iSCSI initiator 的軟體進行必要的加密。&lt;/li&gt;
&lt;li&gt;這些資料包透過內部 IP 網路傳輸到對應的 iSCSI LIO target server。&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-1"&gt;
&lt;blockquote&gt;
&lt;p&gt;LIO 是 Linux 的標準開源 multiprotocol SCSI target。 LIO 取代了 SCSI target 框架，成為 Linux 核心版本 2.6.38 及更高版本的標準統一儲存目標器。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h2&gt;3. 在 SLES 15 SP5 上部屬 iSCSI&lt;span class="hx:absolute hx:-mt-20" id="3-在-sles-15-sp5-上部屬-iscsi"&gt;&lt;/span&gt;
&lt;a href="#3-%e5%9c%a8-sles-15-sp5-%e4%b8%8a%e9%83%a8%e5%b1%ac-iscsi" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;3.1. 安裝 iSCSI initiator&lt;span class="hx:absolute hx:-mt-20" id="31-安裝-iscsi-initiator"&gt;&lt;/span&gt;
&lt;a href="#31-%e5%ae%89%e8%a3%9d-iscsi-initiator" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在每一台 iSCSI initiator 機器執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y open-iscsi yast2-iscsi-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.2. 安裝 iSCSI LIO Target Server&lt;span class="hx:absolute hx:-mt-20" id="32-安裝-iscsi-lio-target-server"&gt;&lt;/span&gt;
&lt;a href="#32-%e5%ae%89%e8%a3%9d-iscsi-lio-target-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在每一台 iSCSI LIO Target Server 機器執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y yast2-iscsi-lio-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;3.3. 設定 iSCSI LIO Target Server&lt;span class="hx:absolute hx:-mt-20" id="33-設定-iscsi-lio-target-server"&gt;&lt;/span&gt;
&lt;a href="#33-%e8%a8%ad%e5%ae%9a-iscsi-lio-target-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;3.3.1. 準備儲存空間&lt;span class="hx:absolute hx:-mt-20" id="331-準備儲存空間"&gt;&lt;/span&gt;
&lt;a href="#331-%e6%ba%96%e5%82%99%e5%84%b2%e5%ad%98%e7%a9%ba%e9%96%93" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;iSCSI LIO Target 可使用具有 Linux、Linux LVM 或 Linux RAID 檔案系統 ID 的未格式化分割區。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;在兩台機器上多新增了兩顆 100 G 的 Disk&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;sle-ha-1:~ # lsblk /dev/sdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sdb 8:16 0 100G 0 disk
sle-ha-2:~ # lsblk /dev/sdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sdb 8:16 0 100G 0 disk&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;將 Disk 或 partition 設定為 iSCSI Target 後，切勿直接透過其本機路徑進行存取，不要在 target server 上掛載分割區。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;3.3.2. 設定 iSCSI LIO Target Service 開機自動啟動&lt;span class="hx:absolute hx:-mt-20" id="332-設定-iscsi-lio-target-service-開機自動啟動"&gt;&lt;/span&gt;
&lt;a href="#332-%e8%a8%ad%e5%ae%9a-iscsi-lio-target-service-%e9%96%8b%e6%a9%9f%e8%87%aa%e5%8b%95%e5%95%9f%e5%8b%95" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;iSCSI LIO Target Service 預設要手動啟動，可以將服務設定為在系統啟動時自動啟動。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Start YaST and launch Network Services › iSCSI LIO Target.&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 iscsi-lio-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;
&lt;p&gt;Switch to the Service tab&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;設定開機自動啟動 iSCSI Targets 服務&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;┌Service Configuration─────────────────────────────────────────┐
│Current status: Inactive │
│After writing configuration: │
│Start▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒↓ │
│After reboot: │
│Start on boot▒↓ │
└──────────────────────────────────────────────────────────────┘&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;After writing configuration: &lt;code&gt;Start&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;After reboot: &lt;code&gt;Start on boot&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;3.3.3. 設定 iSCSI LIO target group&lt;span class="hx:absolute hx:-mt-20" id="333-設定-iscsi-lio-target-group"&gt;&lt;/span&gt;
&lt;a href="#333-%e8%a8%ad%e5%ae%9a-iscsi-lio-target-group" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Start YaST and launch Network Services › iSCSI LIO Target.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Switch to the Targets tab.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click Add, then define a new iSCSI LIO target group and devices:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Target: &lt;code&gt;iqn.2023-11.com.example&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Identifier: &lt;code&gt;ha1-disk&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Portal Group: &lt;code&gt;1&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;IP Address: &lt;code&gt;10.12.2.11&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Port Number: &lt;code&gt;3260&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;[x] Bind all IP addresses&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryN3IBvmT.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;
&lt;p&gt;Add a new initiator entry for the selected iSCSI LIO target group.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在 Lun 區塊下點擊 &lt;code&gt;add&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;LUN Path: &lt;code&gt;/dev/sdb&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B1-C6BPQT.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;Click &lt;code&gt;Finish&lt;/code&gt; to save and apply the settings.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;3.4. 設定 iSCSI initiator&lt;span class="hx:absolute hx:-mt-20" id="34-設定-iscsi-initiator"&gt;&lt;/span&gt;
&lt;a href="#34-%e8%a8%ad%e5%ae%9a-iscsi-initiator" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Start YaST and launch Network Services › iSCSI Initiator.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Switch to the Service tab.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;設定開機自動啟動服務&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 iscsi-client&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;After writing configuration: &lt;code&gt;Restart&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;After reboot: &lt;code&gt;Start on boot&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJUH78v76.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Switch to the &lt;code&gt;Discovered Targets&lt;/code&gt; tab.&lt;/li&gt;
&lt;li&gt;Connect Targets&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkkMBLPQa.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;Startup and Authentication&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;ul&gt;
&lt;li&gt;Startup: &lt;code&gt;automatic&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Next&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HknIB8PX6.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;確認 Connected Targets&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;確認都沒問題後點擊 OK&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkflUIw76.png" alt="image.png" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;檢查&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# lsscsi
[0:0:0:0] disk QEMU QEMU HARDDISK 2.5&amp;#43; /dev/sda
[0:0:0:1] disk QEMU QEMU HARDDISK 2.5&amp;#43; /dev/sdb
[2:0:0:0] cd/dvd QEMU QEMU DVD-ROM 2.5&amp;#43; /dev/sr0
[3:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdc
[4:0:0:0] disk LIO-ORG IBLOCK 4.0 /dev/sdd&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;參考文章&lt;span class="hx:absolute hx:-mt-20" id="參考文章"&gt;&lt;/span&gt;
&lt;a href="#%e5%8f%83%e8%80%83%e6%96%87%e7%ab%a0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://linux.vbird.org/linux_server/centos6/0460iscsi.php"target="_blank" rel="noopener"&gt;第十八章、網路磁碟裝置： iSCSI 伺服器 - 鳥哥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://zhuanlan.zhihu.com/p/60986068"target="_blank" rel="noopener"&gt;iSCSI的基本架構及操作簡介&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/sles/15-SP5/html/SLES-all/cha-iscsi.html#sec-iscsi-install"target="_blank" rel="noopener"&gt;Installing the iSCSI LIO target server and iSCSI initiator - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>NVIDIA GPU’s on SLE Micro 5.4</title><link>https://blog.kubeantony.com/archive/suse/nvidia-gpus-on-sle-micro-5.4/</link><pubDate>Mon, 30 Oct 2023 09:34:26 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/nvidia-gpus-on-sle-micro-5.4/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Prerequisites&lt;span class="hx:absolute hx:-mt-20" id="prerequisites"&gt;&lt;/span&gt;
&lt;a href="#prerequisites" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;至少一台安裝了 SLE Micro 5.3+ 的主機；可以是實體主機，也可以是虛擬主機。&lt;/li&gt;
&lt;li&gt;您的主機已連接到訂閱，因為存取 Packages 需要訂閱。&lt;/li&gt;
&lt;li&gt;安裝了 &lt;a
href="https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus"target="_blank" rel="noopener"&gt;相容的 NVIDIA GPU&lt;/a&gt;（或透過虛擬機器運行 SLE Micro）。&lt;/li&gt;
&lt;li&gt;root 用戶存取權限 &amp;ndash; 這些說明假定您是 root 用戶，並且沒有透過 sudo 升級權限。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Installation&lt;span class="hx:absolute hx:-mt-20" id="installation"&gt;&lt;/span&gt;
&lt;a href="#installation" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;目前，標準的 SLE Micro package repositories 中沒有 Nvidia 開放驅動程式所需的 Packages，只有 SUSE Linux Enterprise Server 才有。&lt;/p&gt;
&lt;p&gt;因此我們需要從這些 package repositories 中提取這些 packages ，我們可以透過工具箱實用 程式輕鬆地做到這一點。 請注意，在未來幾週內將不需要這樣做——我們目前正在 SLE Micro 中提供這些 packages ，因此接下來的步驟將變得多餘。&lt;/p&gt;
&lt;p&gt;在此期間，請確保您已正確設定了 &lt;code&gt;mounts.conf&lt;/code&gt;文件，這將確保由 podman（包括工具箱實用程式）啟動的任何容器都會自動將您的 SUSE Connect 憑證注入 Container Image。 這將允許存取 Packages，以便我們從 SLES 的 package repositories 下載 packages （此文件通常已在 SLE Micro 5.3 上配置，但我們還是要確認）：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat &amp;lt;&amp;lt; EOF &amp;gt; /etc/containers/mounts.conf
/etc/zypp/credentials.d/SCCcredentials:/etc/zypp/credentials.d/SCCcredentials
EOF&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;接下來，建立一個臨時目錄，將需要從 SLES 下載的軟體包推送到本機檔案系統中，為此我使用 &lt;code&gt;/root/nvidia&lt;/code&gt;：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p /root/nvidia&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;現在我們可以打開 &lt;code&gt;toolbox&lt;/code&gt; 實用程序，它提供了其他不屬於 SLE Micro 基本作業系統的命令列工具和實用程式。 在排除系統故障時，該工具非常有用，因為在這種情況下，您希望將底層作業系統的佔用空間降到最低：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ toolbox&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;進入工具箱實用程式後，我們可以要求軟體套件管理員（zypper）新增 sle-module-basesystem 模組，刷新軟體來源，然後將 Nvidia 驅動程式軟體包下載到主機檔案系統中先前建立的 &lt;code&gt;/root/nvidia&lt;/code&gt; 目錄中，注意在工具箱中的絕對路徑是 &lt;code&gt;/media/root/root/nvidia&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;在下面的範例中，我們特別呼叫了支援最新 GPU &amp;ldquo;G06&amp;rdquo; 世代的驅動程式，因此請確保選擇了合適的 GPU 版本。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;G03 = driver v340 = legacy driver for GT8xxx/9xxx devices (via a community user, see below)&lt;/li&gt;
&lt;li&gt;G04 = driver v390 = legacy driver for GTX4xx/5xx Fermi devices&lt;/li&gt;
&lt;li&gt;G05 = driver v470 = driver for GeForce 600 series and GeForce 700 series (Kepler)&lt;/li&gt;
&lt;li&gt;G06 = driver for GeForce 700 series (Maxwell, Pascal&amp;hellip;) and up&lt;/li&gt;
&lt;li&gt;更多資訊請參閱 &lt;a
href="https://en.opensuse.org/SDB:NVIDIA_drivers#Install"target="_blank" rel="noopener"&gt;此處&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;檢查 GPU 型號&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo hwinfo --short --pci
graphics card:
nVidia GP108 [GeForce GT 1030]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;此外，以下的範例呼叫的是 535.104.05 驅動程式；請確保您選擇的驅動程式版本與您的 GPU 相容，並符合 CUDA 要求（如適用），請點擊&lt;a
href="https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/"target="_blank" rel="noopener"&gt;此處&lt;/a&gt;。 此外，建議您檢查 &lt;a
href="http://download.nvidia.com/suse/sle15sp4/x86_64/"target="_blank" rel="noopener"&gt;Nvidia SLE15-SP4 軟體來源&lt;/a&gt;，確保您選擇的驅動程式版本與具有相同版本字串的 &lt;code&gt;nvidia-compute-utils-G06&lt;/code&gt; 軟體包相當； Nvidia 會定期刷新該軟體來源，但版本必須相符； 我們在SUSE 軟體來源中的驅動程式版本有可能比 Nvidia 在其軟體來源中的版本更新（反之亦然），因此在此匹配版本非常重要。&lt;/p&gt;
&lt;p&gt;確認上述情況後，請使用以下命令擷取適合您系統的所需軟體包：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ADDITIONAL_MODULES=sle-module-basesystem zypper ref
$ zypper --pkg-cache-dir /media/root/root/nvidia install -y --download-only kernel-devel gcc nvidia-open-driver-G06-signed-kmp=535.104.05 &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;現在您已經在工具箱實用程式之外獲得了軟體包，請退出工具箱：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ exit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;現在可以在主機作業系統上安裝軟體包了，為此我們需要打開事務更新會話，創建一個新的底層作業系統讀取/寫入快照，以便對不可變平台進行更改（有關事務更新的更多說明，請 參閱此）：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ transactional-update shell&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在事務更新 shell 中，新增英偉達所需的其他軟體包軟體來源；這將允許我們調入其他實用程序，如 nvidia-smi，以及存取您可能需要使用的 CUDA 軟體包：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper ar https://developer.download.nvidia.com/compute/cuda/repos/sles15/x86_64/ nvidia-sle15sp4-cuda
$ zypper ar http://download.nvidia.com/suse/sle15sp4/ nvidia-sle15sp4-main&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;接下來，移至 /root/nvidia 目錄，該目錄包含先前的zypper 命令以從 SLES 下載的軟體包建立的幾個目錄。 然後，我們可以請求軟體包管理器安裝預置的簽章核心模組、韌體軟體包和附加實用程式軟體包：&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cd /root/nvidia/container-suseconnect-zypp:SLE-Module-Basesystem15-SP4-Updates/x86_64
$ zypper in -y nvidia-open-driver-G06-signed-kmp-default* kernel-firmware-nvidia-gspx-G06* nvidia-compute-utils-G06&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
Do you want to reject the key, trust temporarily, or trust always? [r/t/a/?] (r): a
Building repository &amp;#39;nvidia-sle15sp4-main&amp;#39; cache ......................................................................................................[done]
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 4 NEW packages are going to be installed:
kernel-firmware-nvidia-gspx-G06 nvidia-compute-G06 nvidia-compute-utils-G06 nvidia-open-driver-G06-signed-kmp-default
The following 4 packages have no support information from their vendor:
kernel-firmware-nvidia-gspx-G06 nvidia-compute-G06 nvidia-compute-utils-G06 nvidia-open-driver-G06-signed-kmp-default
4 new packages to install.
Overall download size: 80.7 MiB. Already cached: 0 B. After the operation, additional 243.9 MiB will be used.
Continue? [y/n/v/...? shows all options] (y): y
Do you agree with the terms of the license? [yes/no] (no): yes
Retrieving package kernel-firmware-nvidia-gspx-G06-535.104.05-150400.9.6.1.x86_64 (1/4), 36.5 MiB ( 58.9 MiB unpacked)
Retrieving package nvidia-open-driver-G06-signed-kmp-default-535.104.05_k5.14.21_150400.24.81-150400.9.17.1.x86_64 (2/4), 5.0 MiB ( 4.9 MiB unpacked)
Retrieving package nvidia-compute-G06-535.104.05-150400.12.1.x86_64 (3/4), 38.5 MiB (178.2 MiB unpacked)
Retrieving: nvidia-compute-G06-535.104.05-150400.12.1.x86_64.rpm ..........................................................................[done (6.6 MiB/s)]
Retrieving package nvidia-compute-utils-G06-535.104.05-150400.12.1.x86_64 (4/4), 638.4 KiB ( 1.7 MiB unpacked)
Retrieving: nvidia-compute-utils-G06-535.104.05-150400.12.1.x86_64.rpm ................................................................................[done]
Checking for file conflicts: ..........................................................................................................................[done]
(1/4) Installing: kernel-firmware-nvidia-gspx-G06-535.104.05-150400.9.6.1.x86_64 ......................................................................[done]
(2/4) Installing: nvidia-open-driver-G06-signed-kmp-default-535.104.05_k5.14.21_150400.24.81-150400.9.17.1.x86_64 .....................................[done]
update-alternatives: using /usr/lib64/nvidia/libOpenCL.so.1 to provide /usr/lib64/libOpenCL.so.1 (libOpenCL.so.1) in auto mode
(3/4) Installing: nvidia-compute-G06-535.104.05-150400.12.1.x86_64 ....................................................................................[done]
(4/4) Installing: nvidia-compute-utils-G06-535.104.05-150400.12.1.x86_64 ..............................................................................[done]
Executing %posttrans scripts ..........................................................................................................................[done]
transactional update # zypper in nvidia-open-driver-G06-signed-kmp-default* kernel-firmware-nvidia-gspx-G06* nvidia-compute-utils-G06^C
transactional update # exit
exit
2023-10-05 03:32:08 Application returned with exit status 130.
2023-10-05 03:32:09 tukit 4.1.4 started
2023-10-05 03:32:09 Options: close 3
Relabeled /var/lib/YaST2 from unconfined_u:object_r:var_lib_t:s0 to unconfined_u:object_r:rpm_var_lib_t:s0
Relabeled /var/lib/YaST2/cookies from unconfined_u:object_r:var_lib_t:s0 to unconfined_u:object_r:rpm_var_lib_t:s0
2023-10-05 03:32:11 New default snapshot is #3 (/.snapshots/3/snapshot).
2023-10-05 03:32:11 Transaction completed.
Please reboot your machine to activate the changes and avoid data loss.
WARNING: This snapshot has been created from a different base (1)
than the previous default snapshot (2) and does not
contain the changes from the latter.
New default snapshot is #3 (/.snapshots/3/snapshot).
transactional-update finished &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;安裝 nvidia-container-runtime&lt;span class="hx:absolute hx:-mt-20" id="安裝-nvidia-container-runtime"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-nvidia-container-runtime" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# toolbox
# zypper --pkg-cache-dir /media/root/root/nvidia install -y --download-only nvidia-container-runtime
# exit
# transactional-update shell
# cd /root/nvidia/container-suseconnect-zypp:SLE-Module-Basesystem15-SP4-Updates/x86_64
# transactional update
# zypper in nvidia-container-runtime
# exit
# reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;安裝 k3s&lt;span class="hx:absolute hx:-mt-20" id="安裝-k3s"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-k3s" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;透過 Rancher 產生安裝命令&lt;/p&gt;
&lt;h3&gt;安裝 Nvidia gpu-operator&lt;span class="hx:absolute hx:-mt-20" id="安裝-nvidia-gpu-operator"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-nvidia-gpu-operator" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;h4&gt;Step1: 在 Rancher 介面新增 gpu-operator 的 App Repositories&lt;span class="hx:absolute hx:-mt-20" id="step1-在-rancher-介面新增-gpu-operator-的-app-repositories"&gt;&lt;/span&gt;
&lt;a href="#step1-%e5%9c%a8-rancher-%e4%bb%8b%e9%9d%a2%e6%96%b0%e5%a2%9e-gpu-operator-%e7%9a%84-app-repositories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Cluster -&amp;gt; Apps -&amp;gt; Repositories -&amp;gt; Create&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;name: &lt;code&gt;nvidia&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;URL: &lt;code&gt;https://helm.ngc.nvidia.com/nvidia&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyjaHpjlT.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;填入資料後，點擊右下角的 Create&lt;/p&gt;
&lt;/div&gt;
&lt;h4&gt;Step2: 開始安裝 gpu-operator&lt;span class="hx:absolute hx:-mt-20" id="step2-開始安裝-gpu-operator"&gt;&lt;/span&gt;
&lt;a href="#step2-%e9%96%8b%e5%a7%8b%e5%ae%89%e8%a3%9d-gpu-operator" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;點擊 Charts 搜尋 &lt;code&gt;gpu&lt;/code&gt;，找到並點擊 gpu-operator&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByAQUTolp.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;點擊右上角 Install&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJuq8ajlT.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Namespace: gpu-operator&lt;/li&gt;
&lt;li&gt;勾選 Customize Helm options before install&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ByObwpjxp.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;新增 toolkit 的變數&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; env:
- name: CONTAINERD_CONFIG
value: /var/lib/rancher/k3s/agent/etc/containerd/config.toml
- name: CONTAINERD_SOCKET
value: /run/k3s/containerd/containerd.sock &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1icvTiep.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;點擊 Next&lt;/p&gt;
&lt;p&gt;點擊 Install&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJkz_6oxT.png" alt="" loading="lazy" /&gt;&lt;/p&gt;</description></item><item><title>Getting start with AutoYast</title><link>https://blog.kubeantony.com/archive/suse/getting-start-with-autoyast/</link><pubDate>Fri, 06 Oct 2023 06:09:32 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/getting-start-with-autoyast/</guid><description>
&lt;h2&gt;Installion&lt;span class="hx:absolute hx:-mt-20" id="installion"&gt;&lt;/span&gt;
&lt;a href="#installion" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y autoyast2 autoyast2-installation&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Creating a new control file&lt;span class="hx:absolute hx:-mt-20" id="creating-a-new-control-file"&gt;&lt;/span&gt;
&lt;a href="#creating-a-new-control-file" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;</description></item><item><title>Offline upgrade SLES 15 Service Pack from 1 to 5</title><link>https://blog.kubeantony.com/archive/suse/offline-upgrade-sles-15-service-pack-from-1-to-5/</link><pubDate>Mon, 04 Sep 2023 02:26:28 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/offline-upgrade-sles-15-service-pack-from-1-to-5/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會採取 Step by Step 和 ScreenShot 的方式介紹，如何透過 SUSE Manager 和在 SUSE Manager Client 端執行命令的方式將 SLES 15 SP1 升級至 SLES 15 SP5&lt;/p&gt;
&lt;p&gt;Note:
本驗測報告僅提供 OS 15 SP1 升級至 SP5，不包含其他應用、效能與第三方套件驗證，相關驗證得依實際應用整合為準。&lt;/p&gt;
&lt;p&gt;若遭遇相關問題得依 SUSE 認定為準。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Prerequest&lt;span class="hx:absolute hx:-mt-20" id="prerequest"&gt;&lt;/span&gt;
&lt;a href="#prerequest" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;準備一台沒有到 SCC 註冊過的 SLES 15 SP1&lt;/li&gt;
&lt;li&gt;在 SUSE Manager 上準備 SLES 15 SP1 和 SLES 15 SP5 的 Product
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJQJsY2Th.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Step1: 透過 SLES 15 SP1 Bootstrap Script 註冊 SUSE Manager Client 端&lt;span class="hx:absolute hx:-mt-20" id="step1-透過-sles-15-sp1-bootstrap-script-註冊-suse-manager-client-端"&gt;&lt;/span&gt;
&lt;a href="#step1-%e9%80%8f%e9%81%8e-sles-15-sp1-bootstrap-script-%e8%a8%bb%e5%86%8a-suse-manager-client-%e7%ab%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;創建用戶端倉庫&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-create-bootstrap-repo --create SLE-15-SP1-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;創建 Activation_Key&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;連線至 SUSE Manager Web UI，點擊左側選單 &amp;ldquo;Activation Keys&amp;rdquo; &amp;gt; 點擊右上角的 &amp;ldquo;Create Key&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SytmXo3ph.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;填入以下欄位內容&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Description: &lt;code&gt;SLE-15-SP1-x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Key: 1-&lt;code&gt;SLE-15-SP1-x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Usage: `` (依需求設定)&lt;/li&gt;
&lt;li&gt;Base Channel: 選擇 &lt;code&gt;SLE-Product-SLES15-SP1-Pool for x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Child Channels: 勾選 &lt;code&gt;include recommended&lt;/code&gt; (依需求勾選)&lt;/li&gt;
&lt;li&gt;Add-On System Types: 勾選 &lt;code&gt;Virtualization Host&lt;/code&gt; (依環境勾選)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;以上確認沒問題後，點擊 &amp;ldquo;Create Activation Key&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H180663T2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rko_4o2Tn.png" alt="" loading="lazy" /&gt;
&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkuF4i3an.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;創建 Bootstrap Script&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-bootstrap --activation-key=1-SLE-15-SP1-x86_64 --script=bootstrap-SLE-15-SP1-x86_64.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--activation-key&lt;/code&gt;，指定 Bootstrap Script 使用的 Activation Key&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--script&lt;/code&gt;，指定 Bootstrap Script 名稱，Script 會生成在 &lt;code&gt;/srv/www/htdocs/pub/bootstrap/&lt;/code&gt; 目錄區&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;* WARNING: if there were hand edits to the rotated (backed up) file,
some settings may need to be migrated.
* bootstrap overrides (written):
&amp;#39;/srv/www/htdocs/pub/bootstrap/client-config-overrides.txt&amp;#39;
Values written:
serverURL &amp;#39;https://antony-suma.example.com/XMLRPC&amp;#39;
enableProxy &amp;#39;0&amp;#39;
httpProxy &amp;#39;&amp;#39;
enableProxyAuth &amp;#39;0&amp;#39;
proxyUser &amp;#39;&amp;#39;
proxyPassword &amp;#39;&amp;#39;
sslCACert &amp;#39;/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&amp;#39;
useGPG 1
* bootstrap script (written):
&amp;#39;/srv/www/htdocs/pub/bootstrap/bootstrap-SLE-15-SP1-x86_64.sh&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;執行 Bootstrap Script&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 SLES 15 SP1 機器執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://antony-suma.example.com/pub/bootstrap/bootstrap-SLE-15-SP1-x86_64.sh | sudo bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
REGISTRATION
------------
* registering
Using activation key: 1-SLE-15-SP1-x86_64
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service → /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;在 SUSE Manager Web UI 接受 Client 端&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;code&gt;[SUSE Manager]&lt;/code&gt; &amp;gt; &lt;code&gt;Salt&lt;/code&gt; &amp;gt; &lt;code&gt;Keys&lt;/code&gt; &amp;gt; &lt;code&gt;V&lt;/code&gt;，接受新的 Salt-Key 讓新用戶端系統進入 System 清單中。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HyUBTsnah.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;System OverView 檢視新註冊的 Client 端&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/By-3Aonah.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Step2: 將 Client 端更新至最新版本&lt;span class="hx:absolute hx:-mt-20" id="step2-將-client-端更新至最新版本"&gt;&lt;/span&gt;
&lt;a href="#step2-%e5%b0%87-client-%e7%ab%af%e6%9b%b4%e6%96%b0%e8%87%b3%e6%9c%80%e6%96%b0%e7%89%88%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;透過 Web UI 的方式更新&lt;span class="hx:absolute hx:-mt-20" id="透過-web-ui-的方式更新"&gt;&lt;/span&gt;
&lt;a href="#%e9%80%8f%e9%81%8e-web-ui-%e7%9a%84%e6%96%b9%e5%bc%8f%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;點擊 &amp;ldquo;sles15-sp1&amp;rdquo; 主機&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryBe4n3p2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;點擊 &amp;ldquo;Software&amp;rdquo; &amp;gt; &amp;ldquo;Packages&amp;rdquo; &amp;gt; &amp;ldquo;Upgrade&amp;rdquo; &amp;gt; &amp;ldquo;Select All&amp;rdquo; &amp;gt; &amp;ldquo;Upgrade Packages&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJb64nhah.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;點擊 &amp;ldquo;Confirm&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Byiqr3ha2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;檢查是否更新成功&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;點擊 &amp;ldquo;Event&amp;rdquo; &amp;gt; &amp;ldquo;History&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/H1TaD22T3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;點擊 &amp;ldquo;Package Install/Upgrade scheduled by rancher&amp;rdquo;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;往下滑可以看到哪些套件從哪個版本升級到哪個版本&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Syn0d326n.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;重啟系統&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 SLES 15 SP1 機器執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;透過 CLI 的方式更新&lt;span class="hx:absolute hx:-mt-20" id="透過-cli-的方式更新"&gt;&lt;/span&gt;
&lt;a href="#%e9%80%8f%e9%81%8e-cli-%e7%9a%84%e6%96%b9%e5%bc%8f%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;更新套件儲存庫&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper ref&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Repository &amp;#39;SLE-Manager-Tools15-Pool for x86_64 SP1&amp;#39; is up to date.
Repository &amp;#39;SLE-Manager-Tools15-Updates for x86_64 SP1&amp;#39; is up to date.
Repository &amp;#39;SLE-Module-Basesystem15-SP1-Pool for x86_64&amp;#39; is up to date.
Repository &amp;#39;SLE-Module-Basesystem15-SP1-Updates for x86_64&amp;#39; is up to date.
Repository &amp;#39;SLE-Module-Server-Applications15-SP1-Pool for x86_64&amp;#39; is up to date.
Repository &amp;#39;SLE-Module-Server-Applications15-SP1-Updates for x86_64&amp;#39; is up to date.
Repository &amp;#39;SLE-Product-SLES15-SP1-Pool for x86_64&amp;#39; is up to date.
Repository &amp;#39;SLE-Product-SLES15-SP1-Updates for x86_64&amp;#39; is up to date.
All repositories have been refreshed.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;檢視套件儲存庫&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper lr&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Repository priorities are without effect. All enabled repositories share the same priority.
# | Alias | Name | Enabled | GPG Check | Refresh
--&amp;#43;-----------------------------------------------------------------&amp;#43;---------------------------------------------------------&amp;#43;---------&amp;#43;-----------&amp;#43;--------
1 | SLES15-SP1-15.1-0 | SLES15-SP1-15.1-0 | No | ---- | ----
2 | susemanager:sle-manager-tools15-pool-x86_64-sp1 | SLE-Manager-Tools15-Pool for x86_64 SP1 | Yes | ( p) Yes | Yes
3 | susemanager:sle-manager-tools15-updates-x86_64-sp1 | SLE-Manager-Tools15-Updates for x86_64 SP1 | Yes | ( p) Yes | Yes
4 | susemanager:sle-module-basesystem15-sp1-pool-x86_64 | SLE-Module-Basesystem15-SP1-Pool for x86_64 | Yes | ( p) Yes | Yes
5 | susemanager:sle-module-basesystem15-sp1-updates-x86_64 | SLE-Module-Basesystem15-SP1-Updates for x86_64 | Yes | ( p) Yes | Yes
6 | susemanager:sle-module-server-applications15-sp1-pool-x86_64 | SLE-Module-Server-Applications15-SP1-Pool for x86_64 | Yes | ( p) Yes | Yes
7 | susemanager:sle-module-server-applications15-sp1-updates-x86_64 | SLE-Module-Server-Applications15-SP1-Updates for x86_64 | Yes | ( p) Yes | Yes
8 | susemanager:sle-product-sles15-sp1-pool-x86_64 | SLE-Product-SLES15-SP1-Pool for x86_64 | Yes | ( p) Yes | Yes
9 | susemanager:sle-product-sles15-sp1-updates-x86_64 | SLE-Product-SLES15-SP1-Updates for x86_64 | Yes | ( p) Yes | Yes&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;檢視所有可更新的套件&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper lu&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Loading repository data...
Reading installed packages...
S | Repository | Name | Current Version | Available Version | Arch
--&amp;#43;------------------------------------------------&amp;#43;------------------------------&amp;#43;---------------------------------&amp;#43;----------------------------------&amp;#43;-------
v | SLE-Module-Basesystem15-SP1-Updates for x86_64 | SUSEConnect | 0.3.16-5.20 | 0.3.32-7.25.1 | x86_64
v | SLE-Module-Basesystem15-SP1-Updates for x86_64 | aaa_base | 84.87&amp;#43;git20180409.04c9dae-3.6.1 | 84.87&amp;#43;git20180409.04c9dae-3.45.1 | x86_64
v | SLE-Module-Basesystem15-SP1-Updates for x86_64 | bash | 4.4-9.7.1 | 4.4-9.10.1 | x86_64
...以下省略&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;測試更新&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ZYPP_LOGFILE=/root/zypper-15sp1-test-upgrade.log sudo zypper -vv dup --details --dry-run --no-force-resolution --no-recommends --no-allow-vendor-change --no-allow-arch-change&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--dry-run&lt;/code&gt;，模擬升級過程軟體安裝是否有相依性或者其他錯誤，確認模擬升級測試成功，才開始運行升級指令。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
174 packages to upgrade, 7 new, 1 to remove.
Overall download size: 228.1 MiB. Already cached: 0 B. After the operation, additional 312.7 MiB will be used.
Note: System reboot required.
Continue? [y/n/v/...? shows all options] (y): y
committing (dry run)
CommitResult (total 181, done 0, error 0, skipped 181, updateMessages 0)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Note:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;確認 error 為 0 再執行更新&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ZYPP_LOGFILE&lt;/code&gt;，設定 log 檔的絕對路徑和檔名&lt;/li&gt;
&lt;li&gt;如果有錯誤的詳細資訊可以檢視 ZYPP_LOGFILE 的內容&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;執行以下命令開始正式升級&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ZYPP_LOGFILE=/root/zypper-15sp1-upgrade.log sudo zypper -vv dup --details --no-force-resolution --no-recommends --no-allow-vendor-change --no-allow-arch-change&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;可以看到那些 packages 要升級\哪些會降級\哪些會新安裝\那些會移除
輸入「y」開始升級安裝&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
CommitResult (total 181, done 181, error 0, skipped 0, updateMessages 0)
...
Core libraries or services have been updated.
Reboot is required to ensure that your system benefits from these updates.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;確認升級成功且 error 為 &lt;code&gt;0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;重啟系統&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;檢查 OS Kernel 是否為 &lt;code&gt;4.12.14-197.78-default&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ uname -r&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;4.12.14-197.78-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;再次檢查所有可更新的套件&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper lu&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;注意，此時應不會顯示有套件需要更新&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Loading repository data
Reading installed packages
No updates found.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step3: 移除 Client 端&lt;span class="hx:absolute hx:-mt-20" id="step3-移除-client-端"&gt;&lt;/span&gt;
&lt;a href="#step3-%e7%a7%bb%e9%99%a4-client-%e7%ab%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 Client 端上執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ for i in {1..20} ; do zypper rr 1 ; done
$ systemctl stop salt-minion.service
$ rm /etc/zypp/repos.d/susemanager\:channels.repo
$ rm -r /etc/salt/
$ rpm -e salt salt-minion python2-salt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在 SUMA 上執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo spacecmd system_delete FQDN
$ sudo salt-key -d FQDN&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Step4: 透過 SLES 15 SP5 Bootstrap Script 註冊 SUSE Manager Client 端&lt;span class="hx:absolute hx:-mt-20" id="step4-透過-sles-15-sp5-bootstrap-script-註冊-suse-manager-client-端"&gt;&lt;/span&gt;
&lt;a href="#step4-%e9%80%8f%e9%81%8e-sles-15-sp5-bootstrap-script-%e8%a8%bb%e5%86%8a-suse-manager-client-%e7%ab%af" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;創建用戶端倉庫&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-create-bootstrap-repo --create SLE-15-SP5-x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;創建 Activation_Key&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;連線至 SUSE Manager Web UI，點擊左側選單 &amp;ldquo;Activation Keys&amp;rdquo; &amp;gt; 點擊右上角的 &amp;ldquo;Create Key&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SytmXo3ph.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;填入以下欄位內容&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Description: &lt;code&gt;SLE-15-SP5-x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Key: 1-&lt;code&gt;SLE-15-SP5-x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Usage: `` (依需求設定)&lt;/li&gt;
&lt;li&gt;Base Channel: 選擇 &lt;code&gt;SLE-Product-SLES15-SP5-Pool for x86_64&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Child Channels: 勾選 &lt;code&gt;include recommended&lt;/code&gt; (依需求勾選)&lt;/li&gt;
&lt;li&gt;Add-On System Types: 勾選 &lt;code&gt;Virtualization Host&lt;/code&gt; (依環境勾選)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;以上確認沒問題後，點擊 &amp;ldquo;Create Activation Key&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Hy4xCpna3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HykmA326h.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkuF4i3an.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;創建 Bootstrap Script&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 SUSE Manager Server 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo mgr-bootstrap --activation-key=1-SLE-15-SP5-x86_64 --script=bootstrap-SLE-15-SP5-x86_64.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--activation-key&lt;/code&gt;，指定 Bootstrap Script 使用的 Activation Key&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--script&lt;/code&gt;，指定 Bootstrap Script 名稱，Script 會生成在 &lt;code&gt;/srv/www/htdocs/pub/bootstrap/&lt;/code&gt; 目錄區&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;* WARNING: if there were hand edits to the rotated (backed up) file,
some settings may need to be migrated.
* bootstrap overrides (written):
&amp;#39;/srv/www/htdocs/pub/bootstrap/client-config-overrides.txt&amp;#39;
Values written:
serverURL &amp;#39;https://antony-suma.example.com/XMLRPC&amp;#39;
enableProxy &amp;#39;0&amp;#39;
httpProxy &amp;#39;&amp;#39;
enableProxyAuth &amp;#39;0&amp;#39;
proxyUser &amp;#39;&amp;#39;
proxyPassword &amp;#39;&amp;#39;
sslCACert &amp;#39;/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT&amp;#39;
useGPG 1
* bootstrap script (written):
&amp;#39;/srv/www/htdocs/pub/bootstrap/bootstrap-SLE-15-SP1-x86_64.sh&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;執行 Bootstrap Script&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 SLES 15 SP1 機器執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl -k https://antony-suma.example.com/pub/bootstrap/bootstrap-SLE-15-SP5-x86_64.sh | sudo bash&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
REGISTRATION
------------
* registering
Using activation key: 1-SLE-15-SP5-x86_64
* removing TLS certificate used for bootstrap
(will be re-added via salt state)
* starting salt daemon and enabling it during boot
Created symlink /etc/systemd/system/multi-user.target.wants/venv-salt-minion.service → /usr/lib/systemd/system/venv-salt-minion.service.
-bootstrap complete-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;在 SUSE Manager Web UI 接受 Client 端&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;code&gt;[SUSE Manager]&lt;/code&gt; &amp;gt; &lt;code&gt;Salt&lt;/code&gt; &amp;gt; &lt;code&gt;Keys&lt;/code&gt; &amp;gt; &lt;code&gt;V&lt;/code&gt;，接受新的 Salt-Key 讓新用戶端系統進入 System 清單中。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJLHbah6h.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;
&lt;p&gt;System OverView 檢視新註冊的 Client 端&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;注意到，此時 Base Channel 以更變為 &lt;code&gt;SLE-Product-SLES15-SP5-Pool for x86_64&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-3"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1dfb626n.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Step5: 在 Client 端使用指令將 Service Pack 升級至 SP5&lt;span class="hx:absolute hx:-mt-20" id="step5-在-client-端使用指令將-service-pack-升級至-sp5"&gt;&lt;/span&gt;
&lt;a href="#step5-%e5%9c%a8-client-%e7%ab%af%e4%bd%bf%e7%94%a8%e6%8c%87%e4%bb%a4%e5%b0%87-service-pack-%e5%8d%87%e7%b4%9a%e8%87%b3-sp5" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;檢查 OS 和 Kernel 版本為 SLES SP1&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;在 Client 端執行以下命令&lt;/p&gt;
&lt;p&gt;查看 OS 版本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat /etc/os-release&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME=&amp;#34;SLES&amp;#34;
VERSION=&amp;#34;15-SP1&amp;#34;
VERSION_ID=&amp;#34;15.1&amp;#34;
PRETTY_NAME=&amp;#34;SUSE Linux Enterprise Server 15 SP1&amp;#34;
ID=&amp;#34;sles&amp;#34;
ID_LIKE=&amp;#34;suse&amp;#34;
ANSI_COLOR=&amp;#34;0;32&amp;#34;
CPE_NAME=&amp;#34;cpe:/o:suse:sles:15:sp1&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;查看 Kernel 版本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ uname -r&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;4.12.14-197.78-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="2"&gt;
&lt;li&gt;檢查 Package Repository 是否為 SP5 的版本&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper lr&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Repository priorities are without effect. All enabled repositories share the same priority.
# | Alias | Name | Enabled | GPG Check | Refresh
--&amp;#43;-----------------------------------------------------------------&amp;#43;---------------------------------------------------------&amp;#43;---------&amp;#43;-----------&amp;#43;--------
1 | SLES15-SP1-15.1-0 | SLES15-SP1-15.1-0 | No | ---- | ----
2 | susemanager:sle-manager-tools15-pool-x86_64-sp5 | SLE-Manager-Tools15-Pool for x86_64 SP5 | Yes | ( p) Yes | Yes
3 | susemanager:sle-manager-tools15-updates-x86_64-sp5 | SLE-Manager-Tools15-Updates for x86_64 SP5 | Yes | ( p) Yes | Yes
4 | susemanager:sle-module-basesystem15-sp5-pool-x86_64 | SLE-Module-Basesystem15-SP5-Pool for x86_64 | Yes | ( p) Yes | Yes
5 | susemanager:sle-module-basesystem15-sp5-updates-x86_64 | SLE-Module-Basesystem15-SP5-Updates for x86_64 | Yes | ( p) Yes | Yes
6 | susemanager:sle-module-server-applications15-sp5-pool-x86_64 | SLE-Module-Server-Applications15-SP5-Pool for x86_64 | Yes | ( p) Yes | Yes
7 | susemanager:sle-module-server-applications15-sp5-updates-x86_64 | SLE-Module-Server-Applications15-SP5-Updates for x86_64 | Yes | ( p) Yes | Yes
8 | susemanager:sle-product-sles15-sp5-pool-x86_64 | SLE-Product-SLES15-SP5-Pool for x86_64
| Yes | ( p) Yes | Yes
9 | susemanager:sle-product-sles15-sp5-updates-x86_64 | SLE-Product-SLES15-SP5-Updates for x86_64 | Yes | ( p) Yes | Yes&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;檢視所有可更新的套件&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper lu&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Loading repository data...
Reading installed packages...
S | Repository | Name | Current Version | Available Version | Arch
--&amp;#43;------------------------------------------------&amp;#43;------------------------------&amp;#43;----------------------------------&amp;#43;-----------------------------------------&amp;#43;-------
v | SLE-Module-Basesystem15-SP5-Pool for x86_64 | aaa_base | 84.87&amp;#43;git20180409.04c9dae-3.45.1 | 84.87&amp;#43;git20180409.04c9dae-150300.10.3.1 | x86_64
v | SLE-Module-Basesystem15-SP5-Pool for x86_64 | bash-completion | 2.7-4.3.1 | 2.7-150400.13.3.1 | noarch
v | SLE-Module-Basesystem15-SP5-Pool for x86_64 | bash-doc | 4.4-9.10.1 | 4.4-150400.25.22 | noarch
...以下省略&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="4"&gt;
&lt;li&gt;執行以下命令進行升級測試&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ZYPP_LOGFILE=/root/zypper-15sp5-test-upgrade.log sudo zypper -vv dup --details --dry-run --no-force-resolution --no-recommends --no-allow-vendor-change --no-allow-arch-change&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--dry-run&lt;/code&gt;，模擬升級過程軟體安裝是否有相依性或者其他錯誤，確認模擬升級測試成功，才開始運行升級指令。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;pre&gt;
...以上省略
CommitResult (total 355, done 0, &lt;font color=red&gt;error 0&lt;/font&gt;, skipped 355, updateMessages 0)
&lt;/pre&gt;
&lt;p&gt;Note:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;確認 error 為 0 再執行更新&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ZYPP_LOGFILE&lt;/code&gt;，設定 log 檔的絕對路徑和檔名&lt;/li&gt;
&lt;li&gt;如果有錯誤的詳細資訊可以檢視 ZYPP_LOGFILE 的內容&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;執行以下命令開始正式升級&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ ZYPP_LOGFILE=/root/zypper-15sp5-upgrade.log sudo zypper -vv dup --details --no-force-resolution --no-recommends --no-allow-vendor-change --no-allow-arch-change&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SJ5nYFpp3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;可以看到那些 packages 要升級\哪些會降級\哪些會新安裝\那些會移除
輸入「y」開始升級安裝&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
CommitResult (total 335, done 335, error 0, skipped 0, updateMessages 0)
...
Core libraries or services have been updated.
Reboot is required to ensure that your system benefits from these updates.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;重啟系統&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo reboot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;檢查 OS 和 Kernel 版本是否更新成功&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;查看 OS 版本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat /etc/os-release&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME=&amp;#34;SLES&amp;#34;
VERSION=&amp;#34;15-SP5&amp;#34;
VERSION_ID=&amp;#34;15.5&amp;#34;
PRETTY_NAME=&amp;#34;SUSE Linux Enterprise Server 15 SP5&amp;#34;
ID=&amp;#34;sles&amp;#34;
ID_LIKE=&amp;#34;suse&amp;#34;
ANSI_COLOR=&amp;#34;0;32&amp;#34;
CPE_NAME=&amp;#34;cpe:/o:suse:sles:15:sp5&amp;#34;
DOCUMENTATION_URL=&amp;#34;https://documentation.suse.com/&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;查看 Kernel 版本&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ uname -r&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;5.14.21-150500.55.19-default&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;在 SUSE Manager Web UI 上檢視&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJVvpK6an.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>Use SUSE Liberty Linux to update Red Hat Enterprise Linux 9</title><link>https://blog.kubeantony.com/archive/suse/use-suse-liberty-linux-to-update-red-hat-enterprise-linux-9/</link><pubDate>Fri, 18 Aug 2023 01:13:14 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/use-suse-liberty-linux-to-update-red-hat-enterprise-linux-9/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會採取 Step by Step 和 Screenshot 的方式介紹，&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如何透過 SUSE Liberty Linux 註冊和更新 Red Hat Enterprise Linux 9&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Introduction&lt;span class="hx:absolute hx:-mt-20" id="introduction"&gt;&lt;/span&gt;
&lt;a href="#introduction" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;SUSE Liberty Linux 是一款適用於混合 Linux 環境的技術和解決方案。&lt;strong&gt;使用 SUSE Liberty Linux 訂閱，可以註冊並接收 Red Hat Enterprise Linux 和 SUSE Linux Enterprise Server 的更新。&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;An optional High Availability extension is also available.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Note: CentOS Stream 沒有支援&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Red Hat Enterprise Linux 9 會透過 SUSE 的 Repository Mirroring Tool ( RMT ) Server 註冊。
&lt;ul&gt;
&lt;li&gt;可以把 RMT Server 認為它是 SUSE Customer Center 的代理系統。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;RMT Server 會向 SUSE Custom Center ( 客戶中心 ) 註冊和 Mirror SUSE Liberty Linux 的套件清單，而在網路中的其他系統則向 RMT Server 註冊，並直接從它那裡接收 Packgae ( 套件 )。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Requirements&lt;span class="hx:absolute hx:-mt-20" id="requirements"&gt;&lt;/span&gt;
&lt;a href="#requirements" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;有 SUSE Liberty Linux 的 subscription ( 訂閱 )&lt;/li&gt;
&lt;li&gt;有 SUSE Customer Center 的帳號&lt;/li&gt;
&lt;li&gt;要註冊的系統已經是最新的版本。因為 SUSE Liberty Linux 僅支援每個 RHEL 版本的最新發行版本。&lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise Server (SLES) 15 與要註冊的系統安裝和運行在同一網絡中。可以使用 SUSE Liberty Linux 訂閱來註冊 SLES。&lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise Server 有足夠的儲存空間可供 repository mirroring ( 鏡像儲存庫 )。下載的套件存放在 &lt;code&gt;/usr/share/rmt/public/repo&lt;/code&gt;，這是指向 &lt;code&gt;/var/lib/rmt/public/repo/&lt;/code&gt; 的 symbolic link ( 軟連結 )。所需的儲存空間取決於 mirror ( 鏡像 ) 的儲存庫數量。&lt;/li&gt;
&lt;li&gt;我們建議至少為所有已啟用版本庫總大小的 1.5 倍。截至最新發布日期，SUSE Liberty Linux 9 版本庫的大小約為 95 GB，如果需要 Source ( 源代碼 ) 和 Debug 版本庫，還需要額外的 185 GB。注意，這些 Package 儲存庫會隨著時間的推移而大幅增長。&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2&gt;Configuring the RMT server&lt;span class="hx:absolute hx:-mt-20" id="configuring-the-rmt-server"&gt;&lt;/span&gt;
&lt;a href="#configuring-the-rmt-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;REQUIREMENTS&lt;span class="hx:absolute hx:-mt-20" id="requirements-1"&gt;&lt;/span&gt;
&lt;a href="#requirements-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;已經裝好且是最新版的 SUSE Linux Enterprise Server 15。
&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://hackmd.io/@QI-AN/Install_SUSE_Linux_Enterprise_Server_15_SP5"target="_blank" rel="noopener"&gt;安裝 SUSE Linux Enterprise Server 15 筆記連結&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;有一個 SUSE Customer Center 的帳號和 organization credentials ( 組織憑證 )。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step1: 在 SUSE Linux Enterprise Server 15 上安裝 RMT Server&lt;span class="hx:absolute hx:-mt-20" id="step1-在-suse-linux-enterprise-server-15-上安裝-rmt-server"&gt;&lt;/span&gt;
&lt;a href="#step1-%e5%9c%a8-suse-linux-enterprise-server-15-%e4%b8%8a%e5%ae%89%e8%a3%9d-rmt-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper in -y rmt-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Step2: 在 YaST2 中啟動 rmt module&lt;span class="hx:absolute hx:-mt-20" id="step2-在-yast2-中啟動-rmt-module"&gt;&lt;/span&gt;
&lt;a href="#step2-%e5%9c%a8-yast2-%e4%b8%ad%e5%95%9f%e5%8b%95-rmt-module" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo yast2 rmt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Step3: 輸入 Organization Credentials ( 組織憑證 )，然後按 Next。&lt;span class="hx:absolute hx:-mt-20" id="step3-輸入-organization-credentials--組織憑證-然後按-next"&gt;&lt;/span&gt;
&lt;a href="#step3-%e8%bc%b8%e5%85%a5-organization-credentials--%e7%b5%84%e7%b9%94%e6%86%91%e8%ad%89-%e7%84%b6%e5%be%8c%e6%8c%89-next" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;帳號和密碼會放在 SUSE Customer Center 的 My Organization ( 選一個 ) -&amp;gt; Users -&amp;gt; Organization Credentials&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/HJTOfmDn3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Step4: 為新的 MariaDB 資料庫使用者輸入 Database Credentials ( 資料庫憑證 )，然後按 Next之後，新的使用者會被創建。&lt;span class="hx:absolute hx:-mt-20" id="step4-為新的-mariadb-資料庫使用者輸入-database-credentials--資料庫憑證-然後按-next之後新的使用者會被創建"&gt;&lt;/span&gt;
&lt;a href="#step4-%e7%82%ba%e6%96%b0%e7%9a%84-mariadb-%e8%b3%87%e6%96%99%e5%ba%ab%e4%bd%bf%e7%94%a8%e8%80%85%e8%bc%b8%e5%85%a5-database-credentials--%e8%b3%87%e6%96%99%e5%ba%ab%e6%86%91%e8%ad%89-%e7%84%b6%e5%be%8c%e6%8c%89-next%e4%b9%8b%e5%be%8c%e6%96%b0%e7%9a%84%e4%bd%bf%e7%94%a8%e8%80%85%e6%9c%83%e8%a2%ab%e5%89%b5%e5%bb%ba" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;使用者帳號 : &lt;code&gt;rmt&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;使用者密碼 : &lt;code&gt;rancher&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/Sy9yQQPnh.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Step5: 如果 MariaDB 的 root 使用者已經設定密碼，請輸入密碼，然後按下「OK」。&lt;span class="hx:absolute hx:-mt-20" id="step5-如果-mariadb-的-root-使用者已經設定密碼請輸入密碼然後按下ok"&gt;&lt;/span&gt;
&lt;a href="#step5-%e5%a6%82%e6%9e%9c-mariadb-%e7%9a%84-root-%e4%bd%bf%e7%94%a8%e8%80%85%e5%b7%b2%e7%b6%93%e8%a8%ad%e5%ae%9a%e5%af%86%e7%a2%bc%e8%ab%8b%e8%bc%b8%e5%85%a5%e5%af%86%e7%a2%bc%e7%84%b6%e5%be%8c%e6%8c%89%e4%b8%8bok" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;如果 MariaDB 的 root 使用者沒有設定密碼，請輸入新密碼，並確認新密碼，然後按下「OK」。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;New MariaDB root Password: &lt;code&gt;rancher&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Confirm Password: &lt;code&gt;rancher&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1ZMS7w3h.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Step6: 輸入 SSL 憑證的 Common Name，然後按 Next。&lt;span class="hx:absolute hx:-mt-20" id="step6-輸入-ssl-憑證的-common-name然後按-next"&gt;&lt;/span&gt;
&lt;a href="#step6-%e8%bc%b8%e5%85%a5-ssl-%e6%86%91%e8%ad%89%e7%9a%84-common-name%e7%84%b6%e5%be%8c%e6%8c%89-next" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Common Name: &lt;code&gt;rmt-server.example.com&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Common Name 是伺服器的 FQDN ( 完整網域名稱 )。&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1WT9Uv23.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Step7: 輸入並確認 CA 私鑰的密碼，然後按「OK」。&lt;span class="hx:absolute hx:-mt-20" id="step7-輸入並確認-ca-私鑰的密碼然後按ok"&gt;&lt;/span&gt;
&lt;a href="#step7-%e8%bc%b8%e5%85%a5%e4%b8%a6%e7%a2%ba%e8%aa%8d-ca-%e7%a7%81%e9%91%b0%e7%9a%84%e5%af%86%e7%a2%bc%e7%84%b6%e5%be%8c%e6%8c%89ok" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Password: &lt;code&gt;rancher&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Confirm Password: &lt;code&gt;rancher&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/B10DnNP33.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Step8: 如果有啟用 &lt;code&gt;firewalld&lt;/code&gt;，要打開 HTTP 和 HTTPS 的防火牆 ports，沒有的話選 &amp;ldquo;Next&amp;rdquo;。&lt;span class="hx:absolute hx:-mt-20" id="step8-如果有啟用-firewalld要打開-http-和-https-的防火牆-ports沒有的話選-next"&gt;&lt;/span&gt;
&lt;a href="#step8-%e5%a6%82%e6%9e%9c%e6%9c%89%e5%95%9f%e7%94%a8-firewalld%e8%a6%81%e6%89%93%e9%96%8b-http-%e5%92%8c-https-%e7%9a%84%e9%98%b2%e7%81%ab%e7%89%86-ports%e6%b2%92%e6%9c%89%e7%9a%84%e8%a9%b1%e9%81%b8-next" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryQZ6VDh3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Step9: YaST2 會顯示 RMT Service 的狀態，按 &amp;ldquo;Next&amp;rdquo;。&lt;span class="hx:absolute hx:-mt-20" id="step9-yast2-會顯示-rmt-service-的狀態按-next"&gt;&lt;/span&gt;
&lt;a href="#step9-yast2-%e6%9c%83%e9%a1%af%e7%a4%ba-rmt-service-%e7%9a%84%e7%8b%80%e6%85%8b%e6%8c%89-next" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ry5dpVDn2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h3&gt;Step10: 檢查 RMT 設定檔的資訊有無錯誤，然後選擇 &amp;ldquo;Finish&amp;rdquo; 關閉 YaST2。&lt;span class="hx:absolute hx:-mt-20" id="step10-檢查-rmt-設定檔的資訊有無錯誤然後選擇-finish-關閉-yast2"&gt;&lt;/span&gt;
&lt;a href="#step10-%e6%aa%a2%e6%9f%a5-rmt-%e8%a8%ad%e5%ae%9a%e6%aa%94%e7%9a%84%e8%b3%87%e8%a8%8a%e6%9c%89%e7%84%a1%e9%8c%af%e8%aa%a4%e7%84%b6%e5%be%8c%e9%81%b8%e6%93%87-finish-%e9%97%9c%e9%96%89-yast2" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/S1LyjLD33.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2&gt;Mirroring SUSE Liberty Linux repositories with RMT&lt;span class="hx:absolute hx:-mt-20" id="mirroring-suse-liberty-linux-repositories-with-rmt"&gt;&lt;/span&gt;
&lt;a href="#mirroring-suse-liberty-linux-repositories-with-rmt" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;REQUIREMENTS&lt;span class="hx:absolute hx:-mt-20" id="requirements-2"&gt;&lt;/span&gt;
&lt;a href="#requirements-2" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;上一個章節「Configuring the RMT server」已完成。&lt;/li&gt;
&lt;li&gt;RMT Server 有足夠的儲存空間可以 Mirror 儲存庫。&lt;/li&gt;
&lt;li&gt;organization credentials ( 組織憑證 ) 已正確顯示在 &lt;code&gt;/etc/rmt.conf&lt;/code&gt; 檔案中。&lt;/li&gt;
&lt;li&gt;在 SUSE Custom Center 已啟用 SUSE Liberty Linux 訂閱。
&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://hackmd.io/@QI-AN/activate-SUSE-Liberty-Linux-subscription-in-SCC"target="_blank" rel="noopener"&gt;啟用 SUSE Liberty Linux 訂閱筆記連結&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step1: 在 RMT Server 上，更新可以用的 Product ( 產品 ) 和 Repository ( 儲存庫 )的 metadata。&lt;span class="hx:absolute hx:-mt-20" id="step1-在-rmt-server-上更新可以用的-product--產品--和-repository--儲存庫-的-metadata"&gt;&lt;/span&gt;
&lt;a href="#step1-%e5%9c%a8-rmt-server-%e4%b8%8a%e6%9b%b4%e6%96%b0%e5%8f%af%e4%bb%a5%e7%94%a8%e7%9a%84-product--%e7%94%a2%e5%93%81--%e5%92%8c-repository--%e5%84%b2%e5%ad%98%e5%ba%ab-%e7%9a%84-metadata" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli sync&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;此步驟會需要網路，到 SCC 上下載資料，沒有網路的話不會噴錯，所以要特別注意&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/sles/15-SP5/html/SLES-all/cha-rmt-mirroring.html#sec-rmt-mirroring-export-import"target="_blank" rel="noopener"&gt;Offline 或其他的 mirror 方法連結 - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;I, [2023-08-14T13:55:12.070503 #7894] INFO -- : Downloading data from SCC
I, [2023-08-14T13:55:12.070633 #7894] INFO -- : Updating products
I, [2023-08-14T13:56:23.357512 #7894] INFO -- : Updating repositories
I, [2023-08-14T13:56:34.686989 #7894] INFO -- : Updating subscriptions&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;同步也會由 &lt;code&gt;rmt-server-sync.timer&lt;/code&gt; 自動執行。可以執行以下命令檢查狀態和下次排程同步時間：&lt;span class="hx:absolute hx:-mt-20" id="同步也會由-rmt-server-synctimer-自動執行可以執行以下命令檢查狀態和下次排程同步時間"&gt;&lt;/span&gt;
&lt;a href="#%e5%90%8c%e6%ad%a5%e4%b9%9f%e6%9c%83%e7%94%b1-rmt-server-synctimer-%e8%87%aa%e5%8b%95%e5%9f%b7%e8%a1%8c%e5%8f%af%e4%bb%a5%e5%9f%b7%e8%a1%8c%e4%bb%a5%e4%b8%8b%e5%91%bd%e4%bb%a4%e6%aa%a2%e6%9f%a5%e7%8b%80%e6%85%8b%e5%92%8c%e4%b8%8b%e6%ac%a1%e6%8e%92%e7%a8%8b%e5%90%8c%e6%ad%a5%e6%99%82%e9%96%93" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo systemctl status rmt-server-sync.timer&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;pre&gt;
● rmt-server-sync.timer - RMT Sync timer
Loaded: loaded (/usr/lib/systemd/system/rmt-server-sync.timer; enabled; vendor preset: disabled)
&lt;font color=gree&gt;Active: active (waiting)&lt;/font&gt; since Mon 2023-08-14 13:35:48 CST; 23min ago
Trigger: Tue 2023-08-15 06:39:14 CST; 16h left
Triggers: ● rmt-server-sync.service
Aug 14 13:35:48 rmt-server systemd[1]: Started RMT Sync timer.
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Step2: enable SUSE Liberty Linux using the product ID 2538&lt;span class="hx:absolute hx:-mt-20" id="step2-enable-suse-liberty-linux-using-the-product-id-2538"&gt;&lt;/span&gt;
&lt;a href="#step2-enable-suse-liberty-linux-using-the-product-id-2538" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli product enable 2538&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;rhel8 的 product ID 是 &lt;code&gt;1921&lt;/code&gt;， High Availability extension 是 &lt;code&gt;1922&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Found product by target 2538: SUSE Liberty Linux 9 x86_64.
Enabling SUSE Liberty Linux 9 x86_64:
SUSE Liberty Linux 9 x86_64:
Enabled repository SLL-9-Updates.
Enabled repository SLL-AS-9-Updates.
Enabled repository SLL-CB-9-Updates.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;如果在執行完以上命令後有遇到以下錯誤訊息&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Product by ID 2538 not found.
Product 2538 could not be found and was not enabled.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;請確定註冊 RMT Server 的組織是否有 SUSE Liberty Linux 的 subscription&lt;/li&gt;
&lt;li&gt;如果有的話，請執行以下命令 &lt;code&gt;sudo systemctl restart rmt-server-sync.timer &amp;amp;&amp;amp; sudo rmt-cli sync&lt;/code&gt;，讓它重新 Update 資料。&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;Step3: If your subscription includes the High Availability extension, enable the extension using the product ID 2539&lt;span class="hx:absolute hx:-mt-20" id="step3-if-your-subscription-includes-the-high-availability-extension-enable-the-extension-using-the-product-id-2539"&gt;&lt;/span&gt;
&lt;a href="#step3-if-your-subscription-includes-the-high-availability-extension-enable-the-extension-using-the-product-id-2539" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ rmt-cli product enable 2539&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;h4&gt;執行以下命令可以檢查組織的訂閱有無包含 &lt;code&gt;High Availability extension&lt;/code&gt;&lt;span class="hx:absolute hx:-mt-20" id="執行以下命令可以檢查組織的訂閱有無包含-high-availability-extension"&gt;&lt;/span&gt;
&lt;a href="#%e5%9f%b7%e8%a1%8c%e4%bb%a5%e4%b8%8b%e5%91%bd%e4%bb%a4%e5%8f%af%e4%bb%a5%e6%aa%a2%e6%9f%a5%e7%b5%84%e7%b9%94%e7%9a%84%e8%a8%82%e9%96%b1%e6%9c%89%e7%84%a1%e5%8c%85%e5%90%ab-high-availability-extension" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli products list --all --name=&amp;#34;Liberty Linux&amp;#34; --version=9&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;如果沒有包含 2539 可以跳過本步驟&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Step4: If you also need the &lt;code&gt;Source&lt;/code&gt; or &lt;code&gt;Debug&lt;/code&gt; repositories, find and enable them with the following commands&lt;span class="hx:absolute hx:-mt-20" id="step4-if-you-also-need-the-source-or-debug-repositories-find-and-enable-them-with-the-following-commands"&gt;&lt;/span&gt;
&lt;a href="#step4-if-you-also-need-the-source-or-debug-repositories-find-and-enable-them-with-the-following-commands" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli repo list --all | grep SLL-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;| 5965 | SLL-9-Debug-Updates for x86_64 | Not Mandatory | Don&amp;#39;t Mirror |
| 5964 | SLL-9-Source-Updates for x86_64 | Not Mandatory | Don&amp;#39;t Mirror |
| 5963 | SLL-9-Updates for x86_64 | Mandatory | Mirror |
| 5968 | SLL-AS-9-Debug-Updates for x86_64 | Not Mandatory | Don&amp;#39;t Mirror |
| 5967 | SLL-AS-9-Source-Updates for x86_64 | Not Mandatory | Don&amp;#39;t Mirror |
| 5966 | SLL-AS-9-Updates for x86_64 | Mandatory | Mirror |
| 5971 | SLL-CB-9-Debug-Updates for x86_64 | Not Mandatory | Don&amp;#39;t Mirror |
| 5970 | SLL-CB-9-Source-Updates for x86_64 | Not Mandatory | Don&amp;#39;t Mirror |
| 5969 | SLL-CB-9-Updates for x86_64 | Mandatory | Mirror |&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Enable Source or Debug repositories&lt;span class="hx:absolute hx:-mt-20" id="enable-source-or-debug-repositories"&gt;&lt;/span&gt;
&lt;a href="#enable-source-or-debug-repositories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli repo enable REPO_ID&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Step5: Start package mirroring for the enabled repositories&lt;span class="hx:absolute hx:-mt-20" id="step5-start-package-mirroring-for-the-enabled-repositories"&gt;&lt;/span&gt;
&lt;a href="#step5-start-package-mirroring-for-the-enabled-repositories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo rmt-cli mirror&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;大概會需要 2 個小時&lt;/li&gt;
&lt;li&gt;可用的儲存空間至少要有 150 GiB&lt;/li&gt;
&lt;li&gt;如果網路不好可能會需要重新執行幾次這行命令&lt;/li&gt;
&lt;li&gt;最後正確的螢幕輸出如下&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-2"&gt;
&lt;pre&gt;
I, [2023-08-15T15:27:03.785553 #1558] INFO -- : Mirroring SUSE Manager product tree to /usr/share/rmt/public/suma/
I, [2023-08-15T15:27:35.831000 #1558] INFO -- : ↓ product_tree.json
I, [2023-08-15T15:27:35.893025 #1558] INFO -- : Mirroring repository SLL-9-Updates to /usr/share/rmt/public/repo/SUSE/Updates/SLL/9/x86_64/update/
I, [2023-08-15T15:27:37.793159 #1558] INFO -- : → repomd.xml
I, [2023-08-15T15:27:38.678644 #1558] INFO -- : → repomd.xml.asc
I, [2023-08-15T15:27:39.587719 #1558] INFO -- : → repomd.xml.key
I, [2023-08-15T15:27:41.667986 #1558] INFO -- : → primary.xml.gz
I, [2023-08-15T15:27:41.791883 #1558] INFO -- : → filelists.xml.gz
I, [2023-08-15T15:27:41.875650 #1558] INFO -- : → other.xml.gz
I, [2023-08-15T15:27:41.892160 #1558] INFO -- : → comps.xml
I, [2023-08-15T15:27:41.902849 #1558] INFO -- : → comps.xml.gz
I, [2023-08-15T15:27:41.926459 #1558] INFO -- : → updateinfo.xml.gz
I, [2023-08-15T15:27:55.762715 #1558] INFO -- : Mirroring repository SLL-AS-9-Updates to /usr/share/rmt/public/repo/SUSE/Updates/SLL-AS/9/x86_64/update/
I, [2023-08-15T15:27:57.606671 #1558] INFO -- : → repomd.xml
I, [2023-08-15T15:27:58.538643 #1558] INFO -- : → repomd.xml.asc
I, [2023-08-15T15:27:59.442143 #1558] INFO -- : → repomd.xml.key
I, [2023-08-15T15:28:01.309343 #1558] INFO -- : → primary.xml.gz
I, [2023-08-15T15:28:01.426422 #1558] INFO -- : → filelists.xml.gz
I, [2023-08-15T15:28:01.452798 #1558] INFO -- : → other.xml.gz
I, [2023-08-15T15:28:01.476978 #1558] INFO -- : → comps.xml
I, [2023-08-15T15:28:01.490309 #1558] INFO -- : → comps.xml.gz
I, [2023-08-15T15:28:01.492242 #1558] INFO -- : → modules.yaml.gz
I, [2023-08-15T15:28:01.501528 #1558] INFO -- : → updateinfo.xml.gz
I, [2023-08-15T15:28:15.805530 #1558] INFO -- : Mirroring repository SLL-CB-9-Updates to /usr/share/rmt/public/repo/SUSE/Updates/SLL-CB/9/x86_64/update/
I, [2023-08-15T15:28:17.624244 #1558] INFO -- : ↓ repomd.xml
I, [2023-08-15T15:28:18.523775 #1558] INFO -- : ↓ repomd.xml.asc
I, [2023-08-15T15:28:19.421876 #1558] INFO -- : ↓ repomd.xml.key
I, [2023-08-15T15:28:20.489766 #1558] INFO -- : ↓ primary.xml.gz
I, [2023-08-15T15:28:20.495701 #1558] INFO -- : ↓ updateinfo.xml.gz
I, [2023-08-15T15:28:20.778624 #1558] INFO -- : ↓ other.xml.gz
I, [2023-08-15T15:28:20.909967 #1558] INFO -- : ↓ filelists.xml.gz
I, [2023-08-15T15:33:32.340497 #1558] INFO -- : ↓ dotnet-sdk-6.0-source-built-artifacts-6.0.109-3.el9.x86_64.rpm
I, [2023-08-15T15:33:33.374851 #1558] INFO -- : &lt;font color=green&gt;Mirroring complete.&lt;/font&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2&gt;Registering RHEL with RMT&lt;span class="hx:absolute hx:-mt-20" id="registering-rhel-with-rmt"&gt;&lt;/span&gt;
&lt;a href="#registering-rhel-with-rmt" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Note: CentOS Stream is not supported.&lt;/p&gt;
&lt;h3&gt;REQUIREMENTS&lt;span class="hx:absolute hx:-mt-20" id="requirements-3"&gt;&lt;/span&gt;
&lt;a href="#requirements-3" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;已完成「Configuring the RMT server」章節。&lt;/li&gt;
&lt;li&gt;已完成「Mirroring SUSE Liberty Linux repositories with RMT」章節。&lt;/li&gt;
&lt;li&gt;RMT Server 正在執行 rmt-server 版本 2.10 或更新版本。&lt;/li&gt;
&lt;li&gt;要註冊的系統可以 Access RMT Server。&lt;/li&gt;
&lt;li&gt;要註冊的系統正在執行 RHEL 9 的最新發行版本。&lt;/li&gt;
&lt;li&gt;在 SUSE Custom Center 已啟用 SUSE Liberty Linux 訂閱。&lt;/li&gt;
&lt;li&gt;準備一個沒有訂閱過 Red Hat subscription services 的 Red Hat Enterprise Linux。
&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://www.linuxtechi.com/how-to-install-rhel-9-step-by-step/"target="_blank" rel="noopener"&gt;How to Install RHEL 9 Step by Step with Screenshots - 安裝 RHEL 9 參考文章&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Step1: 在 RHEL 系統上, 下載 &lt;code&gt;rmt-client-setup-res&lt;/code&gt; script&lt;span class="hx:absolute hx:-mt-20" id="step1-在-rhel-系統上-下載-rmt-client-setup-res-script"&gt;&lt;/span&gt;
&lt;a href="#step1-%e5%9c%a8-rhel-%e7%b3%bb%e7%b5%b1%e4%b8%8a-%e4%b8%8b%e8%bc%89-rmt-client-setup-res-script" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ curl http://rmt-server.example.com/tools/rmt-client-setup-res --output rmt-client-setup-res&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;RMT Server 的 FQDN 需要自行設定&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h3&gt;Step2: 使用 RMT Server 的 URL 作為參數並執行 &lt;code&gt;rmt-client-setup-res&lt;/code&gt; 腳本&lt;span class="hx:absolute hx:-mt-20" id="step2-使用-rmt-server-的-url-作為參數並執行-rmt-client-setup-res-腳本"&gt;&lt;/span&gt;
&lt;a href="#step2-%e4%bd%bf%e7%94%a8-rmt-server-%e7%9a%84-url-%e4%bd%9c%e7%82%ba%e5%8f%83%e6%95%b8%e4%b8%a6%e5%9f%b7%e8%a1%8c-rmt-client-setup-res-%e8%85%b3%e6%9c%ac" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo sh rmt-client-setup-res https://rmt-server.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;RMT Server 的 FQDN 需要自行設定&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;pre&gt;
...以上省略
&lt;font color=gree&gt;Successfully registered system&lt;/font&gt;
&lt;/pre&gt;
&lt;blockquote&gt;
&lt;p&gt;如果在執行完以上命令後有遇到以下錯誤訊息&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Your Registration Proxy server doesn&amp;#39;t support this function. Please update it and try again.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;請執行以下命令檢視 log 檔&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ cat /var/log/nginx/rmt_https_error.log&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;查看是否有類似以下錯誤訊息&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2023/08/16 17:48:10 [error] 1309#1309: *29 &amp;#34;/usr/share/rmt/public/repo/keys/index.html&amp;#34; is not found (2: No such file or directory), client: cidr, server: rmt, request: &amp;#34;GET /repo/keys/ HTTP/1.1&amp;#34;, host: &amp;#34;rmt_server_domain&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;如果是的話，請執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo chown &amp;#39;_rmt&amp;#39;:&amp;#34;nginx&amp;#34; /usr/share/rmt/config/secrets.yml.key&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;再到 Client 端，重新註冊一次應該就會成功了。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;Step3: 確認已安裝的 product 是否有註冊成功&lt;span class="hx:absolute hx:-mt-20" id="step3-確認已安裝的-product-是否有註冊成功"&gt;&lt;/span&gt;
&lt;a href="#step3-%e7%a2%ba%e8%aa%8d%e5%b7%b2%e5%ae%89%e8%a3%9d%e7%9a%84-product-%e6%98%af%e5%90%a6%e6%9c%89%e8%a8%bb%e5%86%8a%e6%88%90%e5%8a%9f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo SUSEConnect --status-text&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;------------------------------------------
SUSE Liberty Linux release file
(SLL/9/x86_64)
Registered
------------------------------------------&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Step4: 確認可用的 Repositories&lt;span class="hx:absolute hx:-mt-20" id="step4-確認可用的-repositories"&gt;&lt;/span&gt;
&lt;a href="#step4-%e7%a2%ba%e8%aa%8d%e5%8f%af%e7%94%a8%e7%9a%84-repositories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo dnf repolist&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered with an entitlement server. You can use subscription-manager to register.
repo id repo name
SUSE_Liberty_Linux_x86_64:SLL-9-Updates SLL-9-Updates
SUSE_Liberty_Linux_x86_64:SLL-AS-9-Updates SLL-AS-9-Updates
SUSE_Liberty_Linux_x86_64:SLL-CB-9-Updates SLL-CB-9-Updates&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;You should see &lt;code&gt;SLL-9-Updates&lt;/code&gt;, &lt;code&gt;SLL-AS-9-Updates&lt;/code&gt;, and &lt;code&gt;SLL-CB-9-Updates&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;If your subscription includes the High Availability extension, activate it with the following command:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ SUSEConnect -p SLL-HA/9/x86_64&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;To check whether the extension is available, run the &lt;code&gt;SUSEConnect --list-extensions&lt;/code&gt; command.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h3&gt;Step5: 執行以下更新命令，確認可以順利更新&lt;span class="hx:absolute hx:-mt-20" id="step5-執行以下更新命令確認可以順利更新"&gt;&lt;/span&gt;
&lt;a href="#step5-%e5%9f%b7%e8%a1%8c%e4%bb%a5%e4%b8%8b%e6%9b%b4%e6%96%b0%e5%91%bd%e4%bb%a4%e7%a2%ba%e8%aa%8d%e5%8f%af%e4%bb%a5%e9%a0%86%e5%88%a9%e6%9b%b4%e6%96%b0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo dnf update -y&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...以上省略
Complete!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2&gt;參考文章&lt;span class="hx:absolute hx:-mt-20" id="參考文章"&gt;&lt;/span&gt;
&lt;a href="#%e5%8f%83%e8%80%83%e6%96%87%e7%ab%a0" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/liberty/9/html/quickstart/index.html"target="_blank" rel="noopener"&gt;SUSE Liberty Linux Registering RHEL 9 - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/sles/15-SP5/html/SLES-all/cha-rmt-mirroring.html#sec-rmt-mirroring-export-import"target="_blank" rel="noopener"&gt;Mirroring repositories on the RMT server - SUSE Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>在 SUSE Custom Center 啟用 SUSE Liberty Linux 訂閱</title><link>https://blog.kubeantony.com/archive/suse/%E5%9C%A8-suse-custom-center-%E5%95%9F%E7%94%A8-suse-liberty-linux-%E8%A8%82%E9%96%B1/</link><pubDate>Mon, 14 Aug 2023 09:39:14 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/%E5%9C%A8-suse-custom-center-%E5%95%9F%E7%94%A8-suse-liberty-linux-%E8%A8%82%E9%96%B1/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
.indent-title-2{
margin-left: 2em;
}
.indent-title-3{
margin-left: 3em;
}
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章會介紹，&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如何在 SUSE Custom Center 啟用 SUSE Liberty Linux 訂閱&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;啟用 SUSE Liberty Linux 訂閱&lt;span class="hx:absolute hx:-mt-20" id="啟用-suse-liberty-linux-訂閱"&gt;&lt;/span&gt;
&lt;a href="#%e5%95%9f%e7%94%a8-suse-liberty-linux-%e8%a8%82%e9%96%b1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;連線到 &lt;a
href="https://scc.suse.com/"target="_blank" rel="noopener"&gt;SUSE Customer Center&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;登入帳號&lt;/li&gt;
&lt;li&gt;在左側菜單的 &amp;ldquo;INTERNAL TOOLS&amp;rdquo; 底下，點選 &amp;ldquo;Products&amp;rdquo;&lt;/li&gt;
&lt;li&gt;在上方搜尋欄，輸入 : &lt;code&gt;SUSE Liberty Linux&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/SkC9SBP22.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="5"&gt;
&lt;li&gt;點擊 &amp;ldquo;SUSE Liberty Linux&amp;rdquo; -&amp;gt; &amp;ldquo;x86_64&amp;rdquo; -&amp;gt; &amp;ldquo;Employee subscriptions&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/ryEchrv2n.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="6"&gt;
&lt;li&gt;點擊 &amp;ldquo;Generate registration code&amp;rdquo;，產生註冊的代碼&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BkBwLBw2n.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="7"&gt;
&lt;li&gt;點擊 &amp;ldquo;Don&amp;rsquo;t forget to activate this subscription on one of your organizations.&amp;rdquo; 連結&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;7-1. 勾選 &amp;ldquo;I accept the terms and conditions&amp;rdquo;
7-2. 點擊 &amp;ldquo;Manually Activate Subscription&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/r1veKBDh3.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="8"&gt;
&lt;li&gt;選擇要訂閱的組織後，按 &amp;ldquo;Activate&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/BygWm8_Dn2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;ol start="9"&gt;
&lt;li&gt;檢視已啟動的訂閱&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="indent-title-2"&gt;
&lt;p&gt;9-1. 點擊 My Organization ( 選一個 )
9-2. 點擊 &amp;ldquo;Subscriptions&amp;rdquo;&lt;/p&gt;
&lt;p&gt;此時就會看到 SUSE Liberty Linux 的訂閱&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.kubeantony.com/images/hackmd-uploads/rJztiSvnn.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>SUSE - 實作面試</title><link>https://blog.kubeantony.com/archive/suse/suse-%E5%AF%A6%E4%BD%9C%E9%9D%A2%E8%A9%A6/</link><pubDate>Tue, 06 Jun 2023 05:45:58 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/suse-%E5%AF%A6%E4%BD%9C%E9%9D%A2%E8%A9%A6/</guid><description>
&lt;h2&gt;題目&lt;span class="hx:absolute hx:-mt-20" id="題目"&gt;&lt;/span&gt;
&lt;a href="#%e9%a1%8c%e7%9b%ae" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;安裝 Rancher 與 K8S 叢集，Rancher 版本為 2.7.1, K8S 為 1.23，CRI 為 RKE2，CNI 為 Calico。&lt;/li&gt;
&lt;li&gt;安裝 NeuVector 在 K8S Cluster 中，版本為 5.1.1，CRI 要改為 K3S。&lt;/li&gt;
&lt;li&gt;將 NFS 的空間用三顆 disk 組成 LVM 後，再透過 NFS share出來給環境使用。&lt;/li&gt;
&lt;li&gt;將 Kubernetes、MySQL Cluster NDB 、異地備援專題的實作建立於 K8S Cluster 中。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;解答&lt;span class="hx:absolute hx:-mt-20" id="解答"&gt;&lt;/span&gt;
&lt;a href="#%e8%a7%a3%e7%ad%94" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;Lab 環境介紹&lt;span class="hx:absolute hx:-mt-20" id="lab-環境介紹"&gt;&lt;/span&gt;
&lt;a href="#lab-%e7%92%b0%e5%a2%83%e4%bb%8b%e7%b4%b9" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;dns-nfs: &lt;code&gt;192.168.0.31&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;rsm1: &lt;code&gt;192.168.0.32&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;rke2-1: &lt;code&gt;192.168.0.33&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;rke2-2: &lt;code&gt;192.168.0.34&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;DNS: &lt;code&gt;192.168.0.31&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Hosts must add
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;192.168.0.32 rancher.example.com&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/nLZz9hR.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;Install DNS&lt;span class="hx:absolute hx:-mt-20" id="install-dns"&gt;&lt;/span&gt;
&lt;a href="#install-dns" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo zypper in -t pattern dhcp_dns_server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;install, in&lt;/code&gt; ，Install packages.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-t, --type &amp;lt;TYPE&amp;gt;&lt;/code&gt;，Type of package (package, patch, pattern, product).
&lt;ul&gt;
&lt;li&gt;pattern means &lt;code&gt;a group of software packages.&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;login&lt;span class="hx:absolute hx:-mt-20" id="login"&gt;&lt;/span&gt;
&lt;a href="#login" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;gt; ssh rancher@192.168.0.32&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;下載安裝 Rancher 的程式&lt;span class="hx:absolute hx:-mt-20" id="下載安裝-rancher-的程式"&gt;&lt;/span&gt;
&lt;a href="#%e4%b8%8b%e8%bc%89%e5%ae%89%e8%a3%9d-rancher-%e7%9a%84%e7%a8%8b%e5%bc%8f" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; curl -sfL https://get.rke2.io --output install.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;賦予執行的權限&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; chmod &amp;#43;x install.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;config rke2 basic parameters&lt;span class="hx:absolute hx:-mt-20" id="config-rke2-basic-parameters"&gt;&lt;/span&gt;
&lt;a href="#config-rke2-basic-parameters" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;建立 Rancher rke2 的目錄&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo mkdir -p /etc/rancher/rke2/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;編輯 yaml 檔&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo nano /etc/rancher/rke2/config.yaml&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檔案內容&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;node-name:
- &amp;#34;rsm1&amp;#34;
token: my-shared-secret&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;install rke2 with 1.23.9&lt;span class="hx:absolute hx:-mt-20" id="install-rke2-with-1239"&gt;&lt;/span&gt;
&lt;a href="#install-rke2-with-1239" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo INSTALL_RKE2_CHANNEL=v1.23.9&amp;#43;rke2r1 ./install.sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;[WARN] /usr/local is read-only or a mount point; installing to /opt/rke2
[INFO] finding release for channel v1.23.9&amp;#43;rke2r1
[INFO] using v1.23.9&amp;#43;rke2r1 as release
[INFO] downloading checksums at https://github.com/rancher/rke2/releases/download/v1.23.9&amp;#43;rke2r1/sha256sum-amd64.txt
[INFO] downloading tarball at https://github.com/rancher/rke2/releases/download/v1.23.9&amp;#43;rke2r1/rke2.linux-amd64.tar.gz
[INFO] verifying tarball
[INFO] unpacking tarball file to /opt/rke2
[INFO] updating tarball contents to reflect install path
[INFO] moving systemd units to /etc/systemd/system
[INFO] install complete; you may want to run: export PATH=$PATH:/opt/rke2/bin&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;將 &lt;code&gt;/opt/rke2/bin&lt;/code&gt; 加到 PATH 環境變數&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; export PATH=$PATH:/opt/rke2/bin&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;enable rke2 and setup kubeconfig&lt;span class="hx:absolute hx:-mt-20" id="enable-rke2-and-setup-kubeconfig"&gt;&lt;/span&gt;
&lt;a href="#enable-rke2-and-setup-kubeconfig" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo systemctl enable rke2-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Created symlink /etc/systemd/system/multi-user.target.wants/rke2-server.service → /etc/systemd/system/rke2-server.service.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;啟動 rke2-server&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo systemctl start rke2-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;將當前使用者設為 Rancher 管理員&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; mkdir .kube
~&amp;gt; sudo cp /etc/rancher/rke2/rke2.yaml .kube/config
~&amp;gt; sudo chown rancher .kube/config&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;將 kubectl 複製到 &lt;code&gt;/usr/local/bin/&lt;/code&gt; 目錄下&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo cp /var/lib/rancher/rke2/bin/kubectl /usr/local/bin/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;check pod status&lt;span class="hx:absolute hx:-mt-20" id="check-pod-status"&gt;&lt;/span&gt;
&lt;a href="#check-pod-status" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; kubectl get po -A&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system cloud-controller-manager-rsm1 1/1 Running 0 34m
kube-system etcd-rsm1 1/1 Running 0 35m
kube-system helm-install-rke2-canal-lqg7v 0/1 Completed 0 35m
kube-system helm-install-rke2-coredns-4pqwm 0/1 Completed 0 35m
kube-system helm-install-rke2-ingress-nginx-g8q7r 0/1 Completed 0 35m
kube-system helm-install-rke2-metrics-server-5spzg 0/1 Completed 0 35m
kube-system kube-apiserver-rsm1 1/1 Running 0 34m
kube-system kube-controller-manager-rsm1 1/1 Running 0 34m
kube-system kube-proxy-rsm1 1/1 Running 0 34m
kube-system kube-scheduler-rsm1 1/1 Running 0 34m
kube-system rke2-canal-b5vhg 2/2 Running 0 34m
kube-system rke2-coredns-rke2-coredns-545d64676-x4nbx 1/1 Running 0 34m
kube-system rke2-coredns-rke2-coredns-autoscaler-5dd676f5c7-lc9gf 1/1 Running 0 34m
kube-system rke2-ingress-nginx-controller-b2txr 1/1 Running 0 34m
kube-system rke2-metrics-server-6564db4569-7t5rk 1/1 Running 0 34m&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;install helm3&lt;span class="hx:absolute hx:-mt-20" id="install-helm3"&gt;&lt;/span&gt;
&lt;a href="#install-helm3" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;下載 helm3&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; wget https://get.helm.sh/helm-v3.8.2-linux-amd64.tar.gz&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;--2023-03-07 02:40:48-- https://get.helm.sh/helm-v3.8.2-linux-amd64.tar.gz
Resolving get.helm.sh (get.helm.sh)... 152.199.39.108, 2606:2800:247:1cb7:261b:1f9c:2074:3c
Connecting to get.helm.sh (get.helm.sh)|152.199.39.108|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 13633605 (13M) [application/x-tar]
Saving to: ‘helm-v3.8.2-linux-amd64.tar.gz’
helm-v3.8.2-linux-amd64.t 100%[=====================================&amp;gt;] 13.00M 10.6MB/s in 1.2s
2023-03-07 02:40:50 (10.6 MB/s) - ‘helm-v3.8.2-linux-amd64.tar.gz’ saved [13633605/13633605]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;解壓縮 helm3&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; tar zxvf helm-v3.8.2-linux-amd64.tar.gz&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;linux-amd64/
linux-amd64/helm
linux-amd64/LICENSE
linux-amd64/README.md&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;將 helm 拷貝至 &lt;code&gt;/usr/local/bin/&lt;/code&gt; 目錄下&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo cp linux-amd64/helm /usr/local/bin/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;install rancher and cert-manager&lt;span class="hx:absolute hx:-mt-20" id="install-rancher-and-cert-manager"&gt;&lt;/span&gt;
&lt;a href="#install-rancher-and-cert-manager" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; helm repo add rancher-stable https://releases.rancher.com/server-charts/stable
&amp;#34;rancher-stable&amp;#34; has been added to your repositories&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;#34;rancher-stable&amp;#34; has been added to your repositories&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;建立 cattle-system Namespace&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; kubectl create namespace cattle-system&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;namespace/cattle-system created&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;安裝 cert-manager&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.7.1/cert-manager.crds.yaml&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/clusterissuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/orders.acme.cert-manager.io created&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;安裝 jetstack&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; helm repo add jetstack https://charts.jetstack.io&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;#34;jetstack&amp;#34; has been added to your repositories&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;更新 helm 儲存庫&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; helm repo update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the &amp;#34;rancher-stable&amp;#34; chart repository
...Successfully got an update from the &amp;#34;jetstack&amp;#34; chart repository
Update Complete. ⎈Happy Helming!⎈&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;安裝 cert-manager&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; helm install cert-manager jetstack/cert-manager \
space ce&amp;gt; --namespace cert-manager \
&amp;gt; --create-namespace \
&amp;gt; --version v1.7.1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME: cert-manager
LAST DEPLOYED: Tue Mar 7 04:27:00 2023
NAMESPACE: cert-manager
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
cert-manager v1.7.1 has been deployed successfully!
In order to begin issuing certificates, you will need to set up a ClusterIssuer
or Issuer resource (for example, by creating a &amp;#39;letsencrypt-staging&amp;#39; issuer).
More information on the different types of issuers and how to configure them
can be found in our documentation:
https://cert-manager.io/docs/configuration/
For information on how to configure cert-manager to automatically provision
Certificates for Ingress resources, take a look at the `ingress-shim`
documentation:
https://cert-manager.io/docs/usage/ingress/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;檢視 Cert-manager pod 狀態&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; kubectl get pods --namespace cert-manager&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME READY STATUS RESTARTS AGE
cert-manager-76d44b459c-45vrr 1/1 Running 0 101s
cert-manager-cainjector-9b679cc6-z5gq7 1/1 Running 0 101s
cert-manager-webhook-57c994b6b9-cl72k 1/1 Running 0 101s&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;安裝 rancher 2.7.1&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; helm install rancher rancher-stable/rancher --namespace cattle-system --set hostname=rancher.example.com --version 2.7.1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME: rancher
LAST DEPLOYED: Tue Mar 7 04:30:45 2023
NAMESPACE: cattle-system
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Rancher Server has been installed.
NOTE: Rancher may take several minutes to fully initialize. Please standby while Certificates are being issued, Containers are started and the Ingress rule comes up.
Check out our docs at https://rancher.com/docs/
If you provided your own bootstrap password during installation, browse to https://rancher.example.com to get started.
If this is the first time you installed Rancher, get started by running this command and clicking the URL it generates:
echo https://rancher.example.com/dashboard/?setup=$(kubectl get secret --namespace cattle-system bootstrap-secret -o go-template=&amp;#39;{{.data.bootstrapPassword|base64decode}}&amp;#39;)
To get just the bootstrap password on its own, run:
kubectl get secret --namespace cattle-system bootstrap-secret -o go-template=&amp;#39;{{.data.bootstrapPassword|base64decode}}{{ &amp;#34;\n&amp;#34; }}&amp;#39;
Happy Containering!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;&lt;strong&gt;check rancher status&lt;/strong&gt;&lt;span class="hx:absolute hx:-mt-20" id="check-rancher-status"&gt;&lt;/span&gt;
&lt;a href="#check-rancher-status" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; watch -n 1 kubectl -n cattle-system get po&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;NAME READY STATUS RESTARTS AGE
helm-operation-67hnc 0/2 Completed 0 43s
helm-operation-g2f84 0/2 Completed 0 93s
helm-operation-hthw8 0/2 Completed 0 36s
rancher-5799876645-5wr79 1/1 Running 0 3m49s
rancher-5799876645-pr5ns 1/1 Running 1 (2m4s ago) 3m49s
rancher-5799876645-vp422 1/1 Running 0 3m49s
rancher-webhook-69bb6bc7cf-nkdq7 1/1 Running 0 33s&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;連線 Rancher&lt;span class="hx:absolute hx:-mt-20" id="連線-rancher"&gt;&lt;/span&gt;
&lt;a href="#%e9%80%a3%e7%b7%9a-rancher" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;打開瀏覽器，輸入 &lt;code&gt;example.rancher.com&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/JoZe83z.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;複製命令&lt;/strong&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; kubectl get secret --namespace cattle-system bootstrap-secret -o go-template=&amp;#39;{{.data.bootstrapPassword|base64decode}}{{&amp;#34;\n&amp;#34;}}&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;4xb47zj5mhtrvf7crxk7fsn644rx842gl7b2rmkfsg5pscwjvsnhcs&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;選擇 &amp;ldquo;Set a specific password to use&amp;rdquo;，輸入自訂密碼後，勾選 &amp;ldquo;By checking the box, you accept the End User Lincense Agreement &amp;amp; Terms &amp;amp; Corditions&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/CmSPOt8.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;h3&gt;建立 K8s&lt;span class="hx:absolute hx:-mt-20" id="建立-k8s"&gt;&lt;/span&gt;
&lt;a href="#%e5%bb%ba%e7%ab%8b-k8s" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;按 &amp;ldquo;Create&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/1WF8GgB.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;將 RKE2/K3s 打勾，並且點選 &amp;ldquo;Custom&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/S4Mkwww.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;填入 &amp;ldquo;Cluster Name&amp;rdquo;，Kubernetes Version 選擇 &amp;ldquo;v.123.15+rke2r1&amp;rdquo;，再點 &amp;ldquo;Create&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/jfXAlfe.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;勾選 &amp;ldquo;Insecure&amp;rdquo;，允許不安全的連線，並點選第 2 點的框框複製&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/nY2yeqf.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;到 rke2-1 主機執行&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;rke2-1:~&amp;gt; curl -fL https://rancher.example.com/system-agent-install.sh | sudo sh -s - --server https://rancher.example.com --label &amp;#39;cattle.io/os=linux&amp;#39; --token pkqfn6d6ghkltw4dvn8zdwsk7q5s2w9z5h46vsgwmfp8zng2k6rlfm --ca-checksum c93bc39496a549d53f0a8e74d757795202a8cff487cabd9d26bd449375ecd482 --etcd --controlplane --worker&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 29802 0 29802 0 0 3596k 0 --:--:-- --:--:-- --:--:-- 3637k
[INFO] Label: cattle.io/os=linux
[INFO] Role requested: etcd
[INFO] Role requested: controlplane
[INFO] Role requested: worker
[INFO] Using default agent configuration directory /etc/rancher/agent
[INFO] Using default agent var directory /var/lib/rancher/agent
[WARN] /usr/local is read-only or a mount point; installing to /opt/rancher-system-agent
[INFO] Determined CA is necessary to connect to Rancher
[INFO] Successfully downloaded CA certificate
[INFO] Value from https://rancher.example.com/cacerts is an x509 certificate
[INFO] Successfully tested Rancher connection
[INFO] Downloading rancher-system-agent binary from https://rancher.example.com/assets/rancher-system-agent-amd64
[INFO] Successfully downloaded the rancher-system-agent binary.
[INFO] Downloading rancher-system-agent-uninstall.sh script from https://rancher.example.com/assets/system-agent-uninstall.sh
[INFO] Successfully downloaded the rancher-system-agent-uninstall.sh script.
[INFO] Generating Cattle ID
[INFO] Successfully downloaded Rancher connection information
[INFO] systemd: Creating service file
[INFO] Creating environment file /etc/systemd/system/rancher-system-agent.env
[INFO] Enabling rancher-system-agent.service
Created symlink /etc/systemd/system/multi-user.target.wants/rancher-system-agent.service → /etc/systemd/system/rancher-system-agent.service.
[INFO] Starting/restarting rancher-system-agent.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;LVM 實做流程&lt;span class="hx:absolute hx:-mt-20" id="lvm-實做流程"&gt;&lt;/span&gt;
&lt;a href="#lvm-%e5%af%a6%e5%81%9a%e6%b5%81%e7%a8%8b" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h3&gt;建立 PV (Physical Volume)&lt;span class="hx:absolute hx:-mt-20" id="建立-pv-physical-volume"&gt;&lt;/span&gt;
&lt;a href="#%e5%bb%ba%e7%ab%8b-pv-physical-volume" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo pvcreate /dev/{sdb,sdc,sdd}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo pvscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; PV /dev/sdb VG nfsvg lvm2 [49.98 GiB / 0 free]
PV /dev/sdc VG nfsvg lvm2 [49.98 GiB / 0 free]
PV /dev/sdd VG nfsvg lvm2 [49.98 GiB / 0 free]
PV /dev/sda2 VG system lvm2 [399.99 GiB / 334.99 GiB free]
Total: 4 [549.94 GiB] / in use: 4 [549.94 GiB] / in no VG: 0 [0 ]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;建立 VG (Volume Group)&lt;span class="hx:absolute hx:-mt-20" id="建立-vg-volume-group"&gt;&lt;/span&gt;
&lt;a href="#%e5%bb%ba%e7%ab%8b-vg-volume-group" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo vgcreate -s 16M nfsvg /dev/sd{b,c,d}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo vgdisplay nfsvg&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --- Volume group ---
VG Name nfsvg
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 3
Act PV 3
VG Size 149.95 GiB
PE Size 16.00 MiB
Total PE 9597
Alloc PE / Size 9597 / 149.95 GiB
Free PE / Size 0 / 0
VG UUID tUhEIt-JEGs-xZxx-j4lq-CODo-781Z-3Jlfjj&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;建立 LV (Logical Volume)&lt;span class="hx:absolute hx:-mt-20" id="建立-lv-logical-volume"&gt;&lt;/span&gt;
&lt;a href="#%e5%bb%ba%e7%ab%8b-lv-logical-volume" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo lvcreate -n nfslv -L 500M nfsvg&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo lvdisplay /dev/nfsvg/nfslv&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --- Logical volume ---
LV Path /dev/nfsvg/nfslv
LV Name nfslv
VG Name nfsvg
LV UUID WWbbDs-nQ7Y-JaXJ-ROMD-v6SU-6NEf-WVIOG0
LV Write Access read/write
LV Creation host, time dns-nfs, 2023-03-07 23:20:10 &amp;#43;0800
LV Status available
# open 1
LV Size 512.00 MiB
Current LE 32
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 1024
Block device 254:2&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;因為使用 16MB 的 PE，因此不會剛好等於 500MB， LV 自動選擇接近 500MB 的數值來建立， 因此會得到使用 512MB 的容量。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;檢視還有多少 PE 可以用&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo vgdisplay nfsvg&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; --- Volume group ---
VG Name nfsvg
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 3
Act PV 3
VG Size 149.95 GiB
PE Size 16.00 MiB
Total PE 9597
Alloc PE / Size 9597 / 149.95 GiB
Free PE / Size 0 / 0
VG UUID tUhEIt-JEGs-xZxx-j4lq-CODo-781Z-3Jlfjj&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;為 LV 增加容量&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo lvresize -l &amp;#43;9565 /dev/nfsvg/nfslv&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; Size of logical volume nfsvg/nfslv changed from 512.00 MiB (32 extents) to 149.95 GiB (9597 extents).
Logical volume nfsvg/nfslv successfully resized.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;補充 :&lt;/p&gt;
&lt;p&gt;幫 LV resize 特定大小&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvresize -L 25G &amp;lt;LV Name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;幫 LV resize 到最大值&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo lvresize -l &amp;#43;100%FREE &amp;lt;LV Name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查是否符合預期&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo lvscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; ACTIVE &amp;#39;/dev/nfsvg/nfslv&amp;#39; [149.95 GiB] inherit
ACTIVE &amp;#39;/dev/system/home&amp;#39; [25.00 GiB] inherit
ACTIVE &amp;#39;/dev/system/root&amp;#39; [40.00 GiB] inherit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;Format LVM&lt;span class="hx:absolute hx:-mt-20" id="format-lvm"&gt;&lt;/span&gt;
&lt;a href="#format-lvm" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;將 LVM 格式化為 xfs 檔案系統&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo mkfs.xfs /dev/nfsvg/nfslv&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;測試 LVM 可否正常使用&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 建立工作目錄
~&amp;gt; sudo mkdir /opt/www
# 將 LV 掛載到 /opt/www 目錄
~&amp;gt; sudo mount /dev/nfsvg/nfslv /opt/www
~&amp;gt; cd /opt/www
~&amp;gt; echo &amp;#34;testing lvm partition&amp;#34; | sudo tee dummy.txt
~&amp;gt; cat dummy.txt
testing lvm partition
~&amp;gt;
~&amp;gt; sudo rm -f dummy.txt&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;resize btrfs filesystem 到最大值&lt;span class="hx:absolute hx:-mt-20" id="resize-btrfs-filesystem-到最大值"&gt;&lt;/span&gt;
&lt;a href="#resize-btrfs-filesystem-%e5%88%b0%e6%9c%80%e5%a4%a7%e5%80%bc" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo btrfs filesystem resize max /&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;永久使用 LVM&lt;span class="hx:absolute hx:-mt-20" id="永久使用-lvm"&gt;&lt;/span&gt;
&lt;a href="#%e6%b0%b8%e4%b9%85%e4%bd%bf%e7%94%a8-lvm" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; echo &amp;#39;/dev/nfsvg/nfslv /opt/www xfs defaults 0 0&amp;#39; | sudo tee -a /etc/fstab
~&amp;gt; sudo mount -a&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;安裝 NFS Server&lt;span class="hx:absolute hx:-mt-20" id="安裝-nfs-server"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-nfs-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo zypper -n install nfs-kernel-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;設定共享資料夾&lt;span class="hx:absolute hx:-mt-20" id="設定共享資料夾"&gt;&lt;/span&gt;
&lt;a href="#%e8%a8%ad%e5%ae%9a%e5%85%b1%e4%ba%ab%e8%b3%87%e6%96%99%e5%a4%be" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; echo &amp;#39;/opt/www 192.168.0.31/24(rw,sync,no_subtree_check,no_root_squash)&amp;#39; | sudo tee /etc/exports&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;啟動 NFS Server&lt;span class="hx:absolute hx:-mt-20" id="啟動-nfs-server"&gt;&lt;/span&gt;
&lt;a href="#%e5%95%9f%e5%8b%95-nfs-server" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo systemctl start nfs-server
~&amp;gt; sudo systemctl enable nfs-server&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;修改權限&lt;span class="hx:absolute hx:-mt-20" id="修改權限"&gt;&lt;/span&gt;
&lt;a href="#%e4%bf%ae%e6%94%b9%e6%ac%8a%e9%99%90" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo chown -R rancher:users /opt/www&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;再另一台機器測試&lt;span class="hx:absolute hx:-mt-20" id="再另一台機器測試"&gt;&lt;/span&gt;
&lt;a href="#%e5%86%8d%e5%8f%a6%e4%b8%80%e5%8f%b0%e6%a9%9f%e5%99%a8%e6%b8%ac%e8%a9%a6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; sudo mkdir -p /opt/www
~&amp;gt; sudo mount -t nfs 192.168.0.31:/opt/www /opt/www
~&amp;gt; echo &amp;#39;haha&amp;#39; &amp;gt; /opt/www/test&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3&gt;回到原來的機器&lt;span class="hx:absolute hx:-mt-20" id="回到原來的機器"&gt;&lt;/span&gt;
&lt;a href="#%e5%9b%9e%e5%88%b0%e5%8e%9f%e4%be%86%e7%9a%84%e6%a9%9f%e5%99%a8" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;gt; cat /opt/www/test&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;haha&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;成功~&lt;/p&gt;</description></item><item><title>Overview of SUSE Linux Enterprise</title><link>https://blog.kubeantony.com/archive/suse/overview-of-suse-linux-enterprise/</link><pubDate>Wed, 31 May 2023 01:29:50 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/overview-of-suse-linux-enterprise/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本文主要介紹在 SUSE Linux Enterprise 有哪些版本，每個版本適合的對象，哪些服務支持多久，以及什麼是 Yast&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h1&gt;Understand the Different Flavors of SUSE Linux&lt;/h1&gt;&lt;h2&gt;Flavors of SUSE Linux&lt;span class="hx:absolute hx:-mt-20" id="flavors-of-suse-linux"&gt;&lt;/span&gt;
&lt;a href="#flavors-of-suse-linux" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;openSUSE Leap 是常規版本&lt;/li&gt;
&lt;li&gt;每個 Leap 主要版本（42、43、15 等）都是如此。
- 預計將被支持至少 36 個月&lt;/li&gt;
&lt;li&gt;一個 Leap Minor 版本 (15.1, 15.2, 等等)
- 預計每年都會發布
- 用戶應在發布後升級到最新的版本
- 應在其可用性的 6 個月內升級到最新的版本
- 導致 18 個月的支持週期&lt;/li&gt;
&lt;li&gt;針對的對象
- Developers (開發人員)
- Desktop power users (桌面高級用戶)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Tumbleweed&lt;span class="hx:absolute hx:-mt-20" id="tumbleweed"&gt;&lt;/span&gt;
&lt;a href="#tumbleweed" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;一旦軟體套件（packages）被穩定下來，就會立即提供新版本&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;openSUSE Tumbleweed&lt;/strong&gt; ：
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;一個永久持續的滾動更新（rolling release）版本&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;openSUSE 社群會在整合和測試完畢後，立即提供安全更新、修正錯誤和新增功能等等。&lt;/li&gt;
&lt;li&gt;當新軟體版本尚未解決重大安全問題時，也可能提供套件的關鍵安全更新。&lt;/li&gt;
&lt;li&gt;目標對象：
&lt;ul&gt;
&lt;li&gt;想要使用最新版本的使用者。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Flavors of SUSE Linux Enterprise&lt;span class="hx:absolute hx:-mt-20" id="flavors-of-suse-linux-enterprise"&gt;&lt;/span&gt;
&lt;a href="#flavors-of-suse-linux-enterprise" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;SUSE Linux Enterprise Server (SLES)&lt;/li&gt;
&lt;li&gt;SUSE Linux Enterprise Desktop (SLED)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;![](&lt;a
href="https://i.imgur.com/wKti2tg.png"target="_blank" rel="noopener"&gt;https://i.imgur.com/wKti2tg.png&lt;/a&gt; =70%x)&lt;/p&gt;
&lt;p&gt;![](&lt;a
href="https://i.imgur.com/JP4eOIk.png"target="_blank" rel="noopener"&gt;https://i.imgur.com/JP4eOIk.png&lt;/a&gt; =70%x)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;RT 版本是當偵測到特殊事件，特定 process 會最優先被執行&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h1&gt;Understand the SLE Maintenance Model&lt;/h1&gt;&lt;h2&gt;Standard Platform Life-Cycle&lt;span class="hx:absolute hx:-mt-20" id="standard-platform-life-cycle"&gt;&lt;/span&gt;
&lt;a href="#standard-platform-life-cycle" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/rDnGt0j.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;SUSE 提供的 Linux 平台產品有 13 年的生命週期（&lt;strong&gt;10 年的一般支援&lt;/strong&gt;和 &lt;strong&gt;3 年的延伸支援&lt;/strong&gt;）。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;前 7 年，SUSE 提供一般支援。&lt;/li&gt;
&lt;li&gt;後 3 年，所有支援內容（例如技術資料文件、簡報和指南）都會在面向客戶的支援知識庫中提供。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;大約每 18 個月會發布一個服務包（Service Pack），每個服務包有 5 年的生命週期（2 年的一般支援和 3 年的延伸支援）。&lt;/p&gt;
&lt;p&gt;在下一個服務包發布後的 6 個月內，有升級的時間窗口。&lt;/p&gt;
&lt;p&gt;此外，SUSE 還提供長期服務包支援（Long Term Service Pack Support, LTSS），以延長升級時間窗口或延長主要版 本的生命週期。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;What is Service Pack&lt;span class="hx:absolute hx:-mt-20" id="what-is-service-pack"&gt;&lt;/span&gt;
&lt;a href="#what-is-service-pack" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Service Pack（服務包）是指一個包含了多個軟體更新和補丁的集合，用於更新 SUSE Linux 版本。這些更新和補丁通常包括新的功能、修正錯誤、改善安全性等。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Long Term Service Pack Support&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;更長的時間來維護當前的操作系統版本。&lt;/li&gt;
&lt;li&gt;當您從一個服務包版本過渡到下一個版本時，可以保護您數據中心的穩定性和安全性。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Software Subscription&lt;span class="hx:absolute hx:-mt-20" id="software-subscription"&gt;&lt;/span&gt;
&lt;a href="#software-subscription" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;只有持有 SLE subscription 的客戶才能獲得更新。&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;訂閱是基於實體機器而非虛擬機器。&lt;/li&gt;
&lt;li&gt;使用 Subscription Management Tool（SMT）伺服器可以免費鏡像補丁。
&lt;ul&gt;
&lt;li&gt;訂閱管理工具 (SMT) 服務器擴展對所有當前 SUSE Linux Enterprise 客戶免費開放。&lt;/li&gt;
&lt;li&gt;SMT 服務器允許您將 SUSE 服務器的更新鏡像到您的本地站點，並在本地處理和轉發所有激活。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h1&gt;Understand YaST&lt;/h1&gt;&lt;h2&gt;Introduction to YaST&lt;span class="hx:absolute hx:-mt-20" id="introduction-to-yast"&gt;&lt;/span&gt;
&lt;a href="#introduction-to-yast" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Local system configuration tool&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Acronym: Yet Another System Tool&lt;/li&gt;
&lt;li&gt;User Interfaces:
&lt;ul&gt;
&lt;li&gt;Command line non-interactive&lt;/li&gt;
&lt;li&gt;Command line interactive&lt;/li&gt;
&lt;li&gt;Graphical&lt;/li&gt;
&lt;li&gt;Non-graphical (ncurses)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Two versions, started with different commands:
&lt;img src="https://i.imgur.com/AbdUgF4.png" alt="" loading="lazy" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;YaST Control Center - Modules&lt;span class="hx:absolute hx:-mt-20" id="yast-control-center---modules"&gt;&lt;/span&gt;
&lt;a href="#yast-control-center---modules" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;YaST 模組是用 Ruby 編寫的，並提供特定工具，用於管理 SUSE Linux Enterprise 電腦的各個組件。以下是一些範例：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Online Update (線上更新)&lt;/li&gt;
&lt;li&gt;Software Management (軟體管理)&lt;/li&gt;
&lt;li&gt;Network Settings (網路設定)&lt;/li&gt;
&lt;li&gt;Partitioner (磁區分割)&lt;/li&gt;
&lt;li&gt;NTP Configuration (NTP 設定)&lt;/li&gt;
&lt;li&gt;Samba Server&lt;/li&gt;
&lt;li&gt;Firewall (防火牆)&lt;/li&gt;
&lt;li&gt;User and Group Management (使用者和群組管理)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;YaST Control Center - Categories&lt;span class="hx:absolute hx:-mt-20" id="yast-control-center---categories"&gt;&lt;/span&gt;
&lt;a href="#yast-control-center---categories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;當你啟動 YaST(ncurses) 或 YaST2(graphical) 時，沒有選擇任何模塊時，會出現 YaST Control Center&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;左邊的面板由可用的模塊類別組成
&lt;ul&gt;
&lt;li&gt;Software&lt;/li&gt;
&lt;li&gt;Hardware&lt;/li&gt;
&lt;li&gt;Syste&lt;/li&gt;
&lt;li&gt;Network Services&lt;/li&gt;
&lt;li&gt;Security and Users&lt;/li&gt;
&lt;li&gt;Virtualization&lt;/li&gt;
&lt;li&gt;Support&lt;/li&gt;
&lt;li&gt;Miscellaneous&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description></item><item><title>SCA in SLES 15 講義筆記</title><link>https://blog.kubeantony.com/archive/suse/sca-in-sles-15-%E8%AC%9B%E7%BE%A9%E7%AD%86%E8%A8%98/</link><pubDate>Mon, 15 May 2023 16:26:24 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/sca-in-sles-15-%E8%AC%9B%E7%BE%A9%E7%AD%86%E8%A8%98/</guid><description>
&lt;h2&gt;&lt;a
href="https://hackmd.io/@QI-AN/SCA_in_SLES_15_index"target="_blank" rel="noopener"&gt;&lt;font color=black&gt;Preface&lt;/font&gt;&lt;/a&gt;&lt;span class="hx:absolute hx:-mt-20" id=""&gt;&lt;/span&gt;
&lt;a href="#" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h2&gt;Contents&lt;span class="hx:absolute hx:-mt-20" id="contents"&gt;&lt;/span&gt;
&lt;a href="#contents" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://hackmd.io/@QI-AN/SLES_15_Overview_of_SUSE_Linux_Enterprise"target="_blank" rel="noopener"&gt;SECTION 1: Overview of SUSE Linux Enterprise&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_The_Linux_Filesystem"&gt;SECTION 2: The Linux Filesystem&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Work_with_the_Command_Line"&gt;SECTION 3: Work with the Command Line&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Remote_Administration"&gt;SECTION 5: Remote Administration&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_System_Initialization"&gt;SECTION 6: System Initialization&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Process_Management"&gt;SECTION 7: Process Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Identity_and_Security"&gt;SECTION 8: Identity and Security&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Software_Management"&gt;SECTION 9: Software Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Network_Management"&gt;SECTION 10: Network Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Storage_Management"&gt;SECTION 11: Storage Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Administration_and_Monitoring"&gt;SECTION 12: Administration and Monitoring&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/Install_SUSE_Linux_Enterprise_Server_15_SP4"&gt;SECTION 13: Install SUSE Linux Enterprise Server 15 SP4&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SCA in SLES 15 講義筆記-首頁</title><link>https://blog.kubeantony.com/archive/suse/sca-in-sles-15-%E8%AC%9B%E7%BE%A9%E7%AD%86%E8%A8%98-%E9%A6%96%E9%A0%81/</link><pubDate>Mon, 15 May 2023 16:25:20 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/sca-in-sles-15-%E8%AC%9B%E7%BE%A9%E7%AD%86%E8%A8%98-%E9%A6%96%E9%A0%81/</guid><description>
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;style&gt;
.indent-title-1{
margin-left: 1em;
&lt;/style&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;這裡紀錄了我準備 SCA in SUSE Linux Enterprise Server 15 這張證照，對於講義的內容學習時所記錄的筆記，請點選左側目錄(建議)，或是以下連結至各章節。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Contents&lt;span class="hx:absolute hx:-mt-20" id="contents"&gt;&lt;/span&gt;
&lt;a href="#contents" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Overview_of_SUSE_Linux_Enterprise"&gt;SECTION 1: Overview of SUSE Linux Enterprise&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_The_Linux_Filesystem"&gt;SECTION 2: The Linux Filesystem&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Work_with_the_Command_Line"&gt;SECTION 3: Work with the Command Line&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Remote_Administration"&gt;SECTION 5: Remote Administration&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_System_Initialization"&gt;SECTION 6: System Initialization&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Process_Management"&gt;SECTION 7: Process Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Identity_and_Security"&gt;SECTION 8: Identity and Security&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Software_Management"&gt;SECTION 9: Software Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Network_Management"&gt;SECTION 10: Network Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Storage_Management"&gt;SECTION 11: Storage Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/SLES_15_Administration_and_Monitoring"&gt;SECTION 12: Administration and Monitoring&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://blog.kubeantony.com/@QI-AN/Install_SUSE_Linux_Enterprise_Server_15_SP4"&gt;SECTION 13: Install SUSE Linux Enterprise Server 15 SP4&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Setup Ansible on SUSE Manager</title><link>https://blog.kubeantony.com/archive/suse/setup-ansible-on-suse-manager/</link><pubDate>Mon, 08 May 2023 08:25:00 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/setup-ansible-on-suse-manager/</guid><description>
&lt;h2&gt;安裝 Ansible 套件&lt;span class="hx:absolute hx:-mt-20" id="安裝-ansible-套件"&gt;&lt;/span&gt;
&lt;a href="#%e5%ae%89%e8%a3%9d-ansible-%e5%a5%97%e4%bb%b6" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;選擇一台 SUSE Manger 的 Client 端當作 Ansible control node&lt;/p&gt;
&lt;p&gt;在該台 Node，執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ sudo zypper install ansible&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查是否成功安裝&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ zypper info ansible | grep -w &amp;#34;Installed&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Installed Size : 96.1 MiB
Installed : Yes&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Add Ansible Control Node&lt;span class="hx:absolute hx:-mt-20" id="add-ansible-control-node"&gt;&lt;/span&gt;
&lt;a href="#add-ansible-control-node" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;在 SUMA Web UI 上點選&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Systems &amp;raquo;&amp;gt; Overview &amp;raquo;&amp;gt; SLES-15-SP4-Client-2 (Ansible control node VM)&lt;/li&gt;
&lt;li&gt;Detail &amp;raquo;&amp;gt; Properties &amp;raquo;&amp;gt; Add-On System Types &amp;raquo;&amp;gt; Ansible Control Node&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/Hk4pumUNh.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;勾選完後 &amp;raquo;&amp;gt; &amp;ldquo;Update Properties&amp;rdquo;，完成變更後就可以看到 Ansible 選項在畫面上&lt;/p&gt;
&lt;h2&gt;建立 Playbook 目錄 及 Inventory files&lt;span class="hx:absolute hx:-mt-20" id="建立-playbook-目錄-及-inventory-files"&gt;&lt;/span&gt;
&lt;a href="#%e5%bb%ba%e7%ab%8b-playbook-%e7%9b%ae%e9%8c%84-%e5%8f%8a-inventory-files" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;在 Ansible Control Node 執行以下命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ mkdir -p /srv/ansible/playbooks&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/r13hcQ842.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在 &amp;ldquo;Add a Playbook directory&amp;rdquo; 欄位中，輸入 &amp;ldquo;/srv/ansible/playbooks&amp;rdquo; ，按 &amp;ldquo;Save&amp;rdquo; 儲存&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/SkOfsQ8E2.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在 &amp;ldquo;Add a Playbook directoryInventory file&amp;rdquo; 欄位中，輸入 &amp;ldquo;/etc/ansible/hosts&amp;rdquo; ，按 &amp;ldquo;Save&amp;rdquo; 儲存&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;執行 Playbook&lt;span class="hx:absolute hx:-mt-20" id="執行-playbook"&gt;&lt;/span&gt;
&lt;a href="#%e5%9f%b7%e8%a1%8c-playbook" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;在 Ansible Control Node 執行以下命令&lt;/p&gt;
&lt;p&gt;編輯 Playbook 任務的設定檔&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ vim apache2.yml&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檔案內容 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;- hosts: localhost
tasks:
# Task 1 for test connection
- name: Test connection
ping:
register: result
# Task 2 for Create file test
- name: Create files
file:
path: /tmp/test1.txt
state: touch
become: yes
register: files
# Task 3 for install apache and start apache server
- name: Install apache server
zypper:
name: apache2
state: present
- name: start apache
ansible.builtin.systemd:
name: apache2
state: started
enabled: yes&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;在 Ansible Control Node 本機執行以下任務&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;任務一 : 測試 Connection&lt;/li&gt;
&lt;li&gt;任務二 : 建立 &lt;code&gt;/tmp/test1.txt&lt;/code&gt; 檔案&lt;/li&gt;
&lt;li&gt;任務三 : 安裝 apache2 Server&lt;/li&gt;
&lt;li&gt;任務四 : 啟動 apache2 服務 並設為開機自動執行&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;回到 SUSE Manager Web UI&lt;/p&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/Bk6xpX8Vh.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;點選 &amp;ldquo;Ansible&amp;rdquo; &amp;raquo;&amp;gt; &amp;ldquo;Playbooks&amp;rdquo; &amp;raquo;&amp;gt; 展開 &amp;ldquo;/srv/ansible/playbooks&amp;rdquo; &amp;raquo;&amp;gt; 點選 &amp;ldquo;apache2.yml&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/rJ8KpmINn.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;點選 &amp;ldquo;Schedule&amp;rdquo; ，立刻安排 Playbook 任務&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://hackmd.io/_uploads/Bkan07LNh.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;點選 &amp;ldquo;Events&amp;rdquo; ，查看執行結果&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;回到 Command Line 執行以下檢查命令&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;$ systemctl status apache2.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;● apache2.service - The Apache Webserver
Loaded: loaded (/usr/lib/systemd/system/apache2.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2023-05-08 15:35:26 CST; 22min ago
Main PID: 23829 (httpd-prefork)
Status: &amp;#34;Processing requests...&amp;#34;
Tasks: 6
CGroup: /system.slice/apache2.service
├─23829 /usr/sbin/httpd-prefork -DSYSCONFIG -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/syscon&amp;gt;
├─23836 /usr/sbin/httpd-prefork -DSYSCONFIG -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/syscon&amp;gt;
├─23837 /usr/sbin/httpd-prefork -DSYSCONFIG -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/syscon&amp;gt;
├─23838 /usr/sbin/httpd-prefork -DSYSCONFIG -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/syscon&amp;gt;
├─23839 /usr/sbin/httpd-prefork -DSYSCONFIG -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/syscon&amp;gt;
└─23840 /usr/sbin/httpd-prefork -DSYSCONFIG -C &amp;#34;PidFile /run/httpd.pid&amp;#34; -C &amp;#34;Include /etc/apache2/syscon&amp;gt;
May 08 15:35:26 SLES-15-SP4-Client-2 systemd[1]: Starting The Apache Webserver...
May 08 15:35:26 SLES-15-SP4-Client-2 start_apache2[23829]: AH00558: httpd-prefork: Could not reliably determine the &amp;gt;
May 08 15:35:26 SLES-15-SP4-Client-2 systemd[1]: Started The Apache Webserver.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Salt Guide Overview</title><link>https://blog.kubeantony.com/archive/suse/salt-guide-overview/</link><pubDate>Mon, 01 May 2023 10:10:40 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/salt-guide-overview/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
}
&lt;/style&gt;
&lt;h2&gt;30 Second Understand What is Salt ?&lt;span class="hx:absolute hx:-mt-20" id="30-second-understand-what-is-salt-"&gt;&lt;/span&gt;
&lt;a href="#30-second-understand-what-is-salt-" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;一個配置管理系統。Salt 可以確保遠端節點處於定義的狀態中&lt;/strong&gt;。例如，它可以確保特定的 package 已安裝並確保特定的服務正在運行。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;一個分散式遠端執行系統，用於在遠端節點上執行命令和查詢數據&lt;/strong&gt;。Salt 可以使用個別節點或任意節點選擇條件來查詢和執行命令。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;About Salt&lt;span class="hx:absolute hx:-mt-20" id="about-salt"&gt;&lt;/span&gt;
&lt;a href="#about-salt" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Salt 是一個使用 Python 構建的自動化工具和框架，可用於部署、配置和管理複雜的 IT 系統。使用 Salt 可以自動化常見的基礎設施管理任務，確保基礎架構的所有組件都處於一致的期望狀態。&lt;/p&gt;
&lt;p&gt;Salt 有許多可能的用途，包括配置管理，其中包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;管理作業系統的部署和設定。&lt;/li&gt;
&lt;li&gt;安裝和配置軟體應用程式和服務。&lt;/li&gt;
&lt;li&gt;管理伺服器、虛擬機器、容器、資料庫、網頁伺服器、網路裝置等等。&lt;/li&gt;
&lt;li&gt;確保一致的配置並防止設定漂移。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;除了配置管理之外，Salt 還可以：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;自動化和編排常規 IT 流程，例如定期伺服器停機所需的常見任務，或升級作業系統或應用程式。&lt;/li&gt;
&lt;li&gt;創建自我感知、自我修復的系統，可以自動響應故障、常見的管理問題或其他重要事件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Salt in SUSE Manager Intro&lt;span class="hx:absolute hx:-mt-20" id="salt-in-suse-manager-intro"&gt;&lt;/span&gt;
&lt;a href="#salt-in-suse-manager-intro" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Salt 是一個遠端執行引擎、設定管理和編排系統，被 SUSE Manager 用來管理客戶端。&lt;/p&gt;
&lt;p&gt;透過 Salt，管理員可以遠端控制和操作客戶端電腦，同時也可以用 Salt 管理和配置客戶端的系統設定。此外，Salt 還提供編排功能，可以將多個任務整合成一個流程進行自動化操作，以提高工作效率和管理效能。&lt;/p&gt;
&lt;p&gt;在 SUSE Manager 中，Salt 主控程式運行在 SUSE Manager 伺服器上，讓你可以註冊和管理 Salt 客戶端。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Salt Formulas&lt;span class="hx:absolute hx:-mt-20" id="salt-formulas"&gt;&lt;/span&gt;
&lt;a href="#salt-formulas" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Formula 是一系列 Salt State 的集合，Formula 可以可靠地重現特定的配置。&lt;/p&gt;
&lt;p&gt;有些 Formula 是由 SUSE 提供的，或者您可以從 RPM 套件或外部 git 存儲庫安裝 Formula。&lt;/p&gt;
&lt;p&gt;Formula 最適合用於大型、複雜的配置。對於較小的任務，請使用狀態（state）而不是 Formula。Formula 和狀態都可以作為一種配置文件的形式。當您編寫並存儲配置後，它們提供了您基礎架構的快照。&lt;/p&gt;
&lt;p&gt;Formula 數據可以使用 XMLRPC API 進行管理。&lt;/p&gt;
&lt;p&gt;您可以使用 SUSE Manager Web UI 應用 SUSE Manager Formula。本節中記錄了最常用的 Formula。&lt;/p&gt;
&lt;/div&gt;
&lt;h1&gt;Write Custom Salt Formulas&lt;/h1&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;If you have a custom formula that is not in an RPM, it must be in a state directory configured as a Salt file root. Custom state formula data must be in:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;/srv/salt/&amp;lt;custom-formula-name&amp;gt;/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Custom metadata information must be in:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;/srv/formula_metadata/&amp;lt;custom-formula-name&amp;gt;/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;All custom folders must contain a &lt;code&gt;form.yml&lt;/code&gt; file. These files are detected as form recipes and are applied to groups and systems from the Web UI:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;/srv/formula_metadata/&amp;lt;custom-formula-name&amp;gt;/form.yml&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;範例 :&lt;span class="hx:absolute hx:-mt-20" id="範例-"&gt;&lt;/span&gt;
&lt;a href="#%e7%af%84%e4%be%8b-" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# 先把大家一起開發的專案下載到 local
$ git clone git@github.com:cooloo9871/Formula-twgcb.git
# 與遠端同步
$ git pull
# 開發後上傳遠端
$ git push
# 切換工作目錄
$ cd Formula-twgcb/
# 檢視工作目錄
$ ll
total 8
drwxr-xr-x 1 root root 204 Apr 26 09:16 .git
-rwxr-xr-x 1 root root 138 Apr 26 09:15 .import.sh
-rw-r--r-- 1 root root 253 Apr 26 08:58 README.md
drwxr-xr-x 1 root root 56 Apr 26 08:58 sample
drwxr-xr-x 1 root root 96 Apr 26 08:58 TWGCB.01.008.0001
drwxr-xr-x 1 root root 72 Apr 26 09:15 TWGCB.01.008.0002
drwxr-xr-x 1 root root 96 Apr 26 09:16 TWGCB.01.008.0033
# 本地測試
## 將不同 policy 複製到 Formula 的工作目錄
$ cp -r TW* /srv/salt/
$ cp -r TW* /srv/formula_metadata/&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h1&gt;參考文章&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;&lt;a
href="https://docs.saltproject.io/en/latest/contents.html"target="_blank" rel="noopener"&gt;SALT TABLE OF CONTENTS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://docs.saltproject.io/en/latest/topics/tutorials/starting_states.html"target="_blank" rel="noopener"&gt;HOW DO I USE SALT STATES?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a
href="https://documentation.suse.com/external-tree/en-us/suma/4.1/suse-manager/salt/formulas-custom.html"target="_blank" rel="noopener"&gt;Custom Salt Formulas&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Deploying Operating Systems to New Devices Using SUSE Manager Autoinstallation</title><link>https://blog.kubeantony.com/archive/suse/deploying-operating-systems-to-new-devices-using-suse-manager-autoinstallation/</link><pubDate>Mon, 17 Apr 2023 03:22:12 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/deploying-operating-systems-to-new-devices-using-suse-manager-autoinstallation/</guid><description>
&lt;h1&gt;Understand the SUSE Manager Autoinstallation Feature&lt;/h1&gt;&lt;h2&gt;1. Define Autoinstallation&lt;span class="hx:absolute hx:-mt-20" id="1-define-autoinstallation"&gt;&lt;/span&gt;
&lt;a href="#1-define-autoinstallation" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;讓 SUSE 管理員（SUMA）能夠遠端安裝作業系統在以下兩種狀況的主機上：
&lt;ul&gt;
&lt;li&gt;尚未安裝過系統的裸機伺服器&lt;/li&gt;
&lt;li&gt;或是被 SUMA 管理的虛擬主機上的「blank 空白」虛擬機器&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;透過一個 「autoinstallation file」控制作業系統的安裝
&lt;ul&gt;
&lt;li&gt;在 SLES 情況下，使用「AutoYaST XML 檔案」&lt;/li&gt;
&lt;li&gt;在 RHEL 情況下，使用「KickStart 檔案」&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;目標是：
&lt;ul&gt;
&lt;li&gt;把伺服器硬體放入架子上，&lt;/li&gt;
&lt;li&gt;插上網路線，&lt;/li&gt;
&lt;li&gt;開機後，走開就好。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;將裸機部署到完全由 SUMA 管理的 Salt Minion 中的兩步程序
&lt;ul&gt;
&lt;li&gt;Autoprovisioning(自動配置) 使 SUMA 知道該裸機。&lt;/li&gt;
&lt;li&gt;一旦自動配置，自動安裝就會自動進行。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;2. Understand Autoinstallation Process Flow&lt;span class="hx:absolute hx:-mt-20" id="2-understand-autoinstallation-process-flow"&gt;&lt;/span&gt;
&lt;a href="#2-understand-autoinstallation-process-flow" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h2&gt;3. List High-Level Autoinstallation Implementation Steps&lt;span class="hx:absolute hx:-mt-20" id="3-list-high-level-autoinstallation-implementation-steps"&gt;&lt;/span&gt;
&lt;a href="#3-list-high-level-autoinstallation-implementation-steps" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;h1&gt;&lt;/h1&gt;&lt;h1&gt;&lt;/h1&gt;</description></item><item><title>Storage Management</title><link>https://blog.kubeantony.com/archive/suse/storage-management/</link><pubDate>Mon, 10 Apr 2023 05:57:48 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/storage-management/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;/div&gt;
&lt;h1&gt;Understand the Linux I/O Stack&lt;/h1&gt;&lt;h2&gt;Linux IO Stack&lt;span class="hx:absolute hx:-mt-20" id="linux-io-stack"&gt;&lt;/span&gt;
&lt;a href="#linux-io-stack" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;img src="https://i.imgur.com/GKsQz3g.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;h2&gt;Local Disks&lt;span class="hx:absolute hx:-mt-20" id="local-disks"&gt;&lt;/span&gt;
&lt;a href="#local-disks" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Tools to configure MBR and GPT:
&lt;ul&gt;
&lt;li&gt;YaST&lt;/li&gt;
&lt;li&gt;&lt;code&gt;fdisk&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;parted&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;MBR and GPT&lt;span class="hx:absolute hx:-mt-20" id="mbr-and-gpt"&gt;&lt;/span&gt;
&lt;a href="#mbr-and-gpt" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;GPT 是 UEFI（Unified Extensible Firmware Interface [統一可擴展韌體介面]）標準的一部分，是有點老舊的 BIOS 的繼承者。&lt;/p&gt;
&lt;p&gt;UEFI 標準已經存在好幾年了，但在過去並沒有得到硬體供應商的廣泛支持，但當微軟將其作為 Windows 8 的一項要求時（約2012年），情況發生了變化。&lt;/p&gt;
&lt;p&gt;GPT 克服了傳統的 MBR 分區表的限制，它最多有 4 個主分區，最大的磁碟分大小（512 byte sectors [磁區]）為 2 TB。使用 GPT，你可以有 127 個分區，而磁碟的大小可以達到 zettabyte 範圍。&lt;/p&gt;
&lt;p&gt;即使你的主板沒有配備 UEFI，你仍然可以使用 GPT，但無法啟動作業系統，也就是說 BIOS 是可以使用 GPT 分區表的硬碟來作為資料碟的，但不能引導系統。&lt;/p&gt;
&lt;p&gt;注意：由於設備檔案有主次之分，目前 Linux 中每個磁碟的最大分區數量被限制在 15 個，即使 GPT 可以管理更多的分區。&lt;/p&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Master Boot Record(MBR) 的組成&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Boot loader (446 bytes)&lt;/li&gt;
&lt;li&gt;Partition table (64 bytes)&lt;/li&gt;
&lt;li&gt;Magic number (2 bytes)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Partition Limited to 2 TB hard disks&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Globally Unique Partition Table(GPT) 的組成&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Protected MBR (512 bytes)&lt;/li&gt;
&lt;li&gt;GPT Header (512 bytes)&lt;/li&gt;
&lt;li&gt;Partition entries (128 bytes ea.)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Partition Limited to 9.2 ZB hard disks&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Device Files for Hard Disks with MBR&lt;span class="hx:absolute hx:-mt-20" id="device-files-for-hard-disks-with-mbr"&gt;&lt;/span&gt;
&lt;a href="#device-files-for-hard-disks-with-mbr" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Primary Partitions:&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/dev/sdx1&lt;/code&gt;, &lt;code&gt;/dev/sdx2&lt;/code&gt;, &lt;code&gt;/dev/sdx3&lt;/code&gt;, &lt;code&gt;/dev/sdx4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;One Partition can be an Extended Partition&lt;/li&gt;
&lt;li&gt;Partitions within an Extended Partition are called Logical Partitions&lt;/li&gt;
&lt;li&gt;First Logical Partition is &lt;code&gt;/dev/sdx5&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;With GPT you only have primary partitions and they are numbered from 1 on up.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;parted vs. fdisk&lt;span class="hx:absolute hx:-mt-20" id="parted-vs-fdisk"&gt;&lt;/span&gt;
&lt;a href="#parted-vs-fdisk" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;fdisk&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Traditional disk partitioning utility(工具)&lt;/li&gt;
&lt;li&gt;Utilizes a prompt-based interactive user interface (使用提示式互動用戶界面)&lt;/li&gt;
&lt;li&gt;Must be executed with the disk being partitioned as the argument(參數)
&lt;ul&gt;
&lt;li&gt;Example: &lt;code&gt;fdisk /dev/sda&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;parted&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;More powerful but more complex partitioning utility&lt;/li&gt;
&lt;li&gt;Supports GPT and 2TB+ partitions&lt;/li&gt;
&lt;li&gt;Can detect, create, delete, resize and move partitions containing swap, ext[2,3,4], reiserfs and VFAT file systems&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Manage Partitions with parted&lt;span class="hx:absolute hx:-mt-20" id="manage-partitions-with-parted"&gt;&lt;/span&gt;
&lt;a href="#manage-partitions-with-parted" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Select device to edit: &lt;code&gt;select &amp;lt;device&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;List partitions: &lt;code&gt;print [devices|free]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Create partition:
&lt;code&gt;mkpart &amp;lt;part-type&amp;gt; [&amp;lt;fs-type&amp;gt;] &amp;lt;start&amp;gt; &amp;lt;end&amp;gt;&lt;/code&gt;
&lt;code&gt;&amp;lt;part-type&amp;gt;&lt;/code&gt;: &lt;code&gt;primary&lt;/code&gt;, &lt;code&gt;logical&lt;/code&gt;, &lt;code&gt;extended&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Delete partition: &lt;code&gt;rm &amp;lt;part-number&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Resize partition: &lt;code&gt;resize &amp;lt;part-number&amp;gt; &amp;lt;end&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Help: &lt;code&gt;help&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Quit: &lt;code&gt;quit&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;預設情況下，parted 會嘗試調整分割區的開始和結束位置，以符合磁區大小。如果不可能進行調整，你將會收到警告：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;The resulting partition is not properly aligned for best performance.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;你可以使用選項 &lt;code&gt;-a &amp;lt;alignment-type&amp;gt;&lt;/code&gt; 來改變此行為。有效的 alignment-types (對齊類型)包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;none&lt;/code&gt;：使用磁碟類型允許的最小對齊方式。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cylinder&lt;/code&gt;：將分割區對齊到柱面。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;minimal&lt;/code&gt;：使用 disk topology (磁碟拓撲)資訊中提供的最小對齊方式。
&lt;ul&gt;
&lt;li&gt;此選項和 &lt;code&gt;opt&lt;/code&gt; 值會使用磁碟提供的佈局資訊將邏輯分割表地址對齊到實際磁碟區塊上。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;min&lt;/code&gt; 值是將分割區正確對齊到實體區塊所需的最小對齊，有助於避免效能下降。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;optimal&lt;/code&gt;：使用磁碟拓撲資訊中提供的最佳對齊方式。此選項會將分割區對齊到實體區塊大小的倍數，以保證最佳效能。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h1&gt;Recognize Traditional Linux File Systems&lt;/h1&gt;&lt;h2&gt;Supported Filesystems&lt;span class="hx:absolute hx:-mt-20" id="supported-filesystems"&gt;&lt;/span&gt;
&lt;a href="#supported-filesystems" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Ext2&lt;/li&gt;
&lt;li&gt;Ext3 (default in SLE11)&lt;/li&gt;
&lt;li&gt;Ext4&lt;/li&gt;
&lt;li&gt;XFS (default in SLE12 for data partitions)&lt;/li&gt;
&lt;li&gt;Btrfs (default in SLE12 for /)&lt;/li&gt;
&lt;li&gt;JFS (existing volumes only)&lt;/li&gt;
&lt;li&gt;NTFS-3G (only in SLED)&lt;/li&gt;
&lt;li&gt;VFAT&lt;/li&gt;
&lt;li&gt;ReiserFS (default in SLE10) is no longer supported&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;strong&gt;Ext2&lt;/strong&gt; 是目前 Linux 支援的最古老和成熟的檔案系統，但它不支援諸如 sub-block allocation (子塊分配)和 journaling (日誌) &amp;hellip;等較新的檔案系統功能。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ext3&lt;/strong&gt; 是一種成熟穩定的 journaled file system (日誌檔案系統)，在 SLE11 中是預設的檔案系統，它是一個適用於各種用途的高效檔案系統，穩定性很好，由於長期使用和開發，所以幾乎沒有錯誤。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ext4&lt;/strong&gt; 是 Ext 檔案系統的第四代，同樣支援日誌，但可選擇關閉，與 ext3 相比，Ext4 的其他新功能有：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;multi block allocation&lt;/li&gt;
&lt;li&gt;delayed allocation&lt;/li&gt;
&lt;li&gt;journal checksum&lt;/li&gt;
&lt;li&gt;fast fsck&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;XFS&lt;/strong&gt; 是一種高性能的先進檔案系統，用於 data volumes，可以擴展到非常大的 volume 大小。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ReiserFS&lt;/strong&gt; 是一種成熟穩定的日誌檔案系統，曾經是 SLE10 的預設檔案系統，但現已被棄用，自 SLE15 起不再支援。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Btrfs&lt;/strong&gt; 是一種新型的檔案系統，結合了 ext 系列（ext2, ext3, ext4）、Reiser、XFS 和 HP aufs 等檔案系統的優點。Btrfs 解決了一些儲存挑戰，包括&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Massive Scalability (大規模擴展)&lt;/li&gt;
&lt;li&gt;Data Integrity (數據完整性)&lt;/li&gt;
&lt;li&gt;Dynamic Expand and Shrink (動態擴展和收縮)&lt;/li&gt;
&lt;li&gt;Built-in Volume Management (內建卷管理)&lt;/li&gt;
&lt;li&gt;廣泛應用於伺服器、桌面和行動裝置，適合在雲端運作&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;JFS&lt;/strong&gt; 是 IBM 開發的較老的檔案系統，現在已經過時，不再開發，且支援有限。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NTFS-3G&lt;/strong&gt; 是一種在使用者空間中的 fuse（檔案系統），僅包含在桌面發行版（SUSE Linux Enterprise Desktop）中。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;VFAT&lt;/strong&gt; 支援 Microsoft FAT 檔案系統的各種版本，包括 12位元、16 位元和 32 位元的 FAT，還支援長檔案名稱等新功能。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Virtual Filesystem Switch&lt;span class="hx:absolute hx:-mt-20" id="virtual-filesystem-switch"&gt;&lt;/span&gt;
&lt;a href="#virtual-filesystem-switch" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/qm7RfWe.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;對於使用者或程式，使用哪種檔案系統格式並不重要，因為它們總是會看到相同的資料介面。這是由 Virtual Filesystem Switch (VFS)（也稱為 virtual file system [虛擬檔案系統]）實現的。&lt;/p&gt;
&lt;p&gt;VFS 是核心中的抽象層級，為程序提供定義的介面，包括打開檔案、寫入檔案和從檔案讀取等功能。&lt;/p&gt;
&lt;p&gt;程式不必擔心檔案存取是如何實現的，VFS 會將這些請求轉發給相應的檔案系統格式驅動程式。&lt;/p&gt;
&lt;p&gt;VFS 的其中一個特點是顯示檔案屬性給使用者，這些屬性是從 UNIX 檔案系統格式中得知的，包括存取權限，即使在 FAT/VFAT 中不存在，VFS 也會顯示。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Create File Systems from the CLI&lt;span class="hx:absolute hx:-mt-20" id="create-file-systems-from-the-cli"&gt;&lt;/span&gt;
&lt;a href="#create-file-systems-from-the-cli" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mkfs -t &amp;lt;type&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mkfs.ext2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mkfs.ext3&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mkfs.ext4&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mkfs.btrfs&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mkfs.xfs&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mkfs.vfat&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mk2fs&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;code&gt;mke2fs&lt;/code&gt; 和 &lt;code&gt;mkfs.ext3&lt;/code&gt; 等指令，它們用於建立例如 ext2 和 ext3 等檔案系統。&lt;/p&gt;
&lt;p&gt;使用 &lt;code&gt;mkfs&lt;/code&gt; 指令，它是用於建立檔案系統的實際指令的前端，例如 &lt;code&gt;mkfs.ext2&lt;/code&gt;、&lt;code&gt;mkfs.ext3&lt;/code&gt; 或 &lt;code&gt;mkfs.vfat&lt;/code&gt; 等。&lt;/p&gt;
&lt;p&gt;當使用 &lt;code&gt;mkfs&lt;/code&gt; 時，您需要使用 &lt;code&gt;-t&lt;/code&gt; 選項來指定要創建的檔案系統類型，如果沒有指定檔案系統類型，&lt;code&gt;mkfs&lt;/code&gt;將自動創建一個 ext2 檔案系統。&lt;/p&gt;
&lt;p&gt;當您使用 &lt;code&gt;mkfs&lt;/code&gt; 創建 ext2、ext3 或 ext4 檔案系統時，可以使用以下選項：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-b &amp;lt;blocksize&amp;gt;&lt;/code&gt;：指定檔案系統中資料區塊的大小，可使用 1024、2048 和 4096 等值作為資料區塊大小。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-i &amp;lt;bytes_per_inode&amp;gt;&lt;/code&gt;：指定檔案系統上要建立多少索引節點。對於 &lt;code&gt;&amp;lt;bytes_per_inode&amp;gt;&lt;/code&gt;，您可以使用可用於資料區塊大小的相同值。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-j&lt;/code&gt;：在檔案系統上創建一個 ext3/ext4 日誌。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果不包括 &lt;code&gt;-b&lt;/code&gt; 和 &lt;code&gt;-i&lt;/code&gt; 選項，mkfs 將根據磁碟分割區的大小設置資料區塊大小和索引節點數量。&lt;/p&gt;
&lt;p&gt;以下是在一個磁碟分割區上創建 ext3 檔案系統的示例。請注意，按下 Enter 鍵後將直接格式化分割區，不需要進行任何確認：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; mkfs -t ext3 /dev/sdb6&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mke2fs 1.41.9 (22-Aug-2009)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
264000 inodes, 1053952 blocks
52697 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1082130432
33 block groups
32768 blocks per group, 32768 fragments per group
8000 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to
override&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;上面 &lt;code&gt;mkfs&lt;/code&gt; 的例子是在現有的分割區上建立一個 ext3 檔案系統，其值如下：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;資料區塊大小=4024 (log=2)：資料區塊大小為 4 KB。&lt;/li&gt;
&lt;li&gt;264000 個索引節點，1053952 個資料區塊：最大檔案和目錄數量為 62248、總資料區塊數量為 248976。&lt;/li&gt;
&lt;li&gt;52697 個資料區塊 (5.00%) 被保留給超級使用者：整個空間的 5% 被保留給系統管理員。如果硬碟已滿 95%，則一般使用者將無法再使用更多空間。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Mount File Systems&lt;span class="hx:absolute hx:-mt-20" id="mount-file-systems"&gt;&lt;/span&gt;
&lt;a href="#mount-file-systems" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;檔案系統被掛載在目錄上&lt;/li&gt;
&lt;li&gt;Mount file system:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mount [-t &amp;lt;fstype&amp;gt;] [-o &amp;lt;options&amp;gt;] &amp;lt;device&amp;gt; &amp;lt;mount_point&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Example: &lt;code&gt;mount -t ext3 /dev/sda3 /usr&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Unmount file system: &lt;code&gt;umount&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Examples:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;umount /usr&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;umount /dev/sda3&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Default mount point for removable media:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/run/media/&amp;lt;user&amp;gt;/&amp;lt;media-label&amp;gt;/&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Display UUIDs of block devices: &lt;code&gt;blkid&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;在 Windows 系統中，磁碟機透過字母代表不同的磁碟分區。&lt;/p&gt;
&lt;p&gt;Linux 系統則不使用字母來指定分區，而是將分區掛載到檔案系統中的目錄上，這些目錄也稱為 mount point (掛載點)。&lt;/p&gt;
&lt;p&gt;例如，在 Linux 系統中添加一個新的硬碟，需要先進行分區和格式化，然後使用檔案系統中的目錄（例如 &lt;code&gt;/data/&lt;/code&gt;）並使用 &lt;code&gt;mount&lt;/code&gt; 指令將該硬碟掛載到該目錄上。&lt;/p&gt;
&lt;p&gt;注意：你也可以掛載通過網路檔案系統 (NFS) 共享的遠端檔案系統到你的檔案系統中自行建立的目錄上。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;/mnt/&lt;/code&gt; 目錄被預設用來臨時掛載本地和遠端的檔案系統。
所有 removable devices 的預設掛載點為 &lt;code&gt;/rur/media/&amp;lt;user&amp;gt;/&amp;lt;media-label&amp;gt;/&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;Example of the &lt;code&gt;blkid&lt;/code&gt; command:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; blkid &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;/dev/sda1: UUID=&amp;#34;b78aab0b-8dcd-40fa-b0cb-d226513f6fec&amp;#34; TYPE=&amp;#34;swap&amp;#34; PARTUUID=&amp;#34;000b2809-01&amp;#34;
/dev/sda2: UUID=&amp;#34;ae116d46-ebe9-41fe-afe1-c912210d75be&amp;#34; UUID_SUB=&amp;#34;15289165-3c20-476b-90bd964863e0848f&amp;#34; TYPE=&amp;#34;btrfs&amp;#34; PTTYPE=&amp;#34;dos&amp;#34; PARTUUID=&amp;#34;000b2809-02&amp;#34;
/dev/sr0: UUID=&amp;#34;2014-10-01-09-42-14-00&amp;#34; LABEL=&amp;#34;SLE-12-Server-DVD-x86_6409341&amp;#34; TYPE=&amp;#34;iso9660&amp;#34;
PTUUID=&amp;#34;5fadddb3&amp;#34; PTTYPE=&amp;#34;dos&amp;#34;
/dev/sr1: UUID=&amp;#34;2014-10-01-09-42-20-00&amp;#34; LABEL=&amp;#34;SLE-12-Desktop-DVD-x86_6405501&amp;#34; TYPE=&amp;#34;iso9660&amp;#34;
PTUUID=&amp;#34;6172016e&amp;#34; PTTYPE=&amp;#34;dos&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;/etc/fstab&lt;span class="hx:absolute hx:-mt-20" id="etcfstab"&gt;&lt;/span&gt;
&lt;a href="#etcfstab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;在 Linux 系統中，檔案系統和它們的掛載點（mount points）是在 &lt;code&gt;/etc/fstab&lt;/code&gt; 檔案中。每一行都有六個欄位，用於掛載每個檔案系統，這些欄位分別提供以下掛載檔案系統的資訊：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;第一個欄位：列出裝置檔案的名稱、檔案系統標籤或 UUID。使用 &lt;code&gt;LABEL=&amp;lt;label&amp;gt;&lt;/code&gt; 或 &lt;code&gt;UUID=&amp;lt;uuid&amp;gt;&lt;/code&gt; 可以確保即使使用的裝置檔案變更（例如更換 IDE 控制器上的硬碟），該分割區也能正確掛載。&lt;/li&gt;
&lt;li&gt;第二個欄位：列出掛載點，即該檔案系統應該掛載在的目錄。此處指定的目錄必須已經存在。您可以通過切換到相應的目錄訪問媒體內容。&lt;/li&gt;
&lt;li&gt;第三個欄位：列出檔案系統類型（例如 ext3、XFS）。&lt;/li&gt;
&lt;li&gt;第四個欄位：顯示掛載選項。多個掛載選項用逗號分隔（例如 noauto、user、sync）。&lt;/li&gt;
&lt;li&gt;第五個欄位：指示是否使用備份程式（dump utility）進行檔案系統備份。0 表示不備份。&lt;/li&gt;
&lt;li&gt;第六個欄位：指示開機時使用 fsck 程式檢查檔案系統的順序：
&lt;ul&gt;
&lt;li&gt;0：不檢查的檔案系統&lt;/li&gt;
&lt;li&gt;1：根目錄&lt;/li&gt;
&lt;li&gt;2：所有其他可修改的檔案系統（不同驅動器上的檔案系統並行檢查）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;雖然 &lt;code&gt;/etc/fstab&lt;/code&gt; 列出了開機時需要掛載的檔案系統及其掛載點，但它不包含任何在開機後掛載的檔案系統的資訊。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;/etc/mtab&lt;/code&gt; 檔案列出了當前已掛載的檔案系統及其掛載點。&lt;code&gt;mount&lt;/code&gt; 和 &lt;code&gt;umount&lt;/code&gt; 指令會影響已掛載檔案系統的狀態並修改 &lt;code&gt;/etc/mtab&lt;/code&gt; 檔案。&lt;/p&gt;
&lt;p&gt;Using &lt;code&gt;mount&lt;/code&gt;, you can override the default settings in &lt;code&gt;/etc/fstab&lt;/code&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Mount Options for mount and /etc/fstab&lt;span class="hx:absolute hx:-mt-20" id="mount-options-for-mount-and-etcfstab"&gt;&lt;/span&gt;
&lt;a href="#mount-options-for-mount-and-etcfstab" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;remount&lt;/code&gt;，File system can be mounted more than once&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rw, ro&lt;/code&gt;， File system is writeable or read-only&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sync, async&lt;/code&gt;，Synchronous(同步) or asynchronous(不同步) input and output&lt;/li&gt;
&lt;li&gt;&lt;code&gt;atime, noatime&lt;/code&gt;，Access time of a file is updated or not&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nodev, dev&lt;/code&gt;，Device files from being interpreted as such or not&lt;/li&gt;
&lt;li&gt;&lt;code&gt;noexec, exec&lt;/code&gt;，Prohibit the execution of programs or not&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nosuid, suid&lt;/code&gt;， Ignore SUID and SGID bits or not&lt;/li&gt;
&lt;li&gt;&lt;code&gt;auto, noauto&lt;/code&gt;，Mount file system automatically or not&lt;/li&gt;
&lt;li&gt;&lt;code&gt;user, nouser&lt;/code&gt;， Allow user to mount file system or not&lt;/li&gt;
&lt;li&gt;&lt;code&gt;defaults&lt;/code&gt;， rw, suid, dev, exec, auto, nouser, and async&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;blockquote&gt;
&lt;p&gt;The &lt;code&gt;noauto&lt;/code&gt; and &lt;code&gt;user&lt;/code&gt; options are usually combined for removable media such as removable medias.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h2&gt;Currently Mounted File Systems&lt;span class="hx:absolute hx:-mt-20" id="currently-mounted-file-systems"&gt;&lt;/span&gt;
&lt;a href="#currently-mounted-file-systems" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Command:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mount&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Files:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/etc/mtab&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/proc/mounts&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;code&gt;/etc/mtab&lt;/code&gt; 列出了當前掛載的檔案系統和它們的掛載點。&lt;/p&gt;
&lt;p&gt;在某些情況下，用 mount 指令無法正確顯示已掛載的檔案系統。&lt;/p&gt;
&lt;p&gt;核心還保留了&lt;code&gt;/proc/mounts&lt;/code&gt; 的信息，它列出了所有當前 mounted partitions (掛載的分區)。&lt;/p&gt;
&lt;p&gt;如果 &lt;code&gt;/proc/mounts&lt;/code&gt; 與 &lt;code&gt;/etc/mtab&lt;/code&gt; 的資訊有衝突，則 &lt;code&gt;/proc/mounts&lt;/code&gt; 的資訊總是比 &lt;code&gt;/etc/mtab&lt;/code&gt; 更正確和最新。&lt;/p&gt;
&lt;p&gt;這種情況可能發生在安裝作業系統到 USB 隨身碟時，若沒有內部硬碟連接，或是重新啟動時未正確掛載 USB 隨身碟等。這些情況可能會讓核心的列舉過程出錯，導致 &lt;code&gt;/etc/mtab&lt;/code&gt; 和 &lt;code&gt;/proc/mounts&lt;/code&gt; 的資訊不同步。&lt;/p&gt;
&lt;p&gt;因此，如果有疑問，就要始終相信 &lt;code&gt;/proc/*&lt;/code&gt; 檔案反映的是核心實際看到的東西。&lt;code&gt;/proc/mounts&lt;/code&gt; 列出了核心實際掛載的檔案系統，也就是核心真正進行掛載的資訊。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;File System Health Tools&lt;span class="hx:absolute hx:-mt-20" id="file-system-health-tools"&gt;&lt;/span&gt;
&lt;a href="#file-system-health-tools" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;df&lt;/code&gt;，Reports file system disk space usage(使用狀況)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;du&lt;/code&gt;，Estimate(估計) file space usage&lt;/li&gt;
&lt;li&gt;&lt;code&gt;lsof&lt;/code&gt;，Lists open files&lt;/li&gt;
&lt;li&gt;&lt;code&gt;fuser&lt;/code&gt;，Displays the PIDs of processes using the specified files&lt;/li&gt;
&lt;li&gt;&lt;code&gt;fsck, e2fsck, xfs_check&lt;/code&gt;，Check and optionally(可選擇的) repair Linux file systems&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tune2fs&lt;/code&gt;，Adjust tunable(可調整的) file system parameters(參數) on ext2/ext3/ext4 file systems&lt;/li&gt;
&lt;li&gt;&lt;code&gt;resize2fs&lt;/code&gt;，ext2/ext3/ext4 file systems&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;df 命令&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;提供硬碟和它們的分區或其他磁碟在檔案系統中掛載的資訊，以及它們佔用的空間大小。&lt;/p&gt;
&lt;p&gt;如果使用不帶參數的 df 命令，會顯示目前所有已掛載檔案系統上的可用空間。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;如果提供檔案名稱，df 會顯示此檔案所在檔案系統上的可用空間。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;一些有用的選項包括 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-h&lt;/code&gt;，以 MB 或 GB 顯示人類可讀格式&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-i&lt;/code&gt;，顯示 inode 資訊而非區塊使用情況&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;，限制僅列出本機檔案系統&lt;/li&gt;
&lt;li&gt;例如，要以人類可讀格式列出所有本機檔案系統的資訊，可以輸入 &lt;code&gt;df -lh&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;du 命令&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;提供檔案和目錄佔用的空間資訊。&lt;/p&gt;
&lt;p&gt;一些有用的選項包括&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-c&lt;/code&gt;，顯示總計&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-h&lt;/code&gt;，以人類可讀格式顯示&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-s&lt;/code&gt;，僅顯示每個引數的總計&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--exclude=&amp;lt;pattern&amp;gt;&lt;/code&gt;，排除符合模式的檔案&lt;/li&gt;
&lt;li&gt;例如，要以人類可讀格式顯示檔案資訊，但排除以 &lt;code&gt;.o&lt;/code&gt; 結尾的檔案，可以輸入以下指令：&lt;code&gt;du -h --exclude='*.o'&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;lsof 命令&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;列出開啟的檔案。&lt;/p&gt;
&lt;p&gt;如果不使用任何選項輸入 lsof，會列出所有屬於所有活動程序的開啟檔案。&lt;/p&gt;
&lt;p&gt;開啟的檔案可以是常規檔案、目錄、設備檔案、庫、串流或網路檔案（Internet socket、NFS 檔案或 UNIX domain socket）。&lt;/p&gt;
&lt;p&gt;lsof 命令可以列出當前正在開啟的檔案資訊，也可以使用 -r 選項以重複模式執行，重複顯示輸出結果直到接收到中斷或結束訊號。&lt;/p&gt;
&lt;p&gt;一些常用的選項包括&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-c &amp;lt;character&amp;gt;&lt;/code&gt;，僅列出檔案名稱以指定字元開頭的檔案&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-s&lt;/code&gt;，顯示檔案大小&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u &amp;lt;user1&amp;gt;,&amp;lt;user2&amp;gt;&lt;/code&gt;，僅列出指定使用者所開啟的檔案&lt;/li&gt;
&lt;li&gt;例如，要列出 root 和 geeko 使用中的開啟檔案及其檔案大小，您可以輸入 &lt;code&gt;lsof -s -u root,geeko&lt;/code&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;fuser 命令&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;顯示使用指定檔案或檔案系統的程序 ID。在預設顯示模式下，每個檔案名稱後面跟一個字母，該字母描述訪問方式的類型：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;c&lt;/code&gt;：當前目錄&lt;/li&gt;
&lt;li&gt;&lt;code&gt;e&lt;/code&gt;：正在運行的可執行檔&lt;/li&gt;
&lt;li&gt;&lt;code&gt;f&lt;/code&gt;：已開啟檔案（在預設顯示模式下省略）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;r&lt;/code&gt;：根目錄&lt;/li&gt;
&lt;li&gt;&lt;code&gt;m&lt;/code&gt;：映射到內存的檔案或共享庫&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果沒有存取指定的檔案，或者發生致命錯誤，則顯示非零返回代碼。如果找到至少一個存取，fuser 則返回零。&lt;/p&gt;
&lt;p&gt;一些有用的選項 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-a&lt;/code&gt;，可以返回所有檔案的信息，即使它們沒有被任何程序訪問&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-v&lt;/code&gt;，則是詳細模式，可以顯示更多詳細信息&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u&lt;/code&gt;，會在每個 PID 後面附加程序所有者的用戶名。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-m&lt;/code&gt;，可以檢查訪問 &lt;code&gt;/home&lt;/code&gt; 分區上檔案的程序的 PID 信息。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;fsck 命令&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;fsck 是一個用來檢查和修復 Linux 檔案系統的指令。&lt;/p&gt;
&lt;p&gt;BtrFS 的進階功能需要特定的 BtrFS 工具才能處理。&lt;/p&gt;
&lt;p&gt;通常情況下，fsck 會在不同的實體磁碟驅動器上並行運行檔案系統，以減少檢查所有檔案系統所需的總時間。&lt;/p&gt;
&lt;p&gt;如果您沒有在命令行上指定檔案系統並且沒有指定 &lt;code&gt;-A&lt;/code&gt; 選項，fsck 將按照 &lt;code&gt;/etc/fstab &lt;/code&gt;中的順序順序檢查檔案系統。&lt;/p&gt;
&lt;p&gt;fsck 是系統上可用的各種檔案系統檢查器(&lt;code&gt;fsck.&amp;lt;fstype&amp;gt;&lt;/code&gt;）的前端。&lt;/p&gt;
&lt;p&gt;fsck 工具首先在 &lt;code&gt;/sbin/&lt;/code&gt; 中查找 system-specific checker (系統特定的檢查器)，然後在 &lt;code&gt;/etc/fs/&lt;/code&gt; 和 &lt;code&gt;/etc/&lt;/code&gt; 中查找，最後在列在 &lt;code&gt;PATH&lt;/code&gt; 環境變數中的目錄中查找。&lt;/p&gt;
&lt;p&gt;要檢查特定的檔案系統，請使用以下語法：&lt;code&gt;fsck &amp;lt;device&amp;gt;&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;舉例來說，如果您想要檢查 /dev/sda2 這個檔案系統，您可以輸入 &lt;code&gt;fsck /dev/sda2&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;fsck 提供了一些選項，例如&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-A&lt;/code&gt;，透過 /etc/fstab 檔案並嘗試一次性檢查所有檔案系統&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-N&lt;/code&gt;，僅顯示會執行什麼，而不執行&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-V&lt;/code&gt;，詳細輸出&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在 Linux 系統中斷電或沒有將分割區卸載的情況下關閉電腦，可能會導致檔案系統出現錯誤。&lt;/p&gt;
&lt;p&gt;下次開機時，會偵測到電腦未正確關閉，並進行檔案系統檢查。如果檔案系統中發現錯誤，會嘗試進行修復。如果無法修復，電腦將無法正常啟動，您需要輸入 root 密碼並提供有關如何解決問題的提示。在檔案系統嚴重損壞的情況下，您甚至可能需要使用救援系統來修復系統。&lt;/p&gt;
&lt;p&gt;根據檔案系統的類型，您可以使用相應的工具（例如 &lt;code&gt;/sbin/e2fsck&lt;/code&gt;、&lt;code&gt;/sbin/reiserfsck&lt;/code&gt; 或 &lt;code&gt;/sbin/xfs_check&lt;/code&gt;）。這些工具檢查檔案系統的 correct superblock (正確超級塊[位於包含檔案系統結構資訊的分割區開頭的區塊]）、有問題的資料區塊或資料區塊配置錯誤。&lt;/p&gt;
&lt;p&gt;在 ext2（或 ext3/4）檔案系統中可能的問題是 superblock (超級塊) 的損壞。您可以使用 &lt;code&gt;dumpe2fs&lt;/code&gt; 查看檔案系統中所有超級塊的位置。&lt;/p&gt;
&lt;p&gt;然後，使用 &lt;code&gt;e2fsck&lt;/code&gt;，您可以使用其中一個備份副本，如以下示例：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;e2fsck -f -b 32768 /dev/sda1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;這個例子是在說明如何使用 ext2 檔案系統的儲存區塊 32768 裡的超級區塊，並在檔案系統檢查完成後適當地更新主要超級區塊。&lt;/p&gt;
&lt;p&gt;Note: 在一個 4KB 的區塊大小中，每隔 32768 個區塊就會儲存一個超級區塊的備份。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;在 ext2、ext3 和 ext4 檔案系統格式中，有一個特別的 &lt;code&gt;lost+found&lt;/code&gt; 目錄。當系統發生崩潰時，Linux 會自動檢查整個檔案系統。那些無法分配名稱的檔案或檔案片段不會直接被刪除，而是會儲存在這個目錄中。&lt;/p&gt;
&lt;p&gt;透過檢視這個目錄的內容，您可以試著還原出檔案的原始名稱和用途。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h1&gt;Configure Logical Volume Management (LVM)&lt;/h1&gt;&lt;h2&gt;LVM&lt;span class="hx:absolute hx:-mt-20" id="lvm"&gt;&lt;/span&gt;
&lt;a href="#lvm" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Front end to the device mapper to easily and flexibly(靈活的) &lt;strong&gt;manage logical storage&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Supports features such as:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;On-line volume creation&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;On-line volume resizing&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copy-on-write snapshots&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;LVM Components&lt;span class="hx:absolute hx:-mt-20" id="lvm-components"&gt;&lt;/span&gt;
&lt;a href="#lvm-components" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;LVM 是用來更靈活地管理儲存空間的工具&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Physical Volumes (PV) - 包含 LVM metadata 的物理裝置
&lt;ul&gt;
&lt;li&gt;物理硬碟、磁碟分割區、RAID volumes&lt;/li&gt;
&lt;li&gt;Physical Volumes 被組成 Volume Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Physical Extent (PE) - 在 LVM Group 中分配的基本存儲單位
&lt;ul&gt;
&lt;li&gt;Physical Volumes 包含 PE&lt;/li&gt;
&lt;li&gt;包含資料的 PE 可從一個 Physical Volume 移動到另一個 PV&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Volume Groups (VG) - Physical Volumes 的集合
&lt;ul&gt;
&lt;li&gt;VG 必須被細分為 Logical Volumes 才能使用存儲空間&lt;/li&gt;
&lt;li&gt;VG 可以通過添加或刪除 Physical Volumes 來調整大小&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Logical Volumes (LV) - VG 的細分
&lt;ul&gt;
&lt;li&gt;可包含可掛載的檔案系統&lt;/li&gt;
&lt;li&gt;可在線調整 Logical Volumes 的大小和建立快照&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;LVM extents 應該比 4MB 大得多，例如 128MB。這樣可以減少 overhead(開銷)。&lt;/p&gt;
&lt;p&gt;LVM extents 應該與儲存空間對齊。這意味著它們應該適合於 1MB 的邊界。可以使用 &lt;code&gt;pvs +o pe_start&lt;/code&gt; 命令檢查。&lt;/p&gt;
&lt;p&gt;如果可能，volume manager 的 Stripe (條帶)大小應與儲存系統對齊。參見 &lt;code&gt;man lvcreate&lt;/code&gt; 中的 &lt;code&gt;--stripes&lt;/code&gt; 和 &lt;code&gt;--stripesize&lt;/code&gt; 選項。&lt;/p&gt;
&lt;p&gt;LVM 層對性能只有輕微的影響。在測試中（多年前）發現了 3-5％ 的性能下降。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;LVM Configuration File /etc/lvm/lvm.conf&lt;span class="hx:absolute hx:-mt-20" id="lvm-configuration-file-etclvmlvmconf"&gt;&lt;/span&gt;
&lt;a href="#lvm-configuration-file-etclvmlvmconf" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Is loaded during the initialization phase of LVM&lt;/li&gt;
&lt;li&gt;Is used by certain LVM tools&lt;/li&gt;
&lt;li&gt;Is comprised of a series of sections, with each section containing one or more directives
&lt;ul&gt;
&lt;li&gt;這個設定檔是由一系列「區段」所組成，每個區段都包含一個或多個「指令」&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;LVM Services&lt;span class="hx:absolute hx:-mt-20" id="lvm-services"&gt;&lt;/span&gt;
&lt;a href="#lvm-services" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/usr/lib/systemd/system/lvm2-lvmetad.service&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Metadata caching daemon for LVM (lvmetad)&lt;/li&gt;
&lt;li&gt;Receives notifications(通知) from udev rules&lt;/li&gt;
&lt;li&gt;Has an up-to-date and consistent image of the available volume groups&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/usr/lib/systemd/system/lvm2-monitor.service&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Executes &lt;code&gt;vgchange --monitor y&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Start or stop monitoring a mirrored or snapshot logical volume with &lt;code&gt;dmeventd&lt;/code&gt;, if it is installed&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;lvmetad 是 LVM 的 Metadata 緩存背景程序。此背景程序接收 udev 規則的通知（在使用 lvmetad 時必須安裝此規則才能正常工作）。&lt;/p&gt;
&lt;p&gt;通過這些通知，lvmetad 具有系統中可用 VG 的最新且一致的映像。&lt;/p&gt;
&lt;p&gt;預設情況下，即使運行，LVM 也不會使用 &lt;code&gt;lvmetad&lt;/code&gt;。&lt;/p&gt;
&lt;h2&gt;Create LVM Physical Volumes&lt;span class="hx:absolute hx:-mt-20" id="create-lvm-physical-volumes"&gt;&lt;/span&gt;
&lt;a href="#create-lvm-physical-volumes" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax: &lt;code&gt;pvcreate /dev/&amp;lt;device&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Partitions can be used directly&lt;/li&gt;
&lt;li&gt;若要使用完整的磁碟，需先刪除主引導紀錄中的分割表:
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;dd if=/dev/zero of=/dev/&amp;lt;device&amp;gt; bs=512 count=1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;WARNING: All data on the hard disk or partition used will be lost!&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;範例 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; pvcreate /dev/sda9&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Physical volume &amp;#34;/dev/sda9&amp;#34; successfully created&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;View LVM Physical Volume Info&lt;span class="hx:absolute hx:-mt-20" id="view-lvm-physical-volume-info"&gt;&lt;/span&gt;
&lt;a href="#view-lvm-physical-volume-info" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pvscan&lt;/code&gt;，Detect(掃描) physical volumes and volume group membership&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pvs&lt;/code&gt;，View existing physical volumes&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pvdisplay&lt;/code&gt;，View attributes(屬性) of physical volumes&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pvchange [-ay | -an]&lt;/code&gt;，Activate/Deactivate(啟用/禁用) physical volumes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Create and Activate LVM Volume Groups&lt;span class="hx:absolute hx:-mt-20" id="create-and-activate-lvm-volume-groups"&gt;&lt;/span&gt;
&lt;a href="#create-and-activate-lvm-volume-groups" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vgcreate&lt;/code&gt;，Create a volume group&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vgscan&lt;/code&gt;，Discover and list volume groups&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vgchange&lt;/code&gt;，Activate/Deactivate a volume group&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;LVM 開始運作時，並不會自動知道現有的 volume groups，需要先發現它們。&lt;/p&gt;
&lt;p&gt;透過 &lt;code&gt;vgscan&lt;/code&gt; 搜尋後，LVM 可能會知道 volume groups，但它們尚未啟用。&lt;/p&gt;
&lt;p&gt;使用 &lt;code&gt;vgchange&lt;/code&gt; 工具也可以更改其他屬性，例如調整大小。&lt;/p&gt;
&lt;p&gt;vgcreate 工具用於創建新的 volume group。如果要創建名為 system 的 volume groups 並將 physical volume &lt;code&gt;/dev/sda&lt;/code&gt;9 加入其中，請輸入以下命令：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; vgcreate system /dev/sda9&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt; Volume group &amp;#34;system&amp;#34; successfully created&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檢查&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; pvscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;PV /dev/sda9 VG system lvm2 [240,00 MB / 240,00 MB free]
Total: 1 [240,00 MB] / in use: 1 [240,00 MB] / in no VG: 0 [0 ]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;View LVM Volume Groups&lt;span class="hx:absolute hx:-mt-20" id="view-lvm-volume-groups"&gt;&lt;/span&gt;
&lt;a href="#view-lvm-volume-groups" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vgs&lt;/code&gt;，View existing discovered volume groups&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vgdisplay &amp;lt;vg_name&amp;gt;&lt;/code&gt;，View attributes of a volume group&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Examples:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; vgs&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;VG #PV #LV #SN Attr VSize VFree
vg0 4 0 0 wz--n- 4.09g 4.09g&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Values:
&lt;code&gt;VG&lt;/code&gt; – Volume group name
&lt;code&gt;#PV&lt;/code&gt; – Number of physical volumes
&lt;code&gt;#LV&lt;/code&gt; – Number of logical volumes
&lt;code&gt;#SN&lt;/code&gt; – Snapshot number
&lt;code&gt;Attr – Attributes&lt;/code&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Permissions: &lt;code&gt;(w)riteable&lt;/code&gt;, &lt;code&gt;(r)ead-only&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Resi(z)eable&lt;/code&gt; (可調整大小)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;E(x)ported&lt;/code&gt; (匯出)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;(p)artial&lt;/code&gt;: one or more physical volumes belonging to the volume group are missing from the system&lt;/li&gt;
&lt;li&gt;Allocation(分配) policy: &lt;code&gt;(c)ontiguous&lt;/code&gt;, &lt;code&gt;c(l)ing&lt;/code&gt;, &lt;code&gt;(n)ormal&lt;/code&gt;, &lt;code&gt;(a)nywhere&lt;/code&gt;, &lt;code&gt;(i)nherited&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;(c)lustered&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;code&gt;VSize&lt;/code&gt; – Size of the volume group
&lt;code&gt;VFree&lt;/code&gt; – Free space on the volume group&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;Create LVM Logical Volumes&lt;span class="hx:absolute hx:-mt-20" id="create-lvm-logical-volumes"&gt;&lt;/span&gt;
&lt;a href="#create-lvm-logical-volumes" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Create a basic logical volume:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvcreate -L &amp;lt;size&amp;gt; -n &amp;lt;lv_name&amp;gt; &amp;lt;vg_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Create a striped logical volume:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvcreate -i 3 -L &amp;lt;size&amp;gt; -n &amp;lt;lv_name&amp;gt; &amp;lt;vg_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Create a mirrored logical volume:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvcreate -m 1 -L &amp;lt;size&amp;gt; -n &amp;lt;lv_name&amp;gt; &amp;lt;vg_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Create a snapshot logical volume:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvcreate -L &amp;lt;size&amp;gt; -n &amp;lt;lv_name&amp;gt; &amp;lt;orig_lv_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Logical Volume Types&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;Logical volumes 的結構和功能不同，因此它們可以是不同的類型
Common Types (the first three are relevant in practice):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Normal&lt;/li&gt;
&lt;li&gt;Mirrored&lt;/li&gt;
&lt;li&gt;Snapshot&lt;/li&gt;
&lt;li&gt;Origin&lt;/li&gt;
&lt;li&gt;Special Types&lt;/li&gt;
&lt;li&gt;PVmove&lt;/li&gt;
&lt;li&gt;Virtual&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;To create a logical volume, use &lt;code&gt;lvcreate&lt;/code&gt;, specifying the &lt;strong&gt;size&lt;/strong&gt;, the &lt;strong&gt;name for the logical volume&lt;/strong&gt;, and the &lt;strong&gt;volume group&lt;/strong&gt;:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; lvcreate -L 100M -n data system&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Logical volume &amp;#34;data&amp;#34; created&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;View LVM Logical Volumes&lt;span class="hx:absolute hx:-mt-20" id="view-lvm-logical-volumes"&gt;&lt;/span&gt;
&lt;a href="#view-lvm-logical-volumes" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvscan&lt;/code&gt;，View/Discover logical volumes&lt;/li&gt;
&lt;li&gt;&lt;code&gt;lvs&lt;/code&gt;，Show existing logical volumes&lt;/li&gt;
&lt;li&gt;&lt;code&gt;lvdisplay&lt;/code&gt;，View attributes of logical volume(s)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;lvscan shows the device to use for the formatting and mounting:&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; lvscan&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;ACTIVE &amp;#39;/dev/system/data&amp;#39; [100,00 MB] inherit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The &lt;code&gt;lvs&lt;/code&gt; command represents the volume type in the first field of the Attr column:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;normal = &lt;code&gt;------&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;mirrored = &lt;code&gt;m-----&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;mirrored (no initial sync) = &lt;code&gt;M-----&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;snapshot = &lt;code&gt;s-----&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;snapshot (invalid) = &lt;code&gt;S-----&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;pvmove = &lt;code&gt;p-----&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;origin = &lt;code&gt;o-----&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;virtual = &lt;code&gt;v-----&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Manage LVM Physical Volumes&lt;span class="hx:absolute hx:-mt-20" id="manage-lvm-physical-volumes"&gt;&lt;/span&gt;
&lt;a href="#manage-lvm-physical-volumes" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pvmove&lt;/code&gt;，Move used PVs to a different physical volume&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pvremove&lt;/code&gt;，Remove an existing physical volume (including LVM meta-data)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pvresize&lt;/code&gt;，Resize a physical volume&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;strong&gt;在使用 &lt;code&gt;pvremove&lt;/code&gt; 從一個 VG 中移除一個 PV 之前，它的內容必須使用 &lt;code&gt;pvmove&lt;/code&gt; 移動到另一個 PV 中。&lt;/strong&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Manage LVM Volume Groups&lt;span class="hx:absolute hx:-mt-20" id="manage-lvm-volume-groups"&gt;&lt;/span&gt;
&lt;a href="#manage-lvm-volume-groups" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Extending a Volume Group&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;New Physical Volumes can be created if new storage devices become available.&lt;/li&gt;
&lt;li&gt;Volume Groups can then be extended by adding these new Physical Volumes to the Volume Groups.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Reduce a Volume Group&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pvmove&lt;/code&gt; is used to move the PEs off of the physical volume you will be removing from the group&lt;/li&gt;
&lt;li&gt;You must have at least the same amount of free space available in the volume group as there is used space on the physical volume who&amp;rsquo;s PEs you will be moving&lt;/li&gt;
&lt;li&gt;Use the &lt;code&gt;pvscan&lt;/code&gt; utility to determine Physical Volume usage&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;dm_snapshot&lt;/code&gt; kernel module must be loaded&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Manage LVM Volume Groups&lt;span class="hx:absolute hx:-mt-20" id="manage-lvm-volume-groups-1"&gt;&lt;/span&gt;
&lt;a href="#manage-lvm-volume-groups-1" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Extend a volume group (add physical volumes)
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vgextend &amp;lt;vg_name&amp;gt; /dev/&amp;lt;device&amp;gt; /dev/&amp;lt;device&amp;gt; ...&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Reduce a volume group
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;pvmove /dev/&amp;lt;device&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vgreduce &amp;lt;vg_name&amp;gt; /dev/&amp;lt;device&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Split and merge volume groups
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vgsplit&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vgmerge&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove a volume group
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vgremove &amp;lt;vg_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Activate/Deactivate logical volumes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvchange -a {y|n} &amp;lt;lv_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Merge(合併) Volume Groups&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;LVM volume groups can be merged if their PEs are the same size and their LV and PV summaries match&lt;/li&gt;
&lt;li&gt;The source volume group must be inactive before merging&lt;/li&gt;
&lt;li&gt;The destination volume group can be active or inactive
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vgchange -a n &amp;lt;source_vg&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vgmerge &amp;lt;destination_vg&amp;gt; &amp;lt;source_vg&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Split(拆分) Volume Groups&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;LVM volume groups can be split if all PVs contain at least one copy of the VG metadata&lt;/li&gt;
&lt;li&gt;LV cannot be split between the two VGs
&lt;code&gt;vgsplit &amp;lt;existing_vg&amp;gt; &amp;lt;new_vg&amp;gt; &amp;lt;pv_path&amp;gt; &amp;lt;pv_path&amp;gt; …&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;A volume group cannot be removed if any logical volume on it is still open.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;lvchange 還允許更改 logical volumes 的其他 attributes (屬性)，而不僅僅是 activation (啟動)。&lt;/p&gt;
&lt;h2&gt;Extend a Logical Volume&lt;span class="hx:absolute hx:-mt-20" id="extend-a-logical-volume"&gt;&lt;/span&gt;
&lt;a href="#extend-a-logical-volume" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Logical volumes can be extended if there is unused space available in the volume group&lt;/li&gt;
&lt;li&gt;Once the logical volume has been extended, then you must grow the file system in the LV.
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvextend -L +size /dev/&amp;lt;vg_name&amp;gt;/&amp;lt;lv_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;lvresize -L +size /dev/&amp;lt;vg_name&amp;gt;/&amp;lt;lv_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Reduce a Logical Volume&lt;span class="hx:absolute hx:-mt-20" id="reduce-a-logical-volume"&gt;&lt;/span&gt;
&lt;a href="#reduce-a-logical-volume" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;The file system on the logical volume must be reduced before reducing the logical volume&lt;/li&gt;
&lt;li&gt;Most file systems cannot be reduced while they are mounted (and XFS cannot be reduced at all)
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvreduce -L -size /dev/&amp;lt;vg_name&amp;gt;/&amp;lt;lv_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;lvresize -L -size /dev/&amp;lt;vg_name&amp;gt;/&amp;lt;lv_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;LVM Logical Volume Snapshots&lt;span class="hx:absolute hx:-mt-20" id="lvm-logical-volume-snapshots"&gt;&lt;/span&gt;
&lt;a href="#lvm-logical-volume-snapshots" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;LVM Snapshots (快照) 本質上是 logical volumes，創建快照會創建一個新的 logical volume（因此需要 VG 中的未分配空間）。&lt;/p&gt;
&lt;p&gt;LVM 快照在時間點凍結 volume 的視圖，而原始 volume 繼續被修改。&lt;/p&gt;
&lt;p&gt;LVM 快照可以像任何其他 logical volumes 一樣掛載和訪問。&lt;/p&gt;
&lt;p&gt;不再需要快照時，可以刪除快照而不影響原始卷。空間隨後將返回到 VG 作為未分配空間。&lt;/p&gt;
&lt;p&gt;使用快照需要加載 &lt;code&gt;dm_snapshot&lt;/code&gt; 內核模塊。&lt;/p&gt;
&lt;p&gt;創建快照時，metadata 被複製並引用為替代 logical volume。&lt;/p&gt;
&lt;p&gt;快照使用 VG 中的未分配空間，就像普通 logical volume 一樣。&lt;/p&gt;
&lt;p&gt;LVM 快照使用 copy-on-write。當原始 volume 中的檔案更改時，底層 PE 被複製到快照 volume 中。&lt;/p&gt;
&lt;p&gt;如果快照用盡空間，則被丟棄。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Create LVM Snapshots&lt;span class="hx:absolute hx:-mt-20" id="create-lvm-snapshots"&gt;&lt;/span&gt;
&lt;a href="#create-lvm-snapshots" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Create an LVM snapshot
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvcreate -s -L &amp;lt;size&amp;gt; -n &amp;lt;snap_name&amp;gt; &amp;lt;orig_lv_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;View Snapshots and their original logical volumes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvs&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove a snapshot volume
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lvremove /dev/&amp;lt;vg_name&amp;gt;/&amp;lt;snap_name&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h1&gt;Configure Software RAID&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;RAID: Redundant Array of Independent (or Inexpensive) Disks&lt;/li&gt;
&lt;li&gt;Software RAID:
&lt;ul&gt;
&lt;li&gt;Advantages of RAID systems without the additional cost(花費) of hardware RAID controllers CPU time and memory overhead&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Multiple Device (MD) RAID&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;Multiple Device (MD) is the default software RAID subsystem in the Linux kernel
&lt;ul&gt;
&lt;li&gt;Device mapper RAID is also available but MD is more mature(成熟) and robust(耐用)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;MD does not use the device mapper&lt;/li&gt;
&lt;li&gt;MD can create linear arrays(線性陣列) using its own meta-data or use external meta-data
&lt;ul&gt;
&lt;li&gt;Disk Data Format (DDF)&lt;/li&gt;
&lt;li&gt;Intel Matrix Storage Manager (IMSM) meta-data&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Myths about Software/Hardware RAID&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;軟體 RAID 比硬體 RAID慢
&lt;ul&gt;
&lt;li&gt;通常是錯誤的。&lt;/li&gt;
&lt;li&gt;沒有校驗位的 RAID 性能與硬體 RAID 相當（甚至因為雙工機制更好）。&lt;/li&gt;
&lt;li&gt;現代 CPU 比硬體 RAID 控制器上的專用處理器快得多，可以以較低的開銷快速生成校驗位（通常＜5％）。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;硬體 RAID 總是優於軟體 RAID
&lt;ul&gt;
&lt;li&gt;通常是錯誤的（但要看情況）。&lt;/li&gt;
&lt;li&gt;硬體 RAID 的優點：更容易啟動，可以被電池備份和緩存。&lt;/li&gt;
&lt;li&gt;硬體 RAID 的缺點：更昂貴，需要專用控制器。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;重要提示：軟體 RAID 不支援集群檔案系統（如 OCFS2），因為 RAID 不支援同時啟動。如果要 OCFS2 的 RAID，需要讓儲存子系統來處理 RAID。&lt;/p&gt;
&lt;p&gt;若要在 SLES 機器的開機時啟動 RAID 服務，請使用以下命令：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;systemctl enable dmraid-activation.service&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;RAID Levels&lt;span class="hx:absolute hx:-mt-20" id="raid-levels"&gt;&lt;/span&gt;
&lt;a href="#raid-levels" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;RAID 0 - Disks are pooled(集合)
&lt;ul&gt;
&lt;li&gt;good performance&lt;/li&gt;
&lt;li&gt;no redundancy (despite the name), &lt;strong&gt;if one disk fails data is lost&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;RAID 1 – Mirroring(鏡像)
&lt;ul&gt;
&lt;li&gt;Data is lost when the last disk fails&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;RAID 5 - Data is distributed across disks
&lt;ul&gt;
&lt;li&gt;one disk may fail&lt;/li&gt;
&lt;li&gt;data is lost when two disks fail&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;RAID 6 - Similar to RAID 5
&lt;ul&gt;
&lt;li&gt;two disks may fail&lt;/li&gt;
&lt;li&gt;data is lost when three disks fail&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;RAID 10 – Mirrored Stripe Sets
&lt;ul&gt;
&lt;li&gt;Performance of RAID 0 with fault tolerance of RAID 1&lt;/li&gt;
&lt;li&gt;data is lost if a disk is lost in each strip set&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;RAID 0&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;是一種提高數據存取性能的技術，透過將每個檔案的資料區塊分散到多個硬碟驅動器上，來達到此目的。&lt;/p&gt;
&lt;p&gt;雖然它的名字中有「RAID」這個詞，但實際上 RAID 0 並不能提供數據備份的功能，它只是將多個硬碟組成一個虛擬硬碟，用以提高存取速度。&lt;/p&gt;
&lt;p&gt;RAID 0 的效能非常好，但若其中任何一個硬碟故障，整個 RAID 0 系統就會失效，並且會導致您的數據遺失。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;RAID 1&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;這個等級提供足夠的資料安全性，因為資料會被 1:1 地複製到另一個硬碟上，稱為硬碟鏡像。&lt;/p&gt;
&lt;p&gt;如果一個硬碟被損壞，其內容的副本會在另一個鏡像硬碟上提供。除了一個硬碟之外，所有硬碟都可能受損而不會危及您的資料。&lt;/p&gt;
&lt;p&gt;然而，如果損壞未被檢測到，損壞的資料可能會被鏡像到正確的硬碟上，從而損壞資料。&lt;/p&gt;
&lt;p&gt;與使用單個硬碟訪問相比，在複製過程中寫入效能略有下降（比單個硬碟慢10%至20%），但讀取訪問速度顯著快於任何一個正常的物理硬碟，因為資料是重複的，可以並行掃描。&lt;/p&gt;
&lt;p&gt;RAID 1通常提供了近乎是單個硬碟的兩倍讀取事務速率和幾乎相同的寫入事務速率。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;RAID 5&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;RAID 5 是性能和冗餘性方面介於 Level 0 和 Level 1 之間的優化折衷方案。&lt;/p&gt;
&lt;p&gt;硬碟空間等於使用的硬碟數減去一。數據像 RAID 0 一樣分佈在硬碟上。&lt;/p&gt;
&lt;p&gt;為了安全起見，在其中一個分區上創建奇偶校驗區塊，它們用 XOR 連接在一起，以便在系統故障時，通過相應的奇偶校驗區塊重新構建內容。&lt;/p&gt;
&lt;p&gt;使用 RAID 5，同時最多只能故障一個硬碟。如果有一個硬碟故障，必須盡快更換，以避免失去數據風險。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;RAID 6&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;RAID 6 和 RAID 5 相似，最少需要 4 個硬碟，最多允許 2 個硬碟故障。但如果有 3 個硬碟故障，就會丟失數據。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;RAID 10&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;All disks can be lost in a single strip set with no data loss if the other strip set has lost no disks. This RAID implementation combines features of RAID 0 and RAID 1: the data is first mirrored to separate disk arrays, which are inserted into a new RAID 0; type array. In each RAID 1 sub-array, one disk can fail without any damage to the data. A minimum of four disks and an even number of disks is needed to run a RAID 10. This type of RAID is used for database application where a huge load is expected.&lt;/p&gt;
&lt;p&gt;如果一組磁碟陣列沒有損失磁碟，那麼在另一組磁碟陣列中失去所有磁碟時也不會喪失任何資料。這種 RAI D結合了 RAID 0 和 RAID 1 的特點：首先將數據鏡像到不同的磁碟陣列中，然後將它們插入到新的RAID 0陣列中。在每個 RAID 1 子陣列中，最多可損失一個磁碟而不會損壞數據。RAID 10 至少需要四個磁碟和偶數個磁碟才能運行。這種 RAID 通常用於預計承受大量負載的數據庫應用程式。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Manage RAIDs: Monitoring&lt;span class="hx:absolute hx:-mt-20" id="manage-raids-monitoring"&gt;&lt;/span&gt;
&lt;a href="#manage-raids-monitoring" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;/proc/mdstat : 系統上 RAID 的狀態&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;範例 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; cat /proc/mdstat&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Personalities : [raid1]
md0 : active raid1 dm-3[1] dm-2[0]
243791680 blocks super 1.0 [2/2] [UU]
[==&amp;gt;..................] resync = 13.0%
(31745408/243791680) finish=100.3min speed=35230K/sec
bitmap: 2/2 pages [8KB], 65536KB chunk
unused devices: &amp;lt;none&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;使用 &lt;code&gt;watch&lt;/code&gt; 命令定期執行 &lt;code&gt;cat&lt;/code&gt; 命令。
使用 &lt;code&gt;-d&lt;/code&gt; 選項可以突顯連續更新之間的差異。例如：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;watch -d cat /proc/mdstat&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;如果您沒有此檔案，您需要首先加載 RAID 核心模塊：&lt;code&gt;modprobe md_mod&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;mdadm Modes and Options&lt;span class="hx:absolute hx:-mt-20" id="mdadm-modes-and-options"&gt;&lt;/span&gt;
&lt;a href="#mdadm-modes-and-options" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Assemble Modes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-A, --assemble&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Build Modes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-B, --build&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Create Modes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-C, --Create&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Follow or Monitor Modes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-F, --follow, --monitor&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Grow Modes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-G, --grow&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Incremental Assembly Modes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-I, --incremental&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Create an Array&lt;span class="hx:absolute hx:-mt-20" id="create-an-array"&gt;&lt;/span&gt;
&lt;a href="#create-an-array" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;mdadm -C &amp;lt;array&amp;gt; -n &amp;lt;#disks&amp;gt; -l &amp;lt;level&amp;gt; &amp;lt;disks&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt;，Number of disks in the array&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;，RAID level for the array (0, 1, 4, 5, 6,10)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-x&lt;/code&gt;，Number of spare disks in the array&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-e&lt;/code&gt;，Meta-data type to use: &lt;code&gt;0&lt;/code&gt;, &lt;code&gt;1 (1.0, 1.1, 1.2)&lt;/code&gt;, &lt;code&gt;ddf&lt;/code&gt;, &lt;code&gt;imsm&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -C /dev/md0 -e 1 -n 4 -l 5 -x 1 /dev/sdX&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Assemble(組裝) an Existing Array&lt;span class="hx:absolute hx:-mt-20" id="assemble組裝-an-existing-array"&gt;&lt;/span&gt;
&lt;a href="#assemble%e7%b5%84%e8%a3%9d-an-existing-array" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Assemble (activate/start) an array:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -A &amp;lt;array&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mdadm -A -s&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt;，Number of disks in the array&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-s&lt;/code&gt;， Scan for available arrays&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-c &amp;lt;config&amp;gt; &lt;/code&gt; ，Specify the configuration file to use when scanning. Options: &lt;code&gt;/etc/mdadm.conf&lt;/code&gt;, &lt;code&gt;partitions&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Examples:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -A /dev/md0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mdadm -A -s&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Deactivate(停用) an Array&lt;span class="hx:absolute hx:-mt-20" id="deactivate停用-an-array"&gt;&lt;/span&gt;
&lt;a href="#deactivate%e5%81%9c%e7%94%a8-an-array" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Deactivate (Stop) an array
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -S &amp;lt;array&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Example:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -S /dev/md0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Replace a Disk in an Array&lt;span class="hx:absolute hx:-mt-20" id="replace-a-disk-in-an-array"&gt;&lt;/span&gt;
&lt;a href="#replace-a-disk-in-an-array" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;Mark a disk in the array as faulty(錯誤):
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mdadm --manage /dev/md0 --fail /dev/sdb1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Remove a disk from the array:
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mdadm --manage /dev/md0 --remove /dev/sdb1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Repeat the above for any other array that uses this physical disk, such as &lt;code&gt;/dev/md1&lt;/code&gt; and &lt;code&gt;/dev/sdb2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;關閉電源並更換磁碟。&lt;/li&gt;
&lt;li&gt;（可選）使用 fdisk 或 parted 對磁碟進行分區。&lt;/li&gt;
&lt;li&gt;Partitions may not be smaller than before&lt;/li&gt;
&lt;li&gt;Add the new disk to your array:
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mdadm --manage /dev/md0 --add /dev/sdb1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Remove an Array&lt;span class="hx:absolute hx:-mt-20" id="remove-an-array"&gt;&lt;/span&gt;
&lt;a href="#remove-an-array" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -S &amp;lt;array&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mdadm --zero-superblock &amp;lt;devices&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-S&lt;/code&gt;，Stop the specified array&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-zero-superblock&lt;/code&gt;，Write zeros to the super block of the specified device&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Example:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -S /dev/md0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mdadm --zero-superblock /dev/sd[d-e]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;NOTE:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;To remove an array completely, it has to be stopped first!&lt;/li&gt;
&lt;li&gt;Make sure to also delete entries in /etc/fstab relating to the array&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Generate a mdadm.conf File&lt;span class="hx:absolute hx:-mt-20" id="generate-a-mdadmconf-file"&gt;&lt;/span&gt;
&lt;a href="#generate-a-mdadmconf-file" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -E -s --brief &amp;gt; /etc/mdadm.conf&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-E&lt;/code&gt;，Examine(檢查) the metadata of scanned/specified disks&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-s&lt;/code&gt;，Scan for existing arrays&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--brief&lt;/code&gt;，Display output in brief format (for &lt;code&gt;mdadm.conf&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Example:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -E -s &amp;gt; /etc/mdadm.conf&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Display Info About an Array&lt;span class="hx:absolute hx:-mt-20" id="display-info-about-an-array"&gt;&lt;/span&gt;
&lt;a href="#display-info-about-an-array" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Display info about an array:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm -Q &amp;lt;array&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-Q&lt;/code&gt;，Query basic information on an array&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--detail&lt;/code&gt;，Full information on an array&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Display info about an array member disk:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mdadm --examine &amp;lt;disk&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--examine&lt;/code&gt;，Query basic information on a disk from an array&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Offline Uncorrectable Sectors&lt;span class="hx:absolute hx:-mt-20" id="offline-uncorrectable-sectors"&gt;&lt;/span&gt;
&lt;a href="#offline-uncorrectable-sectors" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Output of smartctl, such as:
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;Offline_uncorrectable 0x0010 100 001 000
Old_age Offline - 24&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;Trigger a resync:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/usr/bin/echo check &amp;gt; /sys/block/mdx/md/sync_action&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;array 會被讀取，如果一個磁區在一個磁碟上無法讀取，則使用其他磁碟中的相同信息重新寫入它。&lt;/p&gt;
&lt;p&gt;注意：如果您的 RAID 未覆蓋整個硬盤，它僅在硬盤錯誤位於其中一個 RAID 中時才起作用。&lt;/p&gt;
&lt;p&gt;可以設置一個定期執行該命令的 cron 作業。&lt;/p&gt;
&lt;p&gt;上述命令通常可以修復錯誤，但是持續出現此類錯誤的磁碟可能應該被替換。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Monitor RAIDs&lt;span class="hx:absolute hx:-mt-20" id="monitor-raids"&gt;&lt;/span&gt;
&lt;a href="#monitor-raids" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;In &lt;code&gt;/etc/sysconfig/mdadm&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Set MDADM_MAIL to a proper email address&lt;/li&gt;
&lt;li&gt;Make sure that mail arrives at its destination&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Activate the monitoring with
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;systemctl start mdmonitor.service&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;RAID 系統需要監控，以避免忽略磁碟損壞的問題。&lt;/p&gt;
&lt;p&gt;RAID 系統的優點是可以容許單個磁碟故障(不包括 RAID 0)。這表示當磁碟出現故障時，可能不會立即被發現，直到下一個磁碟故障時，數據才會丟失。因此需要監控 RAID 系統以避免出現此類問題。&lt;/p&gt;
&lt;/div&gt;
&lt;h1&gt;Define and Describe Btrfs&lt;/h1&gt;&lt;h2&gt;Btrfs: The “Better” File System&lt;span class="hx:absolute hx:-mt-20" id="btrfs-the-better-file-system"&gt;&lt;/span&gt;
&lt;a href="#btrfs-the-better-file-system" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Built-in volume management with &lt;strong&gt;subvolumes&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Built-in copy on write&lt;/li&gt;
&lt;li&gt;Powerful snapshot capabilities&lt;/li&gt;
&lt;li&gt;Massive Scalability:&lt;/li&gt;
&lt;li&gt;18.4 Exabytes (16EB w/ effective shrink)&lt;/li&gt;
&lt;li&gt;Other Capabilities:
&lt;ul&gt;
&lt;li&gt;Compression(壓縮)&lt;/li&gt;
&lt;li&gt;Built-in data integrity(完整性) (checksums)&lt;/li&gt;
&lt;li&gt;SSD optimization(優化)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Btrfs Support&lt;span class="hx:absolute hx:-mt-20" id="btrfs-support"&gt;&lt;/span&gt;
&lt;a href="#btrfs-support" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Btrfs is supported
&lt;ul&gt;
&lt;li&gt;As “/” file system&lt;/li&gt;
&lt;li&gt;For migration from ext2/3/4 (except “/”)&lt;/li&gt;
&lt;li&gt;Everything you can do with the YaST partitioner is supported&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Exceptions to official support
&lt;ul&gt;
&lt;li&gt;RAID&lt;/li&gt;
&lt;li&gt;Integrated Volume Management&lt;/li&gt;
&lt;li&gt;Compression and Encryption&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Recommendation for data volumes: XFS
&lt;ul&gt;
&lt;li&gt;Performance and scalability are proven for 8+ years&lt;/li&gt;
&lt;li&gt;No extra costs for XFS in SUSE Linux Enterprise&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;FAQ:&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Is there any limitation for copy on write in terms of transactions?&lt;/p&gt;
&lt;p&gt;Ans: &lt;strong&gt;The disk space in the limitation&lt;/strong&gt;. As every change may need additional blocks, two sets of parameters must be chosen carefully according to the use case:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Disk space available to the whole volume&lt;/li&gt;
&lt;li&gt;Automated cleanup rules&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Is there a recommendation of how many % of free space should be kept?&lt;/p&gt;
&lt;p&gt;Ans: Since SUSE Linux Enterprise 11 SP2, the default for a root file system on Btrfs is 20 GiB, while the system will need not more than 8 GiB usually. In other words, when starting there should be more than 70% free.&lt;/p&gt;
&lt;p&gt;For safe operation we suggest that a file system is &lt;strong&gt;not filled up to more than 90%, i.e. 10% free.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Future development for snapper might introduce automated cleanup rules also based on free space or fill-level.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Copy on Write&lt;span class="hx:absolute hx:-mt-20" id="copy-on-write"&gt;&lt;/span&gt;
&lt;a href="#copy-on-write" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Normal Write&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;Existing blocks of a file are overwritten when the content changes&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Copy on Write&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;If content of a block changes, the changed block is put beside the non-changed block&lt;/p&gt;
&lt;p&gt;Instead the metadata (block-list) changes&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Benefit&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;Implementation of “transactions” in the file system is easy, as old content is still available&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;因為 Btrfs 對所有的檔案系統寫入都是寫時復制，所以有可能進入這樣一種情況：當檔案系統變滿時，當你試圖刪除一個檔案時，你會得到一個錯誤，說 &amp;ldquo;no space left on device&amp;rdquo;，檔案不能被刪除。&lt;/p&gt;
&lt;p&gt;如果出現這種情況，你可以嘗試一些事情：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;如果你不是在一個時間緊迫的情況下，運行：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;btrfs filesystem df &amp;lt;mountpoint&amp;gt;。&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;如果報告說你的數據和 metadata 都有可用的空間，運行以下程序：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;btrfs filesystem balance&amp;lt;mountpoint&amp;gt;。&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;這將需要一些時間，但應該會釋放出一些空間，讓你能夠刪除檔案。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;如果你處於時間緊迫的情況下，你可以嘗試兩種不同的方法，或者如果第一種方法不起作用：
通過運行以下命令，來凍結該檔案：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;echo &amp;gt; &amp;lt;file_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;這將在不引起任何新的 metadata 操作的情況下刪除該檔案
用&lt;code&gt;nodatacow&lt;/code&gt;選項重新掛載該檔案系統：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;mount -o remount,nodatacow&amp;lt;mountpoint&amp;gt;。&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;這將允許你在不執行寫時復制操作的情況下刪除該檔案&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/838eWQu.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Subvolumes&lt;span class="hx:absolute hx:-mt-20" id="subvolumes"&gt;&lt;/span&gt;
&lt;a href="#subvolumes" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/YIwcKIy.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;A Btrfs consists of one or more subvolumes. Subvolumes in Btrfs have a number and a name. There is always at least one subvolume, &lt;strong&gt;the tree root subvolume with the number 0. The root subvolume is represented by the @ character.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Subvolumes&lt;/strong&gt; appear as directories in the file system and, at first glance, cannot be distinguished from regular directories. Usually they appear as a subdirectory in the “parent” file system, but they &lt;strong&gt;can be mounted separately and not “just a subdirectory”&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Subvolumes can include a complete file system tree.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Subvolumes are simliar to two “separate” file systems, which are using the same pool of data blocks (and other infrastructure).
The benefits of using subvolumes are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Different parts (subvolumes) of a file system can have different attributes, such as quotas or snapshoting rules.&lt;/li&gt;
&lt;li&gt;Copy on Write is possible across volumes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Manage Subvolumes from the CLI&lt;span class="hx:absolute hx:-mt-20" id="manage-subvolumes-from-the-cli"&gt;&lt;/span&gt;
&lt;a href="#manage-subvolumes-from-the-cli" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;btrfs subvolume create &lt;code&gt;[&amp;lt;Path&amp;gt;/]&amp;lt;Name&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Example: &lt;code&gt;btrfs subvolume create /data/SV4&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;btrfs subvolume set-default &lt;code&gt;&amp;lt;ID&amp;gt; &amp;lt;Path&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Example: &lt;code&gt;btrfs subvolume set-default 264 /data&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;btrfs subvolume delete &lt;code&gt;[&amp;lt;Path&amp;gt;/]&amp;lt;Name&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Example: &lt;code&gt;btrfs subvolume delete /data/SV4&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;btrfs subvolume list &lt;code&gt;[-p] &amp;lt;Path&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Example: &lt;code&gt;btrfs subvolume list -p /data&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;btrfs subvolume find-new &lt;code&gt;[&amp;lt;Path&amp;gt;/]&amp;lt;Name&amp;gt; &amp;lt;GenPointer&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Example: &lt;code&gt;btrfs subvolume find-new /data/SV3 35&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Mount a subvolume&lt;span class="hx:absolute hx:-mt-20" id="mount-a-subvolume"&gt;&lt;/span&gt;
&lt;a href="#mount-a-subvolume" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mount -o subvol=&amp;lt;Name&amp;gt; /dev/&amp;lt;sdXX&amp;gt; /&amp;lt;Mountpoint&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mount -o subvolid=&amp;lt;ID&amp;gt; /dev/&amp;lt;sdXX&amp;gt; /&amp;lt;Mountpoint&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Understand NFSv4&lt;/h1&gt;</description></item><item><title>Software Management</title><link>https://blog.kubeantony.com/archive/suse/software-management/</link><pubDate>Fri, 07 Apr 2023 04:50:10 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/software-management/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本篇文章主要分為 3 大部分 :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;了解將源程式碼編譯成二進位碼的基本步驟及編譯後的缺點&lt;/li&gt;
&lt;li&gt;了解什麼是 RPM Package，它的組成是什麼，我們如何管理它，包含安裝、解安裝、更新、查詢和確認。&lt;/li&gt;
&lt;li&gt;如何透過 Libzypp 管理軟體&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;h1&gt;Understand Compiling Software from Source&lt;/h1&gt;&lt;h2&gt;Compile From Source Code&lt;span class="hx:absolute hx:-mt-20" id="compile-from-source-code"&gt;&lt;/span&gt;
&lt;a href="#compile-from-source-code" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Linux Source Code Build Tools&lt;/li&gt;
&lt;li&gt;Works well for a single box&lt;/li&gt;
&lt;li&gt;Many Linux open source projects utilize&lt;/li&gt;
&lt;li&gt;Common GNU build tools&lt;/li&gt;
&lt;li&gt;Two common GNU build tools
&lt;ul&gt;
&lt;li&gt;Automake&lt;/li&gt;
&lt;li&gt;Autoconf&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Developers use Automake and Autoconf with&amp;hellip;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;makefile.am&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;configure.in&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;To create the automatic configuration file
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;configure&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Compiling Process&lt;span class="hx:absolute hx:-mt-20" id="compiling-process"&gt;&lt;/span&gt;
&lt;a href="#compiling-process" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;The general process for building source code
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;./configure&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;make&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;make install&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Make supports combining last two steps
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;./configure&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;make install&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Performs a make and then a make install automatically&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Build Process Step-By-Step&lt;span class="hx:absolute hx:-mt-20" id="build-process-step-by-step"&gt;&lt;/span&gt;
&lt;a href="#build-process-step-by-step" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Specific actions for building source code&lt;/li&gt;
&lt;li&gt;Download tarball from source code download page
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;.tar.gz&lt;/code&gt; &lt;code&gt;.tgz&lt;/code&gt; &lt;code&gt;.tar.bz2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Extract contents in safe location
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;tar -zxvf sourcecode-1.0.tar.bz2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Change to extracted directory
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cd sourcecode-1.0/&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Read the included Documentation&lt;/li&gt;
&lt;li&gt;Autoconfigure
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;./configure&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Compile and install
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;make install&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Understand Makefile Targets&lt;span class="hx:absolute hx:-mt-20" id="understand-makefile-targets"&gt;&lt;/span&gt;
&lt;a href="#understand-makefile-targets" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;The make command uses what are called “targets”&lt;/li&gt;
&lt;li&gt;Target Actions:
&lt;ul&gt;
&lt;li&gt;clean
&lt;ul&gt;
&lt;li&gt;Clean up: remove compiled binaries and objects&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;distclean
&lt;ul&gt;
&lt;li&gt;clean + remove files that ./configure created&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;make
&lt;ul&gt;
&lt;li&gt;Actually compile the source code&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;install
&lt;ul&gt;
&lt;li&gt;Copy binaries and shared objects to filesystem&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;uninstall
&lt;ul&gt;
&lt;li&gt;Uninstall the components created during install&lt;/li&gt;
&lt;li&gt;Does not always remove all components&lt;/li&gt;
&lt;li&gt;Only as good as creator of the Automake components&lt;/li&gt;
&lt;li&gt;Not always provided as target in Makefile&lt;/li&gt;
&lt;li&gt;May abandon software throughout filesystem&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Use make to Compile the Source Code&lt;span class="hx:absolute hx:-mt-20" id="use-make-to-compile-the-source-code"&gt;&lt;/span&gt;
&lt;a href="#use-make-to-compile-the-source-code" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;img src="https://i.imgur.com/dRVKhEX.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;h2&gt;Disadvantages Of Unpackaged Software&lt;span class="hx:absolute hx:-mt-20" id="disadvantages-of-unpackaged-software"&gt;&lt;/span&gt;
&lt;a href="#disadvantages-of-unpackaged-software" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Software dependencies are not readily apparent&lt;/li&gt;
&lt;li&gt;Hard to duplicate effort across enterprises (難以跨企業重複工作)&lt;/li&gt;
&lt;li&gt;Upgrading very difficult&lt;/li&gt;
&lt;li&gt;Updating nearly(幾乎) impossible&lt;/li&gt;
&lt;li&gt;Slow security responses (安全問題的回應速度緩慢)&lt;/li&gt;
&lt;li&gt;Duplication of effort(工作重複)&lt;/li&gt;
&lt;li&gt;Uneven results(結果可能會不一樣)&lt;/li&gt;
&lt;li&gt;Support and troubleshooting problems
&lt;ul&gt;
&lt;li&gt;Tarball management is fine for a single computer&lt;/li&gt;
&lt;li&gt;Unmanageable across hundreds or thousands of computers&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Difficult to track installed files without work
&lt;ul&gt;
&lt;li&gt;Manual tracking after each install&lt;/li&gt;
&lt;li&gt;Linux command line tools
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;find&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tar&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;md5sum&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vimdiff&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Uses some disk space for tracking&lt;/li&gt;
&lt;li&gt;Non-filesystem tracking requires reading install control files(非檔案系統的追蹤需要讀取安裝控制的文件)
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;configure&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Makefile&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Understand Management of RPM Packages&lt;/h1&gt;&lt;h2&gt;RPM Basics&lt;span class="hx:absolute hx:-mt-20" id="rpm-basics"&gt;&lt;/span&gt;
&lt;a href="#rpm-basics" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;RPM 是一個在 Linux 上用來管理軟體的工具，主要由以下三個部分組成：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;RPM Package Manager&lt;/strong&gt;：用來安裝和卸載 RPM 套件。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RPM Database&lt;/strong&gt;：這個資料庫在 Package Manager 的背後運作，裡面包含所有已安裝的 RPM 套件的相關資訊。
&lt;ul&gt;
&lt;li&gt;這個資料庫追蹤所有在使用者安裝程式時建立或修改的檔案，這有助於 Package Manager 在需要時輕鬆地移除原本安裝的檔案。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RPM Package&lt;/strong&gt;：將軟體原始程式碼打包成二進位的程式碼供使用者安裝，稱為 RPM packages 或 RPM archives，中文翻為 &amp;ldquo;RPM 套件&amp;rdquo;。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;使用 RPM Package Manager 和 RPM Package 的好處有：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Root 在 Linux 上有一致的安裝程式方法。&lt;/li&gt;
&lt;li&gt;方便的卸載功能（因為有 RPM 資料庫）。&lt;/li&gt;
&lt;li&gt;原始碼存檔案（例如 .tar.gz 或 .tar.bz2）會依需求被包含進來，也很容易驗證。&lt;/li&gt;
&lt;li&gt;RPM 工具可以用來啟用非互動式腳本來安裝軟體。&lt;/li&gt;
&lt;li&gt;RPM 工具可以用來確認軟體是否正確安裝。&lt;/li&gt;
&lt;li&gt;RPM 追蹤套件的相依檔，防止刪除其他套件所需的套件。它還會在安裝套件時告知管理員所需的軟體是否缺失。&lt;/li&gt;
&lt;li&gt;支援數位簽章，可驗證 RPM 套件的完整性。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;RPM Package Components&lt;span class="hx:absolute hx:-mt-20" id="rpm-package-components"&gt;&lt;/span&gt;
&lt;a href="#rpm-package-components" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;img src="https://i.imgur.com/iO1DkMN.png" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;p&gt;The RPM package includes the following parts:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Information Header
&lt;ul&gt;
&lt;li&gt;每個 RPM 套件有一個標籤，裡面包含 Software Name、Version 和 Release Number (發行編號) &amp;hellip;等資訊。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;CPIO Archive
&lt;ul&gt;
&lt;li&gt;套件的所有檔案都存放在 CPIO archive 中。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Installation Scripts
&lt;ul&gt;
&lt;li&gt;有時在安裝軟體之前或之後需要對系統進行修改，這可以通過預安裝和後安裝腳本來實現。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;GPG Signature
&lt;ul&gt;
&lt;li&gt;這個簽名可以檢查軟體包的完整性。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Install RPM Packages&lt;span class="hx:absolute hx:-mt-20" id="install-rpm-packages"&gt;&lt;/span&gt;
&lt;a href="#install-rpm-packages" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Command: &lt;strong&gt;&lt;code&gt;rpm -i &amp;lt;package&amp;gt;.rpm&lt;/code&gt;&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;當您安裝一個 RPM 軟體包時，&lt;strong&gt;執行檔&lt;/strong&gt;、&lt;strong&gt;DOC 文件&lt;/strong&gt;、&lt;strong&gt;設定檔&lt;/strong&gt;以及&lt;strong&gt;啟動腳本&lt;/strong&gt;會被複製到檔案系統中適當的目錄下。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Additional Options:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;-v&lt;/code&gt;&lt;/strong&gt; ，(verbose) for more information ，顯示更多資訊&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;-h&lt;/code&gt;&lt;/strong&gt; ，(hash) for a progress bar，在軟體包安裝期間產生一個由&lt;code&gt;#&lt;/code&gt;符號組成的進度條。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;In case of dependency conflicts or file problems:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;--nodeps&lt;/code&gt;&lt;/strong&gt; ，to ignore dependencies ，忽略相依檔產生的問題&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;--force&lt;/code&gt;&lt;/strong&gt; ，to overwrite existing files，覆蓋已存在的檔案&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;如果強制安裝而沒有滿足相依性要求，安裝的軟體很可能無法正常運作&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;在安裝期間，RPM 資料庫確保沒有發生衝突（例如一個檔案屬於多個軟體包）。只有在其相依性得到滿足且沒有與其他軟體包發生衝突時，才會安裝該軟體包。&lt;/p&gt;
&lt;p&gt;如果相依性沒有被滿足，RPM 會列出 :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;需要安裝軟體包的相依檔。&lt;/li&gt;
&lt;li&gt;與要安裝的軟體包發生衝突的軟體包。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Update RPM Packages&lt;span class="hx:absolute hx:-mt-20" id="update-rpm-packages"&gt;&lt;/span&gt;
&lt;a href="#update-rpm-packages" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Update: &lt;code&gt;rpm -U &amp;lt;package&amp;gt;.rpm&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Works even if no previous version is installed&lt;/li&gt;
&lt;li&gt;即使未安裝以前的版本 也會安裝新版本&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Freshen: &lt;code&gt;rpm -F &amp;lt;package&amp;gt;.rpm&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Work only if a previous version is installed&lt;/li&gt;
&lt;li&gt;僅在安裝了早期版本時才有效 (如果沒有安裝過先前的版本，則不會安裝新的軟體包。)&lt;/li&gt;
&lt;li&gt;會刪除舊版本的文件，並立即安裝新的文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;注意 ! &lt;code&gt;-U&lt;/code&gt; 選項並不等同於使用&lt;code&gt; -e&lt;/code&gt; 選項進行卸載並使用 &lt;code&gt;-i&lt;/code&gt; 選項進行安裝。更新軟體包時，盡可能使用 &lt;code&gt;-U&lt;/code&gt; 選項&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;RPM 會使用以下指南小心地更新設定檔:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;如果系統管理員未更改設定檔，RPM 會安裝適當檔案的新版本。系統管理員不需要進行任何操作。&lt;/li&gt;
&lt;li&gt;如果在更新之前系統管理員更改了設定檔，RPM 會將更改後的檔案保存為 &lt;code&gt;.rpmorig&lt;/code&gt; 或 &lt;code&gt;.rpmsave&lt;/code&gt; (備份檔案)，然後安裝新包的版本，但只有當原安裝的檔案和新版本不同時才進行安裝。
&lt;ul&gt;
&lt;li&gt;如果是這種情況，請將備份檔案(&lt;code&gt;.rpmorig&lt;/code&gt; 或 &lt;code&gt;.rpmsave&lt;/code&gt;)與新安裝的檔案進行比較，再次在新檔案中進行更改。&lt;/li&gt;
&lt;li&gt;確保之後刪除所有的 &lt;code&gt;.rpmorig&lt;/code&gt; 和 &lt;code&gt;.rpmsave&lt;/code&gt; 檔案，以避免未來更新的問題。&lt;/li&gt;
&lt;li&gt;如果檔案以前尚未被 RPM 資料庫識別，則會分配 &lt;code&gt;.rpmorig&lt;/code&gt; 擴展名；否則，使用 &lt;code&gt;.rpmsave&lt;/code&gt; 擴展名。&lt;/li&gt;
&lt;li&gt;換句話說，&lt;code&gt;.rpmorig&lt;/code&gt; 是從非 RPM 格式升級到 RPM，而 &lt;code&gt;.rpmsave&lt;/code&gt; 則是從舊版 RPM 升級到新版 RPM。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;如果設定檔已經存在且在控制軟體包創建的檔案 (所謂的 &lt;code&gt;.spec&lt;/code&gt; 檔案) 中指定了 &lt;code&gt;noreplace&lt;/code&gt; 標籤，則會建立一組 &lt;code&gt;.rpmnew&lt;/code&gt; 檔案。這用於不覆蓋某些設定檔 (例如 &lt;code&gt;/etc/apache2/httpd.conf&lt;/code&gt;)，以確保繼續運作。
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;.rpmnew&lt;/code&gt; 不會透露系統管理員是否對設定檔進行了任何更改。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;h2&gt;Uninstall RPM Packages&lt;span class="hx:absolute hx:-mt-20" id="uninstall-rpm-packages"&gt;&lt;/span&gt;
&lt;a href="#uninstall-rpm-packages" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Command: &lt;strong&gt;&lt;code&gt;rpm -e &amp;lt;package&amp;gt;&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Additional Options:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;--nodeps&lt;/code&gt;&lt;/strong&gt; to ignore dependencies&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;當移除一個套件時，RPM 資料庫會協助將所有檔案除了已修改的設定檔都從系統中刪除，確保移除的乾淨無痕。&lt;/p&gt;
&lt;p&gt;RPM 只會在不影響相依套件的情況下刪除套件。若有其他套件相依於欲刪除的套件，錯誤訊息中會列出這些相依套件。&lt;/p&gt;
&lt;p&gt;使用 &lt;code&gt;--nodeps&lt;/code&gt; 參數強制刪除套件，但這不是建議的方式，因為有使用同樣相依檔的其他套件可能會無法正常運作。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Query RPM Database and Packages&lt;span class="hx:absolute hx:-mt-20" id="query-rpm-database-and-packages"&gt;&lt;/span&gt;
&lt;a href="#query-rpm-database-and-packages" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-q&lt;/code&gt;，Query RPM database&lt;/li&gt;
&lt;li&gt;Common query options:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-a&lt;/code&gt;，List all installed packages&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-i&lt;/code&gt;，List package information&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;，Display file list
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--dump&lt;/code&gt;，Display a file list with complete details Used with &lt;code&gt;-l&lt;/code&gt;, &lt;code&gt;-c&lt;/code&gt; or &lt;code&gt;-d&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-f &amp;lt;file&amp;gt;&lt;/code&gt;，找出檔案屬於哪個包，在查詢的時候，必須指定完整路徑&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt;，List only documentation files (implies -l)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-c&lt;/code&gt;，List only configuration files (implies -l)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-p &lt;/code&gt;，Inspect not installed RPM archives&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--provides&lt;/code&gt;，List features of the package that another package can request with &amp;ndash;requires
&lt;ul&gt;
&lt;li&gt;列出一個套件可以透過 &lt;code&gt;--requires&lt;/code&gt; 的方式要求另一個套件提供哪些功能特色。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--requires, -R&lt;/code&gt;，List capabilities the package requires&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--scripts&lt;/code&gt;，List installation scripts Pre-install, post-install and un-install&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--changelog&lt;/code&gt;，Display detailed list of information about a specific package Updates, configuration, modifications, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;RPM Package Verification&lt;span class="hx:absolute hx:-mt-20" id="rpm-package-verification"&gt;&lt;/span&gt;
&lt;a href="#rpm-package-verification" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Verify that the package has not changed since it was created:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;rpm --checksig &amp;lt;package&amp;gt;.rpm&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Verify integrity (完整性) of files installed by an RPM package:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;rpm -V &amp;lt;package&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Character，Description
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;S&lt;/code&gt;，List package information&lt;/li&gt;
&lt;li&gt;&lt;code&gt;M&lt;/code&gt;，Mode has change&lt;/li&gt;
&lt;li&gt;&lt;code&gt;5&lt;/code&gt;，Size is different&lt;/li&gt;
&lt;li&gt;&lt;code&gt;D&lt;/code&gt;，Device major/minor numbers are different&lt;/li&gt;
&lt;li&gt;&lt;code&gt;L&lt;/code&gt;，Readlink (symbolic link) path mismatch&lt;/li&gt;
&lt;li&gt;&lt;code&gt;U&lt;/code&gt;，User ownership differs&lt;/li&gt;
&lt;li&gt;&lt;code&gt;G&lt;/code&gt;，Group ownership differs&lt;/li&gt;
&lt;li&gt;&lt;code&gt;T&lt;/code&gt;，mtime differs&lt;/li&gt;
&lt;li&gt;&lt;code&gt;P&lt;/code&gt;，Capabilities differ&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Understand Software Management with Libzypp&lt;/h1&gt;&lt;h2&gt;Libzypp&lt;span class="hx:absolute hx:-mt-20" id="libzypp"&gt;&lt;/span&gt;
&lt;a href="#libzypp" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;![](&lt;a
href="https://i.imgur.com/5g14Iuq.png"target="_blank" rel="noopener"&gt;https://i.imgur.com/5g14Iuq.png&lt;/a&gt; =80%x)&lt;/p&gt;
&lt;p&gt;Libzypp is the &lt;strong&gt;software management engine for SUSE Linux&lt;/strong&gt;. It wraps around (環繞) the RPM package management system.&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;What Are Software Repositories?&lt;span class="hx:absolute hx:-mt-20" id="what-are-software-repositories"&gt;&lt;/span&gt;
&lt;a href="#what-are-software-repositories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Software repositories (often called catalogs)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Directories that contain RPM software packages and meta-data files that describe the packages.&lt;/li&gt;
&lt;li&gt;Can be accessed by RPM meta-managers&lt;/li&gt;
&lt;li&gt;Can be accessed from different media and local file systems
&lt;ul&gt;
&lt;li&gt;different media such as the network (HTTP, FTP, NFS, SMB, etc.), DROM/DVD disks&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Software repositories provide many benefits such as:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;They provide catalogs(目錄) for RPM Meta-managers to use when doing RPM dependency resolution&lt;/li&gt;
&lt;li&gt;They provide centrally(集中的) managed and accessible sources(可存取的來源) for installing software and updates&lt;/li&gt;
&lt;li&gt;They provide a framework for tracking and finding different versions of software&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Libzypp and Software Repositories&lt;span class="hx:absolute hx:-mt-20" id="libzypp-and-software-repositories"&gt;&lt;/span&gt;
&lt;a href="#libzypp-and-software-repositories" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;![](&lt;a
href="https://i.imgur.com/kKNBnF7.png"target="_blank" rel="noopener"&gt;https://i.imgur.com/kKNBnF7.png&lt;/a&gt; =80%x)&lt;/p&gt;
&lt;h2&gt;The 4 &amp;ldquo;P&amp;quot;s of Libzypp&lt;span class="hx:absolute hx:-mt-20" id="the-4-ps-of-libzypp"&gt;&lt;/span&gt;
&lt;a href="#the-4-ps-of-libzypp" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Packages
&lt;ul&gt;
&lt;li&gt;RPM packages (including patch/delta RPMS)&lt;/li&gt;
&lt;li&gt;Contain files to be installed in file system&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Patterns
&lt;ul&gt;
&lt;li&gt;Reference 1 or more packages&lt;/li&gt;
&lt;li&gt;Typically install all packages needed for a certain sever “role”&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Products
&lt;ul&gt;
&lt;li&gt;Contain 1 or more Patterns&lt;/li&gt;
&lt;li&gt;Associated with a product with its own support and maintenance such&lt;/li&gt;
&lt;li&gt;as an Extension/Add-on&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Patches
&lt;ul&gt;
&lt;li&gt;Reference 1 or more update packages&lt;/li&gt;
&lt;li&gt;(packages provided as both full and patch/delta RPMs)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Libzypp Utilities&lt;span class="hx:absolute hx:-mt-20" id="libzypp-utilities"&gt;&lt;/span&gt;
&lt;a href="#libzypp-utilities" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;![](&lt;a
href="https://i.imgur.com/FHppQTm.png"target="_blank" rel="noopener"&gt;https://i.imgur.com/FHppQTm.png&lt;/a&gt; =90%x)&lt;/p&gt;
&lt;p&gt;你會使用幾種不同的工具來實際進行套件管理，這些工具在背後使用了 libzypp 提供的服務。這些工具可以是圖形介面的，像是 YaST 和 PackageKit，也可以是命令列工具，像是 zypper 和 YaST ncurses 的畫面。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Definition of Terms&lt;span class="hx:absolute hx:-mt-20" id="definition-of-terms"&gt;&lt;/span&gt;
&lt;a href="#definition-of-terms" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Repository&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;一個包含 packages 的本地或遠程目錄，以及關於這些 packages 的 metadata。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Product&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;代表一個完整的產品，例如 SUSE Linux Enterprise Server。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Pattern&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;一個可安裝的軟體套件組合，專門用於特定的目的。
例如，Laptop pattern，這個 pattern 包含所有行動運算環境所需的套件。&lt;/p&gt;
&lt;p&gt;Pattern 定義了 package 之間的相依性（例如必須或建議安裝的套件），並且預先選擇了一些套件標記為安裝，這確保在安裝 Pattern 後，系統上可用於特定目的的最重要 package 都已經安裝。但是，並不一定所有的 Pattern 中的 package 都會被預先選擇安裝，你可以根據自己的需求手動選擇或取消選擇 Pattern 內的 package。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Package&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;一個壓縮的 RPM 格式檔案，包含了特定程式的檔案。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Patch&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;由一個或多個軟體包組成，可以透過 Delta RPMs 方式應用。它也可能會引入尚未安裝的軟體包相依性。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Resolvable&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;產品、模式、軟體包或補丁的通用詞彙。最常用的 Resolvable 為軟體包或補丁。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Delta RPM&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;由兩個已定義版本之間的二進位差異組成，因此具有最小的下載大小。在安裝前，完整的 RPM 軟體包會在本地機器上重建。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Package Dependencies&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;有些套件需要其他套件才能運作，例如共用程式庫。換句話說，某些套件可能需要其他套件才能被安裝。如果所需的套件沒有安裝，該套件就無法被安裝，除了必須滿足的相依性需求外，有些套件還會建議安裝其他套件。如果這些推薦的套件實際上可用，那麼它們就會被安裝，否則就會被忽略，而推薦它們的套件則仍會被安裝。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Manage Repositories with zypper&lt;span class="hx:absolute hx:-mt-20" id="manage-repositories-with-zypper"&gt;&lt;/span&gt;
&lt;a href="#manage-repositories-with-zypper" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;List software repositories:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper lr&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add repositories:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper ar &amp;lt;uri&amp;gt; &amp;lt;alias&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove repositories:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper rr &amp;lt;alias|#|uri&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Modify repositories:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper mr [options] &amp;lt;alias|#|uri&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;zypper relies on a list of repositories for its installation and update commands. To list all repositories known to the system, enter &lt;code&gt;zypper lr&lt;/code&gt; or &lt;code&gt;zypper repos&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;範例 :　&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; zypper lr&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# | Alias | Name | Enabled | Refresh
--&amp;#43;-------------&amp;#43;-------------&amp;#43;---------&amp;#43;--------
1 | SLES15-15-0 | SLES15-15-0 | Yes | No&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;The most important options for this command are&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-p&lt;/code&gt;，show the priority(優先等級) for each repository&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt;，show more details for each repository&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;範例 :　&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; zypper lr -d&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;# | Alias | Name | Enabled | Refresh | Priority | Type | URI
| Service
--&amp;#43;-------------&amp;#43;-------------&amp;#43;---------&amp;#43;---------&amp;#43;----------&amp;#43;-------
&amp;#43;----------------------------------------------------------------------------------------&amp;#43;--------
1 | SLES15-15-0 | SLES12-15-0 | Yes | No | 99 | yast2 | cd:///?devices=/dev/disk/by-id/ataVMware_Virtual_IDE_CDROM_Drive_10000000000000000001 |&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;To &lt;font size=4&gt;&lt;strong&gt;add a new repository&lt;/strong&gt;&lt;/font&gt;, use the command&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; zypper ar [options] &amp;lt;uri&amp;gt; &amp;lt;alias&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;or&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; zypper addrepo [options] &amp;lt;uri&amp;gt; &amp;lt;alias&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;範例 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; zypper addrepo http://172.17.8.100/sles15/CD1 sles12&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;The URI identifies the &lt;strong&gt;location of the repository&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;the alias sets a name which can be used to access the repository&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;Important options for this command are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt;，add the repository as disabled. Repositories are added as enabled by default.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-k&lt;/code&gt;，Enable RPM files caching for the repository (i.e., RPM packages are kept in a local directory after being
installed).&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-K&lt;/code&gt;，Disable RPM files caching.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;NOTE: &lt;strong&gt;When a repository is added, the existence(已存在的) and accessibility(可訪問的) of the repository is not checked&lt;/strong&gt;. If there are any errors in the URI these will show up when trying to access the repository later&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In order to &lt;font size=4&gt;&lt;strong&gt;remove a repository from the list, use the command&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;zypper rr &amp;lt;alias|#|uri&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;or&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;zypper removerepo &amp;lt;alias|#|uri&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;To specify the repository, you can use the &lt;strong&gt;alias&lt;/strong&gt;, the &lt;strong&gt;sequence number&lt;/strong&gt; or the &lt;strong&gt;whole URI&lt;/strong&gt; of the repository.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Existing repositories can be modified by using&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;zypper mr [options] &amp;lt;alias|#|uri&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;or&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;zypper modifyrepo [options] &amp;lt;alias|#|uri&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The following are the most important options for this command:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-e&lt;/code&gt;，Enable the repository.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt;，Disable the repository.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-p&lt;/code&gt;，Set priority of the repository.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;A priority of &lt;strong&gt;1 is the highest priority&lt;/strong&gt;—&lt;strong&gt;the higher the number the lower the priority&lt;/strong&gt;. The default priority is 99. Packages from repositories with higher priority will be preferred even in case there is an installable higher version available in the repository with a lower priority.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;These commands create .repo files in the &lt;code&gt;/etc/zypp/repos.d/&lt;/code&gt; directory.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: &lt;strong&gt;These &lt;code&gt;.repo&lt;/code&gt; files can be edited directly if desired.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Manage &lt;font color=blue&gt;Packages&lt;/font&gt; with zypper&lt;span class="hx:absolute hx:-mt-20" id="manage-packages-with-zypper"&gt;&lt;/span&gt;
&lt;a href="#manage-packages-with-zypper" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;List and Search (在當前主機上對所有的 repositories 搜尋):
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper se &amp;lt;string&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;To see more details on the packages, the &lt;code&gt;-s&lt;/code&gt; option can be used&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Display Package Info:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper if &amp;lt;package&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Install Package:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper in &amp;lt;package&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove Package:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper rm &amp;lt;package&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Manage &lt;font color=blue&gt;Patterns&lt;/font&gt; with zypper&lt;span class="hx:absolute hx:-mt-20" id="manage-patterns-with-zypper"&gt;&lt;/span&gt;
&lt;a href="#manage-patterns-with-zypper" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;List (列出已安裝的 pattern)
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper pt&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Search
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper se -t pattern &amp;lt;string&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Example: &lt;code&gt;zypper se -t pattern web&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Install
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper in -t pattern &amp;lt;pattern&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper rm -t pattern &amp;lt;pattern&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Manage &lt;font color=blue&gt;Patches&lt;/font&gt; with zypper&lt;span class="hx:absolute hx:-mt-20" id="manage-patches-with-zypper"&gt;&lt;/span&gt;
&lt;a href="#manage-patches-with-zypper" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;List Patches:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper lp&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;lists all needed patches (patches, that apply to your system but are not yet installed).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Check for Patches:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper pchk&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;lists the number of needed patches&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Search for Patches:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper pch [&amp;lt;repository&amp;gt;]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;列出所有適用於 SUSE Linux Enterprise Server 的 Patches，無論這些 atches 是否已經安裝或適用於您的安裝&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Install Patches:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper patch&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;zypper in -t patch &amp;lt;patch&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Manage Updates with zypper&lt;span class="hx:absolute hx:-mt-20" id="manage-updates-with-zypper"&gt;&lt;/span&gt;
&lt;a href="#manage-updates-with-zypper" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;List Updates:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper lu&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Install Updates:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper up [&amp;lt;package&amp;gt;]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Update to a new Service Pack:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zypper dup&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Network Management</title><link>https://blog.kubeantony.com/archive/suse/network-management/</link><pubDate>Tue, 04 Apr 2023 10:48:52 +0800</pubDate><guid>https://blog.kubeantony.com/archive/suse/network-management/</guid><description>
&lt;style&gt;
.indent-title-1{
margin-left: 1em;
&lt;/style&gt;
&lt;h2&gt;Preface&lt;span class="hx:absolute hx:-mt-20" id="preface"&gt;&lt;/span&gt;
&lt;a href="#preface" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;本文主要介紹在 SUSE Linux Enterprise 中的網路管理、Wicked 中的網路管理、firewalld 防火牆，如何透過使用 firewall-cmd 命令 或是 firewall-config 來管理 firewalld 防火牆和了解 防火牆區域設計&lt;/p&gt;
&lt;p&gt;可以透過點擊展開以下目錄，選擇想看的內容，跳轉至特定章節&lt;/p&gt;
&lt;/div&gt;
&lt;h1&gt;Understand Network Management in SLE&lt;/h1&gt;&lt;h2&gt;Linux Network Terms (術語)&lt;span class="hx:absolute hx:-mt-20" id="linux-network-terms-術語"&gt;&lt;/span&gt;
&lt;a href="#linux-network-terms-%e8%a1%93%e8%aa%9e" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Device&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;在系統中內建的網路卡。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Interface (介面)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;為了使用一個物理設備，驅動程序會為該設備創建一個介面，使得這個介面可以被其他應用程序使用。&lt;/p&gt;
&lt;p&gt;在 Linux 中，網路介面使用一個標準的命名方案，以太網網路卡的介面遵循的命名方案是 eth0、eth1、eth2，等等。&lt;/p&gt;
&lt;p&gt;對於系統中安裝的每一個網路卡，在加載適當的驅動程序時都會創建一個介面。&lt;/p&gt;
&lt;p&gt;網路配置的命令行工具在實際指的是 Interface 時使用了 Device 這個術語。&lt;/p&gt;
&lt;p&gt;術語 &amp;ldquo;Device&amp;rdquo; 在本節中同時用於物理設備和軟體介面。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Link&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;一個設備與網路的連接。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Address&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;分配給一個設備的 IP 地址。該地址可以是一個 IPv4 或 IPv6 地址。要在網路中使用一個設備，你必須至少給它分配一個地址。你可以為一個設備分配一個以上的地址。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Broadcast&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;一個網路的廣播地址，通過向廣播地址發送網路數據包，你可以同時到達本地連接網路中的所有主機。當你給設備分配一個 IP 地址時，你也可以設置這個廣播地址。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Route&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;是一個 IP 封包從來源裝置到目標裝置所經過的路徑。在 Linux 核心中，「Route」這個詞也用來指代路由表中的一個條目。&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;The ping Command&lt;span class="hx:absolute hx:-mt-20" id="the-ping-command"&gt;&lt;/span&gt;
&lt;a href="#the-ping-command" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax : &lt;code&gt;ping &amp;lt;destination&amp;gt;&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;&amp;lt;destination&amp;gt;&lt;/code&gt; can be an ip address, host name or fqdn&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;通常使用 ping 工具來測試是否有正常的網路連接&lt;/li&gt;
&lt;li&gt;在路由器或防火牆上設定過濾規則時，有可能會封鎖 ping 工具的功能，使得裝置之間無法進行連線測試&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;ping Options&lt;span class="hx:absolute hx:-mt-20" id="ping-options"&gt;&lt;/span&gt;
&lt;a href="#ping-options" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-c, count&lt;/code&gt;：指定要發送的封包數量。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-I, interface&lt;/code&gt;：指定要使用的網路介面（大寫 i）。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-i, seconds&lt;/code&gt;：指定在發送每個封包之間等待的秒數（預設為1秒）。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-f&lt;/code&gt;：將封包按照接收回應的速度連續發送。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l, preload&lt;/code&gt;：發送封包時不等待回應。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-n&lt;/code&gt;：以數字形式輸出 IP 位址。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-t, ttl&lt;/code&gt;：指定要發送的封包的生命週期（TTL）。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-w, maxwait&lt;/code&gt;：設定 ping 命令在超時之前等待回應的時間（單位為秒），即使已經發送或接收了多少封包。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-b&lt;/code&gt;：將封包發送到網路的廣播位址。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;範例&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;:~&amp;gt; ping -c 2 8.8.8.8&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=128 time=11.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=128 time=17.0 ms
--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 11.350/14.174/16.998/2.824 ms&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;輸出顯示以下信息：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ICMP 封包的大小( 64 字節 )&lt;/li&gt;
&lt;li&gt;目標系統的 IP 位址( 從 8.8.8.8 ）。&lt;/li&gt;
&lt;li&gt;每個封包的序列號( seq=1 )&lt;/li&gt;
&lt;li&gt;封包的TTL（TTL，生存時間）( ttl=128 )&lt;/li&gt;
&lt;li&gt;從傳輸封包到收到相應的答復之間的時間量（time=11.4 ms），這個時間也被稱為 &amp;ldquo;Round Trip Time (往返時間)&amp;quot;。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果從目標系統得到一個回答，可以確定基本的網絡設備設置和到目標主機的路由是有效的。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;Trace Network Packets&lt;span class="hx:absolute hx:-mt-20" id="trace-network-packets"&gt;&lt;/span&gt;
&lt;a href="#trace-network-packets" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;使用方式：&lt;code&gt;traceroute &amp;lt;目標主機&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;檢查不同網路之間的路由狀況&lt;/li&gt;
&lt;li&gt;使用稱為 “datagrams 資料包” 的 UDP 封包&lt;/li&gt;
&lt;li&gt;選項：&lt;code&gt;-n&lt;/code&gt; ，顯示 IP 地址而非完整網域名稱&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;traceroute 是一個網路診斷工具，主要用來檢查不同網路之間的路由狀況。它會發送多個 TTL 值逐漸增加的封包到目的地主機，每個 TTL 值會發送三個封包。&lt;/p&gt;
&lt;p&gt;traceroute 使用的是 UDP 封包，也稱為 datagrams (資料包)。首先，會發送三個 TTL=1 的資料包到目的地主機，然後是三個 TTL=2 的封包，以此類推。每當一個資料包通過一個路由器時，它的 TTL 值就會減少一個。&lt;/p&gt;
&lt;p&gt;當 TTL 值達到零時，該資料包就會被丟棄，並發送一個消息給發送者。因為每三個封包就會增加一個 TTL 值，traceroute 可以收集到到達目的地主機之前的每個路由器的資訊。&lt;/p&gt;
&lt;p&gt;範例 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; traceroute pluto.example.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;traceroute to pluto.example.com (192.168.2.1), 30 hops max, 40 byte packets using UDP
1 gateway.digitalairlines.com (172.17.2.254) 0 ms 0 ms 0 ms
2 antares.example.com (192.168.1.254) 14 ms * 14 ms
3 pluto.example.com (192.168.2.1) 19 ms 20 ms 26 ms&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;traceroute 執行時第一行會顯示一般性的資訊，之後每一行都代表到達目標主機時所經過的路由器，每個路由器都會顯示主機名稱和 IP 位址。&lt;/p&gt;
&lt;p&gt;traceroute 也會顯示每個路由器回傳的三個 datagrams 的來回時間資訊。如果沒有收到回應，就會顯示星號 (*)。最後一行顯示的是目標主機本身。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h2&gt;Network Related Configuration Files&lt;span class="hx:absolute hx:-mt-20" id="network-related-configuration-files"&gt;&lt;/span&gt;
&lt;a href="#network-related-configuration-files" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;網路介面的設定檔放在以下目錄:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/etc/sysconfig/network/&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Name Resolution
&lt;ul&gt;
&lt;li&gt;System&amp;rsquo;s hostname: &lt;code&gt;/etc/hostname&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Name resolution locally: &lt;code&gt;/etc/hosts&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;DNS Servers: &lt;code&gt;/etc/resolv.conf&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;名稱解析服務的順序: &lt;code&gt;/etc/nsswitch.conf&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;code&gt;/etc/resolv.conf&lt;/code&gt; 內容如下 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;search digitalairlines.com
nameserver 172.17.8.254
nameserver 172.17.1.1
nameserver 192.168.1.1&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;search：在這個項目中的網域名稱會用來自動補完不完整的主機名稱。例如，如果你查詢主機名稱 server3，它會自動完成成完整的網域名稱 &lt;code&gt;server3.digitalairlines.com&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;nameserver：以 nameserver 開頭的每個項目後面都會跟著一個名稱伺服器的 IP 位址。你可以設定最多三個名稱伺服器。如果第一個名稱伺服器失敗，就會使用下一個。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;h2&gt;SUSE sysconfig Network Commands&lt;span class="hx:absolute hx:-mt-20" id="suse-sysconfig-network-commands"&gt;&lt;/span&gt;
&lt;a href="#suse-sysconfig-network-commands" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax: &lt;code&gt;&amp;lt;command&amp;gt; &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Bring a configured network interface up:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ifup eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bring a configured network interface down:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ifdown eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Renew DHCP IP Address:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ifrenew eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Display information about a configured network interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ifstatus eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;要對位於 &lt;code&gt;/etc/sysconfig/network/&lt;/code&gt; 的組態檔案進行更改，你需要停止和重新啟動相應的介面。&lt;/p&gt;
&lt;p&gt;你可以使用 &lt;code&gt;ifdown&lt;/code&gt;和 &lt;code&gt;ifup&lt;/code&gt; 命令來執行此操作。例如，輸入 &lt;code&gt;ifdown eth0&lt;/code&gt; 將禁用 eth0 設備，&lt;code&gt;ifup eth0&lt;/code&gt; 則會再次啟用 eth0，當設備重新啟動時，新的設定會從配置文件中讀取。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Address Configuration&lt;span class="hx:absolute hx:-mt-20" id="address-configuration"&gt;&lt;/span&gt;
&lt;a href="#address-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip [address|addr|a] &amp;lt;task&amp;gt; &amp;lt;arguments&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Display IP Address configuration:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip addr show&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add an IP address to an interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip addr add 10.0.0.10/24 brd + dev eth0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;brd +&lt;/code&gt; 選項根據網路遮罩來確定自動設定廣播位址。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove an IP address from an interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip addr del 10.0.0.10/24 dev eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;ip 指令只會在記憶體中修改網路設定，若要保存永久設定則必須儲存在 &lt;code&gt;/etc/sysconfig/network/&lt;/code&gt; 中的 &lt;code&gt;ifcfg&lt;/code&gt; 檔案中。&lt;/p&gt;
&lt;p&gt;所有的 SUSE 網路設定腳本都使用 ip 指令來進行實際的網路設定。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Route Configuration&lt;span class="hx:absolute hx:-mt-20" id="route-configuration"&gt;&lt;/span&gt;
&lt;a href="#route-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax: &lt;code&gt;ip [route|r] &amp;lt;task&amp;gt; &amp;lt;arguments&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Display routing table:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip route show&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add a route to the local network:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip route add 172.17.0.0/16 dev eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add a route to a different network:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip route add 192.168.1.0/24 via 172.17.1.1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add a default route:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip route add default via 172.17.2.2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Delete a route:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip route delete 192.168.1.0/24 dev eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;要將更改應用於路由配置檔，您需要使用 &lt;code&gt;ifdown&lt;/code&gt; 和 &lt;code&gt;ifup&lt;/code&gt; 命令重新啟動受影響的網路設備。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Link Configuration&lt;span class="hx:absolute hx:-mt-20" id="link-configuration"&gt;&lt;/span&gt;
&lt;a href="#link-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax: &lt;code&gt;ip [link|l] &amp;lt;task&amp;gt; &amp;lt;arguments&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Display link level configuration:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip link show&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bring an interface up:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip link set eth0 up&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bring an interface down:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip link set eth0 down&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Change the MAC address of an interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip link set eth0 addr 00:11:22:AA:BB:CC&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Rename a network interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ip link set eth0 name peth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;範例 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;server1:~ # ip link show&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :　&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;1: lo: &amp;lt;LOOPBACK,UP&amp;gt; mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 00:0c:29:11:c6:b8 brd ff:ff:ff:ff:ff:ff&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;UP - 裝置已開啟，可以傳送和接收網路上的封包。&lt;/li&gt;
&lt;li&gt;LOOPBACK - 裝置是回送裝置。&lt;/li&gt;
&lt;li&gt;BROADCAST - 裝置可以發送封包到共享同一網路的所有主機。&lt;/li&gt;
&lt;li&gt;POINTOPOINT - 裝置僅與另一個裝置相連。所有封包都會發送到另一個裝置，也會從另一個裝置接收封包。&lt;/li&gt;
&lt;li&gt;MULTICAST - 裝置可以同時向一群其他系統發送封包。&lt;/li&gt;
&lt;li&gt;PROMISC - 裝置會監聽網路上的所有封包，不只是發送給裝置硬體地址的封包。這通常用於網路監控。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;使用 ip 命令時，你可以使用 &lt;code&gt;-s&lt;/code&gt; 選項來顯示有關網路介面的其他統計資訊。這個命令的格式如下：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;ip -s link show eth0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;透過在命令行尾部輸入裝置名稱，你可以限制輸出僅顯示特定的裝置，這還可以用於顯示地址設定或裝置屬性。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;以下是顯示給裝置 eth0 的資訊範例：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; ip -s link show eth0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:0e:56:be brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped missed mcast
64239 725 0 0 0 0
TX: bytes packets errors dropped carrier collsns
62369 612 0 0 0 0
altname enp2s0
altname ens32&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;對於每個裝置都顯示了兩個額外的包含資訊的部分，每個部分都有一個標題說明顯示的資訊。&lt;/p&gt;
&lt;p&gt;以 RX 為開頭的部分顯示有關已接收的封包的資訊，以 TX 為開頭的部分顯示有關已發送的封包的資訊。&lt;/p&gt;
&lt;p&gt;這些部分顯示以下資訊：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bytes：裝置已接收或傳輸的所有位元組總數。&lt;/li&gt;
&lt;li&gt;Packets：裝置已接收或傳輸的所有封包總數。&lt;/li&gt;
&lt;li&gt;Errors：接收器或發送器錯誤的總數。&lt;/li&gt;
&lt;li&gt;Dropped：由於資源不足而被丟棄的封包總數。&lt;/li&gt;
&lt;li&gt;Overrun：因接收器超限而導致被丟棄的封包總數。通常，如果裝置發生超限，這意味著 Linux 內核存在嚴重問題或者你的計算機對該裝置的處理速度太慢。&lt;/li&gt;
&lt;li&gt;Mcast：已接收的多播封包總數。這個選項僅支援少數裝置。&lt;/li&gt;
&lt;li&gt;Carrier：因喪失載波而導致的連結媒介故障總數。&lt;/li&gt;
&lt;li&gt;Collsns：在以太網媒介上的碰撞事件總數。&lt;/li&gt;
&lt;li&gt;Compressed：已壓縮的封包總數。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;你也可以使用 ip 工具來更改裝置屬性。以下是設定裝置屬性的基本命令格式：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;ip link set &amp;lt;device&amp;gt; &amp;lt;attribute&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;上述已經描述了可能的屬性。最重要的屬性是 &amp;ldquo;up&amp;rdquo; 和 &amp;ldquo;down&amp;rdquo;。通過設置這些屬性，可以啟用或停用網路裝置。
要啟用網路裝置（例如 eth0），請輸入以下命令：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;ip link set eth0 up&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;要停用網絡設備（例如 eth0），請輸入以下命令：&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;ip link set eth0 down&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Ethernet Configuration&lt;span class="hx:absolute hx:-mt-20" id="ethernet-configuration"&gt;&lt;/span&gt;
&lt;a href="#ethernet-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax: &lt;code&gt;ethtool &amp;lt;options&amp;gt; &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Display configuration of an interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ethtool eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Change link speed of an interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ethtool -s speed 1000 eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Disable link auto-negotiation on an interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ethtool autoneg=off eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Force full duplex on an interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ethtool duplex full eth0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&lt;code&gt;ethtool&lt;/code&gt; 是一個指令，可以讓你檢視和改變以太網卡的設定，它可以用來解決網路介面的問題。&lt;/p&gt;
&lt;p&gt;使用 ethtool 指令需要網卡驅動程式支援。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Bridge Configuration&lt;span class="hx:absolute hx:-mt-20" id="bridge-configuration"&gt;&lt;/span&gt;
&lt;a href="#bridge-configuration" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Syntax: &lt;code&gt;brctl &amp;lt;action&amp;gt; &amp;lt;arguments&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Display currently configured bridges:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;brctl show&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Create a new bridge:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;brctl addbr br1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add an interface to a bridge:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;brctl addif br1 eth1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove an interface from a bridge:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;brctl delif br1 eth1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Remove an existing bridge:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;brctl delbr br1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;brctl 命令允許你在 Linux 中創建和使用網路橋接器。它只修改記憶體中的網路橋接器配置，持久的網路橋接器配置必須存儲在 &lt;code&gt;/etc/sysconfig/network/&lt;/code&gt; 的 &lt;code&gt;ifcfg-&lt;/code&gt; 檔案中。&lt;/p&gt;
&lt;p&gt;SUSE 網絡配置腳本使用 &lt;code&gt;brctl&lt;/code&gt; 命令來進行實際的網路橋接器配置。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Network Interface Types&lt;span class="hx:absolute hx:-mt-20" id="network-interface-types"&gt;&lt;/span&gt;
&lt;a href="#network-interface-types" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;基本網路介面：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;關聯實體網路裝置，例如乙太網路和無線網路。&lt;/li&gt;
&lt;li&gt;使用 udev 持久命名網路介面。&lt;/li&gt;
&lt;li&gt;可以在不需要建立別名介面（例如 eth0:1、 eth0:2，等等）的情況下綁定多個IP地址。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;聚合網路介面（Bonded Network Interface）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;由一個或多個實體網路裝置構成的虛擬網路介面。&lt;/li&gt;
&lt;li&gt;用於容錯和/或連結聚合。&lt;/li&gt;
&lt;li&gt;bonding 驅動程序可以使用不同的模式（modes）來綁定介面。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;虛擬區域網路介面（VLAN Network Interface）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;虛擬網路介面，會標記通過它的所有封包，使用 &lt;code&gt;802.11q&lt;/code&gt; VLAN 標記。&lt;/li&gt;
&lt;li&gt;VLAN 介面在實體網路裝置上進行配置和通信。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;網路橋接器（Network Bridge）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;虛擬網路介面，允許多個網路介面在單一廣播域中通信。&lt;/li&gt;
&lt;li&gt;附加到橋接器的所有介面都作為交換機端口運作。&lt;/li&gt;
&lt;li&gt;SUSE sysconfig 工具允許您像定義其他網路介面一樣定義橋接器。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2&gt;Basic Network Interface: Config File&lt;span class="hx:absolute hx:-mt-20" id="basic-network-interface-config-file"&gt;&lt;/span&gt;
&lt;a href="#basic-network-interface-config-file" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;Typically named : &lt;code&gt;ifcfg-ethX&lt;/code&gt;&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; cat /etc/sysconfig/network/ifcfg-eth0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;檔案內容 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;IPADDR=&amp;#39;192.168.61.60/24&amp;#39;
BOOTPROTO=&amp;#39;static&amp;#39;
STARTMODE=&amp;#39;auto&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Persistent Network Interface Names&lt;span class="hx:absolute hx:-mt-20" id="persistent-network-interface-names"&gt;&lt;/span&gt;
&lt;a href="#persistent-network-interface-names" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;檔名 : &lt;strong&gt;&lt;code&gt;/etc/udev/rules.d/70-persistent-net.rules&lt;/code&gt;&lt;/strong&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;...
SUBSYSTEM==&amp;#34;net&amp;#34;, ACTION==&amp;#34;add&amp;#34;, DRIVERS==&amp;#34;?*&amp;#34;,
ATTR{address}==&amp;#34;00:15:c5:55:0c:a8&amp;#34;, ATTR{type}==&amp;#34;1&amp;#34;,
KERNEL==&amp;#34;eth*&amp;#34;, NAME=&amp;#34;eth0&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h1&gt;Understand Network Management with Wicked&lt;/h1&gt;&lt;h2&gt;Features of Wicked&lt;span class="hx:absolute hx:-mt-20" id="features-of-wicked"&gt;&lt;/span&gt;
&lt;a href="#features-of-wicked" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;解析 SUSE 和 RedHat 風格的 &lt;code&gt;/etc/sysconfig/network&lt;/code&gt; 檔案&lt;/li&gt;
&lt;li&gt;使用 XML 表示網路介面配置&lt;/li&gt;
&lt;li&gt;啟動和關閉「 normal (普通) 」網路介面&lt;/li&gt;
&lt;li&gt;支援無線網路，但功能尚未完整且僅限於一個網路&lt;/li&gt;
&lt;li&gt;具備內建的 DHCPv4 和 DHCPv6 客戶端&lt;/li&gt;
&lt;li&gt;實驗性功能：當偵測到連接時，自動啟動介面&lt;/li&gt;
&lt;li&gt;XML reader/writer implementation。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Start Networking&lt;span class="hx:absolute hx:-mt-20" id="start-networking"&gt;&lt;/span&gt;
&lt;a href="#start-networking" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Wicked service daemons:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;wicked.service&lt;/code&gt; – Interface management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wickedd.service&lt;/code&gt; – Network management&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Enable wicked
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;systemctl enable --force wicked.service&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Start server process
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;systemctl start wickedd.service&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bringing up the network
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;systemctl start wicked.service&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;systemctl start network.service&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;這些命令使用的是&lt;code&gt; /etc/wicked/client.xml&lt;/code&gt; 中定義的默認或系統配置源。&lt;/p&gt;
&lt;p&gt;要啟用除錯，請在 &lt;code&gt;/etc/sysconfig/network/config&lt;/code&gt; 中設置 &lt;code&gt;WICKED_DEBUG_PARAM&lt;/code&gt;（這可能會在未來更改），
例如： &lt;code&gt;WICKED_DEBUG_PARAM=&amp;quot;--debug most&amp;quot;&lt;/code&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Display Interface Information&lt;span class="hx:absolute hx:-mt-20" id="display-interface-information"&gt;&lt;/span&gt;
&lt;a href="#display-interface-information" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Standard output:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;wicked show all&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wicked show &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;XML output:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;wicked show-xml all&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wicked show-xml &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;範例 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;~&amp;gt; wicked show eth0&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;eth0 up
link: #2, state up, mtu 1500
type: ethernet, hwaddr 00:0c:29:0e:56:be
config: compat:suse:/etc/sysconfig/network/ifcfg-eth0
leases: ipv4 static granted
addr: ipv4 192.168.61.60/24 [static]
route: ipv4 default via 192.168.61.2 proto boot&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2&gt;Manage Interfaces&lt;span class="hx:absolute hx:-mt-20" id="manage-interfaces"&gt;&lt;/span&gt;
&lt;a href="#manage-interfaces" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Bring up one interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;wicked ifup &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wicked ifup --ifconfig &amp;lt;xmlfile&amp;gt; &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bring down one interface:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;wicked ifdown &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;wicked ifdown --delete --ifconfig &amp;lt;xmlfile&amp;gt; &amp;lt;interface&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;設定的來源包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;firmware：iSCSI Boot Firmware Table（iBFT）&lt;/li&gt;
&lt;li&gt;compat：ifcfg 檔案（為兼容性實現）&lt;/li&gt;
&lt;li&gt;wicked：存儲在 &lt;code&gt;path&lt;/code&gt; 下的本地 wicked XML 配置格式（預設值：&lt;code&gt;/etc/wicked/ifconfig&lt;/code&gt;）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;對於給定介面，wicked 從這些來源獲得的配置會被應用。重要性的預期順序是 firmware，然後是 compat，最後是 wicked（這在未來可能會更改，當 ifcfg 兼容性要求放寬時）。&lt;/p&gt;
&lt;p&gt;可以在 &lt;code&gt;/usr/share/doc/packages/wicked/samples/&lt;/code&gt; 下找到示例配置文件（例如，用於 VLAN 介面）。&lt;/p&gt;
&lt;p&gt;使用 wicked，不需要實際關閉介面才能重新配置它（除非內核需要）。例如，為了向靜態配置的網路介面添加另一個 IP 地址或路由，請將 IP 地址添加到介面定義中，然後再執行另一個 “ifup” 操作。服務器會盡力僅更新已更改的設置，這適用於鏈路級選項，例如設備 MTU 或 MAC 地址，以及網絡層設置，例如地址、路由，甚至是地址配置模式（例如從靜態配置移動到 DHCP）。&lt;/p&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h1&gt;Understand firewalld&lt;/h1&gt;&lt;h2&gt;Overview of firewalld&lt;span class="hx:absolute hx:-mt-20" id="overview-of-firewalld"&gt;&lt;/span&gt;
&lt;a href="#overview-of-firewalld" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;SLE 15 提供 firewalld 作為軟體防火牆。&lt;/li&gt;
&lt;li&gt;firewalld 是一個 systemd 背景程序&lt;/li&gt;
&lt;li&gt;在 SLE 安裝期間，防火牆默認啟用&lt;/li&gt;
&lt;li&gt;默認情況下，防火牆鎖定系統&lt;/li&gt;
&lt;li&gt;這是一個安全的起點&lt;/li&gt;
&lt;li&gt;接受 icmp 封包，並拒絕所有其他類型的封包&lt;/li&gt;
&lt;li&gt;可以使用以下方式管理防火牆：&lt;/li&gt;
&lt;li&gt;命令行工具&lt;/li&gt;
&lt;li&gt;GUI 介面&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Firewall Terms&lt;span class="hx:absolute hx:-mt-20" id="firewall-terms"&gt;&lt;/span&gt;
&lt;a href="#firewall-terms" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="indent-title-1"&gt;
&lt;p&gt;A zone file can contain several components:&lt;/p&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Zone (區域)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;定義網路連接的信任級別&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Target (目標)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;當一個區域處理封包且沒有明確處理封包的規則時，目標決定了行為&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Interface (介面)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;系統上的網路介面，例如 eth0&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Source (來源)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;封包來自哪裡，可以包括 IP、IP 網路或 MAC 地址。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Services (服務)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;服務簡化了防火牆的配置，它指定了一個服務的信息，如 port (端口) 和 protocol information (協議信息)，然後可以使用一個名稱來引用。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Packet (封包)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;在網路上傳輸的信息單元。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;網路區域定義了網路連線的信任等級，一個連線只能屬於一個區域，但一個區域可以用於多個網路連線。&lt;/p&gt;
&lt;p&gt;介面是系統中的網路介面，例如 eth0。一個介面只能與一個區域相關聯。&lt;/p&gt;
&lt;p&gt;防火牆提供了許多預定義的服務，也可以建立自訂服務，使用服務可以為服務指定有意義的名稱，並指定服務的端口和通訊協定，以簡化防火牆的配置，也可以透過指定端口和通訊協定達到相同的配置效果。&lt;/p&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Running configuration&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&amp;ldquo;Running configuration&amp;rdquo; 是目前啟用的防火牆配置，可以在不重新啟動防火牆的情況下進行更改。&lt;/p&gt;
&lt;p&gt;如果更改不被儲存到永久配置，則在防火牆重新啟動時這些更改將會丟失。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;Permanent configuration&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;div class="indent-title-1"&gt;
&lt;p&gt;&amp;ldquo;Permanent configuration&amp;rdquo; 在防火牆啟動或重新加載時被讀取，並且保存在硬盤上，可以在系統重新啟動後恢復。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;strong&gt;注意。運行中的配置和永久配置可以是不同的&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;預設情況下，更改防火牆設定時會更新目前正在運行的設定，當防火牆重新啟動時，設定將回到永久設置。&lt;/p&gt;
&lt;p&gt;更改運行中的設定允許測試新的設定，測試完運行中的設定後，可以將其輕鬆移至永久設定。&lt;/p&gt;
&lt;p&gt;請注意，&lt;strong&gt;有些選項可能僅作為永久配置提供&lt;/strong&gt;。&lt;/p&gt;
&lt;/div&gt;
&lt;h2&gt;Zones&lt;span class="hx:absolute hx:-mt-20" id="zones"&gt;&lt;/span&gt;
&lt;a href="#zones" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;防火牆具有層級結構，頂層是「Zone (區域)」，區域用於定義網路連線的信任等級。&lt;/p&gt;
&lt;p&gt;區域可以是「 Active 啟用的」和「 Not active 未啟用的」&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;啟用的區域可以處理網路封包&lt;/li&gt;
&lt;li&gt;未啟用的區域則不處理任何封包。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;防火牆提供幾個預先設定的區域：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;block，封鎖所有網路連線，不允許任何傳入或傳出的網路流量。&lt;/li&gt;
&lt;li&gt;dmz，用於網路中繼區（DMZ）的設置，此區允許一些流量進入網路，但仍有限制。&lt;/li&gt;
&lt;li&gt;drop，當網路流量進入此區時，將其直接丟棄，不發送任何回應。&lt;/li&gt;
&lt;li&gt;external，用於 Internet 的區域，此區設置為較安全的預設配置。&lt;/li&gt;
&lt;li&gt;home，針對住宅用戶的區域，此區允許某些網路流量，例如 Web 瀏覽和電子郵件。&lt;/li&gt;
&lt;li&gt;internal，用於內部網路的區域，此區將允許所有內部網路設備之間的流量，但限制從外部發起的流量。&lt;/li&gt;
&lt;li&gt;public，用於公共場所的區域，此區將允許特定的網路流量，例如 Web 瀏覽和電子郵件。&lt;/li&gt;
&lt;li&gt;trusted，用於信任的區域，此區允許從另一個信任的區域發起的流量進入網路。&lt;/li&gt;
&lt;li&gt;work，用於工作環境的區域，此區允許特定的網路流量，例如 VPN 和電子郵件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Zone Configuration Files&lt;span class="hx:absolute hx:-mt-20" id="zone-configuration-files"&gt;&lt;/span&gt;
&lt;a href="#zone-configuration-files" class="subheading-anchor" aria-label="此章節的永久連結"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;防火牆區域的設定以 XML 格式儲存&lt;/li&gt;
&lt;li&gt;設定檔位置在 &lt;code&gt;/etc/firewalld/zones/&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;檔案位置：
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/usr/lib/firewalld/zones&lt;/code&gt; ，存放預設和備用的設定檔&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/etc/firewalld/zones&lt;/code&gt; ，用於儲存使用者自行建立和客製化的設定檔&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;例如客製化的區域檔案 :
&lt;ul&gt;
&lt;li&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;cat /etc/firewalld/zones/public.xml&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;螢幕輸出 :&lt;/p&gt;
&lt;div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code"&gt;
&lt;div&gt;&lt;pre&gt;&lt;code&gt;&amp;lt;?xml version=&amp;#34;1.0&amp;#34; encoding=&amp;#34;utf-8&amp;#34;?&amp;gt;
&amp;lt;zone&amp;gt;
&amp;lt;short&amp;gt;Public&amp;lt;/short&amp;gt;
&amp;lt;description&amp;gt;For use in public areas. You do not trust the other \
computers on networks to not harm your computer. Only selected \
incoming connections are accepted.&amp;lt;/description&amp;gt;
&amp;lt;interface name=&amp;#34;eth0&amp;#34;/&amp;gt;
&amp;lt;service name=&amp;#34;dhcpv6-client&amp;#34;/&amp;gt;
&amp;lt;/zone&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0"&gt;
&lt;button
class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
title="複製程式碼"
aria-label="複製程式碼"
data-copied-label="已複製！"
&gt;
&lt;div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"&gt;&lt;/div&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;當在&lt;code&gt;/usr/lib/firewalld/zones&lt;/code&gt;中的設定檔被第一次修改時，它會被複製到&lt;code&gt;/etc/firewalld/zones&lt;/code&gt;，並包含任何的修改。&lt;/li&gt;
&lt;li&gt;所有的修改都會在&lt;code&gt;/etc/firewalld/zones&lt;/code&gt;中的設定檔中進行。&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>