十種鏈接到服務器的不同方式

Published on 2010 - 04 - 22

每一個人都有自己特定的鏈接方式,該種方式對自我來說一定是最方便,且可以接受的.

當你在巨大的網路環境中,需要操控墮胎服務器,而每台服務器的配置接口都不同,那麼你是否也依然採用相同的方式來連接它們呢?

以下有十種不同的方式連接到遠端服務器上,或許你可以選擇你最最喜歡的一種.

一.以Finder瀏覽的方式:

或許你在Finder的左邊側邊欄處建立了自己服務器的捷徑,鍵入用戶名與密碼,通過鼠標的直接點擊,在服務器列表上看到共享用戶.

以上可能是最好的連接方式了,但是面對日常需要,通過點擊進行造訪的次數過多,畢竟對於較特殊的服務器,必要的用戶信息驗證還是需要的,於是也增加了填入信息的繁瑣過程.

二.以匿名的方式:

給服務器添加匿名登錄許可,然後將它放置在Dock中.這樣一來你知道,你的Dock將會相當擁擠.另外,如果Finder屬性中的"顯示連接的服務器"未開啟,你也可以將它安置在桌面上.

more

三.以對話框(歷史記錄)的方式:

Finder-前往(Go)-連接伺服器,鍵入伺服器的IP地址,通過"+"按鈕可以增加其它服務器,而保存為歷史記錄,下一次連接時它會自動記錄上一次的最後登錄地址.

這是一勞永逸的方式,但是對於經常連接服務器的朋友來說,這是一個極差的方法.

提示:一些Mac用戶可能並不知道你可以在此對話框中手動建立文件許可協議.如果你僅僅是鍵入了服務器信息,包括用戶名與密碼等,它會自動連接AFP(Apple File Protocol),你可以自己手動添加前綴:afp:// 當然你會得到相同的連接信息的(與你之前的連接結果一樣).還有一些其它前綴可自定義的協議為:

  • smb:// 或 cifs://  連接基於Windows環境的Samba協議方式;
  • ftp://  這誰都知道...連接FTP的協議;
  • http://   連接WebDAV的協議.

因此,通過以上第三種方式的連接可用於SMB,因為SMB可以與他人共享文件.

四.以Script(腳本)的方式:

什麼是Script:沒有用過Butler,那你一定會用過Quicksilver,就像以上兩款系統幫助軟體般,而連接到你的目標服務器就像快捷鍵盤設置般一鍵即可到達.AppleScript的書寫命令如下:
_tell app "Finder" to open location "protocol://username:password@server/share"_

一些其它實例:

  • tell app "Finder" to open location "afp://admin:admin@macmini.local/music"
  • tell app "Finder" to open location "smb://admin:admin@172.17.61.12/documents"
  • tell app "Finder" to open location "afp://;AUTH=NO%20USER%20AUTHENT@macmini.local/music"

對於最後一條命令可能看上去很奇怪,在afp中你可能會使用"username:password "來替換上面的"AUTH=NO%20USER%20AUTHENT",但這也是一種服務器的身份驗證方式.

五.以收藏夾記錄的方式:

打開"文本編輯.app"或者其它編輯器,將格式編輯取消(系統導航處的"格式"選項),鍵入以下腳本:

  • _protocol://username:password@server/share_

完成後將它保存到桌面上或其它地方,給它建立一個ico圖標.注:若它僅僅是一個剪切文本的圖標,你建立的連接腳本將無效.

你可以將它重命名,放置到任何你會注意到的地方,連接時僅需要雙擊即可.

六.以自動化的方式:

你可以拖曳一個已經連接的服務器到你的"系統偏好設置"控制面板中,下一次登錄OS X時它會自動開啟,就像同第五種方式的拖曳,第四種方式的腳本化,以及第二種方式的匿名登錄一樣.

七.以手動鍵入的方式:

該種方法在本地機器上並非常用,你可以在Safari中鍵入"_protocol://user:password@server/share_",它將會在Finder中自動加載.

八.以Unix Admin的方式:

該種方式的前提條件是Mac OS X 10.5 或者更高,Autofs服務已經開啟(即已經可自動加載文件).我們來假設一樣一種場景,在"/Users/Shared"路徑下的文件夾中包含著一個服務器的連接地址,這表明每個人皆可連接到該服務器.將該文件夾拖曳放置到Dock中並打開終端,鍵入命令:

  • _sudo pico /etc/auto_mount_

以上命令的意思即在/ect文件夾中建立目標服務器連接,且叫做auto_mount,當然這名字你可以自己取的.

在該文件中,輸入一個隨意的名字作為你的服務器名(但不要有空格及特殊符號),再進行一些詳細的服務器信息配置及連接協議等.我們可以參考以下命令:

  • Pictures -fstype=smbfs :/admin:admin123@192.168.178.1/mylovelypictures

  • Music -fstype=afp afp://admin:admin123@192.168.178.2/itunesmusic

完成後保存,接下來我們開啟autofs,命令為:_"sudo pico /etc/auto_master"_,在新創建的文件名字後面追加一條命令,該條命令定義了連接服務器時你想看到的名字:_"/Users/shared/servers auto_mount"_.

創建/Users/shared/servers路徑下的文件夾.這時再運行命令:

  • autofs: sudo automount -cv

以上需要注意的是你鍵入的密碼以明文的方式顯示,即,對任何人來說皆是可讀的.但筆者認為,此沒有大隱患.因為任何一個人想連接服務器需通過自己的電腦,而每個人都需要本機的密碼才行.

做完上面的步驟,在shared文件夾中應該包含有"servers"文件夾了,而且該文件夾應該可以被匿名登錄,用圖標替換默認的.這時你再將它在桌面創建快捷方式即可.

上述的第八中方式可能對於部分特定環境中的用戶不大適用.試想一下:你完全可以在"shared"文件夾中手動新建一個"servers"文件夾,甚或是其它任何地方...然後將它安置在Dock中,那麼這時你就該意識到你還需要手動建立auto_mount 及 auto_master 文件.完事兒之後,一旦用戶環境改變了,你還不得不通過SSH去手動修改auto_mount 文件的參數.這...真是一件累人的事.

九.以Geek的方式:

任何GUI程序可以做到的,Unix的形式也同樣可以做到(有過之而無不及).還有另外一種方式通過Unix shell來掛載服務器.

我並不是很清楚如果不寫腳本來訪問服務器這種方法是否可行.我們的第九種方法即是利用Bash在Terminal中完成.

首先我們需創建一個文件夾,在該文件夾中將以列表的形式排列出被掛載的服務器.該文件夾可以位於任何位置,但為了排列系統文件排列整潔,建議與系統根目錄下的mnt文件夾創建在同一位置.

  • $ mkdir /mnt
  • $ mkdir /mnt/music
  • $ mkdir /mnt/movie

上述命令與以下命令大相徑庭:

  • mount_smbfs //admin:stevie123@macmediaserver.local/itunesmusic /mnt/music ## for SMB shares ##
  • mount_afp afp://admin:stevie123@macmediaserver.local/mymovies /mnt/movie ## for AFP shares ##

記住,使用"cd"命令進入某個文件夾進行查看,這樣你就會得到文件列表了.

另一方面,當執行腳本命令時,文件夾/mnt/music將會獲取服務器上的圖標,雙擊時它會顯示內容,同時在桌面上自動掛載;退出時,圖標被還原,桌面上掛載的程式也自動退出了.

記住,要始終持有一條信念就是:鍵入之前需想清楚再執行.如果在掛載磁盤之前/mnt/music文件夾中包含內容, 它們將會在掛載之後消失掉的(當然,在所有掛載命令都退出的時候,它們又會出現的).命令行內的"移除"命令(如rm /mnt/music/*)將會移除該文件夾下的所有文件.當然,退出時它們也都會重新回來.

順便提一句,你可以使用"umount"命令取消掛載任何一個服務器.如:_umount /mnt/music_.

十.我也想有第十種方式:

世界上還有不計其數的其它第三方程序來掛載你的服務器,或免費,或收費;如果以上的九種方式還不能滿足你連接到服務器的要求,那麼只能通過"軟體"來提供你解決方案了.

筆者按:

對於第八種的連接方式,並不是意指auto_mount的文件一定需要被創建在那個制定的地方,但是你必須編輯auto_master文件.

Post in English@ macosxhints.

Comments
Write a Comment