AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-827046

Émilien's questions

Martin Hope
Émilien
Asked: 2019-03-22 04:33:06 +0800 CST

在外部磁盘驱动器上自动挂载逻辑卷 LVM 分区

  • 5

问题

我有一个外部硬盘驱动器,其中一个逻辑卷可以正常工作,可以挂载:
udisksctl mount -b /dev/mapper/wd0hdd-wd0
它将创建一个新目录,在该目录下/media/username/wd是预期的行为,因为wd我的磁盘标签是我wd0的逻辑卷的名称和username我的用户名。

但是,我希望当我插入外部 HDD 时,这个逻辑卷可以自动挂载(无需输入此命令),就像 udisks2 通常使用标准 linux 分区(非 lvm)一样。[问题1]

此外,我注意到它/media/username/wd属于具有 755 权限的 root:root,这是有问题的,因为我无法以普通用户的身份在分区的根目录创建文件/目录。对于标准的linux分区,创建的目录属于username预期[问题2]

最后,Nautilus 不会像往常一样在标准 linux 分区的左窗格中显示卷,而是在Other Locations. 但是,gnome-extension在我的其他驱动器下方正确Place Status Indicator列出了新的。wd[问题3]

预期的解决方案

找到一种方法来告诉 udisks2 考虑将给定的逻辑卷作为可移动媒体自动挂载。

复制

使用单个逻辑分区设置外部驱动器:

sudo lvmdiskscan # Suppose sdc is the candidate
sudo pvcreate /dev/sdc
sudo vgcreate wd0hdd /dev/sdc1
sudo lvcreate -l 100%FREE -n wd0 wd0hdd
sudo mkfs.ext4 /dev/wd0hdd/wd0

【随性】使用 Gnome-Disk 将磁盘的标签更改为wd

重新启动 Ubuntu 并查看 nautilus 中发生了什么以及/media/username何时发生

  • 引导期间插入的磁盘
  • 启动完成后插入磁盘

诊断

告诉我这里有什么用处。

我试图在日志中找到一些有用的东西来帮助跟踪问题,journactl 没有显示任何相关内容,但是udisksctl monitor在我安装设备后可能会有一些关于出了什么问题的提示udisksctl mount -b /dev/mapper/wd0hdd/wd0

17:49:54.019: Added /org/freedesktop/UDisks2/jobs/2
 org.freedesktop.UDisks2.Job:
   Bytes:              0
   Cancelable:         true
   ExpectedEndTime:    0
   Objects:            ['/org/freedesktop/UDisks2/block_devices/dm_2d5']
   Operation:          filesystem-mount
   Progress:           0.0
   ProgressValid:      false
   Rate:               0
   StartTime:          1553186994019094
   StartedByUID:       0
17:49:54.095: /org/freedesktop/UDisks2/jobs/2: org.freedesktop.UDisks2.Job::Completed (true, '')
17:49:54.095: Removed /org/freedesktop/UDisks2/jobs/2
17:49:54.140: /org/freedesktop/UDisks2/block_devices/dm_2d5: org.freedesktop.UDisks2.Filesystem: Properties Changed
 MountPoints:          /media/mil/wd1
17:49:54.141: /org/freedesktop/UDisks2/block_devices/dm_2d5: org.freedesktop.UDisks2.Block: Properties Changed
 UserspaceMountOptions:        uhelper=udisks2
17:49:54.141: /org/freedesktop/UDisks2/block_devices/sdd: org.freedesktop.UDisks2.PartitionTable: Properties Changed
 Partitions:           ['/org/freedesktop/UDisks2/block_devices/sdd1']

UserspaceMountOptions: uhelper=udisks2如果我设法更改这些安装选项,我不知道这是否对我有帮助。


失败的尝试

该HintAuto物业和udisks2

由于在 udisks2 中,这HintAuto是一个可以被覆盖的属性。UDISKS_AUTO我发现物理分区udisksctl info -b /dev/sdc1 | grep HintAuto-> HintAuto: true。但是,HintAuto对于逻辑设备是错误的udisksctl info -b /dev/mapper/wd0hdd-wd0 | grep HintAuto->HintAuto: false

由于使用 udev 规则和 udisks2 自动挂载 LVM 逻辑卷中讨论的 udev 规则,我设法覆盖了逻辑卷的 HintAuto 的值,但是它并没有解决我的问题,因为它udisks2仍然没有自动挂载分区。

不满意的解决方案

通过/etc/fstab直接编辑或使用 gnome-disk-utility 来使用,它只是解决了启动时自动挂载的问题,但如果我插入磁盘则不能。此外,它既不能解决问题 2 也不能解决问题 3(我认为 x-gvfs-show 会解决,但没有),据我所知/etc/fstab,它适用于静态驱动器,而 udisks2 适用于所有类型的可移动驱动器,所以我更喜欢 udisks2解决方案。

使用由某个守护进程启动的很棒的 shell 脚本来检测磁盘何时插入。嗯,也许如果我别无选择,但我没有找到解决上述所有三个问题的任何脚本。此外,我仍然相信这项工作可以由 udisks2 完成。

告诉 udisks2 自动挂载所有逻辑卷。这是不希望的,因为我的一些逻辑卷是其他 linux 系统。无论如何,我没有找到任何方法来做到这一点。


动机

人们可能会问:
- 为什么在整个磁盘上使用单个 LVM 分区而不是单个标准分区?亲!
- 是的你是对的 !然而,我在这里尝试实现的只是我最终想要实现的一个更简单的场景。我有另一个磁盘,我在其上安装了一个小型 ESP 分区以在 EFI 模式下进行多重引导,另一个 LVM 物理卷包含两个具有两个不同 linux 的逻辑卷和一个用于媒体数据存储的第三个巨大逻辑卷。大多数时候这个磁盘只是插在我的个人电脑上,所以我只使用媒体数据存储分区进行备份和音乐,但有时我没有电脑去其他地方,只带我的磁盘,所以我可以自己启动linux、emacs 和音乐播放器按我喜欢的方式配置,并在愉快的环境中开始工作。在这种情况下,LVM 对于此设置非常有用,可以轻松调整大小和管理加密。

usb-drive lvm automount udisks external-hdd
  • 1 个回答
  • 3514 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve