টার্মিনাল থেকে কীভাবে ইউএসবি ফ্ল্যাশ ড্রাইভ অ্যাক্সেস করবেন?


250

আমার কাছে কেবল কমান্ড লাইনে অ্যাক্সেস রয়েছে।
আমার ডেটা (ব্যবহারকারী ফোল্ডারে) একটি কলমে (ইউএসবি ডোক) ব্যাকআপ করতে হবে।

  • আমি কীভাবে নিজে ফ্ল্যাশ ড্রাইভটি মাউন্ট করতে পারি?
  • কপি কমান্ডটি কী হওয়া উচিত?

উত্তর:


348

1. ড্রাইভটি কী বলা হয় তা সন্ধান করুন

এটিকে মাউন্ট করার জন্য ড্রাইভটি কী বলে তা আপনাকে জানতে হবে। নিম্নলিখিতটি যে কোনও একটিতে আগুন নেভানোর জন্য (আমার পছন্দের ক্রম অনুসারে):

lsblk
sudo blkid
sudo fdisk -l

আপনি একটি পার্টিশন ওই জাতীয় কিছু হওয়া উচিত খুজছেন: /dev/sdb1। চিঠিটি যত বেশি ডিস্কের আপনি এটি উচ্চতর হওয়ার সম্ভাবনা রয়েছে। যাইহোক, এটি সন্ধান করুন এবং এটি কী বলে মনে রাখবেন।

২. মাউন্ট পয়েন্ট তৈরি করুন (alচ্ছিক)

এটি কোথাও ফাইল সিস্টেমে মাউন্ট করা দরকার । আপনি অলস হয়ে থাকলে এবং সেখানে কিছুই মাউন্ট না করা থাকলে আপনি সাধারণত / এমএনটি / ব্যবহার করতে পারেন তবে অন্যথায় আপনি একটি নতুন ডিরেক্টরি তৈরি করতে চাইবেন:

sudo  mkdir /media/usb

3. মাউন্ট!

sudo mount /dev/sdb1 /media/usb

আপনার কাজ শেষ হয়ে গেলে, কেবল গুলি ছড়িয়ে দিন:

sudo umount /media/usb

এই উত্তরটি প্রায় 6 বছর পুরানো এবং এর মূলটি এখনও কাজ করে, এমন জিনিসগুলি fdisk -lসবচেয়ে বেশি ব্যবহারকারী-বান্ধব বিকল্প নয়। বুদ্ধিমান এবং স্ট্যান্ডার্ড উপায়ে মাউন্টিং ডিভাইসগুলির জন্য উচ্চতর স্ট্যাকগুলিতে নতুন পদ্ধতি রয়েছে যা সর্বদা উপলব্ধ নাও হতে পারে।

সুতরাং আমি অন্যান্য উত্তর থেকে কিছু পোলিশ যোগ করেছি। আপনি যখন এই পাদটীকাটি পড়ছেন এবং আপনি এটি একটি ডেস্কটপ সিস্টেমে করছেন udisksctl, উইকেকের উত্তর হিসাবে অবশ্যই ব্যবহারের পক্ষে যুক্তি রয়েছে । ডেস্কটপটি আপনার নিজস্ব /media/$USER/deviceডিরেক্টরি তৈরি করে ঠিক তেমনভাবে মাউন্ট করে — তবে আমি মনে করি স্থির মাউন্টপয়েন্টের জন্য এখনও যুক্তি রয়েছে, বিশেষত যখন আপনি পথটি পরিবর্তন করতে চান না।

উদিস্কগুলি ডি-বাসের উপরও নির্ভর করে, তাই সর্বত্র পাওয়া যায় না।


এই পদ্ধতির প্রধান অসুবিধা হ'ল এটি ডিভাইসটিকে রুট হিসাবে মাউন্ট করে। ডিভাইসটি যদি FAT ফর্ম্যাট হয় তবে ব্যবহারকারী এতে লিখতে সক্ষম হবে না। / মিডিয়া / $ ব্যবহারকারী / ডিভাইস
মাউন্টপয়েন্টটি

45

ইনস্টল করুন pmount। মাউন্ট ডিস্ক / মিডিয়া /

pmount /dev/sdb1
pumount /dev/sdb1

কোনও সুডোর দরকার নেই। আপনার নির্দিষ্ট ডিভাইসের পাথ দিয়ে "sdb1" প্রতিস্থাপন করুন। আরও তথ্যের জন্য ম্যানপেজটি দেখুন:

pmount  ("policy mount") is a wrapper around the standard mount program
which permits normal users to mount removable devices without a  match-
ing /etc/fstab entry.

pmount is invoked like this:

pmount device [ label ]

This  will  mount  device  to a directory below /media if policy is met
(see below). If label is given, the mount point will  be  /media/label,
otherwise it will be /media/device.

mountকেবলমাত্র আমার ড্রাইভটি কেবল পঠনযোগ্যকে মাউন্ট করার উপর জোর দেওয়া হলে এটি কাজ করেছিল ।
জোনাথন ল্যান্ড্রাম

12

মান ব্যবহারের ক্ষেত্রে mountকমান্ড (যা রুট প্রয়োজন) আপনি ড্রাইভ ব্যবহার মাউন্ট করতে udisksএবং dbusআপনার মান ব্যবহারকারীর সাথে।

এটি করার জন্য প্রথমে ড্রাইভ সম্পর্কে কয়েকটি জিনিস জানা (তবে প্রয়োজনীয় নয়):

  1. এটি কী ডিভাইস (যেমন /dev/sdb1)
  2. এটি কোন ফাইল সিস্টেম ব্যবহার করে।

এগুলি জেনে আপনি কমান্ড লাইন থেকে একটি ড্রাইভ মাউন্ট করতে একটি সাধারণ কমান্ড ব্যবহার করতে পারেন।

gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/<device> --method org.freedesktop.UDisks.Device.FilesystemMount "<filesystem>" []

এই কলটি মাউন্টটি সফল হলে এটি মাউন্ট করা পথে প্রতিধ্বনি করা উচিত।

এইভাবে মাউন্ট করা ড্রাইভগুলি আনমাউন্ট করতে আপনি চালাতে পারেন:

gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/<device> --method org.freedesktop.UDisks.Device.FilesystemUnmount []

এনবি এটি <device>কেবল তার পথের শেষ। সুতরাং উদাহরণস্বরূপ কি মাউন্ট করতে চায় হলে /dev/sdb2তারপর আপনি করা হবে sdb2স্থানে <device>


এটি কোন ডিভাইস বা কোন ফাইল সিস্টেম এটি ব্যবহার করে তা যদি আপনি না জানেন তবে ভয় পাবেন না। এই ছোট্ট কমান্ডের সাহায্যে আপনি সহজেই সেই সমস্ত তথ্য মুদ্রণ করতে পারেন:

gdbus introspect --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices --recurse --only-properties | grep -E "(readonly .+ (IdLabel|IdType|Device(IsMounted|IsDrive|File) ).*|\}|.*\{)"

এটি এর মতো কিছু মুদ্রণ করবে:

node /org/freedesktop/UDisks/devices {
  node /org/freedesktop/UDisks/devices/sda {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda';
    };
  };
  node /org/freedesktop/UDisks/devices/sda1 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'SYSTEM';
        readonly s IdType = 'ntfs';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda1';
    };
  };
  node /org/freedesktop/UDisks/devices/sda2 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'Windows7';
        readonly s IdType = 'ntfs';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = true;
        readonly s DeviceFile = '/dev/sda2';
    };
  };
  node /org/freedesktop/UDisks/devices/sda3 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'Recovery';
        readonly s IdType = 'ntfs';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda3';
    };
  };
  node /org/freedesktop/UDisks/devices/sda4 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda4';
    };
  };
  node /org/freedesktop/UDisks/devices/sda5 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = 'ext4';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = true;
        readonly s DeviceFile = '/dev/sda5';
    };
  };
  node /org/freedesktop/UDisks/devices/sda6 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = 'swap';
        readonly s IdUsage = 'other';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda6';
    };
  };
  node /org/freedesktop/UDisks/devices/sda7 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = 'ext4';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = true;
        readonly s DeviceFile = '/dev/sda7';
    };
  };
  node /org/freedesktop/UDisks/devices/sdb {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sdb';
    };
  };
  node /org/freedesktop/UDisks/devices/sdb1 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'USB DRIVE';
        readonly s IdType = 'vfat';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sdb1';
    };
  };
  node /org/freedesktop/UDisks/devices/sr0 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sr0';
    };
  };
};

যেগুলি IdUsage = 'filesystem'উপরের কমান্ডটি ব্যবহার করে মাউন্ট করা যেতে পারে।

এর অর্থ হ'ল, উদাহরণস্বরূপ, আমি যদি ডিভাইসটি 'ইউএসবি ড্রাইভ' মাউন্ট করতে চাইতাম তবে আমি কমান্ডটি চালিত করব

gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/sdb1 --method org.freedesktop.UDisks.Device.FilesystemMount "vfat" []

এই কমান্ডগুলি dbusমেসেজিং সিস্টেমটি ব্যবহার করে Nautilusএবং অন্যান্য ফাইল পরিচালকদের অটো-মাউন্ট জিনিসগুলি একইভাবে ব্যবহার করে । এই কমান্ডগুলিতে আমরা বিভিন্ন অবজেক্ট প্রেরণ করছি (যেমন /org/freedesktop/...বার্তাগুলি তাদের নির্দিষ্ট ডিভাইসগুলি মাউন্ট এবং আনমাউন্ট করার জন্য জিজ্ঞাসা করছে one যা অনুমতি দেওয়া হয়েছে তার উপর নির্ভর করে তারা এটি করতে বা করতে পারে না PolicyKit

অনুরূপ কমান্ড ব্যবহার করে কেউ উবুন্টুতে অভিজ্ঞতার প্রায় প্রতিটি দিক নিয়ন্ত্রণ করতে পারে এবং বেশিরভাগ সিস্টেম প্রোগ্রাম এবং ফাংশনগুলি (যেমন শটডাউন, ভলিউম পরিবর্তন ইত্যাদি) অনুকরণ করতে পারে।


1
2015 এর gdbus introspect --system --dest org.freedesktop.UDisks2 --object-path /org/freedesktop/UDisks2/drives --recurse --only-properties
নিক আলেকজান্ডার

12

udisksctlপ্যাকেজ থেকে ব্যবহার করুন = udisks2(উবুন্টু এবং ডেবিয়ান উভয় ক্ষেত্রে)। পদ্ধতিটি হ'ল:

  1. আপনি যে ব্লক ডিভাইসটি মাউন্ট করতে চান তার আইডি সন্ধান করুন lsblk:

    user@machine:~$ lsblk
    NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    sda      8:0    0   1.8T  0 disk
    ├─sda1   8:1    0  19.1M  0 part /boot/efi
    ├─sda2   8:2    0   1.8T  0 part
    └─sda3   8:3    0    16G  0 part [SWAP]
    sdb      8:16   0 931.5G  0 disk
    ├─sdb1   8:17   0    37M  0 part
    ├─sdb2   8:18   0  15.9G  0 part [SWAP]
    └─sdb3   8:19   0 915.7G  0 part /
    sdc      8:32   1  14.4G  0 disk
    └─sdc1   8:33   1  14.4G  0 part
    sdd      8:48   0   1.8T  0 disk
    └─sdd1   8:49   0   1.8T  0 part
    

    এর আকার থেকে /dev/sdc1মনে হচ্ছে যে ইউএসবি ড্রাইভটি আমি মাউন্ট করতে চাই।

  2. udisksctlডিভাইস মাউন্ট করতে ব্যবহার করুন । নোট করুন যে -b== --block-device(টাইপিং হ্রাস করতে) তবে আমি নথির জন্য দীর্ঘ বিকল্প পছন্দ করি:

    user@machine:~$ udisksctl mount --block-device /dev/sdc1
    ==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount ===
    Authentication is required to mount Kingston DT microDuo 3C (/dev/sdc1)
    Multiple identities can be used for authentication:
     1.  XXXXX,,, (user)
     2.  ,,, (YYYYY)
    Choose identity to authenticate as (1-2): 1
    Password:
    ==== AUTHENTICATION COMPLETE ===
    Mounted /dev/sdc1 at /media/user/USBDRIVELABEL.
    

নীচে হান্স ডেরাগনের মন্তব্যকে সম্বোধন করা : আপনি এটি করতে বলতেও udisksctlপারেন --no-user-interaction। এটি ব্যবহারকারীকে প্রমাণীকরণের চেষ্টা করে না, যা সাধারণত "কেবলমাত্র কাজ করে":

user@machine:~$ udisksctl mount --block-device /dev/sdc1 --no-user-interaction
# possibly some complaining here about I/O charset or need to run `fsck`
Mounted /dev/sdc1 at /media/user/USBDRIVELABEL.

কি --object-pathএটি জন্য অনুরোধ জানাবে?
সিএমসিডিগ্রাগনকাই

5

আপনি ইউএসবিমাউন্টের সাহায্যে ওবুন্টু সার্ভারে স্বয়ংক্রিয়ভাবে ইউএসবি ডিভাইসগুলি মাউন্ট করতে পারেন।

ইনস্টলেশন শুরু করার আগে আপনি অ্যাপটি-গেট আপডেট / আপগ্রেড চালিয়েছেন তা নিশ্চিত করুন:

sudo apt-get update && sudo apt-get upgrade

সংগ্রহস্থলগুলি থেকে এখন ইউএসবিমাউন্ট ইনস্টল করুন:

sudo apt-get install usbmount

ইউএসবিমাউন্ট সমস্ত ইউএসবি ড্রাইভে মাউন্ট করে /media/usb*(ইউএসবি 0, ইউএসবি 1, ইউএসবি 2 ...)

এখন একটি ইউএসবি ড্রাইভ প্লাগ করুন এবং এটি সনাক্ত এবং মাউন্ট হওয়ার জন্য অপেক্ষা করুন। হোস্ট ওএস ফাইল সিস্টেমকে যতক্ষণ সমর্থন করে ততক্ষণ এটি মাউন্ট করা উচিত।

ইউএসবি ড্রাইভটি সঠিকভাবে মাউন্ট হয়েছিল কিনা তা যাচাই করার জন্য আপনি df -hসমস্ত উপলব্ধ ড্রাইভ এবং তাদের সংশ্লিষ্ট মাউন্ট পয়েন্টগুলি দেখতে ব্যবহার করতে পারেন

কোনও ড্রাইভ আন-মাউন্ট করতে আপনি অমাউন্ট ব্যবহার করতে পারেন।

sudo umount /media/usb0

3

এটা সহজ। আমি যখন টার্মিনালে একটি ইউএসবি ড্রাইভ ব্যবহার করতে চাই তখন আমি এটি করি:

এর /mediaসাথে একটি ফোল্ডার তৈরি করুন :

mkdir /media/mountDrive 

এই ফোল্ডারটি মাউন্ট পয়েন্টের জন্য ব্যবহৃত হবে। এই আদেশটি ব্যবহার করুন:

sudo mount /dev/sdd1 /media/mountDrive 

sdd1আমার ইউএসবির প্রথম পার্টিশন। তারপরে আপনি ইতিমধ্যে মাউন্ট করা ফোল্ডারে নেভিগেট করতে পারেন

cd /media/mountDrive

আপনি যদি ড্রাইভে ফাইলগুলি তালিকাবদ্ধ করতে চান তবে আপনি lsকমান্ডটি ব্যবহার করতে পারেন ।

আপনি যে ড্রাইভটি ব্যবহার করতে পারেন তা আনমাউন্ট করতে

sudo umount /dev/sdd1

মনে রাখবেন যে আমার সিস্টেমে ইউএসবি ড্রাইভ /dev/sdd1, তবে আপনার সিস্টেমে এটি অন্যরকম হতে পারে। dfবর্তমান সময়ে সমস্ত ডিস্ক সংযুক্ত দেখতে এটি কমান্ডটি কী ব্যবহার করছে তা সন্ধান করার জন্য।

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