如何以非 root 用户身份获取有关物理卷的信息

如何以非 root 用户身份获取有关物理卷的信息

您好,pvs 命令给出以下输出:

 PV         VG     Fmt  Attr PSize  PFree
 /dev/sd**  ***** lvm2 a-   59.49g 47.49g
 /dev/sd**  ***** lvm2 a-   25.00g  8.00m

这仅在我是 root 用户时有效。

是否可以使用不同的命令以非 root 用户身份获取此信息。

答案1

任何用户都可以通过 获取信息lsblk。它具有允许您获得简单输出、完整详细或自定义输出的选项。

尝试:

  • lsblk

    $ lsblk
    
    NAME                            MAJ:MIN  RM    SIZE  RO  TYPE  MOUNTPOINT
    sda                               8:0     0  238,5G   0  disk
    ├─sda1                            8:1     0      2M   0  part
    ├─sda2                            8:2     0    700M   0  part  /boot
    └─sda3                            8:3     0  206,4G   0  part
      ├─fed21_ssd_pcsolo-swap       253:0     0   29,8G   0  lvm   [SWAP]
      ├─fed21_ssd_pcsolo-root       253:1     0     80G   0  lvm   /
      ├─fed21_ssd_pcsolo-home       253:2     0     50G   0  lvm   /home
      └─fed21_ssd_pcsolo-tmp        253:3     0   46,6G   0  lvm   /tmp
    sdb                               8:16    0    2,7T   0  disk
    
  • lsblk -f (输出有关文件系统的信息)

  • lsblk -b (以字节为单位而不是以人类可读的格式打印 SIZE 列)或lsblk -m(输出有关设备所有者、组和模式的信息)
  • lsblk -O(大写“o”)这是完整详细的
  • lsblk -o(指定要打印哪些输出列)您可以定义自定义格式

答案2

pvs命令是 的一部分lvm。如果您以 root 身份需要为非 root 用户启用此功能,则可以使用setcap, 设置 lvm 可执行权限以执行默认情况下限制为 root 的操作。
这适用于需要执行 root 权限操作的任何可执行文件。

了解有关文件功能的更多信息:http://man7.org/linux/man-pages/man7/capability.7.html

一个例子:之前setcap

 $ pvs
 WARNING: Running as a non-root user. Functionality may be unavailable.
 /run/lvm/lvmetad.socket: connect failed: Permission denied
 WARNING: Failed to connect to lvmetad: Permission denied. Falling back to internal     scanning.
 /run/lvm/lvmetad.socket: connect failed: Permission denied
 /run/lock/lvm/P_global:aux: open failed: Permission denied
 Unable to obtain global lock.

setcap "cap_dac_override,cap_dac_read_search,cap_fowner,cap_fsetid,cap_setuid,cap_setpcap,cap_net_bind_service,cap_net_admin,cap_sys_chroot,cap_sys_admin,cap_sys_resource,cap_audit_control,cap_setfcap=+eip" /sbin/lvm 

$ pvs
WARNING: Running as a non-root user. Functionality may be unavailable.
PV         VG            Fmt  Attr PSize  PFree
/dev/sda2  centos        lvm2 a--  15.51g    0
/dev/sdb   DataPool      lvm2 a--  50.00g    0
/dev/sdc   DataPool      lvm2 a--  60.00g    0
/dev/sdd   DBArchivePool lvm2 a--  50.00g    0

请注意,我使用的大写字母比需要的大写字母多得多,可能是因为我只是复制了我曾经使用过的东西,但您可能会发现最小的大写字母组......

不要忘记引用您要设置的上限。

相关内容