我更习惯 Debian,所以 yum 和 CentOS 对我来说有点陌生。
显然,lsblk 在该系统上不可用。我尝试通过 yum 安装它,但没有成功。我只是“无事可做”。
我更新了 CentOS-Base.repo 文件并运行 yum clean all。仍然没有找到该包。
我的下一步应该是什么?
答案1
它位于以下包中。您可以使用此命令在 CentOS 6+ 上安装它:
$ sudo yum install util-linux-ng
例子
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
vda 252:0 0 10G 0 disk
├─vda1 252:1 0 500M 0 part /boot
└─vda2 252:2 0 9.5G 0 part
├─vg_mungr-lv_root (dm-0) 253:0 0 8.6G 0 lvm /
└─vg_mungr-lv_swap (dm-1) 253:1 0 992M 0 lvm [SWAP]
您可以使用以下命令查看程序所在的包:
$ which lsblk
/bin/lsblk
$ rpm -qf /bin/lsblk
util-linux-ng-2.17.2-12.9.el6_4.3.x86_64
查找其包的其他方法
$ yum whatprovides */lsblk
Loaded plugins: fastestmirror, priorities, refresh-packagekit
Loading mirror speeds from cached hostfile
* base: centos.mirrors.tds.net
* epel: fedora-epel.mirror.lstn.net
* extras: centos.someimage.com
* updates: mirror.beyondhosting.net
76 packages excluded due to repository priority protections
util-linux-ng-2.17.2-12.9.el6.i686 : A collection of basic system utilities
Repo : base
Matched from:
Filename : /bin/lsblk
...
您还可以使用akarepoquery
搜索来查找提供特定可执行文件的包filename
。-f
:
$ repoquery -f */lsblk
util-linux-ng-0:2.17.2-12.9.el6_4.2.i686
util-linux-ng-0:2.17.2-12.9.el6_4.3.x86_64
util-linux-ng-0:2.17.2-12.9.el6_4.2.x86_64
util-linux-ng-0:2.17.2-12.9.el6_4.3.i686
util-linux-ng-0:2.17.2-12.9.el6.i686
util-linux-ng-0:2.17.2-12.9.el6.x86_64
或者你可以使用这个来做到这一点:
$ repoquery --whatprovides */lsblk
util-linux-ng-0:2.17.2-12.9.el6_4.2.i686
util-linux-ng-0:2.17.2-12.9.el6_4.3.x86_64
util-linux-ng-0:2.17.2-12.9.el6_4.2.x86_64
util-linux-ng-0:2.17.2-12.9.el6.x86_64
util-linux-ng-0:2.17.2-12.9.el6.i686
util-linux-ng-0:2.17.2-12.9.el6_4.3.i686
请注意,上述大多数示例中的参数都是*/lsblk
。这允许repoquery
搜索路径可能变化的任何匹配项,即*/
.