成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux文件系統的安裝和卸載

運維 系統運維
本文介紹Linux文件系統的安裝和卸載如何控制,以及當中需要了解的原理和注意事項。閱讀本文之后,您將會了解如何安裝您的 Linux 文件系統;配置和使用可移動 USB、IEE 1394 或其他設備;正確訪問軟盤、CD、和 DVD。

編者按:本文介紹Linux文件系統的安裝和卸載如何控制,以及當中需要了解的原理和注意事項。

為了最有效地利用本系列中的文章,您應該具有基本的 Linux 知識,并需要準備一個 Linux 系統,用于練習本文介紹的命令。除非特殊說明,本文中的示例(大部分)使用帶有 2.6.32 內核的 Fedora 13。有時候不同版本的程序輸出格式不同,因此您所得到的結果未必總是與這里所示的清單和圖相同。

您還應該熟悉我們的文章 “學習 Linux,101:創建分區和文件系統” 中的內容。

Linux 文件系統是一個用 / 劃分根目錄的大的目錄樹,但是我們在不同的設備和分區上也有文件系統。怎樣解決這一明顯的不一致呢?根(/)文件系統是作為安裝過程的一部分安裝的。您所創建的其他每個文件系統不能用于您的 Linux 系統,直至它被安裝在一個掛載點

在當前安裝的文件系統集中,掛載點只是一個路徑,其中設備上的文件系統被移植到樹中。安裝是使設備上的文件系統可訪問的一個過程。例如,您可以將文件系統作為 /boot、/tmp 或 /home 安裝到硬盤驅動上,您也可以將文件系統作為 /mnt/floppy 安裝到軟盤驅動上,也可以作為 /media/cdrom1 安裝到 CD-ROM 上,正如您所看到的,掛載點可能是在根目錄,或者是更遠的子目錄。

除了分區、軟盤和 CD 上的文件系統外,還有其他類型的文件系統。tmpfs 文件系統是一個虛擬內存文件系統。您也可以使用一個網絡文件系統(比如,NFS 或 AFS)將文件系統從一個系統安裝到另一個系統。您甚至可以在已有的文件系統上創建一個文件,并格式化為一個文件系統(可能不同),然后安裝。這通常使用光學媒介映像完成,在這您似乎需要下載一個 ISO CD 或 DVD 鏡像,然后安裝文件,而不是將其刻錄成一個真正的媒體。文件中的交換空間(不是專用交換空間)是另一個示例。

安裝過程實際上是指在某個設備(或其他資源)上安裝文件系統,通常簡稱為 “安裝設備”,可以理解為 “在設備上安裝文件系統”。

安裝和卸載文件系統通常需要 root 權限。如果您作為一個普通用戶登錄,您可以使用 su - 切換到根目錄或者 sudo。在我們的示例中,當命令提示以 # 結束時,如以下清單 1 所示,您將需要 root 權限。

mount 命令的基本格式有兩個參數:含有將要安裝的文件系統的設備(或其他資源)和掛載點。例如,我們在掛載點 /dos 安裝我們的 FAT32 分區 /dev/sda9,如清單 1 所示。

清單 1. 掛載 /dos

				
[root@echidna ~]# mount /dev/sda9 /dos

在掛載點上進行安裝之前,必須先要有掛載點存在。如果沒有,您會收到一個錯誤消息,需要創建掛載點或使用另一個掛載點,如清單 2 所示。

清單 2. 安裝錯誤

				
[root@echidna ~]# mount /dev/sda9 /dos
mount: mount point /dos does not exist
[root@echidna ~]# mkdir /dos
[root@echidna ~]# mount /dev/sda9 /dos

當您在一個已有目錄上安裝一個文件系統時,您將要安裝的文件系統上的文件就變成了掛載點的子目錄和文件。如果掛載點目錄已經包含文件或子目錄,它們不會丟失,但是不再可用,直至安裝的文件系統被卸載,方可再次使用。要避免這類問題,一個較好的辦法就是只使用空目錄作為掛載點。

安裝了一個文件系統之后,任何創建或復制到掛載點或其下的任何目錄的文件或目錄將在安裝的文件系統上被創建。在我們的示例中,文件 /dos/sampdir/file.txt 將被在我們在 /dos 下安裝的 FAT32 文件系統上創建。

通常,mount 命令自動檢測安裝的文件系統的類型。偶爾,您可能需要使用 -t 選項明確指定文件系統類型,如清單 3 所示。

清單 3. 以顯式文件系統類型安裝

				
[root@echidna ~]# mount -t vfat /dev/sda9 /dos

想要查看安裝了什么文件系統,使用不帶參數的 mount 命令。清單 4 展示了我們的示例系統。注意,只是簡單的列出安裝的文件系統,不需要 root 權限。

清單 4. 顯示安裝的文件系統

				
[ian@echidna ~]$ mount
/dev/sda6 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda2 on /grubfile type ext3 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
gvfs-fuse-daemon on /home/ian/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=ian)
dw.raleigh.ibm.com:/vol/vol1/dwcontent on /mnt/dwcontent type nfs (rw,addr=9.42.155.6)
/dev/sdb9 on /mnt/sdb9 type ext3 (rw)
/dev/sda9 on /dos type vfat (rw)
/dev/sr0 on /media/KNOPPIX type iso9660 (ro,nosuid,nodev,uhelper=udisks,uid=1000,gid=1000
,iocharset=utf8,mode=0400,dmode=0500)

您也可以通過顯示 /proc/mounts 或 /etc/mtab 來查看類似信息,這兩個都含有關于安裝的文件系統的信息。

#p#

安裝選項

mount 命令有幾個覆蓋默認行為的選項。例如,您可以通過指定 -o ro 來安裝一個只讀文件系統。如果文件系統已經安裝,添加 remount,如清單 5 所示。

清單 5. 卸載只讀文件系統

				
[root@echidna ~]# mount -o remount,ro /dos

注意:

  • 用逗號分隔多個選項,比如 remountro
  • 卸載一個已有文件系統時,指出掛載點或者設備名其中一個就足夠了,沒有必要都指出。
  • 您不能以讀寫方式安裝一個只讀文件系統。那些不能修改的媒介,比如 CD-ROM 光盤將自動以只讀模式安裝。
  • 要卸載一個可寫入的讀寫設備,指定 -o remount,rw

如果任何進程已經打開卸載文件系統中的文件或目錄,卸載命令就不能完全成功。在下面 卸載文件系統 部分獲取更多信息

#p#

標簽、UUID 和鏈接

在 UNIX 和早期的 Linux 系統中,/dev 目錄通常包含曾經附加到系統的所有設備。曾經使用過的設備都位于 /dev 樹的同一位置,因此使用名稱 /dev/sda6 是自然而然的。隨著熱插拔設備的出現,比如 USB 或 Firewire (IEEE 1394) 附加設備,今天一個給定的設備可能出現在一個 USB 端口,明天同一個設備可能被插到另一個 USB 端口。在這種情況下,無論您將 U 盤插在哪個 USB 端口上,您總是要將它安裝在 /media/myusbstick 上。在主題 102 “學習 Linux,101:引導程序” 一文中,您已經學習了如何使用標簽和 UUID(全局惟一標識符)來識別分區,而不用設備名。如果分區中的文件系統這兩個都支持,您也可以通過 mount 命令使用它們。使用 blkid 命令來尋找設備相關的 UUID 和標簽(如果有)。清單 6 展示了如何使用 blkid 來尋找根分區的標簽和 UUID,如何創建兩個附加掛載點,以及在這兩個附加掛載點上安裝根分區。以下示例做了說明。在生產環境中,您通常不需要這么做。

清單 6. 使用標簽或 UUID 安裝

				
[root@echidna ~]# blkid /dev/sda6
/dev/sda6: LABEL="Fedora-13-x86_64" UUID="082fb0d5-a5db-41d1-ae04-6e9af3ba15f7"
 TYPE="ext4" 
[root@echidna ~]# mkdir /mnt/sda6label
[root@echidna ~]# mkdir /mnt/sda6uuid
[root@echidna ~]# mount LABEL="Fedora-13-x86_64" /mnt/sda6label
[root@echidna ~]# mount UUID="082fb0d5-a5db-41d1-ae04-6e9af3ba15f7" /mnt/sda6uui

隨著 udev 的出現,您通常在 /dev 目錄下找到設備(比如硬盤驅動器)的附加符號鏈接。清單 7 顯示的是 Fedora 13 系統上的 /dev/sda6 鏈接。

清單 7. 到 /dev/sda6 的符號鏈接

				
[ian@echidna ~]$ find /dev -lname "*sda6"
/dev/disk/by-label/Fedora-13-x86_64
/dev/disk/by-uuid/082fb0d5-a5db-41d1-ae04-6e9af3ba15f7
/dev/disk/by-path/pci-0000:00:1f.2-scsi-0:0:0:0-part6
/dev/disk/by-id/wwn-0x50014ee001a8d027-part6
/dev/disk/by-id/scsi-SATA_WDC_WD1001FALS-_WD-WMATV3772868-part6
/dev/disk/by-id/ata-WDC_WD1001FALS-00J7B1_WD-WMATV3772868-part6
/dev/block/8:6

安裝一個設備時,您也可以使用一個符號鏈接來作為另外一種指定設備名的方式。

#p#

引導時間和 fstab

在主題 102 “學習 Linux,101:引導程序” 一文中,您已經學習了如何在 GRUB 和 LILO 中使用 root= 參數,來通知引導加載程序應該安裝什么文件系統作為根。一旦此文件系統被安裝,初始化過程運行帶有 -a 選項的 mount 命令來自動安裝一個文件系統集合。該集合是在 /etc/fstab 中指定的。清單 8 顯示了一個樣例 Fedora 13 系統的 /etc/fstab。在該示例中,所有硬盤驅動分區都是用 UUID 標識的。清單 9 顯示了另一個 Ubuntu 9.10 系統示例。

清單 8. 示例 Fedora 13 fstab

				
#
# /etc/fstab
# Created by anaconda on Fri May 28 12:37:05 2010
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=082fb0d5-a5db-41d1-ae04-6e9af3ba15f7 /                  ext4    defaults        1 1
UUID=488edd62-6614-4127-812d-cbf58eca85e9 /grubfile          ext3    defaults        1 2
UUID=2d4f10a6-be57-4e1d-92ef-424355bd4b39 swap               swap    defaults        0 0
UUID=ba38c08d-a9e7-46b2-8890-0acda004c510 swap               swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

 

清單 9. 示例 Ubuntu 9.10 fstab

				
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# / was on /dev/sda7 during installation
UUID=8954fa66-e11f-42dc-91f0-b4aa480fa103 /               ext3    errors=remount-ro 0  1
# /grubfile was on /dev/sda2 during installation
UUID=3a965842-b6dd-4d52-8830-2d0fdb4284a2 /grubfile       ext3    defaults        0  2
/dev/sda5       none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0

以 # 開始的是注釋,記住一行有 6 個字段。因為字段是定位的,必須被指定。

文件系統
這可能是一個設備名,比如 /dev/sda1 或者一個標簽(LABEL=),或者是 UUID(UUID=)。對于 Fedora 13 示例的根文件系統,它可能是 /dev/sda6、LABEL="Fedora-13-x86_64" 或 UUID="082fb0d5-a5db-41d1-ae04-6e9af3ba15f7"。使用一個標簽或 UUID,當設備被添加或刪除時可以使您的系統更健壯。
掛載點
這是我們上面 安裝文件系統 小節中介紹過的掛載點,其值應該是 'none' 或 'swap'。在舊的文件系統中您通常會發現其值是 'none' 。
類型
指定文件系統類型。CD/DVD 驅動器通常只支持 ISO9660 和 UDF 文件系統其中一個,因此您可能要在一個逗號分隔的列表中指定多種可能性,如清單 9 所示。如果您想 mount 自動確定類型,向清單 9 最后一行那樣指定 auto
選項
指定安裝選項,如果您想用默認安裝選項,指定 defaults。您需要了解的選項有:
  • rwro 指定文件系統是以讀寫還是只讀形式安裝。
  • noauto 指定在引導時或者 mount -a 出現問題時,該文件系統不能自動安裝。在我們的示例中,這樣做是為了可移動驅動器。
  • user 指定一個非根用戶被允許安裝或卸載文件系統。這對于移動媒介是特別有用的。在舊系統中,該選項是在 /etc/fstab 中指定的,而不是在 mount 命令上。對于比較新的系統,可能是在 udev 規則中指定的,該規則位于 /lib/udev/rules.d or /etc/udev/rules.d 內的 rules 文件夾中。在我的 Fedora 13 系統上 DVD 驅動器選項是來自于 udev 規則,這就是為什么在 /etc/fstab 中沒有一項用于光驅。
  • execnoexec 指定是否支持來自已安裝文件系統的文件執行。用戶安裝的文件系統默認為 noexec,除非在 user指定 exec
  • noatime 將禁止記錄存取時間,不使用訪問時間可以提高性能。
dump
指定 dump 命令是否應考慮 ext2 或 ext3 文件系統作為備份。值為 0 則通知 dump 忽略該文件系統。
pass
傳遞非零值來指定引導時檢查文件系統的次序,在 “學習 Linux,101:保持文件系統的完整性” 一文中討論過。

當您安裝一個在 /etc/fstab 中列出的文件系統時,您只需給出設備名或掛載點其中一個,不需要兩個都提供。

在某些系統上,例如 SUSE 11.2,您可能會發現在安裝時生成的 fstab 使用符號鏈接到設備。因此,您可以查看 /dev/disk/by-id/ata-WDC_WD1001FALS-00J7B1_WD-WMATV3772868-part6 獲取文件系統值,不需要查看 /dev/sda6。

查閱手冊頁獲取 fstabmountudev 其他資料,包括這里沒有涉及到的選項。

#p#

卸載文件系統

所有安裝的文件系統,通常是在系統重新引導或關閉時自動卸載的。當一個文件系統卸載后,在內存中緩存的所有文件系統數據都被刷新到磁盤中。

您也可以手動卸載文件系統。事實上,當刪除可寫入介質(比如,磁盤、U 盤或存儲鍵)時,您應該這樣做。

使用 umount 命令來卸載文件系統,指定設備名或者掛載點作為參數。清單 10 展示了如何卸載 /dos,然后重新安裝,接著用設備名再次卸載。

清單 10. 卸載文件系統

				
[root@echidna ~]# umount /dos
[root@echidna ~]# mount /dev/sda9 /dos
[root@echidna ~]# umount /dev/sda9 

當一個文件系統被卸載之后,作為掛載點的目錄下的那些文件會再次出現。

如果您想卸載一個文件系統,而此時進程已打開了該文件系統上的文件,將會出現一個錯誤消息。卸載文件系統之前,您應當確認沒有進程正在該文件系統的文件上運行。使用 lsoffuser 命令確定哪個文件是打開的,或哪個進程打開了文件。您可能需要 lsof 上的 -w 選項來避免與 Gnome Virtual File 系統(gvfs)相關的警告消息。查閱手冊頁,學習關于安裝選項和 lsof 的其他信息。如果您檢查整個設備,您可以指定設備名或掛載點。您也可以檢查是否一個獨立的文件正在使用。

為了解釋這些命令,我創建了一個 /etc/fstab on /dos 副本,用一個小的腳本來從 stdin 逐行讀取,然后打印到 stdout,每行之間有 10 秒的停頓。清單 11 顯示了當文件正在使用時 umount 出現的錯誤消息,以及使用 lsoffuser 在 /dos 或基礎設備 /dev/sda9 上檢查打開文件的結果。

清單 11. 檢查打開文件

				
[root@echidna ~]# umount /dos
umount: /dos: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))
[root@echidna ~]# lsof -w /dos
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
slowread. 2560  ian    0r   REG    8,9      899  123 /dos/fstab
sleep     2580  ian    0r   REG    8,9      899  123 /dos/fstab
[root@echidna ~]# lsof -w /dev/sda9
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
slowread. 2560  ian    0r   REG    8,9      899  123 /dos/fstab
sleep     2580  ian    0r   REG    8,9      899  123 /dos/fstab
[root@echidna ~]# fuser -m /dos
/dos:                 2560  2586
[root@echidna ~]# fuser -m /dev/sda9
/dev/sda9:            2560  2588

這時,您可以選擇等待,直至文件系統不再繁忙,或者您也可以通過指定 -l 選項進行一個懶卸載(lazy unmount)。懶卸載直接從文件系統樹分離文件系統,然后,在文件系統空閑時,清理文件系統附加項。

#p#

刪除文件系統

我們談論過刪除移動設備(比如,USB 或 Firewire 附加設備)時遇到的一些問題。每次您需要安裝或卸載這類設備時,切換到 root 權限并不是很方便。CD、DVD 和軟盤驅動器,在其中您需要卸載設備來更換媒介,都是一樣。在上一小節討論 fstab 時,我們就提到過 user 選項,它支持普通用戶安裝或卸載設備。清單 9 顯示了一種為軟盤驅動器或 CD/DVD 驅動器編寫 fstab 的方法。

注意,光驅的文件系統類型被指定為 udf,iso9660,而軟驅的文件系統類型被指定為 auto。對于光驅,安裝進程將探測文件系統類型。您可以創建或編輯 /etc/filesystems 來改變系統被探測的次序。

注意:在斷開設備連接或者想要移走媒介之前,您始終應該先卸載可移動驅動。

如果您運行一個圖形化桌面,比如 Nautilus,您通常可以找到支持可移動設備和媒介自動安裝的選項。例如,我想將 Knoppix DVD 插入我系統的 DVD 驅動器,我可以看到如清單 12 所示的一個安裝項。出現了 'uid=1000' 表示 id 為 1000 的用戶可以卸載這個磁盤。id 命令顯示用戶 ian 的 uid 是 1000,因此 ian 可以卸載該磁盤。

清單 12. DVD 的桌面卸載

				
[ian@echidna ~]$ mount | grep sr0
/dev/sr0 on /media/KNOPPIX type iso9660 (ro,nosuid,nodev,uhelper=udisks,
uid=1000,gid=1000,iocharset=utf8,mode=0400,dmode=0500)
[ian@echidna ~]$ id ian
uid=1000(ian) gid=1000(ian) groups=1000(ian)

如果驅動器支持這一操作(大多數 CD 和 DVD 驅動支持),您也可以使用 eject 命令彈出可移動介質。如果您不能卸載設備,那么 eject 將可以卸載和彈出磁盤。

#p#

交換空間

在前面討論 fstab 時,您可能已經注意到了交換磁盤沒有一個掛載點,引導進程通常支持在 /etc/fstab 中定義交換空間,除非 noauto 選項被指定。要在一個正在運行的系統上手工控制交換空間 — 比如,添加一個新交換分區 — 使用 swaponswapoff 命令,詳情見手冊頁。

您可以用 cat /proc/swapsswapon -s 查看目前支持的交換設備,如清單 13 所示。

清單 13. 顯示交換空間

				
[ian@echidna ~]$ swapon -s
Filename				Type		Size	Used	Priority
/dev/sdb1                               partition	514044	0	-1
/dev/sdb5                               partition	4192928	0	-2
[ian@echidna ~]$ cat /proc/swaps
Filename				Type		Size	Used	Priority
/dev/sdb1                               partition	514044	0	-1
/dev/sdb5                               partition	4192928	0	-2

介紹在 Linux 上安裝設備到此結束。

原文:http://www.ibm.com/developerworks/cn/linux/l-lpic1-v3-104-3/index.html?ca=drs-

【編輯推薦】

  1. Linux ext4文件系統:性能和兼容性
  2. Linux文件系統保護最佳實踐:Tripwire
  3. Linux系統下的分區和文件系統詳解

【責任編輯:楊賽 TEL:(010)68476606】

責任編輯:yangsai 來源: IBMDW
相關推薦

2009-12-10 13:35:25

Linux操作系統

2009-10-23 09:02:52

Linux系統安裝卸載文件操作系統

2010-01-14 09:52:27

linux文件系統

2011-01-13 14:10:30

Linux文件系統

2020-07-22 14:53:06

Linux系統虛擬文件

2023-07-13 23:35:06

系統Linux

2021-06-06 16:55:22

Linux文件系統

2021-04-12 05:44:44

Linux文件系統

2009-10-28 13:29:14

Linux文件系統安裝

2013-05-27 14:46:06

文件系統分布式文件系統

2020-09-25 07:48:12

Linux系統文件

2011-01-11 10:29:35

Linux文件

2012-05-10 13:49:44

Linux文件系統

2009-03-10 19:19:16

Linux日志文件系統安裝使用

2009-12-22 15:12:33

Linux擴展文件系統

2009-12-25 09:58:46

linux劃分文件系統

2009-12-14 13:14:57

2021-11-01 13:38:55

Linux文件系統

2011-01-13 13:18:38

Linux網絡文件

2009-12-22 09:43:13

Linux文件系統組織
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美久久一级 | 欧美99 | 亚洲成人午夜电影 | 凹凸日日摸日日碰夜夜 | 日韩激情在线 | 国产日产欧产精品精品推荐蛮挑 | 亚洲精品国产一区 | 伊人一区 | 91亚洲精| 日韩欧美1区2区 | 精品色| 成人午夜毛片 | 国产99在线 | 欧美 | 国产95在线| wwwsihu| 在线视频一区二区三区 | 久久久久电影 | 在线观看精品视频网站 | 天堂素人约啪 | 成人做爰www免费看视频网站 | 日韩精品在线观看网站 | 久久综合av | 可以在线观看av的网站 | 亚洲一卡二卡 | 欧美激情亚洲激情 | 四虎影院久久 | 国产精品精品视频一区二区三区 | 精品久久国产 | 久久精品在线播放 | 男人久久天堂 | 久久精品视频网站 | 91久久伊人 | 国产精品一区二区三区在线 | avmans最新导航地址 | 日韩国产一区二区三区 | aaa在线| 午夜精品一区二区三区在线视频 | 在线视频三区 | 黄色在线免费观看视频 | 国产精品精品视频一区二区三区 | 国产高清一区二区三区 |