在 Linux 和 Windows 下共享同一份 Lotus Notes 資料檔案

genusBIT發表於2010-04-15

轉自:http://www.ibm.com/developerworks/cn/lotus/notes-winlnx-share/index.html

前言

Lotus Notes 從 Version 7 開始支援 Linux,為廣大 Linux 愛好者帶來了福音。在 Linux 上享受 Louts Notes 帶來的協同工作的快樂,另一個問題也隨之而來。不能否認,當前的主流桌面作業系統依然是 Microsoft 的 Windows 系列作業系統,很多工作仍然需要 Windows;為此很多人都在一臺電腦上同時安裝 Linux 和 Windows,根據不同目的靈活切換來適應這種現實。

這種做法解決了絕大多數普通應用的需求,然而對於協同工作平臺來說,卻依然存在一個障礙。我們可以同時在 Linux 和 Windows 上都安裝 Lotus Notes,但是如果無法共享同一份本地資料,那麼作業系統切換所帶來的只有更多麻煩,無法檢視本地郵件、無法更新本地日程、無法使用本地資料庫。

本文提供了一種方法,讓 Lotus Notes 可以在 Linux 和 Windows 上共享同一份使用者資料,在作業系統平臺切換時,可以無縫使用 Lotus Notes 作為協同工作平臺。

本文所提供的方法,與 Lotus Notes 版本無關,但是所有操作示例均採用了 Lotus Notes V8.5.1;其它版本 Lotus Notes,請根據版本區別作相應操作。

Lotus Notes 在 window 和 Linux 上安裝簡介

Lotus Notes 8.5.1 支援 RHEL 5.2 Desktop(禁用 AIGLX)/ SLED10 SP2 XGL / Ubuntu 8.0.4 和主流 Microsoft Windows 系列操作平臺。在 Windows 上的安裝,只需要下載安裝包,一路點選 Next 就可以完成安裝了。從 Lotus Notes V8.0 開始,Lotus Notes 提供了基於 ISMP(Install Shield Multi-Platform)技術的安裝程式,使用者可以像在 Windows 中一樣,一路點選 Next 來完成安裝。為了適應眾多 Linux 使用者的應用程式安裝習慣,Lotus Notes V8.5.1 還推出了基於 RPM/DEB 的安裝包,便於 Linux 上應用程式安裝管理。具體的安裝程式和步驟,請檢視參考資源中 developWorks 文章“IBM Lotus Notes 8.5 for Linux 本地化版本結構與安裝”。

Lotus Notes 的資料檔案

Lotus Notes 把程式檔案和使用者資料檔案分開存放,為使用者方便的管理資料檔案提供了可能。以下簡要介紹 Lotus 的重要使用者資料檔案,和怎麼樣指定/更改存放使用者資料的目錄。

Lotus Notes 的重要資料檔案


表 1. Notes 重要資料檔案表

檔名 目錄 資訊
bookmark.nsf 使用者資料目錄 Lotus Notes 書籤和起始頁資訊;
busytime.nsf 使用者資料目錄 本地日程資訊;
desktop6.ndk 使用者資料目錄 工作區書籤資訊;
headline.nsf 使用者資料目錄 應用程式訂閱資訊;
internet.nsf 使用者資料目錄 新聞組(NNTP)訂閱資訊;
names.nsf 使用者資料目錄 聯絡人和聯絡人組資訊;
perweb.nsf 使用者資料目錄 網頁瀏覽器相關資訊;
user.dic 使用者資料目錄 使用者詞典,用於語法檢查等;
*.nsf 使用者資料目錄 使用者建立的本地資料庫,或者遠端資料庫的本地備份;
.nsf ( 本地備份 ) 使用者資料目錄 僅當使用者建立郵箱,日曆和日程資料庫的本地備份時存在;
.ID 使用者資料目錄 Notes ID 檔案;
notes.ini 應用程式目錄 Notes 配置檔案,包括個性化定製配置資訊;
install.log 應用程式目錄 使用者安裝 Notes 過程中所輸入的配置資訊。

更改 Lotus Notes 的資料檔案目錄

在安裝 Lotus Notes 客戶端的過程中,安裝嚮導會提示使用者選擇使用者資料目錄,如果下圖所示,使用者可以指定任意目錄作為使用者資料目錄。


圖 1. 安裝中指定使用者資料目錄
圖 1. 安裝中指定使用者資料目錄

在安裝完 Notes 後,我們可以通過修改 Notes 的配置資訊來更改使用者資料目錄,如下圖所示開啟 Perferences …,選擇 Basic Notes Client Configuration 皮膚中的 Local application folder 修改使用者資料目錄:


圖 2. 更改使用者資料目錄
圖 2. 更改使用者資料目錄

當然,如果你精通 Notes 的配置檔案,你也可以直接修改 notes.ini 檔案,將使用者資料都遷移到指定目錄後,將 notes.ini 中的 Directory 欄位直接修改為指定的目錄:

[Notes] 
 …
 Directory = D:\Data
 …  
 …  

資料共享示例

共享方法

Lotus Notes 採用了獨立於作業系統的資料格式,為資料共享提供了必要條件;而 Linux 提供的掛載 Windows 磁碟分割槽的功能,則為資料共享提供了可能性。通過在 Linux 下掛載包含 Lotus Notes 使用者資料檔案目錄的 Windows 磁碟分割槽,然後修改 Linux 裡安裝的 Louts Notes 配置,使其採用 Windows 下的使用者資料,既可實現資料共享。


圖 3. 使用者資料共享原理示意圖
圖 3. 使用者資料共享原理示意圖

共享前提條件

為了實現資料共享,系統需要滿足如下條件:

1. Linux 可以正確掛載 Windows 的磁碟分割槽

雖然 Linux 從 1997 年開始就支援掛載包括 FAT/FAT32/NTFS 在內的多種 Windows 檔案系統,現在的各個 Linux 發行版都比較好的支援了這種特性。偶爾遇到 NTFS 無法掛載讀寫的情況,請參照參考資源中 Linux-NTFS 內容安裝 RPM 包來支援,具體掛載步驟在此就不贅述了。

由於各個發行版所採用的編碼方式(Locale)不盡相同,如果在掛載過程中沒有指定合適的編碼方式,可能造成讀寫中出現亂碼,中文的支援尤其如此。建議在掛載前檢查 Windows 和 Linux 的 Locale,並在掛載中指定合適的 Locale。

例如 Linux 的編碼方式為 zh_CN.UTF-8,可以用如下命令指定:

 mount -t vfat /dev/hda1 /mnt/win/disk_C -o iocharset=utf8 

2. Windows 和 Linux 上安裝相同版本的 Lotus Notes,並擁有相同的配置

由於不同版本的 Louts Notes 在使用者資料格式上有一些細小的區別,為了保證使用者資料在 Windows 和 Linux 下都能夠被正確的讀寫,建議使用者安裝完全一致的 Lotus Notes 版本。

在每個平臺上安裝完 Lotus Notes 後,都先按初始化嚮導進行配置,確保 Lotus Notes 能夠正常執行。在 Linux 執行時,需要先將 Windows 上的當前使用 Notes ID 拷貝到 Linux 上,然後執行配置。

共享示例

以下是一個共享示例,通過上述方法,我們實現了在一臺普通 PC 上同時存在的 Windows XP 和 SUSE 10 中共享同一份 Lotus Notes 資料檔案。

在 Windows 上安裝 Lotus Notes 到 C:\Lotus\Notes 下,將使用者資料存放到 D:\ Data 下,如下圖:


圖 4. Windows 下 Notes 配置
圖 4. Windows 下 Notes 配置

在 Linux 上掛在 D 盤,如下圖:


圖 5. Linux 下掛載 Windows 下的使用者資料目錄
圖 5. Linux 下掛載 Windows 下的使用者資料目錄

將 Linux 上的 Lotus Notes 指定為掛載的 Data 目錄,如下圖:


圖 6. Linux 下指定 Notes 的使用者資料目錄
圖 6. Linux 下指定 Notes 的使用者資料目錄

掛載後的正常使用,如下圖:


圖 2. Linux 和 Windows 上的 Notes 對比
圖 2. Linux 和 Windows 上的 Notes 對比

資料共享中的最佳實踐

使用者資料資料夾

Lotus Notes 會預設把使用者資料存放在應用程式目錄下的 Data 目錄下,由於 Lotus Notes 通常會安裝在 Windows 下的系統盤上,這種情況下可能不利於檔案管理。推薦把使用者把使用者資料儲存到獨立於 Windows 系統盤的一個資料盤的指定目錄下(譬如 D 盤下的 Data 目錄);這樣不僅方便使用者資料檔案管理,也方便 Linux 進行 Windows 檔案系統掛載與檔案操作,還可以避免 Windows 系統盤上的檔案因為 Linux 讀寫相容性問題而發生損壞(特別是對於某些文字型別的配置檔案,可能由於編碼格式問題而導致亂碼,進而影響使用)。

使用者密碼

對於 Lotus Notes V8.5.1 使用者而言,常用的密碼有兩個—— Notes ID 密碼和 Sametime 密碼。

對於 Notes ID 密碼而言,如果使用者選擇把 Notes ID 檔案複製到使用者資料目錄下的方式,那麼兩個平臺下將會共享同一個密碼(推薦方式);如果把 Notes ID 檔案存放在指定目錄下,需要在兩個平臺上分別進行指定。

對於 Sametime 密碼而言,由於 Sametime 的使用者資料獨立於 Lotus Notes 的使用者資料,所以需要在不同平臺下分別指定。需要特別提醒一點的,由於 Sametime 會自動嘗試登陸,當使用者在 Windows 下更改 Sametime 密碼後,登入 Linux 後需要及時修改 Sametime 自動登入密碼,否則容易造成多次錯誤登入,造成賬戶鎖死。

路徑配置資訊

Notes 中的一些配置需要通過指定路徑來進行,這些路徑可能是相對路徑,也可能是絕對路徑;這些配置可能儲存在某個配置檔案中,也可能儲存在 Notes 的資料庫裡面。

相對路徑是最為理想的一種方式,只要我們根據需要,為資料檔案選擇合適的目錄存放,就可以在兩個平臺上隨意切換;對於絕對路徑,由於 Windows 和 Linux 有不通的路徑格式,我們只能通過修改路徑的方式來實現。對此,當這種配置資訊儲存在某個配置檔案中時,我們可以通過在 Windows 和 Linux 上配置啟動指令碼,對配置資訊進行修改來實現平臺的切換。對於最後一種情況 —— 儲存在 Notes 資料庫中的絕對路徑,就比較難處理了,譬如郵件簽名檔。

Lotus Notes 支援 Text 和 Html 兩種格式的簽名檔,簽名檔的相關資訊儲存在 Email 資料庫中。對於文字格式的簽名檔而言,兩邊都是一樣的;但是對於更多人都喜歡的 Html 格式的簽名檔,當前 Lotus Notes 只支援絕對路徑來指定 Html 檔案。使用者可以選擇採用文字格式的簽名檔,或者在切換作業系統後手動指定路徑。

指令碼檔案

對於某些 Notes 資料庫,管理員可能開發了一些外部指令碼,通過 Notes Script/Java 介面或者其他方式來呼叫。由於 Linux 和 Windows 支援的指令碼型別不同,指令碼的檔名也不一樣,在實現某些功能的時候可能存在一些困難。

如果通過修改指令碼來適應不同平臺能夠解決問題,那麼只需要相對應的修改指令碼就可以了;如果不可以,則推薦採用 Java 或者 IBM REXX Object 等格式的跨平臺語言/指令碼來解決。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14751907/viewspace-659799/,如需轉載,請註明出處,否則將追究法律責任。

相關文章