SSH (ssh & rsync कमांड) का उपयोग कैसे करें?


44

मैं दूरस्थ सर्वर के साथ SSH कैसे कर सकता हूं ताकि मैं फ़ाइलों को ब्राउज़ कर सकूं और उन्हें संपादित कर सकूं? मेरे पास उपयोग करने के लिए एक उपयोगकर्ता नाम और पासवर्ड है।

जवाबों:


49

SSH सभी उबंटू संस्करणों में डिफ़ॉल्ट रूप से आता है इसलिए आप इसे स्थापित करने के लिए सहेजते हैं (+1 इसे पहले से ही होने के लिए;);

उस मामले को छोड़कर जहां आप अपने उबंटू सर्वर के लिए एसएसएच सर्वर चाहते हैं। उस मामले में आप करेंगे

sudo apt-get install openssh-server 

जो आपके कंप्यूटर / सर्वर को ssh सर्वर बनने के लिए तैयार करे।

इसका उपयोग करना काफी आसान है:

ssh USER@SITEउदाहरण के लिए, यदि मेरा उपयोगकर्ता नाम cyrex है और साइट ubuntu.com है तो आप ऐसा करेंगे:

ssh cyrex@ubuntu.com

अब आप कहते हैं कि आप bubblegum.txtअपने कंप्यूटर से अपने ubuntu साइट पर एक फ़ाइल की प्रतिलिपि बनाना चाहते हैं और उस फ़ाइल /var/wwwको ubuntu साइट में फ़ोल्डर में छोड़ना चाहते हैं । आप ऐसा कर सकते हैं (एसएसबी के भाई, एससीपी (जो कि उबंटू में भी डिफ़ॉल्ट रूप से आता है ) का उपयोग करके (अपने उपयोगकर्ता को उबंटू साइट में पर्याप्त अनुमति है) मान लें :

scp bubblegum.txt cyrex@ubuntu.com:/var/www 

:USER @ SITE और उस फ़ोल्डर के बीच ध्यान दें जहाँ आप इसे कॉपी करना चाहते हैं। यह एक है जो दोनों तत्वों को अलग करता है।

अब आप कहते हैं कि आप किसी बड़ी फ़ाइल को scp के साथ अपलोड कर रहे हैं और तब सबसे खराब होता है, दुनिया फट जाती है। आप उस फ़ाइल को सर्वर पर कैसे अपलोड कर सकते हैं। तब आपको एससीपी का बड़ा भाई, rsync (उबंटू में डिफ़ॉल्ट रूप से आता है) मिला। कई मायनों में scp और rsync एक ही काम करते हैं लेकिन यहाँ उनके बीच कुछ बड़े अंतर हैं:

  • rsync वियोग या विश्व वर्चस्व के बाद rsync या scp से छोड़ी गई आंशिक फ़ाइलों को अपलोड कर सकता है।
  • rsync प्रगति को scp से बेहतर दिखा सकता है
  • rsync अपलोड को इस तरह से अनुकूलित कर सकता है कि आप वास्तव में अपलोड पर सेकंड या मिनट बचा सकते हैं। यह अपलोड के अंत में यह भी दिखाता है कि आपने कितना बचाया है।

वैसे भी, इस मामले में scp पूरी फाइल को अपलोड नहीं कर सकता है, जहां rsync बचाव में आता है। (टिप के लिए मार्को सेप्पी के लिए धन्यवाद। उनकी टिप्पणी को वोट करें यदि आपको बिल्लियां पसंद हैं .. और / या कुत्ते)

कहते हैं कि आपने स्कैप से ऊपर अपलोड का उल्लेख किया है और यह 60% तक पहुंच गया है। अपलोड के लिए अपना समय गंवाए बिना आप उस 60% में कैसे जारी रख सकते हैं। आप ऐसा करेंगे:

rsync --progress --partial bubblegum.txt cyrex@ubuntu.com:/var/www  

यह rsync को --progressध्वज के साथ एक अच्छे मानव पठनीय तरीके से प्रगति दिखाने के लिए कहता है । यह rsync को जाँचने और जारी रखने के लिए भी बताता है जहाँ से फ़ाइल bubblegum.txt को --partialध्वज के साथ मिला है । आप -P पैरामीटर के साथ लिखने के लिए राशि को भी सरल कर सकते हैं - जो कि --progress और --partial के समान है, इसलिए उपरोक्त इस तरह दिखेगा:

rsync -P bubblegum.txt cyrex@ubuntu.com:/var/www  

तुम भी कर सकते हैं CTRL+ Cअपलोड और इसके बाद के संस्करण rsync से आदेश करके इसे फिर से शुरू। किसी भी समय किसी भी समय कुछ को फिर से शुरू करने की क्षमता रखने के लिए बहुत अच्छा है।

Rsync के लिए अधिक जानकारी के लिए जो उबंटू के साथ डिफ़ॉल्ट रूप से आता है आप निम्नलिखित टर्मिनल कमांड टाइप कर सकते हैं:

man rsync  
info rsync  
rsync --help

अब SSH के लिए एक पोर्ट निर्दिष्ट करने के लिए। इसे निर्दिष्ट करने के लिए आप इसे इस तरह से कर सकते हैं:

ssh cyrex@ubuntu.com -p PORT। उदाहरण के लिए: ssh cyrex@ubuntu.com -p 1234SSH सेवा के लिए पोर्ट 1234 का उपयोग करना। इसे कार्य करने के लिए पहले सर्वर में कॉन्फ़िगर करना होगा।

इसे कॉन्फ़िगर करने के लिए बस सर्वर में फ़ाइल खोलें ssh_config इस तरह: nano /etc/ssh/ssh_configऔर उस लाइन को बदलें जो # port 22दूसरे पोर्ट को कहती है। उस लाइन से टिप्पणी को हटाने के लिए भी याद रखें। यह इस तरह दिखना चाहिए: port 1234ऊपर के उदाहरण के लिए मामले में।

अब बस सर्वर में ssh सर्विस को रीस्टार्ट करें और आप कर रहे हैं। सेवा को पुनः आरंभ करने के लिए ऐसा करें:

sudo restart ssh

या

sudo /etc/init.d/ssh restart

NOTE - आप GUI टूल्स से SSH का उपयोग कर सकते हैं जैसे filezillaकि ftp के बजाय ssh का उपयोग करने का विकल्प प्रदान करते हैं। ssh को Ubuntu मेनू के भीतर से भी एक्सेस किया जा सकता है:

यहाँ छवि विवरण दर्ज करें

जो विंडोज शेयर, एसएसएच और एफटीपी सहित कई विकल्पों तक पहुंच प्रदान करता है :

यहाँ छवि विवरण दर्ज करें

SSH के बारे में अधिक जानकारी के लिए आप अपने Ubuntu बॉक्स में कंसोल में निम्न में से किसी एक कमांड का उपयोग कर सकते हैं:

man ssh  
info ssh  
ssh --help

सॉरी का क्या जिक्र कर रहे हैं?
लुइस अल्वाराडो

23

यदि आप Nautilus के माध्यम से सर्वर को ब्राउज़ करना चाहते हैं जैसे आप अपनी स्थानीय मशीन पर फ़ाइलों के साथ करते हैं:

  1. ओपन नॉटिलस ("होम फोल्डर")
  2. "फ़ाइल" पर जाएं -> "सर्वर से कनेक्ट करें"

    सर्वर से कनेक्ट करें

  3. "सेवा प्रकार" के तहत "SSH" चुनें

  4. "सर्वर" के तहत आईपी पता या डोमेन रखो

    SSH का चयन करें

  5. यदि आप अपने बुकमार्क में सहेजे गए स्थान को चाहते हैं, तो अपना उपयोगकर्ता नाम जोड़ें और "बुकमार्क जोड़ें" जांचें।

फ़ोल्डर को आपके लिए सही खोलना चाहिए।


Kubuntu पर एक साथ भी ऐसा ही कर सकते हैं Krusader
Adobe

6

आप sshfsअपने स्थानीय फ़ाइल सिस्टम में दूरस्थ निर्देशिका माउंट करने के लिए उपयोग कर सकते हैं ।

देखें https://help.ubuntu.com/community/SSHFS :

कमांड-लाइन उपयोग

अब, यह मानते हुए कि आपके पास रिमोट मशीन पर चलने वाला SSH सर्वर है, बस दूरस्थ निर्देशिका को माउंट करने के लिए SSHFS कमांड चलाएं। इस उदाहरण में, दूरस्थ निर्देशिका दूरस्थ मेजबान पर / परियोजनाएं हैं। स्थानीय माउंट बिंदु ~ / far_projects है।

mkdir ~/far_projects
sshfs -o idmap=user $USER@far:/projects ~/far_projects

करने के लिए,

fusermount -u ~/far_projects

इसे अपने / etc / fstab में जोड़ने के लिए,

sshfs#$USER@far:/projects /home/$USER/far_projects fuse defaults,idmap=user 0 0

ध्यान दें कि आपको fstab को संपादित करते समय $ USER को अपने लॉगिन नाम में बदलना होगा, लेकिन कमांड टाइप करते समय यह आवश्यक नहीं है (शेल उस स्थिति में आपके लिए करता है)।


4

Ssh सर्वर को पहले से ही सेट अप मानकर, एक टर्मिनल खोलें और टाइप करें:

ssh username@hostname

आपको अपने पासवर्ड के लिए संकेत दिया जाएगा; बस इसे दर्ज करें। यदि आपको पोर्ट नंबर की आवश्यकता है, तो जोड़ें -p PORTNUM


2

यदि आप विम, पिको या आदि का उपयोग कर सकते हैं, तो आप टर्मिनल का उपयोग कर सकते हैं:

ssh MYUSER@mysite.com

अपना पासवर्ड दर्ज करें, और आप वहां से हैं। यह एक नियमित टर्मिनल की तरह है, इसके अलावा आपके पास कोई जीयूआई नहीं है।

ध्यान दें, आप '-X' विकल्प जोड़ सकते हैं, और यदि आपके सर्वर में एक्स सर्वर कॉन्फ़िगर है, तो आप GUI प्रोग्राम चला सकते हैं। यदि आपने -X जोड़ा है तो बस उनका नाम लिखें और यह GUI विंडो लॉन्च करेगा।

अब, आप शायद पासवर्ड रहित लॉगिन सेट करना चाहेंगे। यदि आपके पास पहले से कोई चाबी नहीं है, तो टाइप करें ssh-keygenऔर बस सभी चूक में प्रवेश करें। फिर करते हैं ssh-copy-id MYUSER@mysite.com। एक बार ऐसा करने के बाद, बस टाइप करें ssh MYUSER@mysite.comऔर आपको अपना पासवर्ड दर्ज करने की आवश्यकता नहीं है!

यदि आपका उपयोगकर्ता नाम आपके लैपटॉप के उपयोगकर्ता नाम के समान है, तो आपको आवश्यकता नहीं है MYUSER@। आप बस कर सकते हैं ssh mysite.com। आप -l MYUSERइसके बजाय विकल्प का उपयोग भी कर सकते हैंMYUSER@

यदि आप GUI चाहते हैं, तो Nautilus ऐसा कर सकता है। ->सर्वर से फाइल कनेक्ट करें ->['एसएसएच' चुनें, फिर लॉगिन विवरण भरें] -> कनेक्ट करें।

यदि आप किसी एकल फ़ाइल को कॉपी करना चाहते हैं, तो scp [सिक्योर कॉपी] का उपयोग करें।
scp MYUSER@mysite.com:path/to/file.dat ./

यह फ़ाइल "~ / path / to / file.dat" को आपकी वर्तमान निर्देशिका में कॉपी करता है। ध्यान दें, यदि आपके पास स्लैश या टिल्ड नहीं है :, तो यह आपके होम डायरेक्टरी [जैसे ~/] में काम करेगा। यदि आप अपलोड करना चाहते हैं, तो scp ./local_file.dat MYUSER@mysite.com: यह आपके घर में डाल देगा।


0

ssh -X -C user@host nautilus --no-desktop गुई मोड में जाने के लिए :)


स्थानीय Nautilus सिर्फ एक SSH शेयर से जुड़ सकता है। यह नॉटिलस को दूरस्थ रूप से चलाने के लिए आवश्यक नहीं है। मैं वास्तव में ऐसा करने की सलाह नहीं दूंगा। रचनात्मक सुझाव, लेकिन फिर भी -1
जो-एर्लेंड सिनचस्टैड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.