dnf 업데이트 설치
dnf(Dandified Yum)는 레드햇 계열 리눅스 배포판에서 사용되는 패키지 관리자 도구.
의존성 문제를 해결해주며 프로그램을 설치하고 삭제하는 데 사용.
dnf 저장소 관리
~]# dnf repolist # 사용 가능한 저장소 보기
~]# dnf repolist all # 모든 저장소(비활성 포함) 보기
~]# dnf config-manager --set-enabled crb # crb 저장소 활성화
# 활성화 후 /etc/yum.repos.d/rocky.repo 파일에서 [crb]섹션 enabled=1로 설정된 것을 확인.
~]# dnf config-manager --set-disabled [저장소] # 저장소 비활성화
~]# dnf install epel-release # epel-release 저장소 설치
# epel(Extra Packages for Enterprise Linux)은 레드햇 계열 배포판에서 사용할 수 있는 확장 패키지 모음
# .repo 파일을 직접 생성하여 저장소 추가 가능.Bashdnf 프로그램 관리
~]# dnf clean all # dnf 캐시를 삭제
~]# dnf list installed # 설치된 패키지 목록
~]# dnf check-update # 설치된 프로그램 업데이트 가능한 목록
~]# dnf update # 업데이트 가능한 목록을 업데이트
~]# dnf update --disablerepo=mariadb # 특정 저장소 - mariadb - 제외하고 업데이트
~]# dnf list [패키지] # 패키지 리스트 목록 확인
~]# dnf install [패키지] [패키지] [...] # 패키지 설치 - 복수 패키지 설치 가능
~]# dnf remove [패키지] # 패키지 삭제
~]# dnf repoquery --requires certbot # 의존성 패키지 목록 확인
# DNF 패키지 관리자가 자동으로 설치한 의존성 패키지 중 더 이상 필요하지 않은 패키지들을 제거하는 데 사용
~]# dnf autoremove # 의존성 해제된 프로그램 자동제거
# semanage 가 설치 되지 않았을 경우
~]# dnf provides */semanage # semanage 명령을 제공하는 패키지를 식별Bashdnf 트랜잭션 관리
~]# dnf history # 트랜잭션 기록
~]# dnf history info [트랜잭션 ID] # 트랜잭션 세부정보
~]# dnf history undo [트랜잭션 ID] # 트랜잭션 되돌리기
~]# dnf history redo [트랜잭션 ID] # 트랜잭션 재실행
~]# dnf history rollback [트랜잭션 ID] # 트랜잭션 롤백BashRPM DB 손상되었을 때
### 증상 ###
오류: rpmdb: BDB0113 Thread/process 656434/140367036869504 failed: BDB1507 Thread died in Berkeley DB library
오류: db5 error(-30973) from dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
오류: cannot open Packages index using db5 - (-30973)
오류: /var/lib/rpm 안의 패키지 데이터베이스를 열 수 없습니다
오류: Error: rpmdb open failedBash~]# cp -a /var/lib/rpm /var/lib/rpm.bak # 현재 상태 백업
~]# rm -f /var/lib/rpm/__db* # 잠긴 파일 제거
~]# rpm --rebuilddb # 데이터베이스 복구
~]# rpm -qa # rpm 검사
# RPM DB가 정상적으로 복구되었다면 /var/lib/rpm.bak 백업 파일을 삭제BashPHP 설치를 위한 Remi repository 설치 활성
Remi 설치를 위해 EPEL(Extra Packages for Enterprise Linux) 저장소가 설치되어 있는지 확인
dnf repolist all
# $(rpm -E %rhel)는 현재 Rocky Linux 버전에 맞는 저장소를 자동으로 가져옴.
~]# dnf install https://rpms.remirepo.net/enterprise/remi-release-$(rpm -E %rhel).rpm -y
# 저장소 활성화
# dnf module list php 명령어로 현재 사용 가능한 PHP 버전을 확인.
# remi 저장소의 특정 버전을 활성화. php:remi-8.4는 예시이며, 설치하려는 PHP 버전.
~]# dnf module reset php
~]# dnf module enable php:remi-8.4 -y
# 기존 PHP 저장소 비활성화
~]# dnf module disable php
# dnf config-manager 명령어로 저장소 비활성화:
# 만약 remi-safe와 같은 특정 저장소를 비활성화해야 하는 경우,
# dnf config-manager --set-disabled <저장소 이름> 명령어를 사용.
# 예를 들어, remi-safe 저장소를 비활성화하려면 다음 명령을 실행
~]# dnf config-manager --set-disabled remi-safe
Bash- 포스트 태그:
- EPEL
- Remi
- repository
- update
- yum
- 포스트 위치:
- linux
- whitepapers
<< 이전 페이지



