Umount的時候注意了!(Moblin 內核 -- BICKLEY)

 

Bickley是一個元數據管理 API 和框架,由三個主要部分組成:

L ibkozo ——  Kozo 是圍繞 TDB 庫的數據庫抽象。

L ibbickley ——  L ibbickley是一個客戶端 API ,允許客戶端通過較高級別接口訪問元數據。

D aemons —— 有兩個 daemon ,分別用於從文件和其他來源提取元數據和對這些元數據編制索引。

 

L ibbickley

L ibbickley以列舉項的形式將數據呈現給客戶端。目前共有三類列舉項,分別代表音頻、圖像和視頻項。對於與這些類型相關的元數據,列舉項還包含一些文件相關的元數據和一些自定義元數據,比如播放次數、排名、標籤。

通過使用 L ibbickley,客戶端不必瞭解 libkozo 是如何將數據保存在數據庫中的,而且對數據的所有操作都應該通過 L ibbickley完成。

 

Daemon

組成Bickley 元數據系統的兩個 daemon bkl-orbiter bkl-investigator bkl-orbiter 始終處於運行狀態,可以跟蹤各種來源,從而監視來源上需要爲其編制索引的文件。當它發現需要提取的內容時,bkl-investigator 就會啓動並掃描隨後要發送給 orbiter 的元數據文件。

目前, bkl-orbiter 能夠監視的來源有:

GConf —— 表示本地文件系統。

可移除的媒體 —— 表示CD/DVD 和可移除的存儲設備。

UPnP —— 表示局域網上基於 UPnP 的媒體服務器。

GConf來源可以監視鍵 /apps/bickley/watched_uris 並對在該鍵中找到的任意 uri 編制索引。

當新的來源可用時, bkl-orbiter 還會發出D-Bus 信號,而 L ibbickley可以將此信號通知客戶端應用程序。

 

元數據的存儲位置

元數據存儲在設備的文件系統中。對於本地文件系統,數據庫存儲在 ~/.kozo/databases/local-media 中。

對於UPnP ,元數據也存儲在 ~/.kozo/databases 中,而數據庫文件名就是UPnP 設備 UDN MD5 和。

對於可移除的媒體,如果該媒體是可寫的,那麼元數據存儲在 $(mount_point)/.kozo/databases 中,否則也存儲在 ~/.kozo/databases 中,數據庫文件名是掛載點的MD5 和。

 

使用lsof /media/disk查看發現 bkl-orbiter 在使用$(mount_point)/.kozo/databases

那麼,直接用UMOUNT不行了。可以使用gnome-umount。

 

發佈了18 篇原創文章 · 獲贊 3 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章