RPM을 설치할 때 종속성 문제로 인한 파일 경로를 해결하는 방법은 무엇입니까?

RPM을 설치할 때 종속성 문제로 인한 파일 경로를 해결하는 방법은 무엇입니까?

인터넷에 접속할 수 없고 cron 설치가 누락된 RHEL 6 서버가 있습니다.

이와 같이 crontab을 설치하려고 하는데 다음 오류가 발생합니다.

[root@netsrvr01 cron.d]# rpm -ivh /Downloads/crontabs-1.10-33.el6.noarch.rpm
warning: /Downloads/crontabs-1.10-33.el6.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
error: Failed dependencies:
        /etc/cron.d is needed by crontabs-1.10-33.el6.noarch
[root@netsrvr01 cron.d]# Error: 'NoneType' object has no attribute 'sendline'

무슨 뜻이에요 /etc/cron.d is needed? 나는 이러한 디렉토리를 가지고 있고 루트로 로그인했습니다. 안타깝게도 yum 다운로더를 사용할 수 있는 비슷한 컴퓨터가 없습니다.

속도 내용:

[root@netsrvr01 Downloads]# rpm -qpl /Downloads/crontabs-1.10-33.el6.noarch.rpm
warning: /Downloads/crontabs-1.10-33.el6.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
/etc/cron.daily
/etc/cron.hourly
/etc/cron.monthly
/etc/cron.weekly
/etc/crontab
/usr/bin/run-parts
/usr/share/man/man4/crontabs.4.gz

답변1

아이디어 #1 - 디렉터리가 이미 존재합니다.

먼저 명령을 실행하여 rpm -Uvh --test /Downloads/crontabs-1.10-33.el6.noarch.rpm비정상적인 내용이 보고되는지 확인하십시오. 그렇지 않은 경우 이 패키지를 설치하는 대신 업그레이드하십시오.

디렉토리가 이미 존재하기 때문에 불만을 제기하고 있다고 생각하지만 디렉토리가 누구인지는 확실하지 않습니다. 내 CentOS 6 시스템에서 디렉토리는 패키지가 소유한 것으로 보입니다 cronie.

$ rpm -qf /etc/cron.d
cronie-1.4.4-7.el6.x86_64

crontabs패키지 내용물을 보면 아래와 같습니다 .

$ repoquery -l crontabs
/etc/cron.daily
/etc/cron.hourly
/etc/cron.monthly
/etc/cron.weekly
/etc/crontab
/usr/bin/run-parts
/usr/share/man/man4/crontabs.4.gz

/etc/cron.d그러나 다음 명령을 실행하면 crontabs다음 리소스가 필요하다는 것을 알 수 있습니다.

$ rpm -qp --requires crontabs-1.10-33.el6.noarch.rpm 
/bin/bash  
/etc/cron.d  
config(crontabs) = 1.10-33.el6
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1

아이디어 #2 - 검증 cronie패키지

여기서 수요가 발생합니다. 패키지가 cronie올바르게 설치되었는지 확인하기 위해 다음 명령을 실행하겠습니다 .

$ rpm -V cronie --verbose
.........    /etc/cron.d
.........    /etc/cron.d/0hourly
.........  c /etc/cron.deny
.........  c /etc/pam.d/crond
.........    /etc/rc.d/init.d/crond
.........  c /etc/sysconfig/crond
.........    /usr/bin/crontab
.........    /usr/sbin/crond
.........    /usr/share/doc/cronie-1.4.4
.........  d /usr/share/doc/cronie-1.4.4/AUTHORS
.........  d /usr/share/doc/cronie-1.4.4/COPYING
.........  d /usr/share/doc/cronie-1.4.4/ChangeLog
.........  d /usr/share/doc/cronie-1.4.4/INSTALL
.........  d /usr/share/doc/cronie-1.4.4/README
.........  d /usr/share/man/man1/crontab.1.gz
.........  d /usr/share/man/man5/crontab.5.gz
.........  d /usr/share/man/man8/cron.8.gz
.........  d /usr/share/man/man8/crond.8.gz
.........    /var/spool/cron

답변2

설치 디스크가 있고 해당 디스크에서 이 기능을 제공하는 경우 복구를 시도해 볼 수 있습니다. 또는 설치 CD에서 모든 cron 패키지를 설치해 볼 수도 있습니다.

관련 정보