經過幾天的了解,發現華為沒有針對64位Linux而開發的iNode認證客戶端。盡管在Linux公社中資源庫中出現了inode_client_amd64.tar.gz的影子,但是不能夠下載,所以也無法知道那個軟件包是否可以實現Ubuntu 12.10 64位中的inode認證。在baidu中搜索的解決問題關鍵是在64位機上安裝ia32-libs及其的依賴包。測試后,發現沒法在Ubuntu 12.10 64位機安裝ia32-libs,會出現如下圖的錯誤。
網上還有一種方法就是將64位機強制安裝成32位機中的動態鏈接庫,但是如果要執行這種方案,我還不如直接重啟一個Ubuntu 12.10 i386版本。
所以解決問題的思路開始變為將64位機的環境修改為可以執行32位應用程序的環境,有點像在win7的64環境下可以使用64位和32位的應用程序。這解決問題的思路來自“ubuntu 12.04 64位設置兼容32位的實現 ”【1】。已成功安裝ia32-libs軟件包,實現了32位軟件包兼容環境的安裝,並成功安裝了iNodeClient_For_Linux_V3.60-E6210.tar.gz。
運行環境:vmware 7, Ubuntu 64虛擬機,操作系統:ubuntu-12.10-desktop-amd64.iso。
使用的工具:apt-get、apt-cache 詳細安裝過程如下:
1)如果直接安裝ia32-libs,是不能成功的。所以應用安裝ia32-libs前,選擇ia32-libs執行所需要的軟件包,執行如下命令:
root@dranyu-virtual-machine:/var/cache/apt/archives# apt-get install libc6-i386
lib32stdc++6 lib32z1 lib32ncurses5
2)安裝完成之前的軟件包后,發現可以安裝ia32-libs軟件包了。所以安裝ia32-libs軟件包,執行如下命令:
root@dranyu-virtual-machine:/var/cache/apt/archives# apt-get install ia32-libs
3)完成ia32-libs的安裝后,嘗試安裝iNodeClient_For_Linux_V3.60-E6210.tar.gz。 先將其解壓到本地磁盤,如/usr/inode。然后執行如下命令:
root@dranyu-virtual-machine:/usr/inode# ll root@dranyu-virtual-machine:/usr/inode# ./install.sh
Starting AuthenMngService: root@dranyu-virtual-machine:/usr/inode# ps aux| grep A
USER PID %CPU %MEM VSZ RSS TTYSTAT START TIME COMMAND
root 13194 0.0 0.1 16868 1204 ? Sl 08:14 0:00 /usr/inode/AuthenMngService
從上面的執行結果可以看到AuthenMngService已成功運行。
4)現在執行iNodeClient會提示動態鏈接庫不存在或是無效。在64位系統中,共享的動態鏈接庫保存在/usr/lib/x86_64-linux-gnu;但是我們的inode並不是使用此目錄下的庫文件。安裝ia32-libs后,32位環境的庫文件一般會保存在/usr/lib/i386-linux-gnu下,所以對提示的不存在或無效的庫文件可以應用此目錄下的文件作一個軟鏈接。執行如下命令:
root@dranyu-virtual-machine:/usr/lib/i386-linux-gnu# ll | grep libjpeg //尋找當前版本的libjpeg庫文件
lrwxrwxrwx 1 root root 16 9月 20 21:08 libjpeg.so.8 -> libjpeg.so.8.0.2
root@dranyu-virtual-machine:/usr/lib# ln -s /usr/lib/i386-linux-gnu/libjpeg.so.8 /usr/lib/libjpeg.so.62 //創建軟鏈接
root@dranyu-virtual-machine:/usr/lib# ln -s /usr/lib/i386-linux-gnu/libtiff.so.5 /usr/lib/libtiff.so.3
ln: 無法創建符號鏈接"/usr/lib/libtiff.so.3": 文件已存在
root@dranyu-virtual-machine:/usr/lib# rm libtiff.so.3 //如果libtiff.so.3存在,則先將其刪除
root@dranyu-virtual-machine:/usr/lib# ln -s /usr/lib/i386-linux-gnu/libtiff.so.5 /usr/lib/libtiff.so.3
5)完成庫文件的軟鏈接后,執行如下命令,啟動inode認證客戶端如下圖所示。
root@dranyu-virtual-machine:/usr/inode# ./iNodeClient
6)設置賬號。單擊工具欄上的“新連接”的圖標,顯示設置的界面如下圖。設置相應的賬號信息即可。
在Ubuntu主機中安裝32位兼容環境
在虛擬機中成功安裝了inode客戶端,但是到了一個沒有鏈接網絡的Ubuntu 12.10 amd64主機就不能直接安裝了。有兩種方法可以在Ubuntu 64主機上安裝32位環境:
1)使用無線網連接網絡,然后按照上述的方法安裝ia32-libs軟件包。
2)在虛擬機中保存32位環境所需要的軟件包,然后將相關的軟件包復制到Ubuntu主機上進行安裝。
第一種方式同在虛擬機安裝的過程是一樣的,所以不詳述。主要說第2種情況。
多虧的操作的時候做足了功課,在虛擬機測試安裝ia32-libs的時候,將那些相關的軟件包保存了下來。在虛擬機中保存相關軟件包的方法如下:
1)清除apt工具的緩存(/var/cache/apt/archives目錄),使用如下命令:
apt-get clean
2)開始執行虛擬機安裝ia32-libs的相關操作,包括上述的(1)和(2)步驟。
3)安裝完ia32-libs后,將/var/cache/apt/archives目錄下的deb軟件包保存起來。它們就是安裝ia32-libs所需的軟件包。
准備好了ia32-libs所需的軟件包后,就可以開始切換到Ubuntu主機上了。以下操作都是在Ubuntu主機上進行的:
a)將ia32-libs所需的軟件包復制到Ubuntu主機的/var/cache/apt/archives目錄下。
b)進入/var/cache/apt/archives目錄,然后使用dpkg命令執行安裝軟件包的操作,命令如下:
dpkg -i *.deb
c)到此大部分的i836應用軟件所需要的庫都已經安裝了。現在開始安裝iNodeClient_For_Linux_V3.60-E6210.tar.gz,剩下的操作如同在虛擬機的操作(3)、(4)、(5)和(6)。
完成了所有的操作。目前在Ubuntu 12.10 amd64中上網。
參考: