如何像 nautilus 一样使用 udisks 在 /media/userName/ 中安装驱动器

如何像 nautilus 一样使用 udisks 在 /media/userName/ 中安装驱动器

更新:Ubuntu 16.04+ 包含一个名为 的实用程序disks;在 dash 中搜索。这是一个用于安装/处理磁盘的 GUI。我使用此工具来安装或隐藏驱动器。


在我当前安装的 Ubuntu 13.10 Unity 中,当我在 nautilus 中单击驱动器时,它会被挂载到/media/username/mountedDrive

我读到过 nautilus 可以udisks做到这一点。基本上,我想udisks在启动时使用自动安装我的驱动器方法

问题是,它将驱动器安装在 中/media/mountedDrive,但我希望它像 nautilus 一样在/media/username/mountedDrive

我希望我的 NTFS 数据驱动器自动安装在/media/bsienn/

$ blkid

/dev/sda1: LABEL="System Reserved" UUID="8230744030743D6B" TYPE="ntfs" 
/dev/sda2: LABEL="Windows 7" UUID="60100EA5100E81F0" TYPE="ntfs" 
/dev/sda3: LABEL="Data" UUID="882C04092C03F14C" TYPE="ntfs" 
/dev/sda5: UUID="8768800f-59e1-41a2-9092-c0a8cb60dabf" TYPE="swap" 
/dev/sda6: LABEL="Ubuntu Drive" UUID="13ea474a-fb27-4c91-bae7-c45690f88954" TYPE="ext4" 
/dev/sda7: UUID="69c22e73-9f64-4b48-b854-7b121642cd5d" TYPE="ext4" 

$ sudo fdisk -l

Disk /dev/sda: 160.0 GB, 160000000000 bytes
255 heads, 63 sectors/track, 19452 cylinders, total 312500000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x8d528d52

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   117730069    58761611    7  HPFS/NTFS/exFAT
/dev/sda3       158690072   312494116    76902022+   7  HPFS/NTFS/exFAT
/dev/sda4       117731326   158689279    20478977    5  Extended
/dev/sda5       137263104   141260799     1998848   82  Linux swap / Solaris
/dev/sda6       141262848   158689279     8713216   83  Linux
/dev/sda7       117731328   137263103     9765888   83  Linux

Partition table entries are not in disk order

$ cat /etc/fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda7 during installation
UUID=69c22e73-9f64-4b48-b854-7b121642cd5d /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=8768800f-59e1-41a2-9092-c0a8cb60dabf none            swap    sw              0       0

答案1

接受的答案并没有真正回答这个问题,即如何使用 udisks 安装和卸载硬盘就像 Nautilus 那样单击磁盘时。您正在寻找的命令是udiskctl

它非常简单,并且还可以与加密磁盘一起使用!

挂载(加密磁盘):

解锁磁盘:

$ udisksctl unlock -b /dev/sdb1
Unlocked /dev/sdb1 as /dev/dm-3.

记下解锁设备的位置(此处/dev/dm-3)。然后自动挂载它:

$ udisksctl mount -b /dev/dm-3 
Mounted /dev/dm-3 at /media/jmiserez/samsung1000.

卸载(加密磁盘):

$ udisksctl unmount -b /dev/dm-3
Unmounted /dev/dm-3.
$ udisksctl lock -b /dev/sdb1
Locked /dev/sdb1.

对于未加密的磁盘,只需在开始和结束时省略锁定/解锁命令。

答案2

如您所见,除了/dev/sda5以及 之外,/dev/sda7没有其他分区的条目/etc/fstab。您可以按照以下步骤手动挂载分区。

  • 首先卸载在创建入口点之前,请先在所有分区中执行此操作/etc/fstab。您可以使用命令:sudo umount /dev/sdaX。替换X以及要卸载的分区号。卸载所有分区的最佳方法是使用以下命令:

    sudo umount -a
    
  • 由于您要将分区挂载在/media/user/mount-drive;您必须创建要挂载分区的挂载点。因此,您必须在那里创建目录才能挂载分区。在终端中执行以下操作以创建目录(挂载点):

    sudo mkdir /media/user/sda1 /media/user/sda2 /media/user/sda3 /media/user/sda6
    

    代替user使用您的 ubuntu 用户的名称。即bsienn我认为。

  • 现在您必须进行更改才能/etc/fstab挂载所有分区。执行以下命令即可完成此操作:

    sudo cp /etc/fstab /etc/fstab.orginal
    sudo nano /etc/fstab
    

    转到最后一行并添加以下行:

    UUID=8230744030743D6B /media/user/sda1    ntfs    errors=remount-ro 0       1
    UUID=60100EA5100E81F0 /media/user/sda2    ntfs    errors=remount-ro 0       1
    UUID=882C04092C03F14C /media/user/sda3    ntfs    errors=remount-ro 0       1
    UUID=13ea474a-fb27-4c91-bae7-c45690f88954 /media/user/sda6    ext4    errors=remount-ro 0       1
    

    再次更换user使用/media/user/sdaX您的 ubuntu 帐户名。

    稍微解释一下:UUID="包含硬盘分区的ID,第一个是分区/dev/sda1,第二个是/dev/sda2分区,依此类推。sudo blkid命令对于获取分区信息非常有用,例如唯一唯一标识符文件系统类型分区条目等等。因此任何人都可以使用它来获取他们的信息。/media/user/sda1是第一个分区的挂载条目,依此类推。记住我为什么在上面创建了 4 个目录。是您的第一个ntfs分区的文件系统类型:/dev/sda1。它也可能为其他内容,例如:ext3,,,等等,您可以从我上面提到的命令中获取信息。其他信息对于所有类型的文件系统都是相同的,它会告诉如果发生任何错误,则ext4ntfsfatsudo blkidremount the file system in read-only mode 此链接是一个很棒的教程。

    Ctrl+x保存并退出。y提示保存时按。

  • 现在通过执行以下命令挂载所有分区:

    sudo mount -a
    

    如果您想要挂载任何特定分区,您可以使用:sudo mount /dev/sda1i,e 挂载第一个分区等等。

现在,每次启动系统时,所有分区都会自动挂载。您可以通过重新启动系统来检查。:)

如果您需要进一步的帮助或者出现问题,请回复。

编辑

我忘了看图片了,其实你可以用/media/bseinn/你想要的名字创建文件夹。例如/media/bseinn/data可以创建 而不是/media/bseinn/sda3;同样/media/bseinn/ubuntudrive可以创建 而不是/media/bseinn/sda6。你必须在/etc/fstab文件中给出相同的名称。希望你能理解。

答案3

使用 udisksctl 和分区标签按标签挂载,无需 root 密码。以名为 Games 的分区为例:

udisksctl mount -b /dev/disk/by-label/Games

用于ls获取标签:

ls /dev/disk/by-label

相关内容