Google Android এবং নতুন Android x86 ও Android x86_64 প্ল্যাটফর্ম ব্যবহার করা ডিভাইসগুলো একই কার্নেলের উপর ভিত্তি করে যা উবুন্টু ব্যবহার করে। উভয়ই GNU/Linux অপারেটিং সিস্টেমের ইমপ্লিমেন্টেশন, এবং তাদের মাঝপথে ফাইল ট্রান্সফার সাধারণত খুব সহজ। আপনি যদি আপনার ফোন বা ট্যাবলেট থেকে একটি ইউএসবি কোর্ড সরাসরি আপনার উবুন্টু পিসিতে প্লাগ করতে পারেন, তবে আপনি সাধারণত ফাইল পাঠাতে কোনো সমস্যা পাবেন না। এটি এমনแมকিন্টোষ মেশিনের সাথে ও কাজ করে যেগুলোতে আপনি উবুন্টু ইনস্টল করেছেন, যেগুলো ডুয়াল-বুট করে কিনা তার নির্বিশেষে।
জিনিসগুলো কিছুটা জটিল হয়ে যায় আপনি যদি একটি Media Transfer Protocol অ্যাপ ব্যবহার করতে চান একটি ফাইল ম্যানেজারের পরিবর্তে, কারণ MTP এবং উবুন্টু একে অপরের সাথে কর্তনียা নাও হতে পারে। सौভাগ্যবশত, তাদের একই ফাইল সিস্টেম লাইব্রেরিগুলোর সাথে যোগাযোগ করার একটি উপায় আছে যাতে আপনার যেকোনো অ্যান্ড্রয়েড ডিভাইসের সাথে সহজে ফাইল ট্রান্সফার করা যায়। এটি উবুন্টুর যেকোনো আধুনিক অফিসিয়াল ভার্সনের সাথে কাজ করা উচিত, যেগুলো বিকল্প গ্রাফিক্যাল ফাইল ম্যানেজার ব্যবহার করে। আপনি যদি Xubuntu-তে Thunar, Lubuntu-তে PCManFM বা Kubuntu-তে Dolphin ব্যবহার করেন, তবে আপনার কাছে এখনও কোনো ইস্যু নেই যদিও আপনাকে প্রপার MTP টুলস ব্যবহার করতে হবে ফাইল পাঠাতে যদি আপনার কাছে উপযুক্ত প্লাগইন না থাকে।
উবুন্টুতে MTP ইনস্টল ও ব্যবহার করা
আপনাকে কিছু কমন Media Transfer Protocol (MTP) অ্যাপ ইনস্টল করতে হবে এটি ফাইল পাঠাতে এবং রিসিভ করার জন্য ব্যবহার করার আগে। আপনি এটি Synaptic Package Manager দিয়ে করতে পারেন আপনার কাছে যদি এটি উপলব্ধ থাকে, ড্যাশ, উইস্কার মেনু বা LX প্যানেল থেকে এটি খুলে। আপনাকে এই প্যাকেজগুলো সার্চ করে ইনস্টল করতে হবে:
libmtp-common
mtp-tools
libmtp-dev
libmtp-runtime
libmtp9
Synaptic অধিকাংশ সম্ভবত সেগুলোর কিছুকে ডিপেন্ডেন্সি হিসেবে সাজেস্ট করবে ইনস্টল করার সময়, তাই আপনাকে সেগুলো আলাদাভাবে খুঁজে বের করতে হবে না। আপনি সবসময় একটি প্যাকেজের নাম টাইপ করা শুরু করতে পারেন সেটি Synaptic আপনাকে প্রোগ্রাম শুরু করার সময় দেয় লম্বা তালিকাতে খুঁজে বের করতে সাহায্য করার জন্য। স্বাভাবিকভাবেই, আপনাকে প্যাকেজ ইনস্টল করার জন্য রুট প্রিভিলেজ প্রয়োজন, তাই আপনাকে সম্ভবত এটি শুরু করার সময় আপনার পাসওয়ার্ড ইনপুট করতে হবে।
একটি সহজ পদ্ধতি হচ্ছে একটি টার্মিনাল খোলা Ctrl, Alt এবং T ধরে রাখে এবং তারপর এই কমান্ডগুলো ইস্যু করা:
sudo apt-get update
sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9
sudo apt-get dist-upgrade
যেকোনো কেসে, এটি প্রোটোকলের সাথে কাজ করার জন্য প্রয়োজনীয় টুলস ইনস্টল করবে। FUSE (Filesystem in Userspace) ফাইল সিস্টেম ইমপ্লিমেন্টেশন মাউন্ট কন্ট্রোল করে যা ব্যবহারকারীদের 의해 করা হয় যাদের প্রিভিলেজ নেই সেটি করার জন্য, এবং তাই শুধু রুট অ্যাকাউন্টকে আনরিস্ট্রিক্টেড অ্যাক্সেস দেয়, যা ডিফল্টভাবে উবুন্টুতে হ্যাশড আউট করা থাকে। আপনি FUSE-এর বিল্ট-ইন সিকিউরিটি ফিচার ওভাররাইড করতে পারেন একটি নির্দিষ্ট ফাইল এডিট করে। টার্মিনালে টাইপ করুন sudo nano /etc/fuse.conf এবং এন্টার চাপুন।
এই ফাইলের নিচে আপনি একটি লাইন পাবেন যেটি পড়ে #user_allow_other, এবং আপনাকে সেই লাইনের সামনের হ্যাশ মার্কটি রিমুভ করতে হবে। বাকি সব লাইন কমেন্টেড থাকতে দিন। CTRL এবং X একসাথে চাপুন, Y চাপুন এবং তারপর এন্টার কী চাপুন। এটি ফাইলটি সেভ করবে।
আপনার ডিভাইসকে আপনার পিসির সাথে ইউএসবি কোর্ড দিয়ে সংযুক্ত করুন এবং তারপর lsusb টাইপ করুন একটি টেবিল আনার জন্য। টেবিলে আপনার ডিভাইসের নাম খুঁজুন। প্রোগ্রাম আপনাকে যা বলছে অন্যান্য ইনফরমেশন সফely উপেক্ষা করতে পারেন, এবং আপনি যদি নামটি মিস করেন তবে আপনি যতবার ইচ্ছা ততবার এটি রান করতে পারেন।
একবার আপনি আপনার ডিভাইসকে আইডেন্টিফাই করার লাইনটি পেলে, sudo nano /etc/udev/rules.d/51-android.rules রান করুন এবং এন্টার চাপুন। আপনি nano-কে একটি ভিন্ন টার্মিনাল টেক্সট এডিটরের নাম দিয়ে রিপ্লেস করতে পারেন আপনি যদি অন্য একটি ব্যবহার করতে চান, যেমন vi বা এমনকি emacs যদি পছন্দ করেন। ফাইলের নিচে, কোডের লাইনটি যোগ করুন:
SUBSYSTEM=="usb", ATTR{idVendor}=="####", ATTR{idProduct}=="####", MODE="0666", GROUP="plugdev" # nameOfDevice
nameOfDevice-কে lsusb রান করার পর আপনি যে ডিভাইসের নামটি পেলেন সেটি দিয়ে রিপ্লেস করুন, এবং চার নম্বর চিহ্নগুলোকে প্রথম এবং দ্বিতীয় চার ডিজিট এড্রেস সেট দিয়ে রিপ্লেস করুন যা সেই নামের পর থেকে তাৎক্ষণিক পাওয়া যায়। টেকনিক্যালি # সিম্বলের পরের টেক্স্ট একটি কমেন্টেড লেবেল, এবং আপনি এর পাশে যা ইচ্ছা টাইপ করতে পারেন, তাই আপনার ডিভাইসের রিগার্ডিং যেকোনো ইনফরমেশন নোট করতে চাইলে, এটি একটি উপযুক্ত জায়গা।
একবার ফাইলটি সেভ করলে, নিরাপদে ইজেক্ট করুন এবং আপনার সিস্টেমের সাথে বর্তমানে সংযুক্ত যেকোনো ইউএসবি ডিভাইস বের করুন এবং আপনার টার্মিনাল উইন্ডো থেকে sudo service udev restart রান করুন। আপনার খোলা থাকা বাকি কাজ সেভ করুন এবং আপনার মেশিন সম্পূর্ণ রিবুট করার আগে আপনি যে সব প্রোগ্রাম বন্ধ করতে পারেন সেগুলো বন্ধ করুন।
আপনার পিসি রিস্টার্ট হলে অবিলম্বে, আপনার অ্যান্ড্রয়েড ফোন বা ট্যাবলেটকে তার সাথে আবার প্লাগ ইন করুন নিশ্চিত করার পর যে আপনি স্ক্রিন লক করেননি। আপনি এখন আপনার অ্যান্ড্রয়েড ডিভাইসের সাথে দ্রুত MTP লাইব্রেরি ব্যবহার করে ফাইল ট্রান্সফার করতে পারবেন। যেকোনো সময় আপনি চাইলে টার্মিনাল থেকে আর্গুমেন্ট ছাড়া sync কমান্ড রান করুন যাতে নিশ্চিত হয় যে উবুন্টু যা ব্যবহার করে ডেটা টেম্পোরারিলি স্টোর করার জন্য বাফারগুলো আপনার অ্যান্ড্রয়েড ডিভাইসে পুরোপুরি রাইট আউট হয়েছে। এটি নিশ্চিত করবে যে আপনি যেকোনো ধরনের ডেটা লস থেকে ভুগবেন না।
আপনার ডিভাইসে microSDHC স্লট থাকলে, উবুন্টু এটিকে একটি vfat ফাইল সিস্টেম হিসেবে মাউন্ট করতে পারে, যা কিছু ব্যবহারকারীকে বিভ্রান্ত করে। এটি আসলে MTP-র সাথে অনুরূপ নয়, এবং এটি ঘটতে থাকবে এমনকি আপনার কাছে MTP ইনস্টলড না থাকলে। যদিও vfat মানে Virtual File Allocation Table, এখানে কিছু ভার্চুয়ালাইজড বা এমুলেটেড নেই। এটি একটি স্ট্যান্ডার্ড FAT12, FAT16 বা FAT32 ফাইল সিস্টেম যা পুরনো MS-DOS ফাইল ম্যানেজমেন্ট পদ্ধতির সাথে তার ঐতিহ্য শেয়ার করে। মাইক্রোসফ্ট উইন্ডোজ একটা ভার্চুয়াল ডিভাইস ড্রাইভার ব্যবহার করতো যাতে আপনি লং ফাইল নেম এই ফাইল সিস্টেমগুলোর ওপর লিখতে পারেন যখন DOS ইজাজত দিত না, এবং অ্যান্ড্রয়েড এই একই স্ট্রাকচার ব্যবহার করে সংযুক্ত SD কার্ডগুলো মাউন্ট করার জন্য।
আপনার কাছে এভাবে একটি কার্ড মাউন্টড থাকলে তবে আপনি উবুন্টুর সাথে সেটি এবং এর মাঝপথে ফাইল কপি ও মুভ করতে পারবেন কোনো সমস্যা ছাড়া, যদিও এটি ইউনিক্স ফাইল পারমিশন সাপোর্ট করবে না। ডেটা লস প্রতিরোধ করার জন্য এটি আলাদা একটি ইউএসবি ডিভাইস 것처럼 ইজেক্ট করতে ভুলবেন না।
লেখক সম্পর্কে

কেভিন অ্যারোজ
কেভিন অ্যারোজ একজন অত্যন্ত অভিজ্ঞ এবং জ্ঞানী প্রযুক্তি বিশেষজ্ঞ যিনি এক দশকের বেশি ইন্ডাস্ট্রি অভিজ্ঞতা রাখেন। তিনি মাইক্রোসফ্ট সার্টিফাইড টেকনোলজি স্পেশালিস্ট (MCTS) সার্টিফিকেশন ধারণ করেন এবং সর্বশেষ প্রযুক্তি উন্নতির সাথে আপ-টু-ডেট থাকতে গভীর আগ্রহ রাখেন। কেভিন প্রযুক্তি-সম্পর্কিত وسیম শ্রেণির বিষয়ে ব্যাপকভাবে লিখেছেন, যা সফ্টওয়্যার ডেভেলপমেন্ট, সাইবার সিকিউরিটি এবং ক্লাউড কম্পিউটিং এর মতো ক্ষেত্রে তার দক্ষতা এবং জ্ঞানের প্রদর্শন করে। প্রযুক্তি ক্ষেত্রে তার অবদানকে তার সমকক্ষরা ব্যাপকভাবে স্বীকৃতি ও সম্মান দিয়েছে, এবং জটিল প্রযুক্তিগত ধারণাগুলো স্পষ্ট ও সংক্ষিপ্তভাবে ব্যাখ্যা করার ক্ষমতার জন্য তিনি অত্যন্ত সম্মানিত।