保姆教程系列:小白也能看懂的 Linux 掛載磁碟實操

来源:https://www.cnblogs.com/bgyb/p/18219745
-Advertisement-
Play Games

!!!是的沒錯,胖友們,保姆教程系列又更新了!!! @目錄前言簡介一、磁碟分區二、文件系統三、實際操作1. 使用lsblk命令查看新加入的磁碟信息2. 使用fdisk或者cfdisk分區新磁碟,並將分區標記為Linux文件系統類型(83)3. 格式化新分區,使用mkfs命令4. 創建掛載目錄,使用m ...


!!!是的沒錯,胖友們,保姆教程系列又更新了!!!
@

目錄


前言

請各大網友尊重本人原創知識分享,謹記本人博客:南國以南i


提示:以下是本篇文章正文內容,下麵案例可供參考

簡介

Linux 中掛載磁碟是一項重要的操作,可以用於擴展存儲空間,管理數據文件,備份和存儲重要文件等。本文將詳細介紹 Linux 系統中掛載磁碟的相關概念、步驟和實際操作指南。

一、磁碟分區

Linux 中,磁碟是通過分區來使用的。分區是將一個硬碟劃分成幾個邏輯部分來使用,在每個分區中可以存儲不同的文件系統。因此,在掛載磁碟之前,我們需要先對磁碟進行分區。磁碟分區的過程可以通過命令行工具或圖形界面工具來完成。

常用的磁碟分區工具有:

cfdisk:命令行工具,適用於創建主分區和擴展分區,支持MBR和GPT分區表。

fdisk :命令行工具,適用於創建主分區和擴展分區,支持MBR分區表。

gdisk:命令行工具,適用於創建主分區、擴展分區和邏輯分區,支持GPT分區表。

gparted:圖形界面工具,適用於創建主分區、擴展分區和邏輯分區,支持MBR和GPT分區表。

分區的目的是將一個硬碟劃分成多個邏輯部分,每個部分可以單獨使用和管理。當然,分區並不是必需的,我們也可以直接將整個硬碟作為一個單一的分區進行掛載。

二、文件系統

Linux 中,文件系統是掛載磁碟的重要概念。文件系統是指一種組織數據的方式,可以幫助我們在磁碟上存儲和管理文件。常見的 Linux 文件系統有 ext2、ext3、ext4、XFS 等。

三、實際操作

1. 使用lsblk命令查看新加入的磁碟信息

[root@-znzj-app-1 /]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0              11:0    1 1024M  0 rom
vda             252:0    0   80G  0 disk
├─vda1          252:1    0    1G  0 part /boot
└─vda2          252:2    0   79G  0 part
  ├─centos-root 253:0    0 47.8G  0 lvm  /
  └─centos-swap 253:1    0  7.9G  0 lvm  [SWAP]
vdb             252:16   0   64M  0 disk
└─vdb1          252:17   0   63M  0 part
vdc             252:32   0  300G  0 disk


#或者使用
fdisk -l

從上述結果可以看出,系統中新加了一個磁碟設備 /dev/vdc

2. 使用fdisk或者cfdisk分區新磁碟,並將分區標記為Linux文件系統類型(83)

例如使用 fdisk 命令:

[root@-znzj-app-1 /]# sudo fdisk /dev/vdc
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xe4e64bc8.

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p):
Using default response p
Partition number (1-4, default 1):
First sector (2048-629145599, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-629145599, default 629145599):
Using default value 629145599
Partition 1 of type Linux and of size 300 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

3. 格式化新分區,使用mkfs命令

[root@-znzj-app-1 /]# sudo mkfs -t ext4 /dev/vdc
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
19660800 inodes, 78643200 blocks
3932160 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2227175424
2400 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

4. 創建掛載目錄,使用mkdir命令

$ sudo mkdir -p /mnt/data

5. 掛載分區,使用mount命令

$ sudo mount /dev/vdc /mnt/data

6.卸載磁碟

Linux 中,卸載磁碟的命令為 umount 。卸載磁碟之前,需要先檢查磁碟上是否有進程在使用它。如果有,則需要先終止相應的進程,才能安全地卸載磁碟。

例如,若要卸載 /mnt/data 目錄下的文件系統,只需要運行以下命令:

umount /mnt/data

7. 驗證掛載是否成功,使用df -h命令查看所有文件系統的儲存器使用情況:

[root@-znzj-app-1 /]# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                  16G     0   16G   0% /dev
tmpfs                     16G     0   16G   0% /dev/shm
tmpfs                     16G  1.7G   15G  11% /run
tmpfs                     16G     0   16G   0% /sys/fs/cgroup
/dev/mapper/centos-root   48G   15G   34G  31% /
/dev/vda1               1014M  239M  776M  24% /boot
tmpfs                    3.2G     0  3.2G   0% /run/user/1000
/dev/vdc                 296G   65M  281G   1% /mnt/data

從上述結果可以看出,新分區已經被成功掛載到 /mnt/data 目錄下。

8. 添加自動掛載,編輯/etc/fstab文件,添加以下內容:

$ sudo su
$ echo '/dev/vdc    /mnt/data    ext4    defaults    0    2' >> /etc/fstab 

Linux 中,如果要讓磁碟在每次開機後自動掛載到指定的目錄下,我們需要將掛載信息寫入 /etc/fstab 文件中。

/etc/fstabLinux 系統中用於存儲文件系統掛載信息的文件。它包含了系統啟動時需要掛載的所有文件系統的信息,以及掛載時使用的選項。

我們需要在 /etc/fstab 文件中添加一個新的行來描述我們要掛載的文件系統。每一行包含瞭如下信息:

  1. 設備:要掛載的設備名稱,例如 :/dev/sdb1
  2. 掛載點:要將設備掛載到哪個目錄下。
  3. 文件系統類型:要掛載的文件系統類型,例如: ext4
  4. 掛載選項:用於控制掛載行為的選項,例如: noatime(不更新訪問時間)和 defaults(使用預設選項)等。
  5. 掛載次序:系統應該以什麼順序掛載文件系統,例如: 0 表示最先掛載。

四、用戶目錄軟連接

home 目錄下用戶全部存放與根目錄下,如根磁碟空間不足,可以將 home 目錄下用戶目錄移動至新掛載磁碟下,在 home 目錄下生成掛載磁碟軟鏈接,步驟如下:

#1.進入home目錄
$ cd /home

#2.將home/admin移動至掛載磁碟目錄下
$ mv admin /mnt/data/

#3.在home目錄下做軟連接至掛載磁碟目錄下
$ ln -s /mnt/data/admin admin

#4.在home目錄下查看鏈接路徑
$ ll

#5.切換admin用戶
su admin

#6.切換當前用戶工作空間
cd ~

#7.查看當前路徑
pwd

五、總結

掛載磁碟是 Linux 系統中一個基本的操作,它可以幫助我們擴展存儲空間,管理數據文件,備份和存儲重要文件等。在掛載磁碟之前,我們需要先對磁碟進行分區,並且在分區上創建文件系統。然後,我們需要使用 mount 命令將設備掛載到指定的目錄下,併在必要時使用 /etc/fstab 文件配置開機自動掛載。最後,在卸載磁碟之前,需要先檢查是否有進程在使用磁碟,並終止相應的進程。

我是南國以南i記錄點滴每天成長一點點,學習是永無止境的!轉載請附原文鏈接!!!

參考鏈接參考鏈接


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 不管是在控制台程式還是asp.net core程式中,我們經常會有用到一個需要長時間運行的後臺任務的需求。通常最直覺的方式是使用Thread實例來新建一個線程,但是這樣需要自行管理線程的啟動和停止。 在.net core中提供了一個繼承自IHostedService的基類BackgroudServi ...
  • 可以使用XmlSerializer直接序列化和反序列化xml 反序列化如以下代碼 private T? XmlDeseriallize<T>(string filePath) { XmlSerializer serializer = new XmlSerializer(typeof(T)); usi ...
  • Web Service 理解:Web Service 是一種基於網路的服務,它使用標準化的消息傳遞協議,最典型的是基於 SOAP(Simple Object Access Protocol)協議。SOAP 使用 XML 格式封裝數據,定義了消息的結構和傳輸方式,因此它是一個重量級的解決方案。Web ...
  • 工廠模式(Factory Pattern)是一種創建型設計模式,它提供了一種創建對象的介面,而不是通過具體類來實例化對象。工廠模式可以將對象的創建過程封裝起來,使代碼更具有靈活性和可擴展性。 工廠模式有幾種常見的實現方式: 簡單工廠模式(Simple Factory Pattern): 簡單工廠模式 ...
  • 一:背景 1. 講故事 前些天群里有一個朋友說他們軟體會偶發崩潰,想分析看看是怎麼回事,所幸的是自己會抓dump文件,有了dump就比較好分析了,接下來我們開始吧。 二:WinDbg 分析 1. 程式為什麼會崩潰 windbg 還是非常強大的,當你雙擊打開的時候會自動幫你定位過去展示崩潰時刻的寄存器 ...
  • StackExchange.Redis 是一個高性能的 Redis 客戶端庫,主要用於 .NET 環境下與 Redis 伺服器進行通信,大名鼎鼎的stackoverflow 網站就使用它。它使用非同步編程模型,能夠高效處理大量請求。支持 Redis 的絕大部分功能,包括發佈/訂閱、事務、Lua 腳本等... ...
  • 爆了,爆了,DeveloperSharp系列近期又被製造業ERP、民航飛行App、建築BIM、電力掌上營業廳、等多家大型採用,站在巨人的肩膀上你能走的更遠。 支持.Net Core2.0及以上,支持.Net Framework4.0及以上 http請求調用是開發中經常會用到的功能。在內,調用自有項目 ...
  • 前言:有時候遠程伺服器的進程你想偷偷去圍觀一下有哪些,或者對一些比較調皮的進程進行封殺,或者對一些自己研發的服務進行遠程手動啟動或者重啟等,又不想打開遠程桌面,只想悄咪咪地執行,那也許下麵的文章會對你有啟發。 前提條件 確保遠程伺服器(服務端)已啟用WinRM。在遠程伺服器上運行以下命令可以啟用和配 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...