Уклонт ли эмулятор терминала выполняет программу, всегда косвенно через оболочку?

Если вы объедините свои двоичные файлы в свои собственные пакеты RPM, то получить список того, что они собой представляют и где они были установлены, тривиально.

Пример

$ rpm -ql httpd| head -10
/etc/httpd
/etc/httpd/conf
/etc/httpd/conf.d
/etc/httpd/conf.d/README
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.modules.d
/etc/httpd/conf.modules.d/00-base.conf

Я бы посоветовал поместить ваши исполняемые файлы в / usr / bin или / usr / local / bin и развернуть свой собственный RPM. Сделать это довольно тривиально, и, управляя развертыванием программного обеспечения с помощью RPM, вы сможете пометить пакет с номером версии, что еще больше упростит управление конфигурацией вашего программного обеспечения при его развертывании.

Определить, какие RPM «мои»?

Вы можете построить свои RPM, используя некоторую известную информацию, которую затем можно согласовать до начала сборки. Я часто создаю пакеты в системах, принадлежащих моему домену, поэтому легко найти RPM, просто просмотрев все RPM, которые были созданы на хосте X.mydom.com.

Пример

$ rpm -qi httpd
Name        : httpd
Version     : 2.4.7
Release     : 1.fc19
Architecture: x86_64
Install Date: Mon 17 Feb 2014 01:53:15 AM EST
Group       : System Environment/Daemons
Size        : 3865725
License     : ASL 2.0
Signature   : RSA/SHA256, Mon 27 Jan 2014 11:00:08 AM EST, Key ID 07477e65fb4b18e6
Source RPM  : httpd-2.4.7-1.fc19.src.rpm
Build Date  : Mon 27 Jan 2014 08:39:13 AM EST
Build Host  : buildvm-20.phx2.fedoraproject.org
Relocations : (not relocatable)
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : http://httpd.apache.org/
Summary     : Apache HTTP Server
Description :
The Apache HTTP Server is a powerful, efficient, and extensible
web server.

Это будет строка Build Host в RPM.

Использование / usr / bin / company?

Я бы, вероятно, не одобрил использование такого местоположения, как это. В основном потому, что для этого требуется, чтобы все ваши системы были дополнены $ PATH , чтобы включить его, и это нестандартно. Настройка вещей всегда была «правом прохода» для каждого желающего администратора Unix, но я всегда отговариваю от этого, за исключением случаев крайней необходимости.

Самая большая проблема с подобными настройками заключается в том, что они становятся бременем как для поддержки вашей среды, так и для ознакомления новых людей с тем, как использовать вашу среду.

Могу я просто получить список файлов из RPM?

Да, вы можете этого добиться, но для этого потребуется 2 вызова RPM.Первый создаст список пакетов, которые были созданы на хосте X.mydom.com. После получения этого списка вам нужно будет повторно вызвать запрос RPM для файлов, принадлежащих каждому из этих пакетов. Вы можете добиться этого с помощью одного вкладыша:

$ rpm -ql $(rpm -qa --queryformat "%-30{NAME}%{BUILDHOST}\n" | \
    grep X.mydom.com | awk '{print $1}') | head -10
/etc/pam.d/run_init
/etc/sestatus.conf
/usr/bin/secon
/usr/bin/semodule_deps
/usr/bin/semodule_expand
/usr/bin/semodule_link
/usr/bin/semodule_package
/usr/bin/semodule_unpackage
/usr/sbin/fixfiles
/usr/sbin/genhomedircon
0
28.11.2018, 02:17
0 ответов

Теги

Похожие вопросы