Linux第二週作業

第二週作業

一、基礎班

1. 描述Linux發行版的系統目錄名稱命名規則以及用途。

文件系統:
	1.文件和目錄被組織成一個單根倒置樹結構
	2.文件系統從根目錄下開始,用“/”表示
	3.根文件系統(rootfs):root filesystem
	4.文件名稱區分大小寫
	5..開頭的文件爲隱藏文件
	6.路徑分隔的 /
	7.文件有兩類數據:
		元數據:metadata
		數據:data
	8.文件系統分層結構:LSB Linux Standard Base
	9.FHS: (Filesystem Hierarchy Standard)
		http://www.pathname.com/fhs/
	
系統目錄名稱命名規則:
	1.文件名最長255個字節
	2.包括路徑在內文件名稱最長4095個字節
	3.藍色-->目錄 綠色-->可執行文件 紅色-->壓縮文件 淺藍色-->鏈接文件 
	  灰色-->其他文件
	4.除了斜槓和NUL,所有字符都有效.但使用特殊字符的目錄名和文件不推薦使用,
	  有些字符需要用引號來引用它們
	5.標準Linux文件系統(如ext4),文件名稱大小寫敏感
		例如:MAIL, Mail, mail, mAiL

用途:
	/boot:引導文件存放目錄,內核文件(vmlinuz)、引導加載器(bootloader, grub)都存放於此目錄
	/bin:所有用戶使用的基本命令;不能關聯至獨立分區,OS啓動即會用到的程序
	/sbin:管理類的基本命令;不能關聯至獨立分區,OS啓動即會用到的程序
	/lib:啓動時程序依賴的基本共享庫文件以及內核模塊文件(/lib/modules)
	/lib64:專用於x86_64系統上的輔助共享庫文件存放位置
	/etc:配置文件目錄
	/home/USERNAME:普通用戶家目錄
	/root:管理員的家目錄
	/media:便攜式移動設備掛載點
	/mnt:臨時文件系統掛載點
	/dev:設備文件及特殊文件存儲位置
		b: block device,隨機訪問
		c: character device,線性訪問
	/opt:第三方應用程序的安裝位置
	/srv:系統上運行的服務用到的數據
	/tmp:臨時文件存儲位置
	/usr: universal shared, read-only data
		bin: 保證系統擁有完整功能而提供的應用程序
		sbin:
		lib:32位使用
		lib64:只存在64位系統
		include: C程序的頭文件(header files)
		share:結構化獨立的數據,例如doc, man等
		local:第三方應用程序的安裝位置
			bin, sbin, lib, lib64, etc, share
	/var: variable data files
		cache: 應用程序緩存數據目錄
		lib: 應用程序狀態信息數據
		local:專用於爲/usr/local下的應用程序存儲可變數據
		lock: 鎖文件
		log: 日誌目錄及文件
		opt: 專用於爲/opt下的應用程序存儲可變數據
		run: 運行中的進程相關數據,通常用於存儲進程pid文件
		spool: 應用程序數據池
		tmp: 保存系統兩次重啓之間產生的臨時數據
	/proc: 用於輸出內核與進程信息相關的虛擬文件系統
	/sys:用於輸出當前系統上硬件設備相關信息虛擬文件系統
	/selinux: security enhanced Linux,selinux相關的安全策略等信息的存儲位置

在這裏插入圖片描述

2. 描述文件的元數據信息有哪些,分別表示什麼含義,如何查看?如何修改文件的時間戳信息?

文件的元數據信息:
	Size:顯示文件大小 
	Blocks:文件使用的數據塊總數 
	IO Block:IO塊大小 
	regular file:文件類型(常規文件) 
	Device:設備編號 
	Inode:Inode號 
	Links:鏈接數 
	Access:文件的權限 
	Gid、Uid:文件所有權的Gid和Uid。
	
1. Access Time:簡寫爲atime,表示文件的訪問時間。當文件內容被訪問時,更新這個時間 
2. Modify Time:簡寫爲mtime,表示文件內容的修改時間,當文件的數據內容被修改時,更新這個時間。 
3. Change Time:簡寫爲ctime,表示文件的狀態時間,當文件的狀態被修改時,更新這個時間,例如文件的鏈接數,大小,權限,Blocks數。

touch命令
格式:touch [OPTION]... FILE...
	-a 僅改變 atime和ctime
	-m 僅改變 mtime和ctime
	-t [[CC]YY]MMDDhhmm[.ss]
		指定atime和mtime的時間戳
	-c 如果文件不存在,則不予創建

查看:stat命令
在這裏插入圖片描述
修改文件的時間戳信息(touch命令等)
在這裏插入圖片描述

3. 結軟連接和硬連接區別,並用實例操作說明。

硬鏈接:
	1.創建硬鏈接會增加額外的記錄項以引用文件
	2.對應於同一文件系統上一個物理文件
	3.每個目錄引用相同的inode號
	4.創建時鏈接數遞增
	5.刪除文件時:
		rm命令遞減計數的鏈接
		文件要存在,至少有一個鏈接數
		當鏈接數爲零時,該文件被刪除
	6.不能跨越驅動器或分區
	7.語法:
		ln filename [linkname ]

軟連接:
	1.一個符號鏈接指向另一個文件
	2.ls - l的 顯示鏈接的名稱和引用的文件
	3.一個符號鏈接的內容是它引用文件的名稱
	4.可以對目錄進行
	5.可以跨分區
	6.指向的是另一個文件的路徑;其大小爲指向的路徑字符串的長度;不增加或減
	  少目標文件inode的引用計數
	7.語法:
		ln -s filename [linkname]

硬鏈接和軟鏈接區別:
	1.本質:硬鏈接同一個多個名字,軟鏈接不同文件
	2.跨分區:硬鏈接不能跨分區,軟鏈接可以
	3.目錄:硬鏈接不能,軟鏈接可以
	4.相互關係:
	5.inode號:硬鏈接還是使用原本文件的inode號,軟鏈接使用新的inode號
	6.鏈接數:硬鏈接會隨着鏈接數增加而增加,軟鏈接不會
	7.相對路徑:原始文件路徑
	8.文件類型:硬鏈接顯示爲和原本相同文件,軟鏈接則變成鏈接文件
	9.ln -s 

示例:
[root@centos7 ~]#ln md5.log 11
[root@centos7 ~]#ln -s md5.log 111
[root@centos7 ~]# ll
-rw-r--r-- 2 root root  45 Feb 19 11:52 11
lrwxrwxrwx 1 root root   7 Feb 22 22:49 111 -> md5.log
-rw-r--r-- 2 root root  45 Feb 19 11:52 md5.log

4. Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。

1.touch命令
格式:touch [OPTION]... FILE...
	-a 僅改變 atime和ctime
	-m 僅改變 mtime和ctime
	-t [[CC]YY]MMDDhhmm[.ss]
		指定atime和mtime的時間戳
	-c 如果文件不存在,則不予創建
示例:
[root@centos7 data]# touch -c text1.txt
[root@centos7 data]# touch test.txt
[root@centos7 data]# ll
total 0
-rw-r--r-- 1 root root 0 Aug  8  2020 test.txt

2.cp命令
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
	-i 覆蓋前提示
	-n 不覆蓋,注意兩者順序
	-r, -R 遞歸複製目錄及內部的所有內容
	-a 歸檔,相當於-dR --preserv=all
	-d --no-dereference --preserv=links 不復制原文件,只複製鏈接名
	--preserv[=ATTR_LIST]
		mode: 權限
		ownership: 屬主屬組
		timestamp:
		links
		xattr
		context
		all
	-p 等同--preserv=mode,ownership,timestamp
	-v --verbose
	-f --force
	-u --update 只複製源比目標更新文件或目標不存在的文件
	-b 目標存在,覆蓋前先備份,形式爲 filename~
	--backup=numbered 目標存在,覆蓋前先備份加數字後綴
	
cp SRC DEST
 SRC是文件:
	如果目標不存在:新建DEST,並將SRC中內容填充至DEST中
	如果目標存在:
		如果DEST是文件:將SRC中的內容覆蓋至DEST中
		  基於安全,建議爲cp命令使用-i選項
		如果DEST是目錄:在DEST下新建與原文件同名的文件,並將SRC中內容填充至新文件中
		
cp SRC... DEST
	 SRC... 多個文件
 	 DEST 必須存在,且爲目錄,其它情形均會出錯
 	 
cp SRC DEST
	 SRC是目錄:此時使用選項:-r
	 如果DEST不存在:則創建指定目錄,複製SRC目錄中所有文件至DEST中
	 如果DEST存在:
		 如果DEST是文件:報錯
		 如果DEST是目錄:

3.mv命令
mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...
 常用選項:
	 -i 交互式
	 -f 強制
	 -b 目標存在,覆蓋前先備份

4.rm命令
rm [OPTION]... FILE...
常用選項:
	-i 交互式
	-f 強制刪除
	-r 遞歸
	 --no-preserve-root 刪除/
示例:
	rm -rf /*		不可行													*/

5.tree命令
tree 顯示目錄樹
	-d: 只顯示目錄
	-L level:指定顯示的層級數目
	-P pattern: 只顯示由指定pattern匹配到的路徑
	
6.mkdir 創建目錄
	 -p: 存在於不報錯,且可自動創建所需的各目錄
	 -v: 顯示詳細信息
	 -m MODE: 創建目錄時直接指定權限
	 
7.rmdir 刪除空目錄
	 -p: 遞歸刪除父空目錄
	 -v: 顯示詳細信息

5. 複製/etc/profile至/tmp/目錄,用查找替換命令刪除/tmp/profile文件中的 行首的空白字符

[root@centos7 data]# cp /etc/profile /tmp/
[root@centos7 data]# vim /tmp/profile  

					:%s@^[[:blank:]]\+@@

6. 在vim中設置tab縮進爲4個字符

配置文件:永久有效
	全局:/etc/vimrc
	個人:~/.vimrc
添加:
set tabstop=4 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章