এসএসএইচ সংযোগ বন্ধ করার পরে একটি RSSync কাজ সম্পন্ন


13

আমি এক কম্পিউটার থেকে অন্য ব্যবহার ফাইল একটি বৃহৎ পরিমাণ হস্তান্তর করছি rsync। আমি সোর্স কম্পিউটারে এসএসএইচিংয়ের মাধ্যমে এটি করছি এবং একটি কমান্ড ব্যবহার করে:

sudo rsync ssh --rsync-path="sudo rsync" source_dir user@host.com:dest_dir

এমনকি যদি আমি nohupএই কমান্ডের আগে যোগ করি , যখনই আমি টার্মিনাল উইন্ডোটি বন্ধ করি যা থেকে আমি এসএসএইচ করি, সংযোগটি বন্ধ হয়ে যায়।

আমি কীভাবে এটি রাখতে পারি যাতে আমার এসএসএইচ সংযোগ বন্ধ করার পরে আমার ফাইল স্থানান্তর এখনও অবিরত থাকে?

উত্তর:


16

কারণ nohupআপনি সাহায্য না কারণ প্রোগ্রাম প্রমিত IO ফাইলগুলির সাথে কাজ করে।

এখানে ' নোহাপের জন্য উইকি পৃষ্ঠার একটি অংশ :

দ্রষ্টব্য - কোনও দূরবর্তী এসএসএইচ সেশন থেকে লগ ইন করার সময় নুহপিং ব্যাকগ্রাউন্ড জবগুলি সাধারণত এগুলি বন্ধ করা এড়ানোর জন্য ব্যবহৃত হয়। একটি ভিন্ন সমস্যা যা প্রায়শই এই পরিস্থিতিতে দেখা দেয় তা হ'ল ssh লগ-অফ করতে অস্বীকার করছে ("হ্যাং"), যেহেতু এটি ব্যাকগ্রাউন্ড জব (গুলি) থেকে কোনও ডেটা হারাতে অস্বীকার করে। এই তিনটি আই / ও স্ট্রিম পুনর্নির্দেশের মাধ্যমেও এই সমস্যাটি কাটিয়ে উঠতে পারে:

nohup ./myprogram > foo.out 2> foo.err < /dev/null &আরও মনে রাখবেন যে একটি ক্লোজিং এসএসএইচ অধিবেশন নির্ভরশীল প্রক্রিয়াগুলিতে সর্বদা এইচইউপি সংকেত প্রেরণ করে না। অন্যদের মধ্যে এটি সিউডো-টার্মিনাল বরাদ্দ ছিল কিনা তার উপর নির্ভর করে।

আপনি এটি screenজন্য ব্যবহার করতে পারেন ।

এর সাথে কেবল একটি স্ক্রিন সেশন তৈরি করুন: screen -S rsync তারপরে, আপনি আপনার স্ক্রিনটি CTRL+ এর সাথে আলাদা করে দিনA d

এবং আপনি এসএসএইচ থেকে সংযোগ বিচ্ছিন্ন করতে পারেন


4
আমি যুক্ত করতে চাই যে কোনও কাজ সম্পাদন করার সময় যা বাধা হয়ে দাঁড়াবে যদি, যেমন কোনও হারিয়ে যাওয়া সংযোগের কারণে সমস্যাযুক্ত হয়, তবে এটি একটি স্ক্রিন সেশনে চালান। স্ক্রিনটি দুর্ঘটনাজনিত সংযোগ ক্ষতি থেকে রক্ষা করার জন্য ডিজাইন করা হয়েছে। আপনি দূরবর্তীভাবে লগ ইন করতে পারেন, পর্দা শুরু করতে পারেন, আপনার কাজ শুরু করতে পারেন এবং আপনি যদি সংযোগ হারিয়ে ফেলেন তবে চলমান যে কোনও পর্দার উদাহরণে আপনি আবার সংযোগ করতে পারেন। স্ক্রিনে অন্যান্য দরকারী কার্যকারিতা পেয়েছে - একটি লগ ফাইলে সেশনটি ক্যাপচার করা, একক সেশনে একাধিক "স্ক্রিন" থাকা (নেটওয়ার্ক ওভারহেড সংরক্ষণ করা) এবং একাধিক দর্শক (শ্রেণিকক্ষের শৈলী)। এছাড়াও উল্লেখযোগ্য যে tmux একটি পর্দার বিকল্প।
জোহান

6

স্ক্রিন কমান্ডটি ঠিক আছে তবে আমার প্রয়োজনের জন্য ঠিক কাজ করে নি।

এটি অনেক ভাল কাজ করেছে:

nohup rsync -va --delete ###.###.###.###:/var/www/sites/ /var/www/sites < /dev/null &

আমার জন্য ঠিক যেমন গৃহীত উত্তর হিসাবে ধন্যবাদ, ধন্যবাদ
সালারোস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.