ফাইল ট্রান্সফার
Mobile SSH-তে সক্রিয় SSH সংযোগের সাথে যুক্ত একটি SFTP ফাইল ট্রান্সফার স্ক্রিন আছে। এটি আপনার ফোন বা ট্যাবলেট থেকে দ্রুত সার্ভার রক্ষণাবেক্ষণের জন্য: কনফিগ আপলোড করুন, লগ ডাউনলোড করুন, রিমোট ফাইলের নাম বদলান, বা অ্যাপ না ছেড়ে অনুমতি পরীক্ষা করুন।
ফাইল ট্রান্সফার খোলা
- একটি SSH সার্ভারে সংযোগ করুন।
- সংযুক্ত টার্মিনাল প্যান নির্বাচন করুন।
- টার্মিনাল টুলবার থেকে ট্রান্সফার খুলুন, অথবা বর্তমান স্ক্রিন সমর্থন করলে প্যান হেডারে দীর্ঘক্ষণ চাপুন।
- একটি লোকাল প্যান ও একটি রিমোট প্যান নিয়ে ফাইল ট্রান্সফার স্ক্রিন খোলে।
সক্রিয় SSH সেশন না থাকলে ফাইল ট্রান্সফার খোলা যায় না।
লোকাল ও রিমোট প্যান
ফাইল ট্রান্সফার স্ক্রিনে দুটি ব্রাউজার প্যান আছে:
- লোকাল প্যান: ফোন স্টোরেজ।
- রিমোট প্যান: SFTP-এর মাধ্যমে সার্ভার ফাইল।
অ্যাপ প্রতি হোস্টে সর্বশেষ দশটি রিমোট পথ মনে রাখে — Android-এ রিমোট প্যানের হেডার থেকে, বা iOS-এ ঘড়ির আইকন থেকে সেগুলো খুলুন। উভয় প্যানের সাজানোর সেটিংসও প্রতি হোস্টে মনে রাখা হয়। লোকাল পথের কোনো ইতিহাস নেই: Android-এ লোকাল প্যান হলো আপনি যে ফোল্ডারটির অনুমতি দিয়েছেন, আর iOS-এ এটি অ্যাপের নিজস্ব ডকুমেন্ট এলাকা।
ফাইল ট্রান্সফার স্ক্রিন আপনার সিস্টেমের লাইট বা ডার্ক থিম অনুসরণ করে, তাই এটি Mobile SSH-এর বাকি অংশের সঙ্গে মেলে।
প্রতিটি সেশন কোথায় খোলে (Android)
কোনো tmux সেশনে অ্যাটাচ করা প্যান থেকে File Transfer খুললে রিমোট প্যানটি সেই সেশন যেখানে শেষবার কাজ করছিল সেখানেই ফিরে যায়, এবং প্যান হেডারে সেশনের নাম দেখায়। যে সেশন থেকে আগে কখনও খোলেননি সেটি শুরু হয় সেই হোস্টে আপনি যেসব ডিরেক্টরি সবচেয়ে বেশি ব্যবহার করেন সেখান থেকে, তারপর হোস্টের শেষ ডিরেক্টরি, তারপর আপনার হোম ডিরেক্টরি।
মনে রাখা কোনো ডিরেক্টরি এর মধ্যে মুছে ফেলা হলে অ্যাপ আপনাকে একটি ত্রুটির মুখে ফেলে না রেখে সেই তালিকা ধরে নিচে নামতে থাকে যতক্ষণ না একটি সত্যিই খোলে — এবং ভাঙা পথটি আবার লিখে রাখে না। iOS-এ প্রতি হোস্টে একটি রিমোট ডিরেক্টরি মনে রাখা হয়।
স্টোরেজ অ্যাক্সেস
Mobile SSH কোনো প্ল্যাটফর্মেই ঢালাও স্টোরেজ অনুমতি চায় না।
Android-এ আপনি সিস্টেমের ফোল্ডার পিকার দিয়ে একটি ফোল্ডারের অনুমতি দেন, এবং ডাউনলোড সেখানেই লেখা হয় — এমন একটি জায়গায় যা অন্য সব অ্যাপ আগে থেকেই পড়তে পারে। এই অনুমতি অ্যাপ বন্ধ করে আবার খুললেও থেকে যায়।
iOS-এ লোকাল প্যান হলো অ্যাপের ডকুমেন্ট এলাকা, এবং ফাইল আসে সিস্টেমের ডকুমেন্ট ও ফটো পিকারের মাধ্যমে।
iOS-এ লোকাল প্যান অ্যাপের নিজস্ব ডকুমেন্ট এলাকা নিয়ে কাজ করে, এবং সিস্টেমের ডকুমেন্ট ও ফটো পিকারের মাধ্যমে ফাইল আনতে হয় — ফটো ও ডকুমেন্টের মাল্টি-সিলেক্ট ইমপোর্টসহ। আলাদা কোনো স্টোরেজ অনুমতির দরকার নেই।
প্রাইভেট কী ইমপোর্ট ফাইল ট্রান্সফার থেকে আলাদা এবং সিস্টেম ফাইল পিকার ব্যবহার করে।
ফাইল আপলোড
- লোকাল প্যান খুলুন।
- যে ফাইল আপলোড করতে চান সেখানে যান।
- আপলোড নির্বাচন করুন।
- রিমোট গন্তব্য নিশ্চিত করুন।
- অগ্রগতি ও সমাপ্তির জন্য ট্রান্সফার সারি দেখুন।
আপলোড বিদ্যমান SSH/SFTP সংযোগ ব্যবহার করে। সংযোগ বিচ্ছিন্ন হলে পুনঃসংযোগের পর আবার চেষ্টা করুন।
ফাইল ডাউনলোড
- রিমোট প্যান খুলুন।
- যে ফাইল ডাউনলোড করতে চান সেখানে যান।
- ডাউনলোড নির্বাচন করুন।
- লোকাল গন্তব্য নিশ্চিত করুন।
- অগ্রগতি ও সমাপ্তির জন্য ট্রান্সফার সারি দেখুন।
বড় ডাউনলোড সম্ভব হলে স্থিতিশীল নেটওয়ার্কে করুন।
সম্পূর্ণ ফোল্ডার কপি
আপলোড ও ডাউনলোড শুধু একক ফাইলে সীমাবদ্ধ নয়। একটি ফোল্ডার বেছে নিন এবং Mobile SSH সম্পূর্ণ সাবট্রি উভয় দিকে কপি করে — ফোন থেকে রিমোট এবং রিমোট থেকে ফোন — প্রথমে গন্তব্য ডিরেক্টরিগুলো তৈরি করে, তারপর প্রতিটি ফাইল সারিবদ্ধ করে। কোনো অপঠনযোগ্য সাবডিরেক্টরি বাকি কপি থামায় না; Android-এ এটি “Can’t list directory” লেখা একটি ব্যর্থ সারি হিসেবে জানানো হয়, আর iOS কী বাদ দিল তা তালিকাভুক্ত না করেই এগিয়ে যায়।
রিমোট ফাইল ক্রিয়া
নির্বাচিত রিমোট আইটেমের উপর নির্ভর করে Mobile SSH এমন ক্রিয়া দেখাতে পারে:
- ডাউনলোড, অথবা Android-এ Copy to phone।
- সার্ভারেই কপি বা সরানো —
cp -r/mvহোস্টেই চলে, বাইটগুলো আপনার ফোন ছুঁয়েও দেখে না। - নাম পরিবর্তন।
- মুছুন।
- ফাইল বা ডিরেক্টরি তৈরি।
- টেক্সট ফাইল সম্পাদনা।
.tar.gz-এ সংকোচন।- অনুমতি — মোড ও মালিক বদলান, পুরো একটি ফোল্ডারে প্রয়োগ করার বিকল্পসহ।
- অন্য অ্যাপে খুলুন।
- ফাইলের বিবরণ দেখুন।
রিমোট ফাইলের বিবরণে অনুমতি বিট, মালিক, গ্রুপ এবং অক্টাল অনুমতি মান থাকতে পারে। অন্য কোনো প্রক্রিয়া বা ডিপ্লয়মেন্ট টুল দ্বারা পরিচালিত সার্ভার ফাইল বদলানোর আগে এই বিবরণ ব্যবহার করুন।
ফাইলের আকার বাইনারি এককে দেখানো হয়, তাই পাশের ট্যাবে টার্মিনালে ls -h যা ছাপে তার সঙ্গে তা মেলে।
সাজানো ও সাম্প্রতিক পথ
প্রতিটি প্যান নাম বা তারিখ অনুসারে ঊর্ধ্ব বা অধঃক্রমে সাজাতে পারে। Mobile SSH নির্বাচিত লোকাল ও রিমোট সাজানোর মোড সাম্প্রতিক পথসহ প্রতি হোস্টে সংরক্ষণ করে, তাই একই সার্ভারে বারবার ট্রান্সফার পরিচিত স্থান থেকে শুরু হয়।
ট্রান্সফার সারি
ট্রান্সফার সারিবদ্ধ হয় ও অবস্থা অনুসারে দেখানো হয়, আর লগটি প্রতিটি ট্রান্সফার দেখায় এবং স্ক্রল করা যায় — Android সেগুলোকে Queued / Failed / Successful ট্যাবে সাজায়, iOS সাজায় Active / Failed / Done হিসেবে। অন্তর্নিহিত SFTP অপারেশন কারণ দিলে ব্যর্থ ট্রান্সফারে কারণ থাকে। iOS-এ এই মুহূর্তে যে ফাইলটি স্থানান্তরিত হচ্ছে সেটি Active ট্যাবের উপরেই থাকে, আর কোনো সারি মাঝপথেই বাতিল করা যায়।
অ্যাপ থেকে ফাইল বের করা
- Android: ডাউনলোড আপনি যে ফোল্ডারের অনুমতি দিয়েছেন সেখানেই নামে, তাই সেগুলো অন্য সব অ্যাপের কাছে আগে থেকেই দৃশ্যমান। Open in another app দুই প্যানেই আছে; কোনো রিমোট ফাইল আগে ডাউনলোড হয়, তারপর হস্তান্তর করা হয়।
- iOS: Mobile SSH Files অ্যাপে On My iPhone-এর নিচে দেখা যায়, তাই My Phone প্যানে যা কিছু আছে তা Mail, পিকার ও অন্যান্য অ্যাপ থেকে পৌঁছানো যায়। ডাউনলোড করা কোনো ফাইলে দীর্ঘক্ষণ চেপে Open in another app বেছে নিয়ে সেটি হস্তান্তর করুন, AirDrop করুন, বা অন্য কোথাও সংরক্ষণ করুন।
একটি সেশনে ফাইল পাঠানো (Android)
Android অন্য যেকোনো অ্যাপ থেকে শেয়ার করা ফাইল গ্রহণ করে: Mobile SSH-এ শেয়ার করুন এবং ফাইলটি সেই প্যানের হোস্টের ~/.cache/mobile-ssh-এ আপলোড হয়, আর তার রিমোট পথ প্রম্পটে টাইপ হয়ে যায় যাতে আপনি সঙ্গে সঙ্গেই তা ব্যবহার করতে পারেন। টার্মিনাল টুলবারের 📎 বোতামটি সিস্টেম ফাইল পিকার থেকে একই কাজ করে, এবং দুটোই একসঙ্গে একাধিক ফাইল গ্রহণ করে।
iOS-এ + বোতাম দিয়ে লোকাল প্যানে ফাইল আনুন এবং সেখান থেকে আপলোড করুন।
ব্যবহারিক পরামর্শ
- নির্দিষ্ট ফাইল সরাতে SFTP ব্যবহার করুন; বড় ডিরেক্টরি সিঙ্ক্রোনাইজেশনের জন্য সার্ভারে
rsync-এর মতো কমান্ড-লাইন টুল ব্যবহার করুন। - ব্যাকআপ বা ডিপ্লয়মেন্ট রোলব্যাক পথ না থাকলে লাইভ প্রোডাকশন ফাইল সম্পাদনা এড়িয়ে চলুন।
- আপলোডের পর ফাইল না দেখালে রিমোট প্যান রিফ্রেশ করুন বা গন্তব্য পথ যাচাই করুন।
- Android-এ লোকাল প্যান ফাঁকা থাকলে Pick folder দিয়ে একটি ফোল্ডার বেছে নিন — অ্যাপ কেবল আপনার দেওয়া ফোল্ডারেই অ্যাক্সেস পায়। iOS-এ এর বদলে লোকাল প্যানে ফাইল যোগ করতে পিকার ব্যবহার করুন।