Files

在 FreeBSD 中查找文件的安全方法?

  • July 30, 2019

FreeBSD 12 中,在新創建的虛擬機( DigitalOcean ) 上,我嘗試使用該locate命令。

$ locate java

我收到一個錯誤。

定位:數據庫太小:/var/db/locate.database

執行 /usr/libexec/locate.updatedb

於是我跑了locate.updatedb

$ /usr/libexec/locate.updatedb

收到一條消息,抱怨權限。

/usr/libexec/locate.updatedb:無法創建 /var/db/locate.database:權限被拒絕

好的。作為 sudo 執行。

$ sudo /usr/libexec/locate.updatedb

我收到了安全警告。

> > > > > > > > > > > > 警告 > > > > > > > > > 以root身份執行updatedb。這將顯示所有文件名 > > > > > > > > > 在您的機器上對所有登錄使用者,這是一個安全風險。 > > > > > > > > > > > > > > > > > >

Unix 太有趣了。

➥ 在 FreeBSD 系統上按名稱查找文件或目錄的正確安全方法是什麼?

locate是一種快速搜尋文件的簡單方法,因為它有自己的數據庫。但是,我總是只使用find(1). 結果將返回給執行它的使用者,執行它的使用者只能找到他們具有相應文件系統權限的文件。

find遞歸搜尋,因此/如果要搜尋每個文件系統,可以指定搜尋路徑。

查找所有名為的文件和目錄foo

find / -name "foo"

查找名為的文件foo

find / -type f -name "foo"

查找名為的目錄foo

find / -type d -name "foo"

有很多有用的選項。查看手冊頁

引用自:https://unix.stackexchange.com/questions/531754