溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux的restorecon命令怎么使用

發(fā)布時間:2022-01-21 08:22:14 來源:億速云 閱讀:157 作者:iii 欄目:開發(fā)技術

本文小編為大家詳細介紹“Linux的restorecon命令怎么使用”,內(nèi)容詳細,步驟清晰,細節(jié)處理妥當,希望這篇“Linux的restorecon命令怎么使用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

Linux的restorecon命令怎么使用

Linux常用命令restorecon命令 用來恢復SELinux文件屬性即恢復文件的安全上下文。

語法

 restorecon [-iFnrRv] [-e excludedir ] [-o filename ] [-f filename | pathname...]

選項

 -i:忽略不存在的文件。
 -f:infilename 文件 infilename 中記錄要處理的文件。
 -e:directory 排除目錄。
 -R/-r:遞歸處理目錄。
 -n:不改變文件標簽。
 -o/outfilename:保存文件列表到 outfilename,在文件不正確情況下。
 -v:將過程顯示到屏幕上。
 -F:強制恢復文件安全語境。

實例

1.恢復文件的SELinux上下文

在以下示例中,index.html文件在SELinux上下文中具有“user_home_t”上下文類型。這個上下文類型,apache服務將無法訪問。

 [root@localhost ~]# ll -Z /var/www/html/index.html
 -rw-rw-r--. root root unconfined_u:object_r:user_home_t:s0  13 Jan  7 11:14  /var/www/html/index.html

注意:上面的ls命令中的-Z選項將顯示特定文件的SELinux上下文。當我們使用restorecon命令時,我們實際上不需要知道文件的原始安全上下文。 restorecon會自動修正。

以下示例將把index.html的安全性上下文恢復為適當?shù)闹怠?如下所示,它已將SELinux上下文的類型重置為“httpd_sys_content_t”, 現(xiàn)在apache將能夠為該文件提供服務,而不會出現(xiàn)任何錯誤。

 [root@localhost ~]# restorecon /var/www/html/index.html
 [root@localhost ~]# ll -Z /var/www/html/index.html
 -rw-r--r--. 1 root root unconfined_u:object_r:httpd_sys_content_t:s0 13 Jan  7 11:14 /var/www/html/index.html

2.更改安全上下文時輸出信息

默認情況下,執(zhí)行restorecon命令時,它不會提示是否更改了文件的安全上下文。

 [root@localhost ~]# restorecon -v /var/www/html/index.html
 Relabeled /var/www/html/index.html from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0

Linux的restorecon命令怎么使用

3.使用通配符處理多個對象

下面實例將修改目錄下面所有文件的安全上下文。

 [root@localhost ~]# restorecon -v /var/www/html/*

Linux的restorecon命令怎么使用

4.遞歸處理文件和目錄

還可以使用-R選項遞歸重置文件的安全上下文。

 [root@localhost ~]# restorecon -Rv /var/www/html/
 Relabeled /var/www/html/sales from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/sales/graph.html from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0

Linux的restorecon命令怎么使用

5.根據(jù)輸入文件還原上下文

可以將需要恢復安全上下文的文件或文件夾路徑保存在文件里,使用-f選項指定文件,來恢復。在下面的/var/www/html/testdir目錄和下面的指定的文件需要恢復默認安全上下文: Linux的restorecon命令怎么使用 

首先創(chuàng)建一個文件input.txt,在里面填入需要恢復默認安全上下文的目錄或者文件的完整路徑。

 [root@localhost ~]# vim input.txt
 [root@localhost ~]# cat input.txt
 /var/www/html/testdir
 /var/www/html/testdir/file1.txt
 /var/www/html/testdir/file3.txt
 /var/www/html/testdir/file5.txt
 /var/www/html/testdir/file7.txt
 /var/www/html/testdir/file9.txt

Linux的restorecon命令怎么使用 下面使用restorecon來恢復:

 [root@localhost ~]# restorecon -Rvf input.txt
 Relabeled /var/www/html/testdir from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file1.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file2.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file3.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file4.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file5.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file6.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file7.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file8.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file9.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
 Relabeled /var/www/html/testdir/file10.txt from unconfined_u:object_r:admin_home_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0

Linux的restorecon命令怎么使用

6.排除某個目錄

還可以使用-e選項排除不需要恢復安全上下文的目錄。 在以下示例中,我們正在處理/var/www/html 目錄下的所有文件,但不包括/var/www/html/sales子目錄中的文件。

 [root@localhost html]# restorecon -e /var/www/html/sales -Rv /var/www/html

Linux的restorecon命令怎么使用 

還可以提供多個-e選項來排除多個文件或文件夾。

讀到這里,這篇“Linux的restorecon命令怎么使用”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內(nèi)容的文章,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI