以下將介紹如何在 64 位元 Linux 平台上正常啟動 32 位元的 Network Connect 連線軟體,本方法僅適用於 NC 版本為 7.3 以後。NC 7.3 以後的版本會透過 update-alternatives 程式,自動找尋合適的 32bit Java Runtime,如此將可以在 64bit 瀏覽器下正常啟動 NC 連線程式。
| 名稱 | 版本 |
|---|---|
| 作業系統 | Fedora 18 (Linux 3.8.1-201.fc18.x86_64) |
| Java Runtime | jre-7u17-linux-x64.rpm (x86_64) jre-7u17-linux-i586.tar.gz (i586) |
| Network Connect | 7.3-3-Build23377 |
# sudo yum --nogpgcheck localinstall jre-7u17-linux-x64.rpm
# update-alternatives --install /usr/lib64/mozilla/plugins/libjavaplugin.so \
libjavaplugin.so.x86_64 \
/usr/java/default/lib/amd64/libnpjp2.so \
20
# update-alternatives --config libjavaplugin.so.x86_64
有 2 個程式提供「libjavaplugin.so.x86_64」。
選擇 指令
-----------------------------------------------
* 1 /usr/lib64/IcedTeaPlugin.so
+ 2 /usr/java/default/lib/amd64/libnpjp2.so
請輸入以保留目前的選擇[+],或輸入選擇號碼:2
# mkdir -p /opt/java32
# cd /opt/java32
# cp /tmp/jre-7u17-linux-i586.tar.gz .
# tar xvfz jre-7u17-linux-i586.tar.gz
# update-alternatives --install /usr/bin/java \
java \
/opt/java32/jre1.7.0_17/bin/java \
20
注意是否有安裝 java-1.5.0-gcj 或 libgcj,如此將可能無法正確找到合適的 32bit Java Runtime,以致於無法正常啟動 NC,建議可暫時移除。詳細除錯資訊如下:Calling Super Init. Command: /usr/java/jre1.7.0_17/bin/java -d32 -version 2>&1 | grep "java version" Is32BitPlugin: Uses 64 bit plugin. Res: null Command = /bin/sh -c /sbin/alternatives --display java 2>&1 |grep -v "/bin/sh:" | grep ^/ | cut -d " " -f 1 | tr " " " " Result = /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java /usr/lib/jvm/jre-1.5.0-gcj/bin/java /opt/java32/jre1.6.0_43/bin/java /opt/java32/jre1.7.0_17/bin/java Java path = /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java Command = /bin/sh -c /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java -d32 -version 2>&1 | grep "java version" Result = null Java path = /usr/lib/jvm/jre-1.5.0-gcj/bin/java Command = /bin/sh -c /usr/lib/jvm/jre-1.5.0-gcj/bin/java -d32 -version 2>&1 | grep "java version" Result = java version "1.5.0" 32 bit Java path = /usr/lib/jvm/jre-1.5.0-gcj/bin/java 32 Bit Java Path = /usr/lib/jvm/jre-1.5.0-gcj/bin/java /home/lyshie/.juniper_networks Here is the standard output of the command: No difference found Here is the standard error of the command (if any):
# sudo yum install xterm \
ld-linux.so.2 \
libstdc++.so.6 \
libz.so.1 \
libXext.so.6 \
libXrender.so.1 \
libXtst.so.6
sudo 功能。 wheel 群組,或是手動編輯 /etc/sudoers 進行設定。# vim /etc/sudoers # visudo ## Allow root to run any commands anywhere root ALL=(ALL) ALL lyshie ALL=(ALL) ALL ## Allows people in group wheel to run all commands %wheel ALL=(ALL) ALL