Files
在 FreeBSD 中查找文件的安全方法?
在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"
有很多有用的選項。查看手冊頁。