rsync অনুমতিটি আমার স্থানীয় মেশিনে একটি দূরবর্তী ডিরেক্টরিকে ব্যাক আপ করার বিষয়টি অস্বীকার করেছে


11

শিরোনামে উল্লিখিত ত্রুটিটি পাচ্ছি।

আমি এই অনুরূপ প্রশ্নটি পেয়েছি: রিমোট মেশিনে রুট অনুমোদনের সাথে rsync চালান । এটা আমার প্রশ্নের উত্তর দেয় না।

আমি রিমোট সার্ভারের প্রশাসক এবং আমি rsyncআমার স্থানীয় বাক্সে ফাইলগুলি ব্যাক আপ করতে চাই। এখানে আমার আরএসএনসি কমান্ডটি দেওয়া হয়েছে:

$ rsync -avz me@myserver.com:/var/www/ /backups/Sites/MySite/

এটি বেশিরভাগ ক্ষেত্রেই কাজ করে। লগইন একটি কিপায়ারের মাধ্যমে হয়। আমি একটি পাসওয়ার্ড ব্যবহার করি না এবং ব্যবহার করতে পারি না (এসডিএইচ মাধ্যমে লগইন করতে): অনুমতিগুলির কারণে মাত্র কয়েকটি ফাইল স্থানান্তরিত হবে না। আমি এই অনুমতিগুলি পরিবর্তন করতে চাই না।

ত্রুটি এখানে:

receiving file list ... done
rsync: send_files failed to open "/var/www/webapp/securestuff/install.php": Permission denied (13)

আমি এই ফাইলটির অনুমতিগুলি পরিবর্তন করতে চাই না । এটি (এবং অন্যরা এটি পছন্দ করে) পঠনযোগ্য নয় (রুট ছাড়া)।

এটি একটি ক্রোন জব চালাতে হবে এবং আমি কেবল একটি rsync কমান্ড ব্যবহার করে একটি সাধারণ এক-লাইন সমাধান পছন্দ করি। পরবর্তী পছন্দটি হ'ল শেল স্ক্রিপ্ট যা আমি ক্রোন জব থেকে কল করতে পারি। কোনও অবস্থাতেই আমি ম্যানুয়ালি রিমোট মেশিনে লগইন করে রুট হয়ে উঠতে পারি না (কারণ এটি চলে যখন আমি ঘুমাবো।

আমি কীভাবে আমার স্থানীয় বাক্সে ব্যাক আপ করতে rsync ব্যবহার করতে পারি?


আপনি কি দয়া করে আমাদেরকে ssh me@myserver.com "বিড়াল /var/www/webapp/securestuff/install.php"> লোকাল ফাইলের মতো কিছু দেখাতে পারেন?
ফ্লোরেনজ ক্লে

@ ফ্লোরেনজ ক্লে: আমি আপনার মন্তব্য বুঝতে পারছি না
মাউন্টেনএক্স

আমাকে দেখান যে আপনি ফাইলটি পড়তে পারেন এবং আমি আপনাকে একটি rsync কমান্ড দেখায় যা কাজ করে :-)। মাধ্যাকর্ষণ থেকে # 2 বিকল্পটি সম্ভবত আপনার সেরা বাজি।
ফ্লোরেন্স ক্লে

@ ফ্লোরেনজ ক্লি: ssh me@myserver.com "ইকো মাইপ্যাসওয়ার্ড | সুডো-এস বিড়াল /var/www/webapp/securestuff/install.php"> লোকালফিল
মাউন্টেনএক্স

আমি পেয়েছি rsync: send_files failed to open "/cygdrive/...": Permission denied (13)। সুতরাং আমার উত্স কম্পিউটারটি ছিল উইন্ডোজ সাইগউইন। কিছুটা ভিন্ন পরিস্থিতি, তবে উত্তরসূরির জন্য আমার সমাধানটি ছিল cmd.exe রাইট ক্লিক করে প্রশাসক হিসাবে চালানো
বব স্টেইন

উত্তর:


8

আপনি একটি ফাইল যা আপনি অন্যথায় পড়তে পারে না ব্যাক আপ পারে না, তাই অনুমতি হবে পারেন করতে হবে পরিবর্তিত বা রুট দ্বারা ওভাররাইড

আরও বিস্তারিতভাবে আপনার বিকল্পগুলি:

  • root@myserver.comসরাসরি হিসাবে CSSying করে অনুমতিগুলি ওভাররাইড করুন । (

  • ... অথবা সার্ভারের পাশের উপাদানটির পাসওয়ার্ড-কম চালানোর অনুমতি দেওয়ার জন্য সার্ভারে sudo কনফিগার করে rsync

    me    ALL=(root) NOPASSWD: /usr/bin/rsync --server --sender -vlogDtprze.iLsf . /var/www/
    

    এবং

    rsync --rsh="ssh me@myserver.com sudo" -avz /var/www/ /backups/...
    
  • সার্ভারে একটি ডেডিকেটেড "ওয়েবসাইট-ব্যাকআপ" অ্যাকাউন্ট তৈরি করুন। ফাইলগুলিকে "ওয়েবসাইট-ব্যাকআপ" অ্যাকাউন্টে পঠনযোগ্য করার জন্য অনুমতিগুলির পরিবর্তন করুন; আপনি এসিএল ব্যবহার করতে পারেন এবং তার setfaclজন্য। অন্য কোনও কিছুর জন্য এই অ্যাকাউন্টটি ব্যবহার করবেন না।

    rsync -avz website-backup@myserver.com:/var/www/ /backups/sites/mysite/
    
  • সার্ভারে একটি স্ক্রিপ্ট লিখুন যা একটি এনক্রিপ্ট করা টার্বল / var / www / ডাম্প করে। আবার, এই রুট হিসাবে (নিম্নলিখিতরূপে crontab পরিবর্তন মাধ্যমে) অথবা কনফিগার করে কাজ করা যেতে পারে উবুন্টু যে স্ক্রিপ্টের জন্য একটি পাসওয়ার্ড প্রয়োজন হয় না। উদাহরণ স্বরূপ:

    #!/bin/sh
    tar c /var/www/ | gpg -e -r mountainx@example.com
    

    প্রতিবার পুরো টার্বল টেনে ব্যাকআপ করা হবে, এটি বড় সাইটগুলির সাথে অকার্যকর হতে পারে:

    ssh me@myserver.com "sudo /usr/sbin/dump-website" > /backups/sites/mysite.tar.gpg
    

    Sudoers সম্পাদনা করে পাসওয়ার্ডের প্রয়োজনীয়তা মুছে ফেলা হবে :

    me     ALL=(root) NOPASSWD: /usr/sbin/dump-website
    

ধন্যবাদ। ভাল পরামর্শ। হয় হয় সম্ভবত আমার জন্য কাজ করবে। আমি যদি এর সম্ভাব্য পার্শ্ব প্রতিক্রিয়াগুলি বুঝতে পারি তবে আমি সুপারুজার.কোয়েশনস / ২70০৯11/… এ সমাধানটি ব্যবহার করার বিষয়েও বিবেচনা করছি ।
মাউন্টেনএক্স 21

বিটিডাব্লু, আমি সর্বশেষ 2 টি পছন্দগুলির মধ্যে একটিকে বোঝাতে চাইছিলাম সার্ভারে এসএসএইচ এর মাধ্যমে রুট হিসাবে লগ ইন করার অনুমতি নেই।
মাউন্টেনএক্স

@ মাউন্টেনএক্স: আমি পৃথক পছন্দ হিসাবে "সুডোর মাধ্যমে" আরএসইএনসি "আলাদা করেছি। এটি পাশাপাশি কাজ করতে পারে।
ব্যবহারকারী1686

ধন্যবাদ! "sudo মাধ্যমে rsync" আমার পছন্দসই পছন্দ হবে। আমি আপনার পরামর্শ চেষ্টা করবে। দেখে মনে হচ্ছে সার্ভারে উবুন্টুতে ভিজুডো ব্যবহার করে এটি প্রয়োগ করা দরকার। আমি ভিসুডো নিয়ে খুব বেশি গণ্ডগোল করিনি, তবে আপনি আমাকে শুরু করার জন্য যথেষ্ট পরিমাণে দিয়েছেন। আবার ধন্যবাদ.
মাউন্টেনএক্স

5

রিমোট হোস্টে আপনি rsync ডেমন দিয়ে চালাতে পারেন

uid মূল

/etc/rsyncd.confফাইলের মধ্যে

এটি ডিমনকে CAP_DAC_OVERRIDEক্ষমতা / মালিকানা পরিবর্তন না করে দক্ষতা ব্যবহার করতে এবং স্থানীয় ফাইল সিস্টেমটি পড়তে দেয়।

আপনার যদি কেবল একটি ব্যাকআপ তৈরি করার প্রয়োজন হয় তবে কেবল পঠন মোডে rsync সেট করা ভাল অনুশীলন:

কেবলমাত্র পড়ুন = সত্য


0

যদি ফাইলগুলি কেবল পঠনযোগ্য হয় তবে rootআপনার rootফাইল সিস্টেমটি পড়ে ফাইলটি ব্যাক আপ করার জন্য অ্যাক্সেস থাকা দরকার । rsyncকাঁচা ডিভাইস থেকে নয় ফাইল সিস্টেম থেকে ফাইলগুলি পড়ছে।

ব্যতীত dump, ddএবং অনুরূপ ব্যাকআপ যে পার্টিশন বরং যে ফাইল, ব্যাকআপ প্রোগ্রাম ফাইল সিস্টেম থেকে ফাইল পড়া কপি করুন। ব্যাকআপ ইউটিলিটিগুলি ফাইলগুলি পড়তে এবং ব্যাকআপ করতে ব্যর্থ হবে যার জন্য তাদের ব্যবহার করতে ব্যবহারকারীর আইডির অনুমতিগুলি অ্যাক্সেস রোধ করে। আপনি যে ক্ষেত্রে এটি চালাচ্ছেন এটি।

বেশিরভাগ ক্ষেত্রে আপনাকে আপনার ব্যাকআপ সফ্টওয়্যারটিকে আপনার সমস্ত ডেটা পড়ার জন্য পর্যাপ্ত পরিমাণে বিশ্বাস করতে হবে। এর অর্থ এটিও হ'ল আপনার সমস্ত ডেটা সহ আপনার ব্যাকআপ মাধ্যমকে বিশ্বাস করা দরকার। কিছু ক্ষেত্রে আপনি কিছু ফাইল ব্যাকআপ থেকে বাদ দিতে এবং তাদের সামগ্রীগুলি ব্যাকআপ করার জন্য একটি বিকল্প পদ্ধতি ব্যবহার করতে পারেন।

সম্পাদনা: আপনি যখন ডেটা সংরক্ষণাগার করছেন (সমস্ত অনুমতি অনুলিপি করছেন) আপনার উভয় সার্ভারে রুট অ্যাক্সেসের প্রয়োজন হবে। আপনি যদি ব্যাকআপ হিসাবে এটি করছেন তবে আপনি ব্যাকআপপিসির মতো সমাধানটি দেখতে চাইতে পারেন যা ফাইলগুলি পড়তে আরএসসিএন ব্যবহার করে তবে ফাইলগুলি নিজস্ব ডিরেক্টরি ট্রিতে সঞ্চয় করে।


Rsync রুট অ্যাক্সেস দেওয়ার উপায় আছে ways আমি শুধু তাদের জানি না। আমি যা চাইছি তা হ'ল এই ফাইলগুলির ব্যাক আপ করতে কীভাবে আরএসএনসি রুট অ্যাক্সেস দেওয়া যায়। হতে পারে "রিমোট মেশিনে রুট অনুমতি নিয়ে আরএসসিএন চালান" এর উত্তরটি আবার দেখতে হবে এবং আমি এটি বের করতে পারি কিনা তা দেখুন ...
মাউন্টেনএক্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.