Linux學習(二)檔案系統
一、檔案系統概述
檔案系統主要由3部分構成:與檔案管理相關的軟體、被管理的檔案、實施檔案管理所需的資料結構。
調整檔案系統的幾個步驟: (1)fdisk:在新的儲存裝置(硬碟)上建立分割槽。 (2)mkfs:在分割槽上建立檔案系統。 (3)mount:將該檔案系統掛載到相應目錄下。 (4)umount:使用完成後,拿走裝置前,需要解除安裝該檔案系統。
下面介紹Linux中常見檔案系統型別: (1)xfs:CentOS Linux7預設的檔案系統型別,一種高效能日誌檔案系統,擅長處理大資料。它的日誌功能保障了磁碟故障時可以迅速恢復磁碟資料。 (2)ext2:Linux自帶檔案系統型別。 (3)ext3
二、Linux樹形目錄結構
大概就是下面這種:
1.下面來介紹一下幾個常用的目錄:
- /bin:存放系統常用命令,這個目錄中的檔案都是普通使用者可以使用、執行的。
- /dev:裝置檔案儲存目錄,比如:音效卡、磁碟檔案。
- /boot:存放Linux核心及引導系統程式檔案。
- /etc:存放系統配置檔案。
- /home:普通使用者主目錄預設存放的位置。
- /lib:庫檔案存放目錄。
- /tmp:臨時檔案目錄。
- /usr:系統存放程式的目錄。
- /var:此目錄的內容經常變動。
- /usr/sbin:存放可執行程式的目錄,只有root許可權可執行,/usr/bin普通使用者也有權執行。
- /usr/src:存放核心原始碼。
- . 當前工作目錄
- . .父目錄
- ~ 使用者主目錄
- — 前一個工作目錄
2.絕對路徑和相對路徑
絕對路徑:以根目錄為起點 相對路徑:以當前目錄為起點
三、Linux的檔案管理命令
1.用mkdir建立目錄
2.用cd切換目錄
3.用pwd檢視當前路徑
4.用ls檢視當前目下的資訊
5.用touch建立/更新檔案
6.用cp複製檔案及目錄
//將檔案file1複製到/home目錄下並重命名為file2
[[email protected] web]$ sudo cp file1 /home/file2
[sudo] freya 的密碼:
[[email protected] web]$ ls
file1
[[email protected] web]$ cd ..
[[email protected] home]$ ls
file2 freya web
//將work1目錄複製到/home目錄下
[[email protected] /]$ sudo cp -r work1 /home
[[email protected] /]$ ls
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr work1
[[email protected] /]$ cd home
[[email protected] home]$ ls
file2 freya web work1
7.用mv移動/重新命名檔案及目錄
[[email protected] home]$ ls
file2 freya web work1
[[email protected] home]$ sudo mv file2 file2.3 //將檔案file2重新命名為file2.3
[[email protected] home]$ mv -b file2.3 /tmp/file3 //將檔案file2.3移動到/mnt目錄下並重命名file3,若已有file3則備份原來的
[f[email protected] home]$ sudo mv work1 /mnt //將目錄work1移動到/mnt目錄下
[[email protected] home]$ sudo mv file2.3 /mnt/file3.3 //將檔案file2.3移動到/mnt目錄下並重命名為file2.3
[[email protected] home]$ cd ..
[[email protected] /]$ cd mnt
[[email protected] mnt]$ ls
file3 file3.3 work1
8.用rm刪除檔案
[[email protected] mnt]$ ls
file3.3 work1
[[email protected] mnt]$ sudo rm file3.3 //刪除file3.3
[[email protected] mnt]$ sudo rm -r work1 //刪除目錄work
[[email protected] home]$ ls
freya web
[[email protected] home]$ sudo rm -rf web //強制刪除目錄work
[[email protected] home]$ ls
freya
9.用rmdir刪除目錄
刪除物件必須是空目錄,且必須在上級目錄進行刪除
[[email protected] home]$ sudo rmdir web
[[email protected] home]$ ls
freya
10.用find查詢檔案
find 查詢目錄的路徑 查詢條件選項 對查詢條件的設定
[[email protected] home]$ sudo find /root -user root //在/root目錄下,查詢檔案所有者是root的檔案,-user表示通過使用者名稱查詢。
[sudo] freya 的密碼:
/root
/root/.bash_logout
/root/.bash_profile
/root/.bashrc
/root/.cshrc
/root/.tcshrc
/root/anaconda-ks.cfg
/root/.bash_history
/root/.cache
/root/.cache/abrt
/root/.cache/abrt/lastnotification
/root/.config
/root/.config/abrt
[[email protected] home]$ sudo find /etc -name pass* //查詢/etc目錄下所有以pass字串開頭的檔案,-name表示通過檔名查詢。
/etc/pam.d/passwd
/etc/pam.d/password-auth-ac
/etc/pam.d/password-auth
/etc/passwd-
/etc/passwd
/etc/openldap/certs/password
/etc/selinux/targeted/active/modules/100/passenger
10.獲取幫助
輸入man ls檢視手冊,q/h退出,或者輸入info。
四、使用vim編輯文件
1.vim編輯器
vim編輯器是Linux中功能最強大的全螢幕文字編輯器,可以完成輸出、刪除、查詢、替換、塊操作等文字操作。
vim編輯器有3中工作模式,分別是命令模式、輸入模式和末行模式。#vim進入命令模式,通過鍵入a,i,o進入輸入模式,esc退回;命令模式下鍵入:進入末行模式,通過wq\q\q!退出vim。
(1)命令模式
輸入vim命令,對檔案進行管理。 (2)輸入模式
該模式下,使用者輸入的內容成為檔案正文。 (3)末行模式
當操作命令比較複雜,需要回顯確認輸入時。在命令模式下按 Shift+: 切換到末行模式。 (4)示例:
2.檢視檔案內容命令
(1)more/less 瀏覽檔案全部內容
其中,more可以檢視檔案第一屏內容,空格下一屏。 less,按z向下翻頁,w向上翻頁,q退出。
(2)cat 檢視檔案內容
將檔案內容列印輸出至顯示器或終端視窗上。
(3)head/tail 顯示檔案頭部/尾部資訊
(4)grep 查詢字串
3.管道與重定向
(1)管道命令
管道命令“|”:即將多個命令連線在一起,每一個命令都獨立執行,每一個命令的執行結果都作為下一個命令的輸出。
格式:
cmd1|cmd2|...|cmd(n)
(2)重定向
stdin:標準輸入裝置埠,預設鍵盤; stdout:標準輸出裝置埠,預設控制檯的顯示屏; stderr:標準錯誤裝置埠,預設也是顯示屏。
重定向就是通過重新指定,讓命令從非預設的輸入/輸出裝置獲得或輸出資訊。
命令 | 說明 |
---|---|
> | 輸出重定向,會覆蓋 |
>> | 輸出重定向,不覆蓋 |
< | 輸入重定向 |
2> | 錯誤重定向 |
&> | 輸出重定向和錯誤重定向同時實現 |
例如:將 ls / 命令的執行結果記錄到list的檔案中。
3.使用U盤備份檔案
掛載U盤分為3步:mkdir 建立掛載點、fdisk 查詢裝置名、mount 掛載
[[email protected] /]# mkdir /mnt/usb //建立目錄作為掛載點
[[email protected] /]# fdisk -l //檢視系統分配的裝置名
磁碟 /dev/sda:21.5 GB, 21474836480 位元組,41943040 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組
磁碟標籤型別:dos
磁碟識別符號:0x000b16cb
裝置 Boot Start End Blocks Id System
/dev/sda1 2048 4196351 2097152 82 Linux swap / Solaris
/dev/sda2 * 4196352 41943039 18873344 83 Linux
磁碟 /dev/sdc:32.2 GB, 32212254720 位元組,62914560 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 位元組 / 512 位元組
I/O 大小(最小/最佳):512 位元組 / 512 位元組
磁碟標籤型別:dos
磁碟識別符號:0xc3072e18
裝置 Boot Start End Blocks Id System
/dev/sdc1 224 62914559 31457168 c W95 FAT32 (LBA)
[[email protected] /]# mount /dev/sdc1 /mnt/usb //掛載
[[email protected] /]# cp hello /mnt/usb //拷貝檔案到u盤
[[email protected] /]# umount /dev/sdc1 //解除安裝裝置,注意:解除安裝時要先退出掛載點目錄,不然會顯示 “目標忙”
可以通過history檢視歷史命令,同時 “ !<命令編號> ” 可以重新執行該命令。