2009-10-09 48 views
2

我正在運行使用Ruby/MySQL和net/ftp的ruby腳本。該腳本運行在Windows Vista框中,正在嘗試創建到同一臺遠程Solaris服務器的數據庫和ftp連接。錯誤:請求的服務提供者無法加載或初始化。 - socket(2)

這裏是代碼的要點:

require 'mysql' 
require 'net/ftp' 

dbh = Mysql.real_connect(db["host"], db["user"], db["pass"], db["name"]) 
ftp = Net::FTP.new(ftp["host"]) 

現在,如果我跑從它駐留在所有Vista的框中鍵入腳本的作品,因爲它應該。但是,該腳本正在通過NRPE從另一臺服務器中調用,這就是錯誤發生的時間。

如果設置分貝[「宿主」]/FTP [「宿主」]等於這裏的遠程服務器的完全合格的域名是錯誤我接收:

getaddrinfo: no address associated with hostname. 

接收錯誤我後嘗試從腳本ping服務器,並確定它在嘗試ping主機名時失敗了,但是,當我ping IP地址時它工作正常。

不過,如果我設置DB [「主機」]/FTP [「主機」]到遠程服務器的IP地址,我得到這個錯誤:

The requested service provider could not be loaded or initialized. - socket(2) 

我有一個很難找到任何關於如何調試的信息,所以如果有人有任何想法,他們將不勝感激。

在此先感謝。

回答

0

原來,這個腳本是從一個不同的用戶遠程運行而不是在本地運行的。我不確定引起問題的環境如何改變,但是一旦我們將遠程實例設置爲與本地相同的用戶運行,那麼一切正常。

相關問題