እንዴት ነን?

SSH በኩል rsync ኮማንድ በሁለት ሰርቨር መካከል ትልቅ ፋይሎችን በፍጥነትና በደህንነት ማስተላለፊያ መመሪያ

  • 15 ለማንበብ ደቂቃዎች
  • የHostragons ቡድን
SSH በኩል rsync ኮማንድ በሁለት ሰርቨር መካከል ትልቅ ፋይሎችን በፍጥነትና በደህንነት ማስተላለፊያ መመሪያ

SSH በኩል rsync ትእዛዝ በሁለት ሰርቨሮች መካከል ትልቅ ፋይሎችን በፍጥነት፣ በደህና፣ እና በትንሽ ውጤት መላክ ለሚያስችል በLinux አገልግሎት የሚጠቀም በጣም ቀላል ዘዴ ነው። በተለይ በመቶዎች GB የሚሆኑ የድር ጣቢያ ፋይሎች፣ የቅድሚያ ማህደስ፣ የሚድያ ፋይሎች ወይም የመተግበሪያ ውሂብ ሲልከው rsync የተለያዩ ብሎክ ሲቀየር ብቻ እንደሚላክ ስለዚህ ከታዳጊ ቅጂ ዘዴዎች በጣም ፈጣን ውጤት ያመጣል። የመስሪያው መሰረታዊ ሃሳብ ይህ ነው፡ የመነሻ ሰርቨር ፋይሎች በSSH ቦርድ ወደ የመድረሻ ሰርቨር በመቆለፊያ ይተላለፋሉ፤ አገናኝ ቢቋረጥ ሂደቱ ከተቋረጠበት ቦታ ይቀጥላል።

የሰርቨር ማስተላለፊያ፣ hosting ማሻሻያ፣ የውሂብ ማዕከል ለውጥ ወይም የቅድሚያ ስራዎች ሲደርስ ፍጥነት እንደ ውሂብ አንድነት በጣም አስፈላጊ ነው። ትልቅ ማህደስ አንድ ክፍል ሆኖ ማውረድና እንደገና ማስገባት ሰዓት አያውጣል፣ በአገናኝ ችግርም ሁሉን ከመጀመሪያ አድርጉ ይገድባችኋል። rsync በዚህ ማዕከል ይገባል፤ የፋይል የጊዜ አክሊል፣ ፍቃድ፣ የባለቤትነት መረጃ እና የፋይል መደብ አይቀየርም። ስለዚህ የLinux ሲስተም አስተዳዳሪዎች፣ DevOps ቡድኖች እና የድር hosting ባለሙያዎች በዕለታዊ ስራዎች ብዙ ጊዜ ይጠቀማሉ።

በዚህ መምሪያ በሁለት Linux ሰርቨሮች መካከል በSSH በኩል rsync ትእዛዝ ትልቅ ፋይሎችን ለማስተላለፍ ሂደቱን በእውነተኛ ምሳሌዎች የተከተለ እንዴት እንደሚሰራ እንወያየዋለን። እንዲሁም የperformance ማሻሻያ ፓራሜተሮች፣ የደህንነት ቁጥጥር፣ የችግር ሂደቶች፣ የሙከራ ማስተላለፊያ ዘዴ እና በስራ አስፈፃሚ አካባቢ ሳትገቡ አስተያየት የሚገባውን እንካፈላለን። አዲስ VPS ወይም hosting አካባቢ ወደሚቀየሩ ከሆነ፣ ይህን መምሪያ ከተከተሉ በፊት በመነሻና በመድረሻ ሰርቨሮችዎ በቂ የዲስክ ቦታ፣ የSSH መዳረሻና የትክክለኛ የተጠቃሚ ፍቃድ እንዳለዎት ያረጋግጡ። ለተያያዘ የተስፋፋ መረጃ ለሚፈልጉ Hostragons VPS ሱኒኩ መፍትሄዎች እና Linux ሆስቲንግ ጥቅሶች ገጾችን ይመልከቱ።

rsync ምንድነው? ትልቅ ፋይሎች ለመንቀሳቀስ ለምን ይመረጣል?

rsync በአካባቢ ሲስተም ወይም በሩቅ ሰርቨር መካከል ፋይሎችንና ዳይሬክቶሪዎችን ለማስተካከል የሚያገለግል በጣም ጠንካራ የትእዛዝ መስመር መሳሪያ ነው። ከፍተኛው ባለቤት የመረጃ ለውጥ (delta transfer) አልጎርይተም ነው። ይህ አልጎርይተም፣ ፋይሉን በሙሉ ከድጋሚ ለመላክ በፊት የተለወጡትን ክፍሎች ብቻ ይላካል። ለምሳሌ፣ 80 GB ያለው የቅድሚያ ፋይል ውስጥ 2 GB ብቻ ከተለዋወጠ፣ በተገቢ ሁኔታዎች ፋይሉን በሙሉ ከእንደገና ለመንቀሳቀስ በስተቀር የተለዋወጡትን ብሎኮች ብቻ መላክ ይቻላል።

SSH ደግሞ ስርጭቱን ይዘምናል። ስለዚህ rsync ትእዛዝ ከድር ላይ ሲላከ የፋይሉን ውስጥ በቀጥታ ጽሑፍ አይላከም። ይህ ባህሪ በተለይ የደንበኞች መረጃ፣ የኢ-ንግድ ትዕዛዝ መዝገቦች፣ የሚዲያ አርክብ፣ የዳታበይስ ቅድሚያዎችና የተለያዩ መተግበሪያ ፋይሎች ለመጠበቅ በጣም አስፈላጊ ነው። በHosting ዓለም ውስጥ የመረጃ ደህንነት በSSL ሰርቲፍኬት ብቻ አይገደብም፤ መላክ ከሰርቨር ወደ ሰርቨር የሚደረግ ጣቢያም ደህንነት አለበት። ለድር ጣቢያ ትራፊክ SSL የማስረጃ ይዘት በሚጠቀምበት እንደሆነ፣ በሰርቨር መካከል የፋይል ስርጭትም በSSH ማዝጋት ይመከራል።

rsync ከFTP ወይም ከእርስዎ በእርስዎ ማውረድ-ማስገባት ዘዴዎች ይልቅ ይበልጥ ተስማሚ ነው። ፋይሉን ፍቃዱን ማስቀመጥ ይችላል፣ ሰምቦሊክ ሊንክን ማስተካከል ይችላል፣ የተሰረዙ ፋይሎችን በመድረስ ያሰርዳል፣ የባንድዊድ ግዴታ ያውጣልና ከስርጭት በፊት የሚደረገውን ማረጋገጥ ይችላል። ትልቅ ፋይሎች ለመንቀሳቀስ ያሉ አደጋ ስራዎች ላይ ይህ የቆጣሪ ደረጃ በጣም አስቸጋሪ ጥቅም ያስገኛል።

ምን ጊዜ SSH በመጠቀም rsync ትእዛዝ ማድረግ አስፈላጊ ነው?

SSH በመጠቀም rsync ትእዛዝ በትልቅ የሆኑ፣ ብዙ፣ ወይም በአንደኛ ጊዜ የሚቀየሩ ፋይሎችን ለመቀየር ምርጥ መፍትሄ ነው። ለቀላል የምስል ፋይሎች ክፍል በእጅ የሚሰራ SFTP ብቻ ይበቃል፤ ነገር ግን ሺዎች ፋይሎች፣ የተለያዩ ፈቃዶች እና ትልቅ አርክብ ሲኖሩ rsync በጣም የሚታመን አማራጭ ይሆናል።

  • ከአሮጌ ሰርቨር ወደ አዲስ VPS ሰርቨር ድር ጣቢያ ብቻ ብቻ ታያችሁ ቀየሩ።
  • እንደ WordPress uploads ክፍል ብዙ ሚዲያ ፋይሎች ያሉበትን ዲሬክቶሪ ካስተናገዱ።
  • የቀን፣ የሳምንት ወይም የወር yedeği ወደ ሌላ ሰርቨር ቅዱም ብቻ ቀየሩ።
  • የዳታ ማዕከል ወይም hosting sağlayıcı ለመቀየር ታያችሁ ፃፉ።
  • የመተግበሪያ ፋይሎችን በመስመር ላይ እና በቅዱም አካባቢ የሚያሳስቡ ቅዱም ብቻ ቀየሩ።
  • በረዘም ጊዜ የሚከናወኑ ማስተላለፍ የተቋረጡ አገናኝ ሊኖሩ ከሚችሉበት ጊዜ የማዕከል ዝርዝር ቅዱም ብቻ ቀየሩ።

ለምሳሌ፣ 250 GB የሚሆን የሚዲያ ክፍልን ወደ ማዲስ ኮምፒውተር ማውረድ እና በኋላ ወደ አዲስ ሰርቨር መስቀል ሁለት የተለያዩ ማስተላለፍ ማድረግ ማለት ነው። ይህ ጊዜውን ያንጣጣል እና የቤት ወይም የቢሮ ኢንተርኔት ግንኙነትዎ በግፊት ይገባል። rsync በመጠቀም በምንጭ ሰርቨር እና በተወሰነ ሰርቨር በቀጥታ ማስተላለፍ ይችላሉ እና ይህን ተጨማሪ ደረጃ ያስወግዳል።

መጀመሪያ ሊያስፈልጉ የሚችሉ ነገሮች

በ rsync ኦፕሬሽን የሚካሄድ ስኬታማ ስራ ለማሳካት ብቻውን ትእዛዝን ማወቅ በቂ አይደለም። የውስጥና የውጭ ሰርቨር ሁኔታዎችን መገምገም ከሚካሄድ ስራ ውስጥ የውስጥ ውስጥ ውጤት ያጣ ወይም ባለበት መቀበል አደጋዎችን ሊቀንስ ይችላል። በተለይ በመድረክ ውስጥ የሚሰራ ስራ ላይ የሚካሄዱ ቅንብሮችን ማድረግ አስፈላጊ ነው።

1. የ SSH መድረሻን ያረጋግጡ

የመላኪያ ሰርቨር ወደ የተቀበለው ሰርቨር SSH ግንኙነት ሊቀርበው አለበት። የተለመደ ግንኙነት እንዲህ ማረጋገጥ ይቻላል፡ ssh ተጠቃሚ@ተቀበለው-ሰርቨር-ip። ከ SSH በተለየ ፓርት ከሚሰራ ከሆነ እንደዚህ ይሞክሩ፡ ssh -p 2222 ተጠቃሚ@ተቀበለው-ሰርቨር-ip። ይህ ሙከራ ከሳካ ከሆነ rsync ስራ አይሆንም። የአደጋ ግንዛቤ ፋይል ፡ Fail2ban፡ SSH ፓርት፡ የተጠቃሚ ፍቃድ፡ የይለፍ ቃል ወይም ቁልፍ ማረጋገጫን ማረጋገጥ አስፈላጊ ነው።

2. rsync ፓኬት የተጫነ መሆኑን ያረጋግጡ

በአብዛኛው Linux ዝርያዎች rsync ተጫንቷል፤ ነገር ግን መረጋገጥ ያስፈልጋል። በDebian እና Ubuntu የተመሰረቱ ሲስተሞች rsync --version ትእዛዝ ይጠቅማል። ከተጫነ ከሆነ apt install rsync ከተጫነ ከሆነ። AlmaLinux፣ Rocky Linux ወይም CentOS በ dnf install rsync ወይም yum install rsync ይቻላል። Hostragons ላይ Linux የተመሰረተ VPS ብቻውን በዝግጅት ጥቂት ሰከንዶች ውስጥ ይጫነዋል።

3. የዲስክ ቦታን ያስቀድሱ

በተቀበለው ሰርቨር በቂ ባዶ ቦታ ከሌለ ተላላፊው ስራ ሊቆም ይችላል። የመላኪያ ፋይል መጠን ለማየት du -sh /መላኪያ/ፋይል እንደዚህ ይጠቀሙ። በተቀበለው df -h በትክክል የዲስክ ሁኔታን ያዘዝ። በተግባር፣ ቦታ ለፋይል ብቻ ሳይሆን፣ ለተጨማሪ ፋይሎችና ሎግ ያስቀድሙ። ለምሳሌ፣ 500 GB የሚከፈሉ ቢሆን፣ በተቀበለው ቢያንስ 550-600 GB ቦታ ማቅረብ ይመከራል።

4. አስፈላጊ አገልግሎቶችንና የሚለዋዋጡ ፋይሎችን ያዘጋጁ

በቀጥታ የሚሰሩ ድህረገፆች ላይ ፋይሎች በተላላፊው ስራ ላይ ሊቀየሩ ይችላሉ። በተለይ የተጠቃሚ አስገባዎች፣ cache ፋይሎችና ሎግ ፋይሎች ዘወትር ይቀየራሉ። በትልቅ አስተላላፊያዎች፣ ዋናው ውሂብ ይቀያይራል፣ በኋላ ሰብስ ሞድ ላይ በማዋል በምትላላፊው አንደኛ ይሰራል። እንዲሁም የተቋረጠ ጊዜ ወደ ደቂቃዎች ሊቀንስ ይችላል። ለ WordPress ድህረገፆች WordPress ይዘት ማስከተል መመሪያ ያሉ የድጋፍ ቁልፎችን በመጠቀም የእርስዎን የስራ ዕቅድ ሊጨምሩ ይችላሉ።

የመሠረት rsync ትእዛዝ፡ ፊርማዎች በሁለት ሰርቨር መካከል መቀየር

በጣም ተስማሚ የሆነ መሠረት አይነት rsync ትእዛዝ እንዲህ ነው፡ rsync -avz /መነሻ/ዲረክቶሪ/ ተጠቃሚ@መድረሻ-ip:/መድረሻ/ዲረክቶሪ/. ውስጥ -a ማህደር ሞድ ነው፣ ይህም ፍቃድ፣ ጊዜ ማህደር፣ ምስክር አገናኝቶች የተመሳሳይ መረጃዎችን ይጠብቃል። -v ዝርዝር ውጤት ይሰጣል። -z ሲሆን በማቀያያ ላይ መጠንቀቅ ይደርሳል። በዲረክቶሪ መጨረሻ የሚገኘው ሰውስል በጣም አስፈላጊ ነው። /መነሻ/ዲረክቶሪ/ ሲቀርበው ዲረክቶሪው ያለበት ውስጡ ይቅድማል፤ /መነሻ/ዲረክቶሪ ሲቀርበው ዲረክቶሪው ራሱ በመድረሻ ውስጥ ይፈጠራል።

ምሳሌ ህንድም እንደሚሆን፡ በድሮ ሰርቨር /var/www/site/public_html/ ዲረክቶሪ ውስጥ ያለው 180 GB የድር ፋይል ወደ አዲስ ሰርቨር /var/www/site/public_html/ ዲረክቶሪ ማስተናገድ ማጣራት ይፈልጋሉ። ትእዛዝ እንዲህ ይሆናል፡ rsync -avz /var/www/site/public_html/ root@203.0.113.20:/var/www/site/public_html/. ይህ ሂደት ፋይሎቹን ከመነሻ ሰርቨር ወደ መድረሻ ሰርቨር SSH በኩል ያስተላልፋል።

root አንተጠቀም ብትለው፣ በመድረሻ ሰርቨር ላይ የተስተካከለ ፍቃድ ያለው ልዩ ተጠቃሚ ማቅረብ ይበልጥ ደህንነት ያላቸው ነው። ለምሳሌ deploy ተጠቃሚን በመጠቀም እና የእሷን ዲረክቶሪ ባለቤትነት በዚህ መሠረት ማስተካከል ይችላሉ። በምርት አካባቢ በቀጥታ root የሚጠቀሙ ሊሆን ይችላል፣ ነገር ግን ለደህንነት የተገደበ ፍቃድ ያለው ተጠቃሚ ማድረግ ይመከራል።

ተመከሩ የተሻለ እና የተረጋጋ rsync አማራጮች

በትልቅ ፋይል ማስተላለፊያ ሁኔታዎች የመሰረታዊ ትዕዛዝን ብቻ መጠቀም ሁልጊዜ ትክክል አይደለም። በድህረ ለውጥ ማቋረጥ፣ ከፍተኛ ፋይሎች፣ የትክክል ማጥፋት ወይም የዘግይት አውታር የተነሳ ተጨማሪ አማራጮች ይያዙ። ከታች የታሰረ ትዕዛዝ በብዙ እውነተኛ ማስተላለፊያ ሁኔታዎች የተሻለ መጀመሪያ ነው፦

rsync -aHAXv --numeric-ids --partial --progress --append-verify -e ssh /kaynak/dizin/ kullanici@hedef-ip:/hedef/dizin/

በዚህ ትዕዛዝ -a የarchive mode ነው፣ -H የhard link መረጃን፣ -A ACL ፍቃድን፣ -X የextended attributesን የማስቀመጥ ሚና ያለው ነው። --numeric-ids የተጠቃሚ እና ቡድን ስም ሳይሆን ID እንዲሁ ይያዙ፤ በተለያዩ ሰርቨሮች ላይ የተጠቃሚ ስም በሚቀየርበት ጊዜ ይጠቅማል። --partial ያልተጨረሱ ፋይሎች ያቆያል። --progress የማስተላለፊያ ሁኔታን ያሳያል። --append-verify ደግሞ በትልቅ ፋይሎች ላይ ከቀድሞው እየቀጠለ ሲሰራ የተጨመረውን ክፍል ማረጋገጥ ይረዳዋል።

ሁሉም አማራጮች በሁሉም ሲስተሞች አይደለም የሚያስፈልጉ። ለምሳሌ ቀላል የWeb ሳይት ማስተላለፊያ ላይ -aHAX ብቻ ይበቃል፣ ነገር ግን በተለያዩ ፋይል ፍቃድ በሚጠቀሙ መተግበሪያዎች ACLና extended attribute መረጃ ማስቀመጥ አስፈላጊ ይሆናል። ስለዚህ በመጀመሪያ የፈተና ማስተላለፊያ ማድረግ አስፈላጊ ነው።

በተለየ SSH ፖርት ሲጠቀሙ ትእዛዝ እንዴት መሆን አለ?

ለደህንነት SSH ፖርት 22 አይደለም በሌላ ፖርት ሊሰራ ይችላል። በዚህ አይነት አጠቃቀም rsync ውስጥ SSH ፓራሚተር ማስቀመጥ ያስፈልጋል። ምሳሌ፡ rsync -avz -e ssh -p 2222 /kaynak/dizin/ kullanici@hedef-ip:/hedef/dizin/. ነገር ግን በትእዛዝ መስመር -e ፓራሚተሩን ከሌላ አካል ጋር አንድ ማድረግ አስፈላጊ ነው። ትክክለኛ አጠቃቀም እንደዚህ ይሆናል፡ rsync -avz -e 'ssh -p 2222' /kaynak/dizin/ kullanici@hedef-ip:/hedef-ip:/hedef/dizin/.

JSON እና አንዳንድ ፓነሎች ውስጥ በአንድ ላይ ትንታኔ ማድረግ ምናልባት በተለየ ሁኔታ ይሰራ ስለሆነ፣ በterminal በቀጥታ ሲታተፍ ትንታኔዎቹ ትክክለኛ እንደሆኑ ያረጋግጡ። በSSH key ሲቀጥሉ -i ፓራሚተር ይጨምር፡ rsync -avz -e 'ssh -p 2222 -i /root/.ssh/id_rsa' /kaynak/dizin/ kullanici@hedef-ip:/hedef/dizin/. ይህ ዘዴ በአውቶሜሽን እና cron የተመሰረቱ ቅድመ ቅጂ ስራዎች ላይ ብዙውን ጊዜ ይጠቀማል።

ማቅረብ ቀደም ሲል ሙከራ: --dry-run አጠቃቀም

ትልቅ የመረጃ እንቅስቃሴ ከመጀመሪያ በፊት እንደ ፕሮፌሽናል የሚደረገው አንዱ እሴት --dry-run አጠቃቀም ነው። ይህ ፓራሜትር ፋይሎችን በእውነት አይቅድም፤ ምን አይነት ፋይሎች እንደሚተላለፉ ብቻ ያሳያል። በዚህ መንገድ የተሳሳተ የፋይል መድረሻ፣ የማይደርስ አድራሻ ወይም ያልተጠበቁ መሰረዛዎች አስቀድሞ ሊገነዘቡ ይችላሉ።

የሙከራ ትእዛዝ ምሳሌ፡ rsync -avz --dry-run /var/www/site/ kullanici@hedef-ip:/var/www/site/. በውጤቱ የሚያተላለፉ ፋይሎች፣ የሚመለከቱ የፋይል መድረሻዎች እና የግምገማ ማጠቃለያ የሚታዩበት ነው። --delete ፓራሜትርን ለመጠቀም ከተፈለገ ግን dry-run አስፈላጊ ይሆናል። ይህ ምክንያት --delete በምንጭ የሌለውን ፋይሎች በመድረሻ ሊሰርዝ ይችላል። በትክክል ስትጠቀም መድረሻውን በምንጭ አንፃፃፅ ያደርጋል፤ በተሳሳተ የድርሻ ቦታ ስትሰራ ግን ክብደት ያለው የመረጃ አጣሪ ያስከትላል።

የፕሮፌሽናል የስራ ቅደም ተከተል በተለምዶ እንዲህ ነው፡ መጀመሪያ SSH ሙከራ ይደረጋል፣ ከዚያ የዲስክ ቦታ ይቆጠራል፣ በኋላ rsync --dry-run ይቀየራል፣ በትንሹ የፋይል መድረሻ በትክክል የሚሆነው ሙከራ ይሰራል፣ ከዚያ ዋናው ማቅረብ ይጀምራል። ይህ መንገድ በጥቂት ደቂቃዎች ተጨማሪ የወሰደ ስለሆነ የተሳሳተ ማቅረብ ሰዓታት የሚጠየቅ ስራ እንዳይፈጠር ይከላከላል።

የአፈጻጸም ማሻሻያ ፣ ባንድ ውስብስብና የምስጢር ማዋቀር ማስተካከያዎች

rsync አፈጻጸም ብቻ በፋይል መጠን አይወሰንም። የሰርቨሩ የCPU ኃይል፣ የዲስክ አይነት፣ የአውታረ መረብ ቆሻሻ፣ ባንድ ውስብስብና የፋይል ብዛት ሁሉም አስፈላጊ ናቸው። ብዙ ትንሽ ፋይሎች ከአንድ ትልቅ ፋይል ይልቅ የሚዘጋጁት ይዘገያል፤ ይህም ለፋይል እያንዳንዱ የሜታዳታ ሂደቶች ስለሚፈጸሙ ነው። በNVMe ዲስክ ያለው VPS አካባቢ የፋይል መቃኘትና መፃፊያ አፈጻጸም በግልጽ ሁኔታ ይሻሻላል። ስለዚህ ብዙ ፋይል ማስተላለፊያ የሚያወድሱ ከሆነ NVMe VPS ሰነዱ አማራጮችን ማስተዋወቅ የሚገባው ነው።

-z የማሻሻያ ፓራሜተር በጽሁፍ ፋይሎች፣ log ፋይሎችና በአንዳንድ ቅድሚያ የተዘጋጁ ፋይሎች ውስጥ በጣም ይጠቅማል። ነገር ግን ቀድሞ የተጨነቁ zip, tar.gz, jpg, mp4 ወይም gzip ፋይሎች ላይ የCPU አቋም ብዙ ሲወጣ የተቀረ አፈጻጸም አይሰጥም። 1 Gbps ግንኙነት ያላቸው ሁለት Hostragons ሰርቨሮች መካከል ትልቅ ሚዲያ ፋይሎችን ሰርቨሩ የሚያስተላለፉ ከሆነ -z አሳስተው የተሻለ አፈጻጸም ያግኙ ይችላሉ። ይሁንና በታች ባንድ ውስብስብና በጽሁፍ ባለው ፋይል ላይ -z በጣም የተሻለ ትካሽ ያስገኛል።

ባንድ ውስብስብን ለመገደብ --bwlimit ይጠቀሙ። ለምሳሌ --bwlimit=50000 ግምት 50 MB/s ያህል ግዴታ ይጨምራል። ይህ በህይወት Hostragons ድር ጣቢያ የአውታረ መረብ ትራፊክ አይታመም ዘንድ አስፈላጊ ነው። በአስፈላጊ ሰዓት በምርት ሰርቨር ፈጣን የማስተላለፊያ ሂደት የጥገና ተጠባባቂነትን ሊያሳድግ ይችላል። ማስተላለፊያውን በለሊት ሰዓት ማድረግ፣ ባንድ ውስብስብን ማስገደብና በሂደቱ ጊዜ load average እንደ WordPress, SSL, DNS, CDN, LCP, CLS, TTFB ያሉ አፈጻጸም እንዲያዩ ይህ ጥሩ ልምድ ነው።

rsync, scp, SFTP እና FTP ማወዳድ እና ምርጫ

rsync, scp, SFTP እና FTP ማወዳድ እና ምርጫ

የፋይል ተያያዥ መንገዶች ብዙ አሉ፤ ነገር ግን እያንዳንዱ ያለው ጥራትና ክፍል የሚለያዩ ጠንካራ እና ደካማ አይነቶች አሉት። በሰንዴው ታቦል ታላቅ ፋይል ወይም ሰርቨር ተያያዥ ስነዎች ውስጥ የተሻለው መሣሪያ እንዴት እና መቼ እንደሚያገለግል የሚያሳይ ጥቅም አለው።

rsync, scp, SFTP እና FTP ማወዳድ እና ምርጫ
መንገድደህንነትበትክክል ማቆም እና መቀጠልታላቅ ፋይል አፈጻጸምተጠቃሚ አስተዋጽኦ
rsync + SSHከፍተኛጥሩአስደናቂሰርቨር ትንበያ, ምርት ቅድሚያ, ሰንክሮናይዜሽን
scpከፍተኛየተገደበመካከለኛትንሽ ፋይሎች ፈጣን ቅጂ
SFTPከፍተኛበአይነቱ አገልጋይ የተገደበመካከለኛበእጅ ፋይል አስተዳደር
FTPዝቅተኛበአይነቱ አገልጋይ የተገደበተለዋዋጭደህንነት አስፈላጊ ካልሆነ ድሮ ስርዓቶች

ከሰንዴው ታቦል ውስጥ rsync በበደም ሰንክሮናይዜሽን እና ታላቅ ዳታ ተያያዥ ስነዎች ውስጥ ዝቅተኛ ይሆናል። scp ቀላልና ተጠቃሚ ነው፤ ግን በተለያዩ ፋይሎች ስርዓት ማስታወቂያ ላይ rsync ያለውን ብርቱካና አይደለም። FTP ደግሞ ምንም አይነት ምስጢር የሌለው ከሆነ በዘመናዊ ደህንነት መስፈርቶች ላይ ተግባራዊ አይደለም። በሆስቲንግ ፓነሎች FTP መዳረሻ ይህል ተጠቃሚ ሊሆን ይችላል፤ ግን በሰርቨር ውስጥ ወደ ሰርቨር አስፈላጊ ተያያዥ ስነዎች ላይ SSH መሠረት ያላቸው መንገዶች መመርጠት ያስፈልጋል።

በቀጥታ የድር ጣቢያ እንቅስቃሴ ለማካሄድ የሚጠቀሙ ምሳሌ የስራ ሂደት

የድር ጣቢያን ከድሮ ሰርቨር ወደ አዲሱ ሰርቨር ሲያንቀሳቅሱ ዓላማው ብቻ ፋይሎችን መቅዳት አይደለም። DNS, የመረጃ ቋት, SSL, PHP ዓይነት, የፋይል ፍቃድና የኢሜል አዋቂነትም በጥልቅ መቆጣጠር ያስፈልጋል። ከታች ለትልቅ ፋይሎች ያለው ድር ጣቢያ ዝቅተኛ መቆለል ያለው የስራ ሂደት አሳየናል።

  • በአዲሱ ሰርቨር web server, PHP, የመረጃ ቋትና የሚያስፈልጉ ሞጁሎችን ያዘጋጁ።
  • የድር አድራሻው DNS TTL ዋጋን ከማንቀሳቀስ በፊት ወደ 300 ሰከንድ የሚመስል ዝቅተኛ እሴት ያውጡ። ለድር ስም አስተዳደር ዶማይን መረጃ ጥያቄ እና ዶማይን አስተዳደር ገፅን ይጠቀሙ።
  • የመጀመሪያ rsync እንቅስቃሴን ሳይት በቀጥታ ሲሰራ ያስጀምሩ። ይህ ክፍል የትልቅ መረጃ አብዛኛውን ያንቀሳቅሳል።
  • የመረጃ ቋት ቅጂ ያውጡና ወደ አዲሱ ሰርቨር ያንቀሳቅሱ።
  • ሳይትን ለአጭር ጊዜ በማትናናት ሞድ ያውጡ።
  • በሁለተኛ rsync ትእዛዝ የተለዋዋጩ የመጨረሻ ፋይሎችን ያካትቱ።
  • የመረጃ ቋቱን እንደገና ያዘምኑ ወይም incremental ስትራተጂ ይጠቀሙ።
  • በአዲሱ ሰርቨር የፋይል ፍቃድ, የሳይት ክፍት ሁኔታና ሎጎችን ያረጋግጡ።
  • SSL ሰርቲፍኬትን ያትሙ ወይም ያዘምኑ። ለዚህ SSL ምርት ኮርታት ይዘት ደግሞ የሚያገዝ ሊሆን ይችላል።
  • DNS መዝገቦችን ወደ አዲሱ IP አድራሻ ይጠቅልሉ።

በዚህ ዘዴ የትልቅ ፋይል እንቅስቃሴ በሳይት በቀጥታ ሲሰራ ስለሚደርስ የዝርዝር መቆለል በመጨረሻ ስንኳና DNS መቀየር ላይ ብቻ ይሆናል። ትልቅ የሚዲያ አርአያ Hostragons ወይም WordPress ሳይቶች ይህ ዘዴ የሚቆየውን ሰዓታት የመቆለልን ወደ ጥቂት ደቂቃዎች ሊያወርድ ይችላል።

የውሂብ አንድነትን መምረም

ትራንስፎርም በጨረሰ ጊዜ እንደ ተሳካ ብቻ መሆኑ አበቃበት አይደለም። የፋይል ቁጥር፣ መጠንና አስፈላጊ ፋይሎች መምረም ያስፈልጋል። በቀላሉ ለመምረም፣ በመምከቻና በተደላይ du -sh ኮማንድ ይጠቀሙ እና የዲዝን መጠኑን ይከናወኑ። ነገር ግን ምናልባት በፋይል ሲስተም ቦሎክ ልዩነት የተነሳ የተመጣጠኑ አትታዩም። ዝርዝር ምረም ለማድረግ rsync በተመሳሳይ ፓራሜትር እንደገና ይሰራ። ከተጨመሩ ፋይሎች በትንሹ ካልቀሩ ውጤቱ አነስተኛ ይሆናል።

የChecksum ማረጋገጫ ለማድረግ rsync -avc --dry-run /kaynak/dizin/ kullanici@hedef-ip:/hedef/dizin/ ይጠቀሙ። አንደኛው -c ፓራሜትር ፋይሎችን በየዘመና ምልክትና መጠን ብቻ ሳይኖረው በchecksum ይከናወናል። ትልቅ ውሂብ ላይ የCPUና የዲስክ ጭነት ሊያስገኝ ስለሚችል በጥንቃቄ ይጠቀሙ። አስፈላጊ አርክቪዎች፣ የDatabase dump ፋይሎች ወይም የደንበኞች ሰነዶች እንደዚህ ተጨማሪ ማረጋገጫ የታመነ ይሆናል።

ድር ጣቢያ ካትረፈበት በመተግበሪያ ደረጃም ምረም ያድርጉ። የመነሻ ገፅ፣ የአስተዳደር ፓነል፣ የምስል አስገባት፣ የመክፈያ ገፅ፣ የእውቂያ ፎርምና የስህተት ሎግ ይመረምሩ። በE-commerce ጣቢያዎች የፋይሎችን ብቻ መስቀል አበቃበት አይደለም፤ የክፍያ ኢንተግሬሽኖችና cron ተግባራትም በአዲሱ ሰርቨር ይሞክሩ።

የተለመዱ ስህተቶች እና መፍትሄዎቻቸው

Permission denied ስህተት

ይህ ስህተት ብዙውን ጊዜ SSH የተጠቃሚ ፍቃድ፣ የመዳረሻ ፋይል ማውጫ የመተዳደር ፍቃድ ወይም የkey ማረጋገጫ ችግር ምክንያት ሆኖ ይታያል። በመጀመሪያ በተመሳሳይ ተጠቃሚ ሁኔታ የቀድሞውን SSH ግንኙነት ለማድረግ ይሞክሩ። ግንኙነቱ አሳካሪ ከሆነ በመዳረሻው ፋይል አንድ ፋይል ለመፍጠር ሙከራ ያድርጉ። የሚያስፈልገውን ተጠቃሚነት የዋናው ፋይል ማውጫ ባለቤትነትን chown በመጠቀም ይስጡ; ወይም sudo የተያያዘ ዘዴ ይዘው ይወጡ።

No space left on device ስህተት

በመዳረሻ ዲስክ ቦታ በቂ ሳይኖረው የማስተላለፊያ ሂደት ይቆራረጣል። df -h በመጠቀም የዲስክ ክፍሎችን ይመርምሩ። አንዳንድ ጊዜ ዋና ዲስክ መሞላት አይደለም፤ ነገር ግን /tmp ወይም የመዳረሻ መያዣነት ክፍል ሞልቶ ሊሆን ይችላል። በትልቅ የማስተላለፊያዎች ውስጥ log ፋይሎች፣ አሮጌ ቅድሚያዎችና cache ማውጫዎች ይሰርዙ። ዘላቂ መፍትሄ ለማግኘት ዲስክ አበልጠው ወይም የበለጠ አቅም ያለው VPS እቅድ ይምረጡ።

Connection reset ወይም Broken pipe ስህተት

በረዘም ጊዜ የሚቆይ ማስተላለፊያዎች ውስጥ የአውታረመረብ ቁልፍ ሊቀድት ይችላል። --partial እና --append-verify በመጠቀም ከቆረጡበት ቦታ በመቀጠል ትእዛዝውን ድጋሚ ያከናውኑ። እንዲሁም የSSH keepalive ቅንብሮች ሊረዱ ይችላሉ። በአቃፊ ተጠቃሚ በኩል ServerAliveInterval 60 ያለ ቅንብር በያዝ በሚቆይ ጊዜ እንዳይቆረጥ ይረዳል።

በጣም የቆየ ማስተላለፊያ

የማስተላለፊያ ዘግይተኛ አባላት የፋይሎች ብዛት፣ የዲስክ I/O ገደብ፣ የጭቅግ ስራ ወይም የአውታረመረብ አቅም ምክንያት ሊሆን ይችላል። ብዙ ትንሽ ፋይሎች ከሚኖሩ tar የፋይል አብራሪ መፍጠር በአንዳንድ ሁኔታዎች የሚያሳካ ሊሆን ይችላል፤ ነገር ግን በዚህ ሁኔታ rsync የፋይል የተለያዩ ለውጦች ትርጉም ይቀንሳል። ትልቅ እና ቀድሞውኑ የተጭቅግ ፋይሎች ላይ -z ፓራሜተር በመውሰድ ሙከራ ያድርጉ። እንዲሁም iotop, htop እና iftop አይነት መሣሪያዎችን በመጠቀም ይደግፉ የግደታው CPU, ዲስክ ወይም አውታረመረብ ደረጃ እንደሆነ ያገኙ።

የእርስዎን የጥሩ ደህንነት ልምዶች

በአስተላላሊ ማስተናገድ ላይ የፋይል እንዲያውል ሲደርስ ደህንነት ማንሳት አይገባም። በተለይ የroot መዳረሻ፣ SSH ቁልፎችና የቅድሚያ ፋይሎች በጣም ከባድ ይቆጠራሉ። ከመጀመሪያ የፓስዎርድ መግቢያ በኩል የSSH ቁልፍ መጠቀም ይመከራል። የቁልፍ ፋይሎች ፍቃድ መጠን አድርጉ፣ የግል ቁልፎችን አትካፈሉ፣ በተቻለ መንገድ በpassphrase ይጠብቁ።

ለተላላኪ ስራ በጊዜያዊ ተጠቃሚ መፍጠርና በሚያስፈልጉ ዳይሬክቶሪዎች ብቻ መድረሻ ማቅረብ ጥሩ ዘዴ ነው። ስራው ከተጠናቀቀ በኋላ የዚህ ተጠቃሚ ፍቃዶች ሊወገዱ ወይም አካውንቱ ሊዘጋ ይችላል። የSSH መዳረሻን በተወሰኑ IP አድራሻዎች ማስገደብ የመድረሻ አካባቢን ያሳጣል። የfirewall ህጎች፣ Fail2ban እና የቅርብ ዘመናዊ OpenSSH ቅጂ አስፈላጊ መቆጣጠሪያዎች በዋናነት አለ።

የDatabase dump ፋይሎች፣ የደንበኞች ሰነዶች ወይም የግል መረጃ የያዙ ቅርጸ ፋይሎች በመቀየር ከተጠናቀቀ በኋላ በምንጭና በመድረሻ ያልወሰኑ ጊዜያዊ ፋይሎች አጽዳ። እንዲሁም በweb root ዳይሬክቶሪ በታች .sql, .zip ወይም .tar የሆኑ የቅድሚያ ፋይሎችን ማቅረብ ከባድ የደህንነት አደጋ ያመጣል። እነዚህ ፋይሎች በweb መድረሻ የተዘጉ ዳይሬክቶሪዎች ውስጥ ይቆዩ ወይም ስራው ከተጠናቀቀ በኋላ ይሰርዙ።

ኦቶማቲክ ቅጂ ለማድረግ rsync መጠቀም

rsync ብቻ አንድ ጊዜ ማንቀሳቀስ ለማድረግ ሳይሆን፣ በደንብ ቅጂ ለማድረግም ይሰራል። ለምሳሌ፣ ሁሉንም ሌሊት የተወሰነ ፋይል አድራሻን ወደ ቅጂ ሰርቨር ለማስተናገድ cron ተግባራትን ማቅረብ ይቻላል። በዚህ ሁኔታ፣ በSSH ቁልፍ ያለ ፓስዎርድ እና ደህንነት የተጠበቀ ግንኙነት ይፈጠራል፣ rsync ለውጦች ብቻ ያያያዝ፣ እና የባንድዊድ ግዴታ ሊደግፍ ይችላል።

ምሳሌ መርህ፡ rsync -a --delete --bwlimit=30000 /var/www/site/ backup@yedek-ip:/backup/site/. ይህ ትዕዛዝ የመድረሻ ፋይል አድራሻን ከምንጭ ጋር ሊያስተካክል ይችላል። ነገር ግን --delete ፓራሜትር ምክንያት በጥንቃቄ ማጠቀም ይገባችሁ። በስተቀር የተሰረዙ ፋይሎች በምንጭ ላይ ሲሰሩ፣ በመድረሻ ላይ ደግሞ ይሰርያሉ። ስለዚህ፣ ስለቅጂ አስፈላጊ ፋይሎች፣ snapshot፣ የቀን ፋይል አድራሻዎች፣ ወይም በversioning የተደገፈ መፍትሄ ማድረግ ይመከራል።

በHosting ኦፕሬሽን ውስጥ 3-2-1 የቅጂ መርህ ጥሩ መሰረታዊ ነው፡ ትክክለኛው ውሂብ ቢያንስ 3 ቅጂ፣ በ 2 በተለያዩ አካባቢዎች፣ 1 ቅጂ በተለያዩ ቦታ ይጠባበቃል። rsync ይህን መርህ በሰርቨር መካከል ቅጂ ማድረግን በቀላሉ ያደርጋል። በHostragons ውስጥ የአስፈላጊ አውትሄ ለማግኘት ወቅታዊ እንደ ተወካይ መደበር እና የድርጅት ሆስቲንግ አገልግሎቶች ማይክሮግራፎቹን በመከታተል የቅጂ ዕቅድዎን ማጠናከር ትችላላችሁ።

የመጨረሻ ዝርዝር የምርመራ ዝርዝር

ትልቅ ፋይል እንዲተላለፍ በመጀመሪያ ይህ አጭር ዝርዝር መተግበር የስህተት እድሉን ያቅናል። ይህ ዝርዝር በፍላጎት አካባቢዎች እንደ መደበኛ ሂደት መሆን አለበት።

  • በንግድና በመድረሻ ሰርቨር rsync ተገናኝቷል?
  • SSH ግንኙነት በትክክል ተጠቃሚና ፖርት ተፈተናል?
  • በመድረሻ ሰርቨር በቂ የዲስክ ቦታ አለ?
  • የመጀመሪያ ሂደት --dry-run አስተሳሰብ ተደርጓል?
  • ለቀጥታ ሳይት የጥገና ሞድና የመጨረሻ ስንክሮናይዜሽን ተዘጋጅቷል?
  • --delete አጠቃቀም ከተወሰነ መንገድ በትክክል ተረጋግጧል?
  • ከተላለፍ በኋላ የፋይል መጠን፣ ፍቃድና የመተግበሪያ ሙከራ ይተገበራል?
  • ጊዜያዊ ቅድሚያና dump ፋይሎች በደህና ይጠባበቃሉ?

እነዚህ ምርመራዎች ቀላል ቢመስሉም በእውነተኛ ህይወት በጣም የሚታዩ ችግሮች ብዙውን ጊዜ የተሳሳተ የመድረሻ ፋይል አድራሻ፣ የፍቃድ ጉድለት፣ የዲስክ ቦታ በቂነት አለመኖርና የDNS አያያዝ ያልታቀደ እንደሆነ የሚከሰቱ ናቸው። የታቀደ የrsync ሂደት እንደ Hostragons የተላለፍ ጊዜን ይቀነሳል፣ የተመለስ ዕድልንም ያሳድጋል።

ብዙ ጊዜ የተጠየቁ ጥያቄዎች

SSH በመጠቀም rsync ትእዛዝ ሲቀጠቀጥ ስርዓቱ ቢቋረጥ ማስተላለፊያው ከመጀመሪያ ይጀምር?

አይደለም፣ ትክክለኛ ፓራሜተሮች ከተጠቀሙ ከመጀመሪያ አይጀምር። --partial እና --append-verify ምርጦች የቆሰለ ትልቅ ፋይሎችን እንዲጠብቁና ትእዛዝ እንደገና ሲተገብም ማስተላለፊያው ከተቆሰለበት ቦታ እንዲቀጥል ይረዳል። ነገር ግን በአስፈላጊ ትስስር ቅድመ ክንውን ከሚያደርጉ በፊት የመድረሻ ዲስክ ቦታን እና የቆሰለ ፋይሎችን ሁኔታ መፈተሽ ይመከራል።

rsync በመጠቀም የመረጃ ቋት ቀጥታ ይተላለፋል?

rsync ፋይሎችን ይተላለፋል፤ እየሰራ ያለ የመረጃ ቋት ፋይሎችን ቀጥታ መቅዳት ተገቢ አይደለም። ለMySQL ወይም MariaDB በ mysqldump ወይም በፍላጎት የቅጂ መሣሪያዎች መጠቀም ይገባል፤ የተፈጠሩት የቅጂ ፋይሎች rsync በመጠቀም ወደ መደረሻ ስርዓት ማስተላለፍ ይኖርበታል። በእየሰራ ያሉ ስርዓቶች ውስጥ የመረጃ አቀራረብ ስለሚጠየቅ የእድሳት ሞድ ወይም የመድበር ስትራተጅት መያዝ ይገባል።

rsync ለመጠቀም በሁለቱም ሰርቨር root መዳረሻ ያስፈልጋል?

root መዳረሻ አይደለም። ወደ የመደረሻ አውታረ ማህደር ጽሑፍ መፃፍ የሚችል ተጠቃሚ በቂ ነው። ነገር ግን፣ የፋይል ባለቤትነት፣ የስርዓት አውታረ ማህደሮች፣ ACL ወይም ልዩ ፈቃዶችን ለማድረግ ከፍተኛ መዳረሻ ይሆን ይችላል። ከደህንነት አንፃፃፅ በተቻለ መጠን በግዙፍ መዳረሻ ያለውን ተጠቃሚ መጠቀም ይመከራል።

--delete ፓራሜተር ደህና ነው?

--delete ትክክለኛ በተጠቀም የመደረሻ አውታረ ማህደርን ከምንጭ ጋር በትክክል ለማስማማት በጣም ጠቃሚ ነው፤ ነገር ግን በትክክል ያልተመሰገነ አውታረ ማህደር ላይ ከተጠቀም ፋይል መጣል ሊያከስ ይችላል። ስለዚህ --delete የያዙ ትእዛዞች በመጀመሪያ --dry-run በመጠቀም እንዲፈተሽ ይኖርበታል፣ የምንጭ እና የመደረሻ መንገዶች በጥንቃቄ እንዲረጋገጡ ይጠበቃል።

ትልቅ ፋይል ሲተላለፍ rsync ይሻላል ወይም scp?

ለአንድ ጊዜ አነስተኛ ቅጂ ፋይሎች scp በቂ ሊሆን ይችላል፤ ነገር ግን ለትልቅ ፋይሎች፣ ብዙ ፋይሎች እና በደጋጋሚ ማስማማት rsync ብዙውን ጊዜ ይሻላል። የተለዋዋጭ መረጃዎችን ሊገናኝ ይችላል፣ የቆሰለ ማስተላለፊያዎችን እንዲቀጥል ይችላል፣ የባንድዊድ ግዴታ ሊያደርግ ይችላል፣ እና የሙከራ ሞድ ይሰጣል።

መጠቀም እና የሚቀጥለው እርምጃ

SSH በመጠቀም rsync ትእዛዝን በመጠቀም በሁለት አስተናጋጅ መካከል ትልቅ ፋይሎችን መቀየር፤ ፈጣን፣ ደህንነታዊ እና የሚቆጥብ ዘዴ ነው። ትክክለኛ ፓራሜትሮችን በማጠቀም ግንኙነት ቢቋረጥም ይቆጥብ፣ የተለዋዋጭ ፋይሎችን ብቻ በመቀየር ጊዜ ያድናል እና በህይወት ያለ ሳይት በሚቀየርበት ሂደት ቁልጥናን ያቆስላል። ምርጡ ውጤትን ለማግኘት በመጀመሪያ SSH እና የዲስክ ምርመራዎችን ያድርጉ፣ --dry-run በመጠቀም ያለማድረግ ይፈትኑ፣ ከዚህ በኋላ ዋናውን ማቀየር በዕቅድ ያስፈጽሙ።

አዲስ ሰርቨር ለመቀየር፣ ከፍተኛ የደረጃ የማከማቻ ቦታ ወይም የተሻሻለ ውስጣዊ አስተናጋጅ አዋቂ ሲያዘጋጁ Hostragons መፍትሄዎችን ... ይመልከቱ፤ በስራዎ መሠረት VPS፣ hosting፣ domain እና SSL አማራጮች በመጠቀም የቀየርን ሂደትዎን የተሻሻለ ደህንነት ማድረግ ይችላሉ። ምንም ችግኝ ያለው እንዳይከሰት ትንሽ ሙከራ በመጀመር፣ በመለካት እና መጨረሻ ማስማማያን በዕቅድ በመስራት ያቀርቡ።

ይህንን ጽሑፍ አጋራ፡

የHostragons ቡድን

ስለ ማስተናገጃ፣ ሰርቨሮች እና የጎራ ስሞች ከባለሙያ ቡድናችን የተውጣጡ ወቅታዊ መመሪያዎች። ለፕሮጀክትዎ ትክክለኛውን መፍትሄ አብረን እናግኝ።

እኛን ያግኙን