自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

遷移到Linux:磁盤、文件、和文件系統(tǒng)

系統(tǒng) Linux
不論是什么原因,在你主要使用的桌面計(jì)算機(jī)上擁有一個(gè) Linux,將幫助你快速熟悉你需要的工具和方法。在這篇文章中,我將介紹 Linux 的文件、文件系統(tǒng)和磁盤。

[[216625]]

在你的主要桌面計(jì)算機(jī)上安裝和使用 Linux 將幫你快速熟悉你需要的工具和方法。

這是我們的遷移到 Linux 系列文章的第二篇。如果你錯(cuò)過了第一篇,你可以在這里找到它。就如之前提到過的,為什么要遷移到 Linux 的有幾個(gè)原因。你可以在你的工作中為 Linux 開發(fā)和使用代碼,或者,你可能只是想去嘗試一下新事物。

不論是什么原因,在你主要使用的桌面計(jì)算機(jī)上擁有一個(gè) Linux,將幫助你快速熟悉你需要的工具和方法。在這篇文章中,我將介紹 Linux 的文件、文件系統(tǒng)和磁盤。 

我的 C:\ 在哪里?

如果你是一個(gè) Mac 用戶,Linux 對(duì)你來說應(yīng)該非常熟悉,Mac 使用的文件、文件系統(tǒng)、和磁盤與 Linux 是非常接近的。另一方面,如果你的使用經(jīng)驗(yàn)主要是 Windows,訪問 Linux 下的磁盤可能看上去有點(diǎn)困惑。一般,Windows 給每個(gè)磁盤分配一個(gè)盤符(像 C:\)。而 Linux 并不是這樣。而在你的 Linux 系統(tǒng)中它是一個(gè)單一的文件和目錄的層次結(jié)構(gòu)。

讓我們看一個(gè)示例。假設(shè)你的計(jì)算機(jī)使用了一個(gè)主硬盤、一個(gè)有 Books 和 Videos 目錄的 CD-ROM 、和一個(gè)有 Transfer 目錄的 U 盤,在你的 WIndows 下,你應(yīng)該看到的是下面的樣子:

  1. C:\ [硬盤]
  2. System
  3. System32
  4. Program Files
  5. Program Files (x86)
  6. <更多目錄>
  7.  
  8. D:\ [CD-ROM]
  9. Books
  10. Videos
  11.  
  12. E:\ [U 盤]
  13. Transfer

而一個(gè)典型的 Linux 系統(tǒng)卻是這樣:

  1. / (最頂級(jí)的目錄,稱為根目錄) [硬盤]
  2. bin
  3. etc
  4. lib
  5. sbin
  6. usr
  7. <更多目錄>
  8. media
  9. <你的用戶名>
  10. cdrom [CD-ROM]
  11. Books
  12. Videos
  13. Kingme_USB [U 盤]
  14. Transfer

如果你使用一個(gè)圖形化環(huán)境,通常,Linux 中的文件管理器將出現(xiàn)看起來像驅(qū)動(dòng)器的圖標(biāo)的 CD-ROM 和 USB 便攜式驅(qū)動(dòng)器,因此,你根本就無需知道介質(zhì)所在的目錄。 

文件系統(tǒng)

Linux 稱這些東西為文件系統(tǒng)。文件系統(tǒng)是在介質(zhì)(比如,硬盤)上保持跟蹤所有的文件和目錄的一組結(jié)構(gòu)。如果沒有用于存儲(chǔ)數(shù)據(jù)的文件系統(tǒng),我們所有的信息就會(huì)混亂,我們就不知道哪個(gè)塊屬于哪個(gè)文件。你可能聽到過一些類似 ext4、XFS 和 Btrfs 之類的名字,這些都是 Linux 文件系統(tǒng)。

每種保存有文件和目錄的介質(zhì)都有一個(gè)文件系統(tǒng)在上面。不同的介質(zhì)類型可能使用了為它優(yōu)化過的特定的文件系統(tǒng)。比如,CD-ROM 使用 ISO9660 或者 UDF 文件系統(tǒng)類型。USB 便攜式驅(qū)動(dòng)器一般使用 FAT32,以便于它們可以很容易去與其它計(jì)算機(jī)系統(tǒng)共享。

Windows 也使用文件系統(tǒng)。不過,我們不會(huì)過多的討論它。例如,當(dāng)你插入一個(gè) CD-ROM,Windows 將讀取 ISO9660 文件系統(tǒng)結(jié)構(gòu),分配一個(gè)盤符給它,然后,在盤符(比如,D:\)下顯示文件和目錄。當(dāng)然,如果你深究細(xì)節(jié),從技術(shù)角度說,Windows 是分配一個(gè)盤符給一個(gè)文件系統(tǒng),而不是整個(gè)驅(qū)動(dòng)器。

使用同樣的例子,Linux 也讀取 ISO9660 文件系統(tǒng)結(jié)構(gòu),但它不分配盤符,它附加文件系統(tǒng)到一個(gè)目錄(這個(gè)過程被稱為掛載mount)。Linux 將隨后在所掛載的目錄(比如是, /media/<your user name>/cdrom )下顯示 CD-ROM 上的文件和目錄。

因此,在 Linux 上回答 “我的 C:\ 在哪里?” 這個(gè)問題,答案是,這里沒有 C:\,它們工作方式不一樣。 

文件

Windows 將文件和目錄(也被稱為文件夾)存儲(chǔ)在它的文件系統(tǒng)中。但是,Linux 也讓你將其它的東西放到文件系統(tǒng)中。這些其它類型的東西是文件系統(tǒng)的原生的對(duì)象,并且,它們和普通文件實(shí)際上是不同的。除普通文件和目錄之外,Linux 還允許你去創(chuàng)建和使用硬鏈接hard link符號(hào)鏈接symbolic link、命名管道named pipe、設(shè)備節(jié)點(diǎn)device node、和套接字socket。在這里,我們不展開討論所有的文件系統(tǒng)對(duì)象的類型,但是,這里有幾種經(jīng)常使用到的需要知道。

硬鏈接用于為文件創(chuàng)建一個(gè)或者多個(gè)別名。指向磁盤上同樣內(nèi)容的每個(gè)別名的名字是不同的。如果在一個(gè)文件名下編輯文件,這個(gè)改變也同時(shí)出現(xiàn)在其它的文件名上。例如,你有一個(gè) MyResume_2017.doc,它還有一個(gè)被稱為 JaneDoeResume.doc 的硬鏈接。(注意,硬鏈接是從命令行下,使用 ln 的命令去創(chuàng)建的)。你可以找到并編輯 MyResume_2017.doc,然后,然后找到 JaneDoeResume.doc,你發(fā)現(xiàn)它保持了跟蹤 —— 它包含了你所有的更新。

符號(hào)鏈接有點(diǎn)像 Windows 中的快捷方式。文件系統(tǒng)的入口包含一個(gè)到其它文件或者目錄的路徑。在很多方面,它們的工作方式和硬鏈接很相似,它們可以創(chuàng)建一個(gè)到其它文件的別名。但是,符號(hào)鏈接也可以像文件一樣給目錄創(chuàng)建一個(gè)別名,并且,符號(hào)鏈接可以指向到不同介質(zhì)上的不同文件系統(tǒng),而硬鏈接做不到這些。(注意,你可以使用帶 -s 選項(xiàng)的 ln 命令去創(chuàng)建一個(gè)符號(hào)鏈接) 

權(quán)限

Windows 和 Linux 另一個(gè)很大的區(qū)別是涉及到文件系統(tǒng)對(duì)象(文件、目錄、及其它)的權(quán)限。Windows 在文件和目錄上實(shí)現(xiàn)了一套非常復(fù)雜的權(quán)限。例如,用戶和用戶組可以有權(quán)限去讀取、寫入、運(yùn)行、修改等等。用戶和用戶組可以授權(quán)訪問除例外以外的目錄中的所有內(nèi)容,也可以不允許訪問除例外的目錄中的所有內(nèi)容。

然而,大多數(shù)使用 Windows 的人并不會(huì)去使用特定的權(quán)限;因此,當(dāng)他們發(fā)現(xiàn)在 Linux 上是強(qiáng)制使用一套默認(rèn)權(quán)限時(shí),他們感到非常驚訝!Linux 通過使用 SELinux 或者 AppArmor 可以強(qiáng)制執(zhí)行一套更復(fù)雜的權(quán)限。但是,大多數(shù) Linux 安裝版都只是使用了內(nèi)置的默認(rèn)權(quán)限。

在默認(rèn)的權(quán)限中,文件系統(tǒng)中的每個(gè)條目都有一套為它的文件所有者、文件所在的組、和其它人的設(shè)置的權(quán)限。這些權(quán)限允許他們:讀取、寫入和運(yùn)行。給它們的權(quán)限是有層次繼承的。首先,它檢查這個(gè)(登入的)用戶是否為該文件所有者和擁有的權(quán)限。如果不是,然后檢查這個(gè)用戶是否在文件所在的組中和該組擁有的權(quán)限。如果不是,然后它再檢查其它人擁有的權(quán)限。這里設(shè)置了其它人的權(quán)限。但是,這里設(shè)置的三套權(quán)限大多數(shù)情況下都會(huì)使用其中的一套。

如果你使用命令行,你輸入 ls -l,你可以看到如下所表示的權(quán)限:

  1. rwxrw-r-- 1 stan dndgrp 25 Oct 33rd 25:01 rolldice.sh

最前面的字母,rwxrw-r--,展示了權(quán)限。在這個(gè)例子中,所有者(stan)可以讀取、寫入和運(yùn)行這個(gè)文件(前面的三個(gè)字母,rwx);dndgrp 組的成員可以讀取和寫入這個(gè)文件,但是不能運(yùn)行(第二組的三個(gè)字母,rw-);其它人僅可以讀取這個(gè)文件(最后的三個(gè)字母,r--)。

(注意,在 Windows 中去生成一個(gè)可運(yùn)行的腳本,你生成的文件要有一個(gè)特定的擴(kuò)展名,比如 .bat,而在 Linux 中,擴(kuò)展名在操作系統(tǒng)中沒有任何意義。而是需要去設(shè)置這個(gè)文件可運(yùn)行的權(quán)限)

如果你收到一個(gè) “permission denied” 錯(cuò)誤,可能是你去嘗試運(yùn)行了一個(gè)要求管理員權(quán)限的程序或者命令,或者你去嘗試訪問一個(gè)你的帳戶沒有訪問權(quán)限的文件。如果你嘗試去做一些要求管理員權(quán)限的事,你必須切換登入到一個(gè)被稱為 root 的用戶帳戶?;蛘咄ㄟ^在命令行使用一個(gè)被稱為 sudo 的輔助程序。它可以臨時(shí)允許你以 root 權(quán)限運(yùn)行。當(dāng)然,sudo 工具,也會(huì)要求你輸入密碼,以確保你真的有權(quán)限。 

硬盤文件系統(tǒng)

Windows 主要使用一個(gè)被稱為 NTFS 的硬盤文件系統(tǒng)。在 Linux 上,你也可以選一個(gè)你希望去使用的硬盤文件系統(tǒng)。不同的文件系統(tǒng)類型呈現(xiàn)不同的特性和不同的性能特征。現(xiàn)在主流的原生 Linux 的文件系統(tǒng)是 Ext4。但是,在安裝 Linux 的時(shí)候,你也有豐富的文件系統(tǒng)類型可供選擇,比如,Ext3(Ext4 的前任)、XFS、Btrfs、UBIFS(用于嵌入式系統(tǒng))等等。如果你不確定要使用哪一個(gè),Ext4 是一個(gè)很好的選擇。 

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2009-10-12 11:14:51

LinuxLinux磁盤文件系統(tǒng)管理

2009-10-13 14:31:26

:Linux系統(tǒng)磁盤系統(tǒng)管理

2023-09-03 17:09:58

LinuxSAN LUN磁盤

2023-09-05 15:17:48

LinuxLUN磁盤

2010-08-02 16:15:20

ibmdwLinux

2010-08-05 11:03:55

創(chuàng)建分區(qū)文件系統(tǒng)

2012-09-20 10:49:49

IBMdw

2020-11-19 08:44:35

Linux

2021-06-28 06:24:12

磁盤存儲(chǔ)VFS

2021-06-21 14:52:45

磁盤機(jī)械磁盤固態(tài)磁盤

2021-06-22 15:16:01

磁盤機(jī)械磁盤固態(tài)磁盤

2011-01-13 14:10:30

Linux文件系統(tǒng)

2012-09-24 14:06:23

文件系統(tǒng)物理卷

2020-07-22 14:53:06

Linux系統(tǒng)虛擬文件

2010-03-02 15:09:26

Linux mount

2016-12-27 10:48:59

Linux命令磁盤與文件系統(tǒng)

2021-06-06 16:55:22

Linux文件系統(tǒng)

2021-04-12 05:44:44

Linux文件系統(tǒng)

2016-10-09 09:38:11

Windows 10診斷磁盤文件系統(tǒng)

2018-08-24 10:10:25

Linux文件系統(tǒng)技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)