導航:首頁 > 操作系統 > linuxrmi

linuxrmi

發布時間:2022-09-26 17:08:00

linux啟動tomcat失敗

Linux下啟動tomcat的時候,如果服務啟動不成功,可以到查看logs文件夾下的catalina.out
日誌文件,cat我的日誌文件可得到如下的錯誤信息:
cat catalina.out
Error: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: 8101; nested exception is:
java.net.BindException: Address already in use
Feb 27, 2011 3:25:39 PM org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already. Could not load com.funambol.server.tools.directorymonitor.FileChangeEvent. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
從字面上來看,是我的8101埠被佔用了,應該是rmi需要用到這個埠,於是使用
netstat -anp
命令來查看各埠被進程佔用的情況,這個命令輸出包括進程的pid,得到這個pid之後,使用命令:
ps -ef|grep PID
即可查看進程的詳細情況。
如果確認此進程可停止的話,
kill pid
重啟tomcat就OK了!

Ⅱ linux上如何安裝jstatd服務

此命令是一個RMI Server應用程序,提供了對JVM的創建和結束監視,也為遠程監視工具提供了一個可以attach的介面

options
-nr 當一個存在的RMI Registry沒有找到時,不嘗試創建一個內部的RMI Registry
-p port 埠號,默認為1099
-n rminame 默認為JStatRemoteHost;如果多個jstatd服務開始在同一台主機上,rminame唯一確定一個jstatd服務
-J jvm選項

jstatd
會報如下錯誤:
Could not create remote object access denied (java.util.PropertyPermission java.rmi.server.ignoreSubClasses write) java.security.AccessControlException: access denied (java.util.PropertyPermission java.rmi.server.ignoreSubClasses write) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) at java.security.AccessController.checkPermission(AccessController.java:546) at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) at java.lang.System.setProperty(System.java:727) at sun.tools.jstatd.Jstatd.main(Jstatd.java:122)

這是因為沒有給jstatd指定安全策略

創建安全策略文件,並命名為jstatd.all.policy
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};

再次啟動
C:\Program Files\Java\jdk1.6.0_16\bin>jstatd -J-Djava.security.policy=jstatd.all.policy

利用jps查看正在運行的java命令
jps
C:\Documents and Settings\lulu>jps
4892 Bootstrap
1296 Jstatd
4484 Jps
3332 org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar

此時就可以使用jvisualvm.exe以遠程的方式監控JVM相關信息了。
更多例子
(1)使用內部RMI Registry
jstatd -J-Djava.security.policy=all.policy (默認埠為1099)
(2)使用外部RMI Registry
a)使用默認值
rmiregistry&
jstatd -J-Djava.security.policy=all.policy
b)使用2020埠
rmiregistry 2020&
jstatd -J-Djava.security.policy=all.policy -p 2020
c)使用2020埠,使用rminame
rmiregistry 2020&
jstatd -J-Djava.security.policy=all.policy -p 2020 -n AlternateJstatdServerName
(3)RMI Registry已經啟動,不創建內部RMI Registry
jstatd -J-Djava.security.policy=all.policy -nr
(4)RMI日誌能力
jstatd -J-Djava.security.policy=all.policy -J-Djava.rmi.server.logCalls=true

Ⅲ linux中怎麼配置rmi安全策略文件

問題一:RMI服務提供程序運行在Windows操作系統下,RMI服務可以正常訪問,但將RMI服務提供程序部署到Linux操作系統下後,RMI服務無法訪問,提示

org.springframework.remoting.RemoteConnectFailureException:

Cannot connect to remote service
[rmi://192.168.0.106:1199/ItemRetag]; nested exception is
java.rmi.ConnectException: Connection refused to host: 127.0.0.1; ……

決辦法:在載入RMI服務之前將當前伺服器的IP指定給hostName,如
System.setProperty("java.rmi.server.hostname",
"192.168.100.7");或者修改/etc/hosts文件,在這個文件中加 192.168.100.54 testlinux1
localhost.localdomain localhost
就行,或者將/etc/hosts文件中默認的127.0.0.1改成當前機器的IP即可!

問題二:java.rmi.server.ExportException: internal error: ObjID already in
use Caused by: java.rmi.server.ExportException: internal error: ObjID
already in use……

出現這種問題及有可能是/etc/hosts文件中指定的IP並不是當前伺服器的真實IP,RMI在初始化時注冊服務失敗。

通過System.out.println(InetAddress.getLocalHost().toString());查看當前主機的IP
是否為真實IP,如顯示為SIMBANK/220.250.64.24,而真實IP為192.168.1.2

解決辦法:修改/etc/hosts文件中錯誤的IP即可,將:

220.250.64.24 SIMBANK
修改為

192.168.1.2 SIMBANK

Ⅳ 如何測試rmi 埠在linux環境下是否啟動

這個需要Linux伺服器里邊支持nc命令,如果還沒有裝的情況會顯示 我們可以使用yum命令直接安裝,我的是Centos 6.5系統 如果不會用,直接打nc命令就會顯示出它的使用方法 如果需要測試某個伺服器的埠在能不能正常在外面 訪問 例如我測試一下 180...

Ⅳ 如何jvm監控linux伺服器

如何配置visualvm監控
visualvm支持在Linux和windows上啟用圖形界面監控jvm的資源,但是如何可以使我們在windows上監控到遠程linux伺服器資源,這還需要做一些配置,此文是在原文基礎上做了更改的,希望對大家能有所幫助。
(1)首先要修改JDK中JMX服務的配置文件,以獲得相應的許可權:
進入$JAVA_HOME所在的根目錄的/jre/lib/management子目錄下,
a. 將jmxremote.password.template文件復制為jmxremote.password
b. 調整jmxremote.access和jmxremote.password的許可權為只讀寫,可以使用如下命令
chmod 600 jmxremote.access jmxremote.password
c. 打開jmxremote.password文件,去掉
# monitorRole QED
# controlRole R&D
這兩行前面的注釋符號
(2)修改env.sh
打開env.sh文件,並在JVM的啟動配置中添加如下信息:
JAVA_OPTS="-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=10.20.150.218 其他配置」
這幾個配置的說明如下:
-Dcom.sun.management.jmxremote.port:這個是配置遠程connection的埠號的,要確定這個埠沒有被佔用
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false:這兩個是固定配置,是JMX的遠程服務許可權的
-Djava.rmi.server.hostname:這個是配置server的IP的,要使用server的IP最好在機器上先用hostname –i看一下IP是不是機器本身的IP,如果是127.0.0.1的話要改一下,否則遠程的時候連不上,目前我們的server上我已經都改好了
(3)Windows客戶端配置
JDK 1.6版本自帶visualvm,只需要進到bin目錄下啟動即可
啟動後頁面比較簡潔,配置也很簡單:
a. 點擊左側菜單的add Remote host,輸入server的IP,然後再advanced settings里配置埠(注意這個埠要和server上的埠一致)
b. 右擊剛才配置的IP,選擇JMX connection方式,再次輸入埠,就可以監視到JVM資源了

Ⅵ linux jboss6.3怎麼修改應用啟動埠

1、將默認埠8080改為80
找到JBOSS_HOME/server/default/deploy/jbossweb-tomcat50.sar/server.xml文件,找到如下部分:
<!-- A HTTP/1.1 Connector on port 8080 -->
<Connector port="8080" address="${jboss.bind.address}"
maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
emptySessionPath="true"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true"/>
把裡面的8080改為80。JBOSS啟動之後就可以用http://localhost/訪問。

Ⅶ 如何讓 RMI 程序同時支持 IPv4 和 IPv6

實踐證明它是健壯,易於實現,並具有很好的互操作性。但是 IPv4 協議的初始設計仍有一些未考慮到的地方,隨著 Internet 的飛速發展和新型應用的不斷涌現,這些不足逐漸顯露出來。首先,近年來 Internet 成指數級數增長,而只有 32 位地址的 IPv4 引起了迫在眉睫的 IP 地址空間耗盡的問題;第二,IPv4 路由結構較為扁平,使得 Internet 上骨幹路由器需要維護龐大的路由表;第三,目前 IPv4 實現方案中,多數情況需要手工配置或者使用 DHCP 有狀態方式配置協議,隨著越來越多的節點要求接入網路,需要一種簡便的配置方式;第四,在 IP 級的安全方面,IPv4 並不強制使用 IPSec ;最後,IPv4 協議中使用服務類型 TOS 欄位來支持實時通信流傳送,而 TOS 功能有限,因此對實時數據傳輸 Qos 的支持不是很理想。為解決上述問題及其它相關問題,互聯網工程任務組織 IETF 開發了一套新的協議和標准即 IP 版本 6(IPv6)。它吸納了很多用於更新 IPv4 的新思想,在設計時力求對上下層協議造成最小的影響。與 IPv4 相比,IPv6 協議具有以下一些新的特性:IPv6 協議頭採用了固定長度的頭部,路由器在處理 IPv6 報頭時,效率會更高。IPv6 具有 128 位的巨大地址空間,既便為當前所有主機都分配一個 IPv6 地址,IPv6 仍然有充足的地址供以後使用。IPv6 具有即插即用特性。 IPv6 引入了無狀態地址自動配置方式,鏈路上的主機根據路由公告和自身的鏈路地址可以自動生產一個 IPv6 地址,從而簡化了入網主機的配置過程,實現了 IPv6 的即插即用。提供網路層的認證和加密。 IPv6 支持 IPSec,這為網路安全提供了一種基於標準的解決方案。IPv6 更好地支持 QoS 。 IPv6 協議頭部包含流標簽欄位,使得路由器可以對屬於一個流的數據包進行識別和提供特殊處理;用業務流分類欄位來區分通信流的優先順序。因此 IPv6 對 QoS 提供了更好的支持。IPv6 更好地支持移動性。雖然 IPv4 也有移動特性,但是作為 IPv4 的擴展實現,受到體系結構和連通性的限制。而 IPv6 的移動特性是內置的,具有較少的局限性並具有更強的可伸縮性和健壯性,可滿足將來 Internet 的通信需求。IPv6 具有很好的可擴展性,這可通過在 IPv6 協議頭之後添加新的擴展協議頭實現。回頁首Java 對 IPv6 的支持Java 從 1.4 開始,已經提供了對 IPv6 的支持。 Java APIs 遵循了如下 IPv6 標准:RFC2373: IPv6 Addressing ArchitectureRFC2553: Basic Socket Interface Extensions for IPv6RFC2732: Format for Literal IPv6 Address in URL但是由於安全等因素,Java 並沒有支持原始套接字。除此之外,一些 IPv6 特性,諸如隧道,自動配置,移動 IP 等,Java 都沒有提供支持。與 C/C++ 對 IPv6 的支持不同,Java 對 IPv6 的支持是自動和透明的,也就是說現有的 Java 程序不需要經過修改就可以直接支持 IPv6 。以下面代碼為例,這段代碼在 IPv4 上可以正常運行,同樣也可以工作在 IPv6 上。InetAddress ip = InetAddress.getByName("java.sun.com"); Socket s = new Socket(ip, 80);Java 對 IPv6 的支持體現在其 JDK 對 IPv6 的支持上,當然前提條件是操作系統需要提供對 IPv6 的支持。以下操作系統已經提供了對 IPv6 的支持,表1. OS 對 IPv6 的支持Windows:Windows 2000Windows XPWindows NTWindows 2003 serverLinux:Linux kernel 2.2 及以上版本Unix:AIX 4.3 及以上版本Solaris 8 及以上版本HP-UX 11i 及以上版本BSD/OS 4.0 及以上版本True64 Unix 4.0D 及以上版本FreeBSD 4.0 及以上版本NetBSDOpenBSD 2.7 及以上版本Other OS:OS/390, Z/OS V1R4 及以上版本OS400 V5R2 及以上版本Mac OS X下面列出了各個版本 JDK 對 IPv6 的支持情況。表2. JDK 對 IPv6 的支持JDK/ JDK 1.4NOYESYESNOIBM JDK 1.5YESYESYESYESSUN JDK 1.4NOYESYESSUN JDK 1.5YESYESYESJRockit JDK 1.4NOYESJRockit JDK 1.5YESYESHP-UX JDK 1.4YESHP-UX JDK 1.5YES回頁首RMI 對 IPv6 的支持既然Java 對 IPv6 的支持是透明的,那麼 RMI 程序理論上就應該同時支持 IPv4 和 IPv6,但測試結果告訴我們只有在 RMI 伺服器端套接字不綁定 IP 地址的情況下這種結論才成立。考慮下面這樣一個例子,一個支持雙棧的伺服器,同時配置了 IPv4 地址和 IPv6 地址。伺服器應用程序用如下代碼創建了一個伺服器套接字,等待客戶端的連接。由於 Java 對 IPv6 的透明支持,IPv4 和 IPv6 的客戶端都可以正常連接到這台伺服器上。清單1. 無 IP 綁定的伺服器套接字程序 try { int port = 2000; ServerSocket srv = new ServerSocket(port); Socket socket = srv.accept(); } catch (IOException e) { e.printStackTrace(); }通過natestat – na可以看出,伺服器監聽在 0.0.0.0:2000 上,這樣任何客戶端都可以連接到伺服器上,其中包括 IPv6 客戶端用伺服器的 IPv6 地址也能順利連接。Proto Local Address Foreign Address State TCP 0.0.0.0:2000 0.0.0.0:0 LISTENING但是很多時候,應用程序從安全等角度考慮,常常需要將伺服器套接字綁定在某個具體的 IP 上。現在我們假設把伺服器套接字綁定在一個 IPv4 地址上,如下程序所示:清單2. 綁定 IP 的伺服器套接字程序 try { int port = 2000; ServerSocket srv = new ServerSocket(port); srv.bind(new InetSocketAddress( 「 9.181.27.34 」 , port) Socket socket = srv.accept(); } catch (IOException e) { e.printStackTrace(); }通過natestat – na,我們可以發現監聽方式已改變: Proto Local Address Foreign Address State TCP 9.181.27.34:2000 0.0.0.0:0 LISTENING從套接字的定義看出,它由 IP 和埠組成,它們唯一確定了一個套接字,同時也限定了訪問套接字的方式。在訪問由固定 IP 和埠組成的套接字時,客戶端必須指定伺服器的 IP 和埠才能正常連接。在伺服器綁定 IPv4 地址的情況下,IPv6 客戶端就無法用伺服器的 IPv6 地址進行訪問,當然 IPv4 客戶端能通過伺服器的 IPv4 地址 9.181.27.34 進行連接訪問。上面分析了 Java 對 IPv6 的支持以及伺服器套接字如何影響客戶端的連接,接下來我們用實例分析 RMI 對 IPv6 的支持。我們搭建了如下的實驗環境:圖1. 實驗環境接下來,我們設計了一個基本的 RMI 應用程序,下面這段是 RMI 伺服器程序:清單3. RMI 伺服器程序 import java.rmi.*; import java.rmi.server.*; import java.rmi.registry.*; public class SampleServerImpl extends UnicastRemoteObject implements SampleServer { SampleServerImpl() throws RemoteException { super(); } public int sum(int a,int b) throws RemoteException { return a + b; } public static void main(String args[]) { try { //create a local instance of the object SampleServerImpl Server = new SampleServerImpl(); //put the local instance in the registry Naming.rebind("rmi://9.181.27.34/SAMPLE-SERVER" , Server); System.out.println("Server waiting....."); } catch (java.net.MalformedURLException me) { System.out.println("Malformed URL: " + me.toString()); } catch (RemoteException re) { System.out.println("Remote exception: " + re.toString()); } } }編譯源程序,啟動rmiregistry,然後運行 RMI 伺服器程序。通過netstat – na我們可以看見,RMI 監聽方式如下,盡管我們在程序中用了」Naming.rebind("rmi://9.181.27.34/SAMPLE-SERVER" , Server)」:Proto Local Address Foreign Address State TCP 0.0.0.0:1099 0.0.0.0:0 LISTENING那麼,根據我們上面關於套接字對客戶端連接的影響的分析,我們可以看出在這種情況下,IPv4 RMI 客戶端和 IPv6 RMI 客戶端都應該能夠順利連接 RMI 伺服器。下面我們就看一下 IPv4 客戶端的連接程序:清單4. RMI 客戶端程序 import java.rmi.*; import java.rmi.server.*; public class SampleClient { public static void main(String[] args) { //get the remote object from the registry try { //using RMI server 』 s IPv4 address to connect String url = "//9.181.27.34/SAMPLE-SERVER"; SampleServer remoteObject = (SampleServer)Naming.lookup(url); System.out.println("Got remote object"); System.out.println(" 1 + 2 = " + remoteObject.sum(1,2) ); } catch (RemoteException exc) { System.out.println("Error in lookup: " + exc.toString()); } catch (java.net.MalformedURLException exc) { System.out.println("Malformed URL: " + exc.toString()); } catch (java.rmi.NotBoundException exc) { System.out.println("NotBound: " + exc.toString()); } } }編譯並運行該程序,可以看到正常連接到 RMI 伺服器,運行結果如下:Got remote object 1 + 2 = 3下面我們在 IPv4 RMI 客戶端程序的基礎上作一下改動,用 RMI 伺服器的 IPv6 地址進行連接,修改如下:String url = "//2001:251:1a05::6/SAMPLE-SERVER"; SampleServer remoteObject = (SampleServer)Naming.lookup(url);編譯修改之後的程序,在 IPv6 RMI 客戶端上運行,同樣可以正常連接 RMI 伺服器,運行結果如下:Got remote object 1 + 2 = 3通過這個例子,我們可以看出基本的 RMI 程序對 IPv6 的支持是透明的,它可以同時支持 IPv4 和 IPv6 。通過這個例子,我們也可以看出,它實際上不能綁定 IP 地址,這在安全性要求比較高的企業級應用程序中並不是很合適,它們通常採用UnicastRemoteObject類的exportObject(Remote obj, int port, RMIClientSocketFactory csf, RMIServerSocketFactory ssf)方法來綁定 RMI IP 地址。在RMIServerSocketFactory實例中,創建 RMI 伺服器套接字並綁定 IP 地址,在RMIClientSocketFactory實例中通過伺服器綁定的 IP 地址進行訪問。在RMI 伺服器綁定 IP 地址的情況,如果讓 RMI 同時支持 IPv4 和 IPv6 呢?下面給出了一個解決方案。既然要讓 RMI 同時支持 IPv4 和 IPv6,那麼在伺服器端,我們就要同時創建兩個套接字,一個綁定在 IPv4 地址上,一個綁定在 IPv6 地址上。首先,我們應該創建兩個類IPv4RMIServerSocket和IPv6RMIServerSocket,他們都實現RMIServerSocketFactory介面。IPv4RMIServerSocket創建一個伺服器套接字並綁定在 RMI 伺服器的 IPv4 地址上;IPv6RMIServerSocket創建一個伺服器套接字並綁定在 RMI 伺服器的 IPv6 地址上。其次,在創建兩個類IPv4RMIClientSocket和IPv6RMIClientSocket,他們都實現RMIClientSocketFactory介面。IPv4RMIClientSocket創建一個客戶端套接字並通過 RMI 伺服器的 IPv4 地址進行連接;IPv6RMIClientSocket創建一個客戶端套接字並通過 RMI 伺服器的 IPv6 地址進行連接。然後,在創建好我們需要的伺服器和客戶端類之後,伺服器應用程序需要兩次調用exportObject方法將遠程對象導出。但是有一個問題出現了,同一個遠程對象不能同時導出兩次。如何解決這個問題呢?辦法就是我們需要對遠程對象作一個wrapper。現在假設有一個遠程對象Kernel的類定義如下:清單5. Kernel 類定義 public class Kernel extends Remote{ public void addWebServer(String hostName, int port) throws RemoteException { //Function implementation code } public void changeLogLevel(int level) throws RemoteException { //Function implementation code } }Kernel 的 Wrapper 定義如下:清單6. Kernel 的 Wrapper 類定義 public class KernelWrapper extends Remote { transient Kernel kernel_; public KernelWrapper (Kernel kernel) throws RemoteException, IOException { super(); kernel_ = kernel; } public void addWebServer(String hostName, int port) throws RemoteException { kernel_.addWebServer(hostName, port); } public void changeLogLevel(int level) throws RemoteException { kernel_.changeLogLevel(level); } }在應用程序初始化的時候,實例化一個 Kernel 實例,並將它作為參數實例化兩個 KernelWrapper 實例,如下所示:清單7. KernelWrapper 實例化 kernelObj = new Kernel(); //remote kernel object for IPv4 clients ipv4kernelObj = new KernelWrapper (kernelObj); //remote kernel object for IPv6 clients ipv6kernelObj = new KernelWrapper (kernelObj);最後應用程序需要將 ipv4kernelObj 和 ipv6kernelObj 遠程對象導出,如下所示:清單8. 遠程對象導出 //export remote object for IPv4 client UnicastRemoteObject.exportObject( ipv4kernelObj, 1099, IPv4RMIClientSocket, IPv4RMIServerSocket ) //export remote object for IPv6 client UnicastRemoteObject.exportObject( ipv6kernelObj, 1099, IPv6RMIClientSocket, IPv6RMIServerSocket )這樣IPv4 客戶端通過伺服器的 IPv4 地址進行訪問,而 IPv6 客戶端通過伺服器的 IPv6 地址進行訪問,從而成功的使得 RMI 伺服器在綁定 IP 地址的情況下同時支持 IPv4 和 IPv6 。回頁首結束語本文在分析伺服器套接字對 IPv4 和 IPv6 客戶端的影響的基礎上,介紹了兩種不同的 RMI 應用對 IPv6 的支持情況,同時給出了一種 RMI 伺服器在需要綁定 IP 地址的情況下如何同時支持 IPv4 和 IPv6 客戶端的解決方案。參考資料 IPv6 主頁:IPv6 官方網站。
Networking IPv6 User Guide for J2SDK/JRE 1.4:JDK 1.4 對 IPv6 的支持。
An example of RMI programming:RMI 的簡單例子。
「探索Internet Protocol, version 6 (IPv6)」(developerWorks,2006 年 7 月):了解 IPv6 的地址格式、主要優點和符合新標準的 IT 產品。
「配置FTP 伺服器以支持 IPv6」(developerWorks,2006 年 8 月):在本文中,學習配置 File Transfer Protocol (FTP) 伺服器以支持 IPv6,然後通過一個簡單的使用 IPv6 地址的 Java 程序來與 FTP 伺服器通信。
「結合使用 WebSphere Application Server V7 和 IPv6」(developerWorks,2008 年 11 月):本文將介紹用於驗證 IBM WebSphere Application Server V7 的過程,以驗證其對 IPv6 以及對 IPv4/IPv6 混合模式基礎結構的支持。
developerWorks Java 技術專區:這里有數百篇關於 Java 編程的文章。
關於作者沈剛目前在 IBM Tivoli 部門從事 ITM for Applications 產品開發工作。關閉[x]關於報告濫用的幫助報告濫用謝謝! 此內容已經標識給管理員注意。關閉[x]關於報告濫用的幫助報告濫用報告濫用提交失敗。 請稍後重試。關閉[x]developerWorks:登錄IBM ID:需要一個 IBM ID?忘記IBM ID?密碼:忘記密碼?更改您的密碼 保持登錄。單擊提交則表示您同意developerWorks 的條款和條件。 使用條款 當您初次登錄到 developerWorks 時,將會為您創建一份概要信息。您在developerWorks 概要信息中選擇公開的信息將公開顯示給其他人,但您可以隨時修改這些信息的顯示狀態。您的姓名(除非選擇隱藏)和昵稱將和您在 developerWorks 發布的內容一同顯示。所有提交的信息確保安全。關閉[x]請選擇您的昵稱:當您初次登錄到 developerWorks 時,將會為您創建一份概要信息,您需要指定一個昵稱。您的昵稱將和您在 developerWorks 發布的內容顯示在一起。昵稱長度在 3 至 31 個字元之間。 您的昵稱在 developerWorks 社區中必須是唯一的,並且出於隱私保護的原因,不能是您的電子郵件地址。昵稱:(長度在 3 至 31 個字元之間)單擊提交則表示您同意developerWorks 的條款和條件。 使用條款. 所有提交的信息確保安全。為本文評分評論回頁首

Ⅷ 大神linux下怎麼啟動jdk裡面的rmiregistry

JDK即java開發工具它沒有啥可雙擊就運行的圖標它要在命令行中運行要想運行java程序個人推薦用eclipse集成的來發環境工能超強最主要的是不用配置jdk中那樣的pathc和lasspath

Ⅸ 怎麼修改jboss埠 linux

在一台機器上部署了多個jboss server,需要修改相關埠以避免埠沖突
一、vi $JBOSS_HOME/server/default/conf/jboss-service.xml
1、WebService埠
name="jboss:service=WebService">
8083
2、JNDI埠:
name="jboss:service=Naming"
xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
1099
1098
3、RMI埠:
name="jboss:service=invoker,type=jrmp">
4444
name="jboss:service=invoker,type=pooled">
4445
二、vi $JBOSS_HOME/server/default/deploy/jbossweb-tomcat55.sar/server.xml
1、HTTP埠:
三、vi $JBOSS_HOME/server/default/deploy/jms/uil2-service.xml
1、JMS:
8093

Ⅹ 如何在linux添加添加jmx埠

個人環境說明:JAVA
jdk1.6.0_20
IP地址:192.168.88.106
系統登陸用戶名:Administrator

1,設置密碼文件和許可權
在jdk1.6.0_20\jre\lib\management中將jmxremote.password.template復制一份重命為
jmxremote.password。修改最後兩行,將
#monitorRole
QED
#controlRole
R&D
前面的#號去掉。為什麼後面解釋。

然後修改jmxremote.password的文件許可權為僅當前用戶完全控制,所有者為當前用戶,具體步驟如下:
Windows系統需要3個步驟:

在jmxremote.password文件上右鍵->屬性,切換到安全選項卡。<XP系統可能看不到,請網路>
點「高級」按鈕,彈出「jmxremote.password的高級安全設置」窗口。
(1)刪除所有用戶對jmxremote.password文件的訪問許可權:
在「許可權」選項卡中點「更改許可權」,將「包括可從該對象的父項繼承的許可權」
復選框去掉,然後系統會彈出一個「Windows安全」警告,選擇「刪除」按鈕。
刪除成功後,許可權項目欄會變成:「所有組或用戶均不具有訪問此對象的許可權。但是該對象的所有者可以分配許可權。」

(2)指定當前登陸用戶對該文件有完全控制許可權
點「添加」按鈕,再點「高級」按鈕,再點「立即查找」,在搜索結果中找當前系統的登陸用戶雙擊添加進來。
注意不要選擇那些帶S結尾的,那個表示組,只能選擇用戶。我的是Administrator
返回後點確定,然後在彈出框中勾選「完全控制」。點確定返回剛開始的「jmxremote.password的高級安全設置」窗口。
(3)將所有者設置為當前系統的登陸用戶
切換到所有者選項卡,點擊「編輯」,雙擊選擇當前系統的登陸用戶,注意不要選擇那些帶S結尾的,那個表示組,只能選擇用戶。
最後一路確定。許可權修改完畢。

Linux系統:
chmod
600 jmxremote.password
這個沒試過,官方這么寫的。

2,啟動JMX服務端

下面這行命令我是在JDK的根目錄執行的,
這里指定的埠號是10089,主機名稱即當前計算機IP地址,不推薦設置成localhsot或者127.0.0.1,會導致在別的機子上連不上來。JAR包指定的是JDK自帶的一個DEMO
java
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=10089
-Djava.rmi.server.hostname=192.168.88.106 -jar
demo/jfc/Java2D/Java2Demo.jar

3,啟動JConsole
在JDK的bin目錄執行jconsole.exe

閱讀全文

與linuxrmi相關的資料

熱點內容
十三排電影院坐第幾排 瀏覽:122
尼故福利院 瀏覽:602
哪有好看的電影網站 瀏覽:773
紅顏薄命女斗小說 瀏覽:940
法國電影戀愛love2012電影完整版 瀏覽:459
在線影視 不卡 瀏覽:168
老男孩韓國完整版百度網盤 瀏覽:485
用箱子運水怪結果被放出來了電影 瀏覽:519
徐錦江空中飛人片名 瀏覽:164
手機免費在線看福利電影 瀏覽:457
羅麗星克萊爾經典 瀏覽:342
台灣紅羊有哪些經典電影 瀏覽:568
免下載你懂的 瀏覽:975
新建文件夾1女演員三位 瀏覽:740
不用下載就能看的視頻網站 瀏覽:330
我一個神偷硬生生把國家偷成強國 瀏覽:600
樣子是五歲小男孩和郭富城演的 瀏覽:460
韓國演員也美娜 瀏覽:898
陸離是哪部小說的主角 瀏覽:49
華娛開局佟麗婭 瀏覽:17