Skip to content

Commit e0152d5

Browse files
authored
Auto deploy from GitHub Actions build 753
Jiahong Luo: [cdbcf54] Merge pull request #78 from ustclug/luojh-fix
1 parent 79b0d3b commit e0152d5

5 files changed

Lines changed: 160 additions & 51 deletions

File tree

Ch01/supplement/index.html

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -820,7 +820,7 @@
820820
<ul class="md-nav__list">
821821

822822
<li class="md-nav__item">
823-
<a href="#_1" class="md-nav__link">
823+
<a href="#bridge-mode" class="md-nav__link">
824824
<span class="md-ellipsis">
825825
桥接模式
826826
</span>
@@ -829,7 +829,7 @@
829829
</li>
830830

831831
<li class="md-nav__item">
832-
<a href="#_2" class="md-nav__link">
832+
<a href="#nat-mode" class="md-nav__link">
833833
<span class="md-ellipsis">
834834
网络地址转换模式
835835
</span>
@@ -838,7 +838,7 @@
838838
</li>
839839

840840
<li class="md-nav__item">
841-
<a href="#_3" class="md-nav__link">
841+
<a href="#hostonly-mode" class="md-nav__link">
842842
<span class="md-ellipsis">
843843
仅主机模式
844844
</span>
@@ -2123,7 +2123,7 @@
21232123
<ul class="md-nav__list">
21242124

21252125
<li class="md-nav__item">
2126-
<a href="#_1" class="md-nav__link">
2126+
<a href="#bridge-mode" class="md-nav__link">
21272127
<span class="md-ellipsis">
21282128
桥接模式
21292129
</span>
@@ -2132,7 +2132,7 @@
21322132
</li>
21332133

21342134
<li class="md-nav__item">
2135-
<a href="#_2" class="md-nav__link">
2135+
<a href="#nat-mode" class="md-nav__link">
21362136
<span class="md-ellipsis">
21372137
网络地址转换模式
21382138
</span>
@@ -2141,7 +2141,7 @@
21412141
</li>
21422142

21432143
<li class="md-nav__item">
2144-
<a href="#_3" class="md-nav__link">
2144+
<a href="#hostonly-mode" class="md-nav__link">
21452145
<span class="md-ellipsis">
21462146
仅主机模式
21472147
</span>
@@ -2597,19 +2597,22 @@ <h4 id="install-ubuntu-arm-on-vmware">在 VMWare Fusion 上安装 Ubuntu on ARM<
25972597
<h2 id="using-ventoy">使用 Ventoy<a class="headerlink" href="#using-ventoy" title="Permanent link">&para;</a></h2>
25982598
<p>使用 Ventoy 可以简单方便地从 U 盘或者其他移动介质安装各类操作系统(且支持在一个介质中存放多个系统镜像),当然也包括 GNU/Linux。有关如何使用 Ventoy,请参考其网站<sup id="fnref:2"><a class="footnote-ref" href="#fn:2">2</a></sup></p>
25992599
<h2 id="vm-nic-modes">虚拟机网卡的“模式”<a class="headerlink" href="#vm-nic-modes" title="Permanent link">&para;</a></h2>
2600-
<p>在虚拟机中使用网络设备时,会发现虚拟机一般有三种网卡模式,分别叫做 <code>Bridged</code>(桥接)、<code>NAT</code>(网络地址转换)、<code>Host only</code>(仅主机)。</p>
2601-
<p>虚拟机中的网络设备,是虚拟网卡(Virtual NIC),其背后需要与某个网络连接,才能实现通信功能。</p>
2602-
<h3 id="_1">桥接模式<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3>
2603-
<p>在这种模式下,虚拟机程序(例如 VMWare)会在主机上创建一个虚拟交换机。虚拟交换机上,接入了原来的物理网卡(例如有线网卡或者 Wi-Fi 适配器等)、虚拟机中安装的虚拟网卡、主机上的虚拟网卡。在这种配置下,虚拟机和主机都暴露在 Internet 下,分别使用<strong>不同的 IP</strong></p>
2600+
<p>在虚拟机中使用网络设备时,会发现虚拟机一般有三种网卡模式,分别叫做 <code>Bridged</code>(桥接)、<code>NAT</code>(网络地址转换)、<code>Host only</code>(仅主机)。虚拟机中的网络设备,是虚拟网卡(Virtual NIC),其背后需要与某个网络连接,才能实现通信功能。</p>
2601+
<p>在安装虚拟机前,设备上的网络通常是这样的:</p>
2602+
<pre class="mermaid"><code>flowchart TD
2603+
HSP[主机上的程序] --&gt; HS
2604+
HS[主机] --&gt;|虚拟网卡 10.1.2.3| IN[外部网络]</code></pre>
2605+
<h3 id="bridge-mode">桥接模式<a class="headerlink" href="#bridge-mode" title="Permanent link">&para;</a></h3>
2606+
<p>在这种模式下,虚拟机程序(例如 VMWare)会在主机上创建一个虚拟交换机。虚拟交换机上,接入了原来的物理网卡(例如有线网卡或者 Wi-Fi 适配器等)、虚拟机中安装的虚拟网卡、主机上的虚拟网卡。在这种配置下,虚拟机和主机都暴露在外部网络下,分别使用<strong>不同的 IP</strong></p>
26042607
<pre class="mermaid"><code>flowchart TD
26052608
VMP1[虚拟机上的程序] --&gt; VM1
26062609
VMP2[虚拟机上的程序] --&gt; VM2
26072610
HSP[主机上的程序] --&gt; HS
2608-
VM1[虚拟机] --&gt;|虚拟网卡 10.1.2.3| SW[虚拟交换机]
2609-
VM2[虚拟机] --&gt;|虚拟网卡 10.1.2.4| SW[虚拟交换机]
2610-
HS[主机] --&gt;|虚拟网卡 10.1.2.5| SW[虚拟交换机]
2611+
VM1[虚拟机] --&gt;|虚拟网卡 10.1.2.4| SW[虚拟交换机]
2612+
VM2[虚拟机] --&gt;|虚拟网卡 10.1.2.5| SW[虚拟交换机]
2613+
HS[主机] --&gt;|虚拟网卡 10.1.2.3| SW[虚拟交换机]
26112614
SW --&gt;|物理网卡| IN[外部网络]</code></pre>
2612-
<h3 id="_2">网络地址转换模式<a class="headerlink" href="#_2" title="Permanent link">&para;</a></h3>
2615+
<h3 id="nat-mode">网络地址转换模式<a class="headerlink" href="#nat-mode" title="Permanent link">&para;</a></h3>
26132616
<p>与桥接模式不同,网络地址转换下,虚拟机和主机<strong>共用一个 IP</strong>,虚拟机之间用虚拟交换机连接。从外部网络看来,虚拟机上的程序和主机上的程序发出的请求是一样的。</p>
26142617
<pre class="mermaid"><code>flowchart TD
26152618
VM1[虚拟机] --&gt;|虚拟网卡 192.168.100.100| SW[虚拟交换机 192.168.1.x]
@@ -2619,7 +2622,7 @@ <h3 id="_2">网络地址转换模式<a class="headerlink" href="#_2" title="Perm
26192622
HSP[主机上的程序] --&gt;|10.1.2.3| HS
26202623
HSP --&gt;|虚拟网卡 192.168.100.1| SW
26212624
HS[主机] --&gt;|物理网卡 10.1.2.3| IN[外部网络 10.x.x.x]</code></pre>
2622-
<h3 id="_3">仅主机模式<a class="headerlink" href="#_3" title="Permanent link">&para;</a></h3>
2625+
<h3 id="hostonly-mode">仅主机模式<a class="headerlink" href="#hostonly-mode" title="Permanent link">&para;</a></h3>
26232626
<p>仅主机模式类似 NAT,但是虚拟机不能与外部网络通信。</p>
26242627
<pre class="mermaid"><code>flowchart TD
26252628
VM1[虚拟机] --&gt;|虚拟网卡 192.168.100.100| SW[虚拟交换机 192.168.1.x]

Ch05/index.html

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1742,6 +1742,48 @@
17421742
</span>
17431743
</a>
17441744

1745+
</li>
1746+
1747+
<li class="md-nav__item">
1748+
<a href="#list-objects" class="md-nav__link">
1749+
<span class="md-ellipsis">
1750+
列出文件系统项目
1751+
</span>
1752+
</a>
1753+
1754+
<nav class="md-nav" aria-label="列出文件系统项目">
1755+
<ul class="md-nav__list">
1756+
1757+
<li class="md-nav__item">
1758+
<a href="#cmd-find" class="md-nav__link">
1759+
<span class="md-ellipsis">
1760+
find 命令
1761+
</span>
1762+
</a>
1763+
1764+
</li>
1765+
1766+
<li class="md-nav__item">
1767+
<a href="#cmd-du" class="md-nav__link">
1768+
<span class="md-ellipsis">
1769+
du 命令
1770+
</span>
1771+
</a>
1772+
1773+
</li>
1774+
1775+
<li class="md-nav__item">
1776+
<a href="#cmd-ncdu" class="md-nav__link">
1777+
<span class="md-ellipsis">
1778+
ncdu 命令
1779+
</span>
1780+
</a>
1781+
1782+
</li>
1783+
1784+
</ul>
1785+
</nav>
1786+
17451787
</li>
17461788

17471789
<li class="md-nav__item">
@@ -2146,6 +2188,70 @@ <h2 id="fhs">文件系统层次结构<a class="headerlink" href="#fhs" title="Pe
21462188
</ul>
21472189
</dd>
21482190
</dl>
2191+
<h2 id="list-objects">列出文件系统项目<a class="headerlink" href="#list-objects" title="Permanent link">&para;</a></h2>
2192+
<p>经常我们需要在 Shell 中列出某个目录下的项目(子目录和文件)。<code>ls</code> 命令是最常见的用来列出文件系统项目的命令,<code>ls -la</code> 则可以显示隐藏文件(<code>-a</code>)和更详细的信息(<code>-l</code>)。但是,<code>ls</code> 只能显示某个目录下的文件和子目录,并不会深入子目录内部继续检查。下面介绍几个命令,常用于获取这些信息。</p>
2193+
<h3 id="cmd-find"><code>find</code> 命令<a class="headerlink" href="#cmd-find" title="Permanent link">&para;</a></h3>
2194+
<p><code>find</code> 命令可以列出某个目录下所有的目录和文件,并<strong>递归地</strong>进入子目录。基本用法是</p>
2195+
<div class="highlight"><pre><span></span><code>$<span class="w"> </span>find<span class="w"> </span>/etc
2196+
/etc
2197+
/etc/analog.cfg
2198+
/etc/hosts.deny
2199+
/etc/initramfs-tools
2200+
/etc/initramfs-tools/initramfs.conf
2201+
/etc/initramfs-tools/hooks
2202+
/etc/initramfs-tools/conf.d
2203+
/etc/initramfs-tools/conf.d/resume
2204+
/etc/initramfs-tools/modules
2205+
/etc/initramfs-tools/update-initramfs.conf
2206+
...<span class="w"> </span><span class="o">(</span>省略<span class="o">)</span>
2207+
</code></pre></div>
2208+
<p>可以看到,<code>find</code> 命令将列出指定的目录下的文件和子目录名称,在遇到子目录时立即进入目录并递归地执行上面的操作。</p>
2209+
<p>该命令的一个很有用的用法是对每一个文件都执行某个命令(例如 <code>md5sum</code>):</p>
2210+
<div class="highlight"><pre><span></span><code>find<span class="w"> </span>.<span class="w"> </span>-type<span class="w"> </span>f<span class="w"> </span>-exec<span class="w"> </span>md5sum<span class="w"> </span><span class="o">{}</span><span class="w"> </span><span class="se">\;</span>
2211+
</code></pre></div>
2212+
<p>这里,<code>find .</code> 是指对当前目录(<code>.</code>)进行 <code>find</code>,并只列出文件(<code>-type f</code>)。<code>-exec</code> 后面的内容是要执行的命令,其中 <code>{}</code> 会被替换成找到的对象(文件、目录)的路径,<code>\;</code> 表示对每个对象都执行一次给定的命令,即实际运行的是</p>
2213+
<div class="highlight"><pre><span></span><code>md5sum<span class="w"> </span>file1
2214+
md5sum<span class="w"> </span>file2
2215+
md5sum<span class="w"> </span>file3
2216+
...
2217+
</code></pre></div>
2218+
<p>如果将 <code>\;</code> 换成 <code>+</code>,那么就是将文件名称收集起来一并交给要执行的命令,即</p>
2219+
<div class="highlight"><pre><span></span><code>md5sum<span class="w"> </span>file1<span class="w"> </span>file2<span class="w"> </span>file3<span class="w"> </span>...
2220+
</code></pre></div>
2221+
<h3 id="cmd-du"><code>du</code> 命令<a class="headerlink" href="#cmd-du" title="Permanent link">&para;</a></h3>
2222+
<p><code>du</code> 命令可以统计文件和目录的大小。目录的大小是无法直接获取的,需要统计里面所有的文件和子目录的大小之后加和才能得到。<code>du</code> 命令的输出类似这样:</p>
2223+
<div class="highlight"><pre><span></span><code>$<span class="w"> </span>du<span class="w"> </span>-h<span class="w"> </span>/etc/
2224+
<span class="m">4</span>.0K<span class="w"> </span>/etc/initramfs-tools/hooks
2225+
<span class="m">8</span>.0K<span class="w"> </span>/etc/initramfs-tools/conf.d
2226+
<span class="m">4</span>.0K<span class="w"> </span>/etc/initramfs-tools/scripts/local-premount
2227+
<span class="m">4</span>.0K<span class="w"> </span>/etc/initramfs-tools/scripts/nfs-premount
2228+
...<span class="w"> </span><span class="o">(</span>省略<span class="o">)</span>
2229+
<span class="m">4</span>.0K<span class="w"> </span>/etc/initramfs-tools/scripts/panic
2230+
<span class="m">4</span>.0K<span class="w"> </span>/etc/initramfs-tools/scripts/local-top
2231+
44K<span class="w"> </span>/etc/initramfs-tools/scripts
2232+
72K<span class="w"> </span>/etc/initramfs-tools
2233+
12K<span class="w"> </span>/etc/udisks2
2234+
16K<span class="w"> </span>/etc/fonts/conf.d
2235+
60K<span class="w"> </span>/etc/fonts/conf.avail
2236+
84K<span class="w"> </span>/etc/fonts
2237+
</code></pre></div>
2238+
<p>由于前面说到的原因,<code>du</code> 需要先递归进入子目录,处理完其中所有的项目之后,才能回到上层目录并显示上层目录的总大小。类似 <code>ls -h</code>,这里的 <code>-h</code> 表示以人类可读的方式进行显示,<code>-b</code> 则可以显示字节数,<code>-a</code> 可以使得输出包含文件的大小(默认只显示各层级目录的大小)。</p>
2239+
<h3 id="cmd-ncdu"><code>ncdu</code> 命令<a class="headerlink" href="#cmd-ncdu" title="Permanent link">&para;</a></h3>
2240+
<p><code>ncdu</code> 命令可以以图形化和交互式的方式显示目录的内容和大小,并可以用左右方向键浏览目录,类似 Windows 的文件资源管理器。这非常便于观察哪个目录占用了较大的磁盘空间。</p>
2241+
<div class="highlight"><pre><span></span><code>ncdu 1.18 ~ Use the arrow keys to navigate, press ? for help
2242+
--- /home/xxxxxx(略去) -----------------
2243+
/..
2244+
53.1 MiB [##########] /main
2245+
45.4 MiB [######## ] Contents-riscv64.gz
2246+
40.6 MiB [####### ] /universe
2247+
580.0 KiB [ ] /multiverse
2248+
44.0 KiB [ ] /restricted
2249+
8.0 KiB [ ] InRelease
2250+
8.0 KiB [ ] Release
2251+
4.0 KiB [ ] Release.gpg
2252+
2253+
Total disk usage: 139.7 MiB Apparent size: 139.6 MiB Items: 29
2254+
</code></pre></div>
21492255
<h2 id="questions">思考题<a class="headerlink" href="#questions" title="Permanent link">&para;</a></h2>
21502256
<div class="admonition question">
21512257
<p class="admonition-title">nobody 用户</p>

search/search_index.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

sitemap.xml

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -2,142 +2,142 @@
22
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
33
<url>
44
<loc>https://101.lug.ustc.edu.cn/</loc>
5-
<lastmod>2025-06-14</lastmod>
5+
<lastmod>2025-06-15</lastmod>
66
</url>
77
<url>
88
<loc>https://101.lug.ustc.edu.cn/credits/</loc>
9-
<lastmod>2025-06-14</lastmod>
9+
<lastmod>2025-06-15</lastmod>
1010
</url>
1111
<url>
1212
<loc>https://101.lug.ustc.edu.cn/notations/</loc>
13-
<lastmod>2025-06-14</lastmod>
13+
<lastmod>2025-06-15</lastmod>
1414
</url>
1515
<url>
1616
<loc>https://101.lug.ustc.edu.cn/postface/</loc>
17-
<lastmod>2025-06-14</lastmod>
17+
<lastmod>2025-06-15</lastmod>
1818
</url>
1919
<url>
2020
<loc>https://101.lug.ustc.edu.cn/preface/</loc>
21-
<lastmod>2025-06-14</lastmod>
21+
<lastmod>2025-06-15</lastmod>
2222
</url>
2323
<url>
2424
<loc>https://101.lug.ustc.edu.cn/Appendix/distribution/</loc>
25-
<lastmod>2025-06-14</lastmod>
25+
<lastmod>2025-06-15</lastmod>
2626
</url>
2727
<url>
2828
<loc>https://101.lug.ustc.edu.cn/Appendix/man/</loc>
29-
<lastmod>2025-06-14</lastmod>
29+
<lastmod>2025-06-15</lastmod>
3030
</url>
3131
<url>
3232
<loc>https://101.lug.ustc.edu.cn/Appendix/markdown/</loc>
33-
<lastmod>2025-06-14</lastmod>
33+
<lastmod>2025-06-15</lastmod>
3434
</url>
3535
<url>
3636
<loc>https://101.lug.ustc.edu.cn/Ch01/</loc>
37-
<lastmod>2025-06-14</lastmod>
37+
<lastmod>2025-06-15</lastmod>
3838
</url>
3939
<url>
4040
<loc>https://101.lug.ustc.edu.cn/Ch01/solution/</loc>
41-
<lastmod>2025-06-14</lastmod>
41+
<lastmod>2025-06-15</lastmod>
4242
</url>
4343
<url>
4444
<loc>https://101.lug.ustc.edu.cn/Ch01/supplement/</loc>
45-
<lastmod>2025-06-14</lastmod>
45+
<lastmod>2025-06-15</lastmod>
4646
</url>
4747
<url>
4848
<loc>https://101.lug.ustc.edu.cn/Ch02/</loc>
49-
<lastmod>2025-06-14</lastmod>
49+
<lastmod>2025-06-15</lastmod>
5050
</url>
5151
<url>
5252
<loc>https://101.lug.ustc.edu.cn/Ch02/solution/</loc>
53-
<lastmod>2025-06-14</lastmod>
53+
<lastmod>2025-06-15</lastmod>
5454
</url>
5555
<url>
5656
<loc>https://101.lug.ustc.edu.cn/Ch02/supplement/</loc>
57-
<lastmod>2025-06-14</lastmod>
57+
<lastmod>2025-06-15</lastmod>
5858
</url>
5959
<url>
6060
<loc>https://101.lug.ustc.edu.cn/Ch03/</loc>
61-
<lastmod>2025-06-14</lastmod>
61+
<lastmod>2025-06-15</lastmod>
6262
</url>
6363
<url>
6464
<loc>https://101.lug.ustc.edu.cn/Ch03/solution/</loc>
65-
<lastmod>2025-06-14</lastmod>
65+
<lastmod>2025-06-15</lastmod>
6666
</url>
6767
<url>
6868
<loc>https://101.lug.ustc.edu.cn/Ch03/supplement/</loc>
69-
<lastmod>2025-06-14</lastmod>
69+
<lastmod>2025-06-15</lastmod>
7070
</url>
7171
<url>
7272
<loc>https://101.lug.ustc.edu.cn/Ch04/</loc>
73-
<lastmod>2025-06-14</lastmod>
73+
<lastmod>2025-06-15</lastmod>
7474
</url>
7575
<url>
7676
<loc>https://101.lug.ustc.edu.cn/Ch04/solution/</loc>
77-
<lastmod>2025-06-14</lastmod>
77+
<lastmod>2025-06-15</lastmod>
7878
</url>
7979
<url>
8080
<loc>https://101.lug.ustc.edu.cn/Ch04/supplement/</loc>
81-
<lastmod>2025-06-14</lastmod>
81+
<lastmod>2025-06-15</lastmod>
8282
</url>
8383
<url>
8484
<loc>https://101.lug.ustc.edu.cn/Ch05/</loc>
85-
<lastmod>2025-06-14</lastmod>
85+
<lastmod>2025-06-15</lastmod>
8686
</url>
8787
<url>
8888
<loc>https://101.lug.ustc.edu.cn/Ch05/solution/</loc>
89-
<lastmod>2025-06-14</lastmod>
89+
<lastmod>2025-06-15</lastmod>
9090
</url>
9191
<url>
9292
<loc>https://101.lug.ustc.edu.cn/Ch05/supplement/</loc>
93-
<lastmod>2025-06-14</lastmod>
93+
<lastmod>2025-06-15</lastmod>
9494
</url>
9595
<url>
9696
<loc>https://101.lug.ustc.edu.cn/Ch06/</loc>
97-
<lastmod>2025-06-14</lastmod>
97+
<lastmod>2025-06-15</lastmod>
9898
</url>
9999
<url>
100100
<loc>https://101.lug.ustc.edu.cn/Ch06/solution/</loc>
101-
<lastmod>2025-06-14</lastmod>
101+
<lastmod>2025-06-15</lastmod>
102102
</url>
103103
<url>
104104
<loc>https://101.lug.ustc.edu.cn/Ch06/supplement/</loc>
105-
<lastmod>2025-06-14</lastmod>
105+
<lastmod>2025-06-15</lastmod>
106106
</url>
107107
<url>
108108
<loc>https://101.lug.ustc.edu.cn/Ch07/</loc>
109-
<lastmod>2025-06-14</lastmod>
109+
<lastmod>2025-06-15</lastmod>
110110
</url>
111111
<url>
112112
<loc>https://101.lug.ustc.edu.cn/Ch07/supplement/</loc>
113-
<lastmod>2025-06-14</lastmod>
113+
<lastmod>2025-06-15</lastmod>
114114
</url>
115115
<url>
116116
<loc>https://101.lug.ustc.edu.cn/Ch08/</loc>
117-
<lastmod>2025-06-14</lastmod>
117+
<lastmod>2025-06-15</lastmod>
118118
</url>
119119
<url>
120120
<loc>https://101.lug.ustc.edu.cn/Ch08/supplement/</loc>
121-
<lastmod>2025-06-14</lastmod>
121+
<lastmod>2025-06-15</lastmod>
122122
</url>
123123
<url>
124124
<loc>https://101.lug.ustc.edu.cn/Ch09/</loc>
125-
<lastmod>2025-06-14</lastmod>
125+
<lastmod>2025-06-15</lastmod>
126126
</url>
127127
<url>
128128
<loc>https://101.lug.ustc.edu.cn/Ch09/supplement/</loc>
129-
<lastmod>2025-06-14</lastmod>
129+
<lastmod>2025-06-15</lastmod>
130130
</url>
131131
<url>
132132
<loc>https://101.lug.ustc.edu.cn/Ch10/</loc>
133-
<lastmod>2025-06-14</lastmod>
133+
<lastmod>2025-06-15</lastmod>
134134
</url>
135135
<url>
136136
<loc>https://101.lug.ustc.edu.cn/Spec/slide/</loc>
137-
<lastmod>2025-06-14</lastmod>
137+
<lastmod>2025-06-15</lastmod>
138138
</url>
139139
<url>
140140
<loc>https://101.lug.ustc.edu.cn/Spec/writing/</loc>
141-
<lastmod>2025-06-14</lastmod>
141+
<lastmod>2025-06-15</lastmod>
142142
</url>
143143
</urlset>

sitemap.xml.gz

0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)