Ubuntu 挂载新硬盘
<h1 class="Post-Title">Ubuntu 挂载新硬盘</h1><div class="Post-Author">
<div class="AuthorInfo">
<div class="AuthorInfo">
<div class="css-1gomreu"> </div>
</div>
</div>
</div>
<div class="LabelContainer-wrapper"> </div>
<div class="Post-RichTextContainer">
<div class="css-1yuhvjn">
<div class="RichText ztext Post-RichText css-4em6pe">
<p data-first-child="" data-pid="ZkgmzN6w">我们在使用 Ubuntu 作为服务器系统时,会有一个常用的操作情景,就是为服务器添加新硬盘。</p>
<br>
<p data-pid="5014FCB5">上图是我的工作室中的一台开发服务器的图片,可以看到,类似这种机架式服务器,前方都会有若干个可抽插硬盘笼,我们可以比较轻松的添加或者更换硬盘。</p>
<p data-pid="BdgPAI9Z">为方便演示如何为 Ubuntu 添加新硬盘,以及如何格式化分区和挂载,我们将使用 VirtualBox 虚拟机以及 Ubuntu Server 16.04 来进行演示。</p>
<h2>在 VirtualBox 中添加新硬盘</h2>
<p data-pid="R9O1pZYL">我们可以在 VirtualBox 中打开指定虚拟机的设置选项,然后在存储选项卡中选择控制器SATA,然后点击右边的添加新硬盘图标,根据提示选择创建的新硬盘类型、容量大小、存放位置即可,大致方法与创建虚拟机时设置硬盘一样。以下是添加新虚拟硬盘后的截图,我们创建了一个名为 NewVirtualDisk1.vid 的虚拟硬盘。</p>
<img width="772" height="582" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="772" data-rawheight="582" data-original="https://pic1.zhimg.com/v2-5f536b8d614b9b835adddb03e8343488_r.jpg" data-actualsrc="https://pic1.zhimg.com/v2-5f536b8d614b9b835adddb03e8343488_b.jpg" data-lazy-status="ok" data-src="https://pic1.zhimg.com/80/v2-5f536b8d614b9b835adddb03e8343488_720w.webp">
<p class="ztext-empty-paragraph"> </p>
<h2>查看当前硬盘窗台</h2>
<p data-pid="LeIqbne2">添加虚拟硬盘后,我们启动虚拟机,进入系统后,我们可以通过 <code>fdisk</code> 命令检查当前的硬盘状态。</p>
<div class="highlight">
<pre><code class="language-text">sudo fdisk -l</code></pre>
</div>
<p data-pid="ysLMdGw0">执行以上命令后,我们可以看到以下输出:</p>
<img width="802" height="677" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="802" data-rawheight="677" data-original="https://pic2.zhimg.com/v2-ec188416272f9751f97da7fc1e0cdcb5_r.jpg" data-actualsrc="https://pic2.zhimg.com/v2-ec188416272f9751f97da7fc1e0cdcb5_b.jpg" data-lazy-status="ok" data-src="https://pic2.zhimg.com/80/v2-ec188416272f9751f97da7fc1e0cdcb5_720w.webp">
<p data-pid="TMi5VqFV">这里我们可以看到,我们原来的硬盘标为 /dev/sda 。下面还能看到一个名为 /dev/sdb ,容量为 2G 的硬盘,这个就是我们刚刚新设置的 NewVirtualDisk1.vid 虚拟硬盘。</p>
<h2>为新硬盘分区</h2>
<p data-pid="W25AxXeT">我们将使用 <code>fdisk</code> 对 /dev/sdb 进行分区操作,为了简化操作,我们会将这个新硬盘全部分为一个分区,具体操作如下:</p>
<div class="highlight">
<pre><code class="language-text">sudo fdisk /dev/sdb</code></pre>
</div>
<p data-pid="ywPKimiT">进入分区工具后,我们可以输入 <code>m</code> 看指令说明:</p>
<img width="974" height="817" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="974" data-rawheight="817" data-original="https://pic3.zhimg.com/v2-e407a7035faa63b7356f32c6ad9770ee_r.jpg" data-actualsrc="https://pic3.zhimg.com/v2-e407a7035faa63b7356f32c6ad9770ee_b.jpg" data-lazy-status="ok" data-src="https://pic3.zhimg.com/80/v2-e407a7035faa63b7356f32c6ad9770ee_720w.webp">
<p data-pid="JThZQL3X">我们接下来要创建新分区,所以我们将会输入 <code>n</code></p>
<div class="highlight">
<pre><code class="language-text">Command (m for help): n
>>
Partition type
p primary (0, primary, 0 extended, 4free)
e extended (container for logical partitions)</code></pre>
</div>
<p data-pid="-P5s_y68">这里,我们可以给一块硬盘创建最多4个主分区,和若干逻辑分区,由于我们这里只为该硬盘创建一个分区,那么我们即创建一个主分区即可。</p>
<div class="highlight">
<pre><code class="language-text">Select (default p):p
Partition number (1-4, default 1): 1
Frist sector (2048-4194303, default 2048): 2048
Last sector, *sectors or *size{K,M,G,T,P} (2048-4194303, default 4194303): 4194303
>> Create a new partition 1 of type 'Linux' and of size 2GiB
Command (m for help):w</code></pre>
</div>
<p data-pid="TrHCedRA">我们创建分区的操作为:<br>- p 命令创建一个主分区<br>- 选择默认创建第一个分区<br>- 设置分区的开始位置<br>- 设置分区的结束位置,因为只设置一个分区,因此都选择默认选项<br>- w 命令保存分区设置</p>
<h2>格式化分区</h2>
<p data-pid="izxQx_y6">我们可以使用 <code>mkfs</code> 命令格式化分区,具体命令如下:</p>
<div class="highlight">
<pre><code class="language-text">sudo mkfs -t ext4 /dev/sdb1</code></pre>
</div>
<p data-pid="V21mLltB">输入命令后,可以看到分区格式化成功:</p>
<img width="974" height="817" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="974" data-rawheight="817" data-original="https://pic2.zhimg.com/v2-e56067b658a9e8f270c131a5100c9869_r.jpg" data-actualsrc="https://pic2.zhimg.com/v2-e56067b658a9e8f270c131a5100c9869_b.jpg" data-lazy-status="ok" data-src="https://pic2.zhimg.com/80/v2-e56067b658a9e8f270c131a5100c9869_720w.webp">
<p class="ztext-empty-paragraph"> </p>
<h2>挂载分区</h2>
<p data-pid="EPj0KqMg">分区我们需要先创建一个目录,然后再把这个新分区挂载到目录上。具体操作如下:</p>
<div class="highlight">
<pre><code class="language-text"># 我们在 ~ 目录下创建一个 data 的目录,并将新分区挂载到这里
mkdir ~/data
sudo mount /dev/sdb1 ~/data</code></pre>
</div>
<p data-pid="SVm8ZpXl">挂载后,我们再通过 <code>df</code> 命令查看是否挂载成功:</p>
<img width="974" height="817" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="974" data-rawheight="817" data-original="https://pic3.zhimg.com/v2-f62f3ea1c7766cc12c32b731f92ae092_r.jpg" data-actualsrc="https://pic3.zhimg.com/v2-f62f3ea1c7766cc12c32b731f92ae092_b.jpg" data-lazy-status="ok" data-src="https://pic3.zhimg.com/80/v2-f62f3ea1c7766cc12c32b731f92ae092_720w.webp">
<p class="ztext-empty-paragraph"> </p>
<h2>开机自动挂载设置</h2>
<p data-pid="5DPvkOLM">我们使用以上方法挂载分区,重启系统之后,分区并不会自动挂载。</p>
<img width="802" height="677" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="802" data-rawheight="677" data-original="https://pic2.zhimg.com/v2-cd439d85324adbd3bb274b204fe157ed_r.jpg" data-actualsrc="https://pic2.zhimg.com/v2-cd439d85324adbd3bb274b204fe157ed_b.jpg" data-lazy-status="ok" data-src="https://pic2.zhimg.com/80/v2-cd439d85324adbd3bb274b204fe157ed_720w.webp">
<p data-pid="gSaqWfgj">上图为虚拟机重启之后,再次运行 <code>df</code> 命令,我们可以看到,/dev/sdb1 分区并没有正常挂载,为解决这一问题,我们需要修改 /etc/fstab 配置文件。为配置 /etc/fstab ,我们需要先获取硬盘的 uuid,方法如下</p>
<div class="highlight">
<pre><code class="language-text">ls -l /dev/disk/by-uuid
>>
lrwxrwxrwx 1 root root 10 Apr 17 11:40 287caa60-faa1-4eed-a3c0-2643afab9913 -> ../../dm-0
lrwxrwxrwx 1 root root 10 Apr 17 11:40 4fed8d9b-8318-4cf5-8380-c8d052d28306 -> ../../dm-1
lrwxrwxrwx 1 root root 10 Apr 17 11:40 54b28c93-c6c0-48e1-9e39-54157c61f519 -> ../../sda1
lrwxrwxrwx 1 root root 10 Apr 17 11:40 ea195de6-725c-4701-98c3-1fa6a44bc102 -> ../../sdb1
# 我们因为知道我们的新硬盘是 sdb,因此可以配合 grep 命令查询
ls -l /dev/disk/by-uuid | grep sdb
lrwxrwxrwx 1 root root 10 Apr 17 11:40 ea195de6-725c-4701-98c3-1fa6a44bc102 -> ../../sdb1</code></pre>
</div>
<p data-pid="S5CQIT-M">接下来,我们将先备份原有的 /etc/fstab 文件</p>
<div class="highlight">
<pre><code class="language-text">sudo cp /etc/fstab /etc/fstab.bak</code></pre>
</div>
<p data-pid="-tM1AVV2">然后我们将以下内容添加到 /etc/fstab 末尾</p>
<div class="highlight">
<pre><code class="language-text"># /home/speculatecat/data
UUID=ea195de6-725c-4701-98c3-1fa6a44bc102 /home/speculatecat/data ext4 defaults 0 2</code></pre>
</div>
<p data-pid="UIs9nnZ1">这里配置的含义如下:<br>- UUID 为硬盘分区的 UUID 值<br>- 路径 为挂载的目标路径<br>- 分区格式 这里一般为 ext4<br>- 挂载参数 一般为默认 defaults<br>- 备份 0为不备份, 1为每天备份,2为不定期备份<br>- 检测 0为不检测,其他为优先级</p>
<p data-pid="rQxPHnd4">完成设置后,我们尝试重启虚拟机,看分区是否能被自动挂载。</p>
<img width="799" height="677" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="799" data-rawheight="677" data-original="https://pic4.zhimg.com/v2-568c5c30c092dc1f8c3b95be3ba4dc93_r.jpg" data-actualsrc="https://pic4.zhimg.com/v2-568c5c30c092dc1f8c3b95be3ba4dc93_b.jpg" data-lazy-status="ok" data-src="https://pic4.zhimg.com/80/v2-568c5c30c092dc1f8c3b95be3ba4dc93_720w.webp">
<p data-pid="heVM5mTA">我们可以从截图中看到,分区已经能被正常挂载。</p>
<h2>硬盘异常情况</h2>
<p data-pid="5TPBAyX5">还存在一种常见的情况,如果硬盘被移除,或者硬盘损坏了,配置了 fstab 自动挂载,将会出现不能正常启动情况。为模拟这种情况,我们将从虚拟机中将新创建的虚拟硬盘删除。重启虚拟机,将出现以下情况:</p>
<img width="802" height="677" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="802" data-rawheight="677" data-original="https://pic4.zhimg.com/v2-9537b11e78bb7606f751fe92316d74a3_r.jpg" data-actualsrc="https://pic4.zhimg.com/v2-9537b11e78bb7606f751fe92316d74a3_b.jpg" data-lazy-status="ok" data-src="https://pic4.zhimg.com/80/v2-9537b11e78bb7606f751fe92316d74a3_720w.webp">
<p data-pid="UkF0mVTK">我们可以使用命令行工具,恢复我们备份的 fstab 配置,即可修复完成。</p>
<div class="highlight">
<pre><code class="language-text">cp /etc/fstab.bak /etc/fstab</code></pre>
</div>
<p class="ztext-empty-paragraph"> </p>
<img width="802" height="677" class="origin_image zh-lightbox-thumb lazy lazyload" data-caption="" data-size="normal" data-rawwidth="802" data-rawheight="677" data-original="https://pic1.zhimg.com/v2-efab4cbecf8234a1a0421cd07355942c_r.jpg" data-actualsrc="https://pic1.zhimg.com/v2-efab4cbecf8234a1a0421cd07355942c_b.jpg" data-lazy-status="ok" data-src="https://pic1.zhimg.com/80/v2-efab4cbecf8234a1a0421cd07355942c_720w.webp">
<p data-pid="co9WAvo0">我们可以看到,恢复了备份的 fstab 配置文件后,系统能正常启动了。</p>
</div>
</div>
</div><br><br>
来源:https://www.cnblogs.com/y593216/p/16853206.html
頁:
[1]