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

HSV*_*HSV 6 linux lvm

你好 pvs 命令给了我以下输出:

 PV         VG     Fmt  Attr PSize  PFree
 /dev/sd**  ***** lvm2 a-   59.49g 47.49g
 /dev/sd**  ***** lvm2 a-   25.00g  8.00m
Run Code Online (Sandbox Code Playgroud)

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

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

小智 8

任何用户都可以通过 获取信息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
               ?
    
    Run Code Online (Sandbox Code Playgroud)
  • lsblk -f (关于文件系统的输出信息)

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


csn*_*sny 4

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.
Run Code Online (Sandbox Code Playgroud)

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
Run Code Online (Sandbox Code Playgroud)

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

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