동기화하지 않고 Fedora에서 [no install]을 검색하세요.

동기화하지 않고 Fedora에서 [no install]을 검색하세요.

dnf사전에 아무것도 동기화하지 않고 Fedora에서 ( 를 사용하여) 패키지를 검색할 수 있는지 궁금합니다 .

나는 읽었다페도라 위키rpm에 대해, 하지만 , 및 의 값을 이해하지 못하는 것 같습니다 . 제가 이해하고 있는 유일한 것은 패키지 다운로드를 관리하고 필요한 경우 패키지를 설치하는 것입니다.metadata_expiremetadata_timer_syncdnf-makecache timerdnf-automatic

true로 설정하면 캐시에 아직 없는 rpm 파일을 다운로드하려고 시도하지 않으므로 cacheonly설치( )가 실패합니다 .sudo rpm install package_name

나는 달성하고 싶은 것을 설명하려고 노력할 것입니다.

  • sudo 없이(그래서 긴 비밀번호를 입력할 필요가 없음) 사전에 메타데이터를 동기화할 필요 없이 패키지를 검색하는 기능... (이것이 sudo와 별도의 캐시인지는 상관없습니다).
  • 최신 버전의 패키지를 오류 없이 설치할 수 있도록 설치 시(Sudo 사용) 필요한 모든 항목을 업데이트하세요.

두 가지 "모드" 중 첫 번째에서 캐시된 정보를 사용해야 하는 경우 이상적으로는 수동 개입 없이 "합리적인" 시간(예: 하루에 한 번?)마다 캐시를 ​​업데이트하는 작업을 어떻게든 "자동화"하고 싶습니다. .

내 자신을 더 잘 설명하기 위해 내가 이 일을 하고 싶은 이유를 설명하려고 합니다.

(그래픽 소프트웨어 관리자를 사용하지 않기 때문에) 패키지를 많이 검색하는데 5~10초 정도의 대기 시간이 여러 번 정말 짜증납니다. 전체 웹 브라우저를 열고 인터넷 검색하는 것보다 더 빠른 방법으로 터미널에서 패키지를 검색해 보고 싶습니다.

다들 감사 해요! 저는 Fedora를 처음 접했고 패키지 관리자가 제가 원하는 방식으로 작동하도록 하는 방법이나 그것이 가능한지 잘 모르겠습니다.

답변1

sudo 없이 패키지 검색(따라서 긴 비밀번호를 입력할 필요 없음)...

이를 위해 에스컬레이션된 권한(예: )을 사용하지 않고도 저장소 내에서 검색하는 것이 전적으로 가능합니다 sudo. 보통이면 dnf search packagename충분합니다.

...그리고 사전에 메타데이터를 동기화할 필요가 없습니다... (이것이 sudo와 별도의 캐시인지는 상관없습니다).

제가 이해한 것이 맞다면 중앙 저장소에서 검색해 보시겠어요?아니요DNF를 먼저 통과해야 하나요? 글쎄요, 그건 불가능할 것 같습니다... (제가 아는) 어떤 패키지 관리자도 이 작업을 수행하지 않습니다.


최신 버전의 패키지를 오류 없이 설치할 수 있도록 설치 시(Sudo 사용) 필요한 모든 항목을 업데이트하세요.

다시 한 번 말씀드리지만, 제가 올바르게 이해했다면 다운로드하고 싶으실 것입니다.최신소프트웨어 버전에서는 캐시를 업데이트할 필요가 없나요? 대답은 '아니요'입니다. 캐시가 알고 있는 최신 버전을 다운로드합니다. 예를 들어 마지막으로 캐시를 업데이트했을 때 "패키지 X" 버전이 3.5이고 새 버전이 3.9인 경우 3.5를 다운로드합니다.

마지막 지점에 대한 연속체로서 캐시가 만료되지 않도록 설정할 수 있습니다(언급한 대로 수동으로 새로 고칠 계획이 아니라면 이는 좋은 생각이 아닙니다). 그러나 이 경우에는 더 좋습니다.연장하다타임 아웃. 이를 수행하려면 다음 /etc/dnf/dnf.conf과 같이 편집할 수 있습니다.

# see `man dnf.conf` for defaults and possible options

[main]
gpgcheck=True
installonly_limit=3
clean_requirements_on_remove=True
best=False
skip_if_unavailable=True
fastestmirror=True
metadata_expire=72        # default is 48 hrs.
metadata_timer_sync=72    # default is 3 hrs.

이상적으로는 수동 개입 없이 "합리적인" 시간(예: 하루에 한 번?)마다 캐시를 ​​업데이트하는 작업을 어떻게든 "자동화"하고 싶습니다.

필요한 경우 cronjob을 생성하여 백그라운드에서 캐시를 새로 고칠 수 있습니다. 어떻게 해야 할지 모르신다면 댓글로 @me를 남겨주시면 제가 해결해 드리겠습니다.

답변2

당신은 그것을 사용할 수 있습니다dnf -C search linux

맨페이지에서:

       -C, --cacheonly
              Run entirely from system cache, don't update the cache and use it even in case it is expired.

              DNF uses a separate cache for each user under which it executes. The cache for the root user is called the system cache. This switch allows  a
              regular  user read-only access to the system cache, which usually is more fresh than the user's and thus he does not have to wait for metadata
              sync.

관련 정보