微软 Ubuntu 开源 shell linux 编程 Firefox wordpress centos Windows mysql google Android 程序员 php apache 云计算 nginx java Python

Linux基礎知識題解答(五)

文件inode號,文件訪問權限,硬鏈接數,文件所屬用戶,文件所屬組,文件最後修改時間,文件名

(2)描述下硬鏈接和軟連接的區別

1.硬鏈接原文件/鏈接文件共用一個inode號,說明他們是同一個文件,而軟鏈接原文件/鏈接文件擁有不同的inode號,表明他們是兩個不同的文件;
2.在文件屬性上軟鏈接明確寫出了是鏈接文件,而硬鏈接沒有寫出來,因為在本質上硬鏈接文件和原文件是完全平等關系;
3.鏈接數目是不一樣的,軟鏈接的鏈接數目不會增加;
4.文件大小是不一樣的,硬鏈接文件顯示的大小是跟原文件是一樣的,而軟鏈接顯示的大小與原文件就不同了。
5.不允許給目錄創建硬鏈接,不可以在不同文件系統的文件間建立硬鏈接。軟鏈接則沒有任何文件系統的限制,任何用戶可以創建指向目錄的符號鏈接
6.若原文件刪除了,則該軟連接則不可以訪問,而硬連接則是可以的。

(3)一個100M(100000k)的磁盤分區,分別寫入1k的文件或者寫入1M的文件,分別可以寫多少個?

假設inode size=128byte  block size=1024byte  可寫入1k文件100000000/(128+1024) 可寫入1M文件  100000000/(1048576+128)  

假設inode size=256byte  block size=4096byte  可寫入1k文件100000000/(256+4096)  可寫入1M文件 100000000/(1048576+256)  

以上計算結果均去掉小數字後的數字

(4)文件類型分為哪些,通過那個命令可以查看文件的類型

普通文件,目錄,塊設備,字符設備,FIFO文件,符號鏈接文件,socket文件

通過stat -c %F 或者file 後接文件名  可以查看文件的類型

(5)刪除文件的原理

Linux是通過link的數量來控制文件刪除的,一般來說,每個文件都有兩個link計數器:i_count和i_link,i_link是文件的硬鏈接數(磁盤引用計數器),i_count是文件被進程所調用的數(內存引用計數器),只有當i_count和i_link都為0了,文件才會被真正的刪除;rm命令,刪除的是文件的i_link數,實際就是將文件名到inode的鏈接刪除了(當i_link即硬鏈接數等於0時,inode號會被系統回收),此時,並沒有刪除文件的實體即block數據塊,如果及時停止機器工作,數據是可以找回的,如果此時繼續寫入數據,那麽新數據就有可能會被分配到被刪除據的block數據塊,此時,文件就會被真正的回收了。

(6)硬鏈接問題

[root@mzq2~]# ls -ld oldboy

drwxr-xr-x.11 oldgirl root 4096 Oct 26 10:52 oldboy

[root@mzq2~]# ls -l oldboy -a

total64

drwxr-xr-x.11 oldgirl root 4096 Oct 26 10:52 .

dr-xr-x---.13 root    root 4096 Oct 30 15:01 ..

drwxr-xr-x   2 root   root 4096 Oct 25 23:59 123

drwxr-xr-x   2 root   root 4096 Oct 26 10:51 1234

drwxrw-rw-   2 root   root 4096 Oct 26 10:52 12345

drwxr-xr-x   2 root   root 4096 Oct 28  2011 ext

-rw-r--r--   1 root   root    0 Oct 28  2011 jeacen

-rw-r--r--   1 root   root  292 Oct 13 19:26 Nginx.conf

-rw-r--r--   1 root   root   35 Oct 28  2011 oldboy

-rw-r--r--   1 root   root  247 Oct 20 10:52 oldboy.log

drwxr-xr-x.  2 root   root 4096 Oct  4 04:10 tese

drwxr-xr-x.  2 root   root 4096 Oct 27  2011 test

-rw-r--r--   1 root   root   25 Oct 27  2011 wodi.gz

drwxr-xr-x   2 root   root 4096 Oct 27  2011 xiaodong

drwxr-xr-x   2 root   root 4096 Oct 27  2011 xiaofan

drwxr-xr-x   2 root   root 4096 Oct 27  2011 xingfujie

-rw-r--r--   1 root   root   28 Oct 27  2011 yingsui.gz

如上如所示:列出oldboy的硬鏈接數

11

(7)分別說下刪除文件的源文件,硬鏈接,字符鏈接的對三者的影響

刪除文件的源文件,inode減1

刪除文件的硬鏈接,inode減1,不影響源文件

刪除文件的符號鏈接,源文件還可以訪問

(8)

 

wKioL1Y5i7zSEPbcAAFf0io83eM570.jpg

如圖所示,請創建一個用戶,使它同時屬於sa,JAVA,TECH組

useradd test -G sa,JAVA,TECH

(9)bin:x:1:1:bin:/bin:/sbin/nologin

說明此內容各段的含義

用戶名:密碼占位符:uid:gid:用戶文字說明:用戶家目錄:用戶登陸時的Shell,/sbin/nologin表示禁止登陸

(10)

drwxr-xr-x   2 root   root     4096 2015-10-18 21:50 10

-rw-r--r-x   1 root   root        0 2015-10-25 23:05 112

此內容是哪個命令實現的

 題目不清

(11)說出正則表達式的特殊字符及其含義

基礎正則表達式:

^word   匹配以word開頭的字符

word$   匹配以word結尾的字符

.       匹配任意一個字符

*       匹配前面的字符零次或多次

.*      匹配任意字符

\       轉義符

[]      字符集合,匹配所包含的任意一個字符

[^word] 匹配除word以外的字符

(12)說出你知道的通配符及含義

*  匹配任意字符(零到多個)

?  匹配任意一個字符

#  註釋

$  變量符號

|  管道符
;  連續命令執行分隔符
~  用戶家目錄

\  轉義符
!  取非
'  單引號,不具有變量置換功能
"  雙引號,具有變量置換功能
`  反引號,中間為先執行的指令
() 中間為子shell的起始與結束
[] 中間為字符組合
{} 中間為命令區塊組合
&& 當前一個指令執行成功時,執行後一個指令
|| 當前一個指令執行失敗時,執行後一個指令

(13)說出你知道的擴展的正則表達式字符及其含義

擴展正則表達式:

+   匹配前面的字符一次或多次

?   匹配前面的字符零次或一次

|   用或的方式匹配多個字符串

()  組匹配,匹配括號內為一組的字符串

{n,m} 匹配前面的字符n次到m次


(14)linux中對文件的讀寫執行權限說明

文件的讀、寫、執行權限說明:

可讀r:表示具有讀取文件內容的權限

可寫w:表示具有修改文件內容的權限(刪除文件或修改文件名等權限是受上級父目錄的權限控制,和文件本身權限無關)

可執行x:表示具有執行文件的權限(文件本身要能夠執行,普通用戶還需要有r的權限)


(15)linux中對目錄的讀寫執行權限說明

目錄的讀、寫、執行權限說明:
可讀r:表示具有瀏覽目錄裏內容的權限,即ls(需要有x權限配合,如無x權限,則只能顯示文件或目錄名,文件屬性等顯示為問號)
可寫w:表示具有創建、刪除或移動目錄內文件和目錄的權限(與文件本身權限無關,需要有x權限配合)
可執行x:表示具有進入目錄的權限,即cd

(16)請從linux文件系統的角度詳細描述讀取/tmp/oldboyfile文件原理過程

系統首先找到/tmp/oldboyfile這個文件名對應的inode號碼;其次,通過inode號碼,獲取inode信息;最後,通過inode信息,找到這個文件對應的block,讀出數據。

 

(17)把下面內容轉成數字權限或8進制權限

rw-rw-r-x      665

--xr-x-wx      153

-wx—x—x      311

715           rwx--xr-x

635           rw--wxr-x

012           -----x-w-

 

(18)操作系統還是網站站點目錄權限的安全界點是多少,如何得到的

文件的安全節點為644,目錄的安全節點為755

(19)什麽是umask,作用是什麽,怎麽計算文件和目錄的默認權限

umask是用來控制linux創建文件和目錄的默認權限的

計算方法:文件默認權限,666減去umask

          目錄默認權限,777減umask,所得結果遇奇數位加一

 

(20)setuid和setgid的區別

setuid:讓執行文件的用戶以該文件擁有者的權限去執行

setgid:讓執行文件的用戶以該文件所屬組的權限去執行

延伸阅读

评论