挂载分区时如何让Ubuntu要求输入密码?

rɑː*_*dʒɑ 5 mount policykit

我已经在旧版本的 Ubuntu 中使用过这种功能。当我想挂载分区时,它会询问我密码。现在我想在 Ubuntu 12.04 中启用这种功能。

我怎样才能做到这一点?

Pea*_*chy 8

根据Ubuntu ManPage Repositorypklocalauthority - PolicyKit Local Authority 区分了用户认证(让系统前的用户证明他确实是用户)和管理员认证(让系统前的用户证明他是用户)真的是管理员)

因此,您可以使用此policykit为安装所有(内部和外部)设备提供管理身份验证。

为此,请按照下列步骤操作:

  1. 打开终端(CTRL+ ALT+ T)和类型:

    gksu gedit /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在第 4 行中,查找ResultActive=yes并将其更改为:

    ResultActive=auth_admin_keep 
    
    Run Code Online (Sandbox Code Playgroud)
  3. 保存关闭文件。

Ubuntu 现在在安装所有驱动器(内部和外部驱动器)时需要密码。


对于特定分区:

在 10.04 和更新版本中,除非在文件系统表 ( fstab) 文件中定义了密码,否则允许挂载所有设备(内部和外部)而无需询问密码。

因此,要使 Ubuntusudo在挂载特定分区时提示用户输入密码,您需要编辑您的fstab文件。

为此,请按照下列步骤操作:

  1. 打开终端并输入:

    gksu gedit /etc/fstab
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在最后一行,使用默认选项添加分区的UUID

    您可以通过blkid在终端中运行来找出分区的 UUID 。

    例如:

    $ sudo blkid
    /dev/sda1: UUID="5474ce02-5c07-4002-a0e7-10c8bc5dba2c" TYPE="ext4" 
    /dev/sda2: LABEL="windows" UUID="7355DDFB0563F31F" TYPE="ntfs" 
    /dev/sda5: LABEL="data" UUID="7e3fbc57-03fe-4742-bb72-756f31852059" TYPE="ext4" 
    /dev/sda6: LABEL="films" UUID="a319fb28-3061-404f-abbc-6519cf81c6c9" TYPE="ext4" 
    /dev/sda7: LABEL="tv" UUID="5D10E5D66886BCCF" TYPE="ntfs" 
    /dev/sda8: UUID="12d16683-5530-454e-809b-1a30ed47a8c9" TYPE="swap" 
    
    Run Code Online (Sandbox Code Playgroud)

    现在您知道了 UUID,您可以将其添加到fstab文件中。但首先,您需要创建一个将挂载分区的挂载点

    你可以通过运行来做到这一点:

    sudo mkdir /path/to/dir/name-dir
    
    Run Code Online (Sandbox Code Playgroud)

    在我的示例中,我想将分区挂载在 /media/data 下:

    sudo mkdir /media/data
    
    Run Code Online (Sandbox Code Playgroud)

    现在,我可以简单地添加以下行,以确保 Ubuntu 在挂载“数据”分区时提示输入密码:

    UUID=7e3fbc57-03fe-4742-bb72-756f31852059 /media/data   ext4 defaults 0 0
    
    Run Code Online (Sandbox Code Playgroud)
  3. 保存关闭文件。

笔记:

默认选项使用的默认选项RWSUID开发高管汽车nouser,和异步

用户允许普通用户来安装设备,而nouser让只有根来安装设备。

有关详细信息,请访问如何编辑和理解 /etc/fstab