当我将 SD 卡插入读卡器时,slackware 会创建一个挂载点并挂载我的卡卷。卸载卷时,挂载点消失。我如何手动实现这一点?
当我尝试使用命令挂载卷时mount
,挂载点文件夹必须存在,并且文件夹不会在 上消失umount
。如果不存在挂载点,有没有办法创建挂载点?并确保文件夹在 上消失umount
?
我可以通过一些开关来实现这一点而不用编写完整的脚本吗?
谢谢。
答案1
在现代 Linux 系统中,udev 子系统负责将事件发送到执行此操作的某个更高级别的程序或子系统。您的发行版有这样的系统,可能是 HAL。您可以编写 udev 规则来自己执行此操作。例如,以下内容在添加和删除备份驱动器的上下文中实现了您想要的操作:
# Auto mount the USB backup drive we attach. Theoretically should be done from HAL.
ACTION=="add", ENV{ID_FS_LABEL_ENC}=="backups", PROGRAM="user_mount_backup.sh"
ACTION=="remove", ENV{ID_FS_LABEL_ENC}=="backups", PROGRAM="user_umount_backup.sh"
用户挂载备份.sh:
# Auto mount the USB backup drive we attach. Theoretically should be done from HAL.
#!/bin/bash
mnt_pt=/media/backups
[[ -d $mnt_pt ]] || mkdir $mnt_pt && mount -L backups $mnt_pt &
用户卸载备份.sh:
#!/bin/bash
mnt_pt=/media/backups
umount $mnt_pt && rmdir $mnt_pt &
答案2
答案很简单,现在您不能。Slackware 将通过更高级别的软件来实现这一点,该软件在挂载之前创建目录,并在卸载之后删除目录。
由于没有开关mount
或unmount
命令来为您执行此操作,因此从命令行实现相同操作的唯一方法是编写脚本来包装命令并根据需要创建和删除目录。
答案3
在 /media 或 /mnt 或您选择的目录中创建一个文件夹,然后提供挂载点,如下所示:
mount -t typeFilesystem(vfat/NTFS/EXT#) /media/sdcard