Bir USB flash sürücüye terminalden nasıl erişilir?

212

Sadece komut satırına erişebiliyorum.
Verilerimi (kullanıcı klasöründe) bir kaleme (USB DOK) yedeklemem gerekiyor.

  • Flash sürücüyü el ile nasıl monte edebilirim?
  • Kopyalama komutu ne olmalı?
sordu MEM 29.04.2011 02:26

6 cevap

296

1. Sürücünün ne aradığını bulun

Sürücünün onu bağlamak için ne aradığını bilmeniz gerekir. Bu yangını aşağıdakilerden birini yapmak için (tercihim sırasına göre sıralanır):

lsblk
sudo blkid
sudo fdisk -l

Gibi bir şey gibi görünmesi gereken bir bölüm arıyoruz: /dev/sdb1 . Ne kadar fazla disk varsa, bu büyük olasılıkla daha yüksek olur. Her neyse, onu bul ve ne aradığını hatırla.

2. Bir bağlama noktası oluşturun (isteğe bağlı)

Bunun bir yere dosya sistemine yüklenmesi gerekiyor. Genellikle / mnt / tembel olursanız ve orada başka bir şey monte edilmezse kullanabilirsiniz, ancak aksi takdirde yeni bir dizin oluşturmak isteyeceksiniz:

sudo  mkdir /media/usb

3. Dağı!

sudo mount /dev/sdb1 /media/usb

İşiniz bittiğinde, sadece ateş edin:

sudo umount /media/usb

Bu cevap neredeyse 6 yaşında ve bunun çekirdeği hala çalışırken, fdisk -l gibi şeyler en kullanıcı dostu seçenekler değil. Ayrıca, cihazların her zaman mevcut olmayabilen aklı başında ve standart bir şekilde monte edilmesi için daha yüksek yığınlarda yeni mekanizmalar da vardır.

Yani diğer cevaplardan biraz cila ekledim. Bu dipnotu okurken ve bunu bir masaüstü sisteminde yapıyorsanız, kesinlikle wecac başına udisksctl kullanarak argümanlar var. cevap. Bu, masaüstünün yaptığı gibi (kendi /media/$USER/device dizini oluşturuyor) aynı şekilde monte edilir. Ancak, özellikle de yolun değişmesini istemediğinizde statik bir bağlama noktası için hala argümanlar olduğunu düşünüyorum.

Udisks ayrıca D-Bus'a da güveniyor, bu yüzden her yerde mevcut olmayabilir.

    
verilen cevap Oli 29.04.2011 02:43
39

pmount uygulamasını yükleyin. / Media /

disklerini birleştirir
pmount /dev/sdb1
pumount /dev/sdb1

Hiçbir sudo gerekli. "Sdb1" i belirli cihaz yolunuzla değiştirin. Daha fazla bilgi için manga bakınız:

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.
    
verilen cevap Sepero 06.11.2013 02:39
11

Standart mount komutunu (root gerektiren) kullanmaya ek olarak, sürücüleri standart kullanıcı ile udisks ve dbus kullanarak yükleyebilirsiniz.

Bunu yapmak için, önce sürücü hakkında birkaç şey bilmek yararlıdır (ancak gerekli değildir):

  1. Hangi cihazdır (ör. /dev/sdb1 )
  2. hangi dosya sistemini kullanır.

Bunları bilmek için, bir sürücüyü komut satırından bağlamak için basit bir komut kullanabilirsiniz.

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

Bu çağrı, mount başarılı olursa, monte edildiği yolu tekrarlamalıdır.

Bu şekilde monte edilen sürücüleri çıkarmak için şunları yapabilirsiniz:

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

N.B. <device> , yalnızca ona giden yolun sonu. Örneğin, mount yapmak istediğiniz şey /dev/sdb2 ise, sdb2 değerini <device> yerine koyarsınız.

Hangi cihaz olduğunu veya hangi dosya sistemini kullandığını bilmiyorsanız korkmayın. Tüm bu bilgileri bu küçük komutla kolayca basabilirsiniz:

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) ).*|\}|.*\{)"

Bu, aşağıdaki gibi bir şey yazdı:

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' değerine sahip olanlar yukarıdaki komutu kullanarak monte edilebilir.

Bu, örneğin, 'USB SÜRÜCÜ' cihazını monte etmek istesem,

komutunu çalıştıracağım anlamına gelir.
gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/sdb1 --method org.freedesktop.UDisks.Device.FilesystemMount "vfat" []

Bu komutlar dbus mesajlaşma sistemini kullanarak çalışır; Nautilus ve diğer dosya yöneticileri de otomatik olarak bir şeyler monte eder. Bu komutlarda çeşitli nesneler gönderiyoruz (yani, belirli cihazları bağlamalarını ve çıkarmamasını isteyen /org/freedesktop/... mesaj. Bunlar, PolicyKit 'de verilmiş olan izinlere bağlı olarak bunu yapabilir veya yapmayabilir.

Benzer komutları kullanarak, Ubuntu'daki deneyimlerin hemen hemen her yönünü kontrol edebilir ve çoğu sistem programlarını ve işlevlerini simüle edebilir (örneğin, kapatma, ses değişimi, vb.).

    
verilen cevap Alex L. 29.08.2012 17:42
10

Paket = udisksctl öğesinden udisks2 kullanın (hem Ubuntu'da hem de Debian'da). Prosedür:

  1. Bağlamak istediğiniz blok cihazının kimliğini lsblk kullanarak bulun:

    [email protected]:~$ 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
    

    Boyutundan, /dev/sdc1 , yüklemek istediğim USB sürücüsü gibi görünüyor.

  2. Cihazı monte etmek için udisksctl kullanın. % Co_de% == -b (yazmayı azaltmak için), ancak belgeleme için uzun seçenekleri tercih ettiğimi unutmayın:

    [email protected]:~$ 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.
    

Hans Deragon'un aşağıya yorum adresi : Ayrıca --block-device öğesinin udisksctl yapmasını da söyleyebilirsiniz. Genellikle "sadece çalışır" olan kullanıcının kimliğini doğrulama girişiminde bulunmaz:

[email protected]:~$ 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.
    
verilen cevap wecac 28.12.2016 16:34
2

Bu basit. Terminalde bir USB sürücü kullanmak istediğimde bunu yaparım:

/media klasöründe bir klasör oluşturun:

mkdir /media/mountDrive 

Bu klasör, bağlama noktası için kullanılacaktır. Bu komutu kullan:

sudo mount /dev/sdd1 /media/mountDrive 

sdd1 , USB'imin ilk bölümüdür. Ardından, önceden taktığınız klasöre gidebilirsiniz

cd /media/mountDrive

Dosyaları sürücüdeki listelemek istiyorsanız, ls komutunu kullanabilirsiniz.

Sürücüyü çıkarmak için kullanabilirsiniz

sudo umount /dev/sdd1

Sistemimde usb sürücünün /dev/sdd1 olduğunu, ancak sisteminizde farklı bir şey olabileceğini unutmayın. Şu anda bağlı olan tüm diskleri görmek için df komutunun ne olduğunu öğrenmek için

.     
verilen cevap Deivid Vale 29.08.2012 16:08
2

Ayrıca USB aygıtlarını Ubuntu Sunucusuna USBmount yardımıyla otomatik olarak bağlayabilirsiniz.

Yüklemeyi başlatmadan önce apt-get update / upgrade komutunu çalıştırdığınızdan emin olun:

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

Şimdi USBmount'u depolardan yükleyin:

sudo apt-get install usbmount

USBmount, tüm USB sürücülerini /media/usb* (usb0, usb1, usb2 ...)

içinde bağlar.

Şimdi bir USB sürücüyü takın ve algılanıp takılmasını bekleyin. Ana bilgisayar işletim sistemi dosya sistemini desteklediği sürece, takılması gerekir.

USB sürücüsünün doğru şekilde takılıp takılmadığını doğrulamak için, kullanılabilir tüm sürücüleri ve ilgili montaj noktalarını görüntülemek için df -h kullanabilirsiniz

Bir sürücüyü çıkarmak için umount kullanabilirsiniz.

sudo umount /media/usb0
    
verilen cevap Sandro 14.05.2016 18:35

Etiketlerdeki diğer soruları oku