Por ejemplo, puedo encontrar fácilmente que el comando de localización pertenece al paquete mlocate.i386.
yum search locate
mlocate.i386 : An utility for finding files by name
[mirror@home /]$ rpm -qa | grep locate
mlocate-0.15-1.el5.1
yum search updatedb
Loaded plugins: fastestmirror, protectbase
0 packages excluded due to repository protections
=========================================== Matched: updatedb ===========================================
mlocate.i386 : An utility for finding files by name
Pero no es tan fácil encontrar a qué paquete pertenece el comando gratuito:
yum search free // this command just returns too much informationy
rpm -qa | grep free
freetype-2.2.1-31.el5_8.1 // obviously not the package by which free command is installed
Entonces, ¿hay alguna forma conveniente de saber a qué paquete pertenece un comando específico en Linux? Por ejemplo, CentOS u otras distribuciones
linux
command-line
centos
package-management
enormemeow
fuente
fuente
which free
?$(...)
Es un hábito para mí.which free | xargs rpm -qf
Ejemplo de Ubuntu / Debian para verificar el paquete del
free
comando:fuente
$ dpkg -S */free$*
dpkg -S */firefox$*
que da múltiples resultados en un servidor que tiene instalado Firefox, ninguno en un servidor sin Firefox. Creo que no puede funcionar porquedpkg
es un comando que opera en los paquetes instalados localmente. Para encontrar paquetes no instalados, puede ir a packages.ubuntu.com/…dpkg -S "$(readlink -fn "$(which free)")"
.Para CentOS, ¿qué tal yum proporciona?
Utilizar
para averiguar dónde está
Para mi es en
/ usr / bin / free
Entonces puedes correr
y te dirá qué paquete lo tiene
fuente
the command
no estaba instalado o no estaba disponible en sus centos, podría usarloyum provides <command>
, porquewhich <command>
volveránot <command> in ...
Para todas las distribuciones basadas en red-hat, puede usar la utilidad de administración de paquetes yum
proporciona argumento especifica qué paquete proporciona cierta característica o archivo.
fuente