আপনি সরে যাওয়ার সময় একটি ট্রান্সফার শেষ হওয়া দরকার, আর Mac-এর ঘুমিয়ে পড়াই স্পষ্ট সন্দেহভাজন। caffeinate ঠিক সেই সময়ের জন্য পাওয়ার দাবি ধরে রাখতে পারে, আর এটি প্রথমে যতটা মনে হয় তার চেয়ে সরু একটি হাতিয়ার। কমান্ড চলার সময় এটি নিষ্ক্রিয় ঘুম আটকায়; এটি VPN সেশন জীবিত রাখে না, আর মধ্যরাতে মেয়াদ শেষ হওয়া কোনো ক্রেডেনশিয়াল থেকে ট্রান্সফার বাঁচায় না। এর সীমা কোথায় শেষ হয় তা জানাই পরের ব্যর্থতাকে ভুল স্তরের ঘাড়ে চাপা থেকে বিরত রাখে।

দাবিটি আসলে কী ধরে রাখে

ইউটিলিটি পাওয়ার-ম্যানেজমেন্ট সিস্টেমকে বলে যে মোড়ানো প্রক্রিয়াটি যতদিন বাঁচে ততদিন একটি দাবি খোলা রাখতে। প্রক্রিয়াটি বেরিয়ে গেলে দাবিটিও তার সঙ্গে যায়। এই আয়ুষ্কালই কাজের অংশ: আপনি পুরো মেশিনজুড়ে কোনো সেটিং উল্টেপাল্টে সেটি পরে ফিরিয়ে আনতে মনে রাখার আশা করছেন না।

ফ্ল্যাগগুলি আলাদা আলাদা দাবি বেছে নেয়। -i নিষ্ক্রিয় সিস্টেম ঘুম আটকায়। -d ডিসপ্লে ঘুমের লক্ষ্য নেয়, আর -s এমন পরিস্থিতিতে সিস্টেম ঘুমের লক্ষ্য নেয় যেখানে সিস্টেম তা অনুমোদন করে। এর কোনোটিই সার্বিক ‘জেগে থাকো’ প্রতিশ্রুতি নয়, আর কোনোটিই স্ক্রিন আনলক করে না বা ঢাকনা বন্ধ হওয়াকে ব্যর্থ করে না। আপনি যে বাধাটি সত্যিই দেখেছেন তার সঙ্গে যেটি মেলে সেটিই বেছে নিন।

কেউ যখন জানায় যে Mac ‘তবুও ঘুমিয়ে পড়েছে’, তখন এই পার্থক্যটি গুরুত্বপূর্ণ। প্রশ্ন হলো কোন দাবি চাওয়া হয়েছিল, কতক্ষণের জন্য, আর কোন ঘটনা ঘুমটি ঘটিয়েছে। পাওয়ার ম্যানেজমেন্ট কয়েকটি ইনপুট বিচার করে, আর একটি দাবি তাদের একটিকে ঢেকে দেয়।

সেশন সাজানোর বদলে কাজটিকে মোড়ান

caffeinate -i /usr/bin/ssh [email protected]

SSH ক্লায়েন্ট যতক্ষণ চলে ততক্ষণ এটি নিষ্ক্রিয় ঘুমের দাবিটি ধরে রাখে, আর ব্যাকগ্রাউন্ডে চালানোর বদলে মোড়ানোর পুরো অর্থ এটাই। VPN প্রোফাইলে হাত দেওয়া হয় না, কোনো কীপ-অ্যালাইভ পাঠানো হয় না, আর টানেলের কনফিগারেশনে কিছুই বদলায় না।

সীমিত সময়ের জন্য সময়কালের ফ্ল্যাগই সৎ রূপ:

caffeinate -i -t 1800

কাজটি আগেভাগে শেষ হলে সেই আহ্বানটি তার স্বাভাবিক বাধা দিয়ে থামান। ব্যাকগ্রাউন্ডে একগাদা মোড়ক ফেলে রেখে পরে একই নামের সব প্রক্রিয়া মেরে পরিষ্কার করবেন না; আপনি যা রাখতে চেয়েছিলেন তাও মেরে ফেলবেন।

ঘুম একটি কারণ, কারণটি নয়

নিষ্ক্রিয় ঘুম আটকানো তালিকা থেকে একটি বাধা সরায়। এটি ইচ্ছাকৃত ঘুমের কমান্ড, বন্ধ ঢাকনা, বিদ্যুৎ বিভ্রাট বা প্রশাসকের দেওয়া নীতি অগ্রাহ্য করে না। এগুলি আলাদা সিদ্ধান্ত, আর ব্যবহারকারী-স্তরের দাবি এগুলিকে হারিয়ে দেবে বলে আশা করাই মানুষকে এই সিদ্ধান্তে পৌঁছায় যে হাতিয়ারটি কাজ করে না।

ডিসপ্লে ঘুম আর স্ক্রিন লকও আলাদা। Mac ডিসপ্লে বন্ধ রেখে জেগে থাকতে পারে, আর কাজ চলতে থাকলেও লক হয়ে যেতে পারে। যদি প্রয়োজন আলোকিত স্ক্রিন হয়, সেটি অন্য ফ্ল্যাগ; যদি প্রয়োজন আনলক করা স্ক্রিন হয়, কোনো ফ্ল্যাগই তা দেয় না। সুইচ বাছার আগে বলুন এই তিনটি ফলাফলের কোনটি আপনার আসলে দরকার, কারণ এগুলি একই আচরণের ভিন্ন নাম নয়।

VPN সেশন তার নিজের ঘড়ি ধরে রাখে

IPsec বা TLS টানেল প্রান্তগুলি যে সময়সূচিতে সম্মত হয়েছে সেই অনুযায়ী কি নতুন করে তৈরি করে, আর সার্ভার ক্লায়েন্টের তৎপরতা নির্বিশেষে সর্বোচ্চ সেশন আয়ু বলবৎ করতে পারে। ক্রেডেনশিয়ালের মেয়াদ শেষ হয়। ল্যাপটপ জেগে আছে কি না তার সঙ্গে সম্পর্কহীন কারণেও অ্যাক্সেস লিংক পড়ে যেতে পারে। এর কোনোটিই পাওয়ার দাবির তোয়াক্কা করে না।

তাই Mac স্পষ্ট জেগে থাকা অবস্থায় উপযোগী ট্রাফিক ব্যর্থ হলে সময়কাল বাড়ানো কোনো ব্যাখ্যা নয়, মেরামতও নয়। ব্যর্থতাটি পড়ুন: কি-নবীকরণের ত্রুটি, প্রমাণীকরণের মেয়াদ শেষ হওয়া আর ক্যারিয়ার হারানো টানেল লগে আলাদা দেখায়, আর প্রতিটির নিজস্ব সমাধান আছে।

স্থায়িত্ব দূরবর্তী হোস্টে রাখুন

স্থানীয় সংযোগ হারানোতে যদি ঘণ্টার পর ঘণ্টা কাজ নষ্ট হয়, উত্তরটি ওপারে। SSH মরে গেলে টার্মিনাল মাল্টিপ্লেক্সার সার্ভারে সেশনটি জীবিত রাখে, আর সেশন শেষ হলে জব সিস্টেম কাজটি জীবিত রাখে। কোনোটিই ল্যাপটপের বিদ্যুৎ অবস্থার উপর নির্ভর করে না।

এটি ভিন্ন একটি ব্যর্থতার সীমা, আর দীর্ঘ কাজের জন্য এটিই গুরুত্বপূর্ণ। দুটিকে একসাথে নিন কেবল যখন দুটিই সত্য: কাজের স্থানীয় অংশের জন্য মেশিনটিকে জেগে থাকতে হবে, আর দূরবর্তী অংশটিকে সংযোগ বিচ্ছিন্নতা সহ্য করতে হবে। তারপর দ্বিতীয় টার্মিনাল থেকে আবার সংযোগ করে যাচাই করুন যে কাজটি এখনও চলছে।

আপনি যে দাবি ব্যবহার করেছেন আর সেটি কখন শেষ হয় তা লিখে রাখুন। স্বল্পস্থায়ী পরিচালনগত পছন্দ ঠিক আছে; ব্যাখ্যাহীন স্থায়ী পছন্দ ছয় মাস পরে সাপোর্ট টিকিট হয়ে যায়, যখন কেউ আর মনে করতে পারে না কেন Mac কখনো ঘুমায় না।

সম্পর্কিত নিবন্ধ