rpm
rpm [option] [패키지명]
옵션 | 설명 |
-U | 기존에 패키지 설치되어 있지 않다면 신규 설치 진행, 있다면 업그레이드 설치 |
-v | 설치 과정 중 사용자의 선택 등이 필요한 경우 확인을 받도록 하기 |
-h | 설치 진행과정을 화면에 출력 (#으로) |
-e | 패키지 삭제 (Erase) |
-i | 패키지 설치 |
-F | 설치할 프로그램이 이미 시스템상에 존재할 경우에만 설치. 업그레이드와 유사하나 프로그램 전부 재설치 |
--force | 충돌을 무시하고 강제로 설치 (--replacepkgs, --replacefiles, --oldpackage 옵션 모두 사용) |
--nodeps | 의존성 무시 |
-vv | 디버깅 정보 출력 |
--replacepkgs | 패키지 교체, 패키지가 이미 설치된 경우라도 무시하고 다시 설치 |
--replacefiles | 동일한 파일명이 있는경우 교체 |
--oldpackage | 예전 패키지로 교체 |
--excludedocs | 패키시 설치시 문서 파일은 설치하지 않음 |
--includedocs | 문서 파일 포함 |
--percent | 패키지 파일 설치시 % 표시 |
--aid | 의존성 검사후 의존성 패키지 설치 |
--test | 패키지를 실제 설치/삭제하지 않고 충돌 오류 점검하여 보고 |
-V (--verify) | 검증 |
설치 확인
rpm -q [option] [패키지명]
옵션 | 설명 |
-i | 설치된 패키지의 간략한 정보 출력 (패키지 이름, 버전, 설명) |
-a | 현 시스템에 설치된 모든 패키지 목록 출력 |
-p | 설치되거나 설치되지 않은 패키지 파일에 대한 질의 |
-f | 파일에 대한 패키지 질의 수행 |
-R | 대상 패키지와 의존성이 있는 패키지 목록 출력 |
--procides | 해당 패키지가 제공하는 기능목록 출력 |
-l | 패키지에 포함되어 있는 파일 출력 |
-s | 패키지에 포함되어 있는 파일의 상태 출력 |
-d | 문서 파일 출력 |
-c | (환경) 설정 파일 출력 |
--script | 설치와 제거 과정에서 상용되는 쉘 스크립트가 있다면 쉘 스크립트 출력 |
--dump |
파일의 상태
nomal = 정상/양호
installed = 설치되지 않음/설치가 필요
replaced = 다른 것으로 교체
rpm 설치
옵션 | 설명 |
rpm -i | |
rpm -ivh | |
rpm -ivh [패키지명] --replacepksg | 설치되어 있는 패키지 교체 |
rpm 제거
옵션 | 설명 |
rpm -ev [패키지명] | |
rpm -e | |
rpm -e [패키지 파일] --nodeps | 제거시 의존성 무시 |
rpm -e [패키지명] --test | 패키지를 제거하지 않고 충돌 사항을 점검한 후 보고 |
rpm 조회
이미 설치된 패키지 조회
옵션 | 설명 |
rpm -qa | more | 설치된 패키지 전체를 조회 ex) rpm -qa | grep 패키지명 |
rpm -qa [패키지명] | 특정 패키지가 설치되어 있는지 확인 |
rpm -qf [파일] | 파일이 어떤 패키지에 속해 있는지 확인하는 옵션 |
rpm -ql [패키지명] | 패키지가 어떤 파일들을 설치했는지 확인 |
rpm -qi [패키지명] | 단순히 설치된 패키지의 정보를 보는 옵션 |
패키지 업그레이드
옵션 | 설명 |
rpm -U | |
rpm -Uvh | 설치되어 있지 않은 패키지의 경우 -ivh 옵션과 동일 |
rpm -Fvh | 이전 버전의 패키지가 있는 경우에만 설치 |
rpm -F | 이전 버전의 패키지가 있는 경우에만 설치 |
설치하지 않은 패키지
아직 패키지를 설치하지 않고 패키지 파일만 있는 경우
옵션 | 설명 |
rpm -qlf [패키지명] | 패키지 파일에 포함된 파일 확인 |
rpm -qip [패키지명] | 패키지 파일에 대한 정보를 보여줍니다. |
yum
Yellowdog Updater Modified
CentOS 패키지 관리 명령어
/etc/yum.conf
/etc/yum.repos.d/
yum [option] [명령] [패키지]
옵션 | 설명 |
-h, --help | 해당 명령어의 도움말을 보여주고 실행이 종료됩니다. |
-t, --tolerant | 에러를 자동으로 잡아서 설치합니다. |
-C, --cacheonly | 캐시를 업데이트 하지 않고 전체 시스템 캐시 실행합니다. |
-c [config file], --config=[config file] |
파일 위치를 알려줍니다. |
-R [minutes], --randomwait=[minutes] | 최대치의 명령어 실행시 기다립니다. |
-d [debug level], --debuglevel=[debug level] |
최종 결과를 디버깅합니다. |
--showduplicates |
중복요소를 보여줍니다. |
-e [error level], --errorlevel=[error level] |
결과 중 에러를 보여줍니다. |
--rpmverbosity=[debug level name] |
rpm에서 결과물을 디버깅합니다. |
--version |
Yum 버전을 보여주고 실행이 종료됩니다. |
-y, --assumeyes |
모든 물음에 예를 진행합니다. |
-q, --quiet |
모든 작업이 종료됩니다. |
-v, --verbose |
작업을 자세히 보여준다. |
--installroot=[path] |
root권한으로 path위치에 인스톨을 진행합니다. |
--enablerepo=[repo] |
1개 이상의 저장소 위치에 저장시킵니다. |
--disablerepo=[repo] |
1개 이상의 저장소 위치에 저장시키지 않습니다. |
-x [package], --exclude=[package] |
패키지 이름을 제외시킵니다. |
--disableexcludes=[repo] | 이름으로 플러그인을 설치를 중단합니다. |
--obsoletes |
오래된 패키지는 업데이트를 하는 동안 적절히 삭제 및 교체됩니다. |
--noplugins |
yum plugin이 없도록 합니다. |
--nogpgcheck |
gpg signature를 불가능하게 합니다. |
--skip-broken |
문제 있는 패키지는 자동으로 스킵해서 넘어갑니다. |
--color=COLOR |
컬러가 사용되었을 때 조정합니다. |
--releasever=RELEASEVER |
$releasever의 값을 yum config와 repo파일에서 조정합니다. |
--setopt=SETOPTS |
임의로 config와 repo 옵션값을 지정합니다. |
--disablepresto |
Presto 플러그인을 중단하고 deltarpm을 다운로드 받지 않습니다. |
명령어 | 설명 |
check-update | 현재 install된 프로그램 중에 업데이트 된 것을 체크해줍니다. |
clean all | 캐시 되어 있는 것을 모두 지웁니다. |
deplist |
yum 패키지에 대한 의존성을 테스트합니다. |
downgrade 패키지 |
yum을 통한 패키지 다운그레이드합니다. |
erase 패키지 | 시스템에서 삭제합니다. |
groupinfo 그룹 | 그룹 패키지의 정보를 보여줍니다. |
groupinstall 그룹 |
그룹 패키지를 설치합니다. |
grouplist 그룹 | 그룹 리스트에 관한 정보를 확인합니다. |
groupremove 그룹 | 그룹 리스트에 관해 삭제합니다. |
help | yum의 도움말을 확인합니다. |
info 그룹 또는 패키지 | 패키지 또는 그룹의 패키지를 자세하게 확인합니다. |
install 패키지 | 시스템으로 패키지의 Install 을 실시합니다. |
list |
서버에 있는 그룹 및 패키지의 리스트를 보여줍니다. |
localinstall 패키지 | 로컬에 설치합니다. |
makecache | 캐쉬를 다시 올립니다. |
provides FilePath명 | 파일이 제공하는 패키지 정보 출력합니다. |
reinstall 패키지 |
패키지를 재intstall 합니다. |
update 패키지 | 패키지를 업데이트합니다. |
upgrade 패키지 | 패키지를 업그레이드 합니다 |
search 키워드 |
키워드가 포함된 패키지를 검색할수 있습니다. |
history | 최근 작업 이력, new를 주면 모든 history를 삭제한다 (history new) |
1701
다음은 RPM 패키지에 관한 명령어이다.( 괄호 ) 안에 알맞은 옵션을 넣으시오.
[root@www ~]# rpm ( ① ) /bin/mount util-linux-ng-2.17.2.x86_64
[root@ihd ~]# rpm –i ( ② ) util-linux-ng-2.17.2.x86_64.rpm
■ 조건 - 관리자의 실수로 /bin/mount 파일이 삭제되었다.
- ① : 다른 시스템을 통해 패키지명을 확인 후에 설치하려고 한다.
- ② : /bin/mount 파일을 포함한 관련 RPM 패키지를 강제로 재설치한다.
1. -qf
2. --force
1702
다음은 RPM 패키지를 삭제하는 과정이다. ( 괄호 ) 안에 알맞은 옵션을 넣으시오.
[root@ihd ~]# rpm ( ① ) httpd
error: Failed dependencies:
httpd-mmn = 20051115 is needed by (installed) mod_nss-1.0.10-1.el6.x86_64
httpd-mmn = 20051115 is needed by (installed) mod_perl-2.0.4-11.el6_5.x86_64
httpd-mmn = 20051115 is needed by (installed) mod_wsgi-3.2-7.el6.x86_64
httpd-mmn = 20051115 is needed by (installed) mod_authnz_pam-0.9.2-1.el6.x86_64
httpd-mmn = 20051115 is needed by (installed) mod_auth_kerb-5.4-13.el6.x86_64
[root@ihd ~]# rpm ( ① ) httpd ( ② )
조건
- RPM 명령으로 httpd 패키지를 삭제하려고 한다.
- httpd 패키지와 의존성 패키지를 무시하고 삭제한다.
1. -e
2. --nodeps
1502
4. 다음은 RPM 패키지를 관리해주는 데이터베이스에 문제가 발생했을 때의 경우를 나타낸다. ( 괄호 ) 안에 알맞은 내용을 적으시오.
# rpm -qi bmp free list corrupt (42)- contact rpm-list@redhat.com
# rpm ( ① )
조 건
- RPM 패키지를 관리해주는 데이터베이스를 다시 작성한다.
1. --rebuilddb
2201
4. 다음은 rpm 및 yum을 이용해서 패키지를 관리하는 과정이다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.
가. sendmail 패키지의 변경된 정보를 확인하기 위해 검증을 실시한다.
# rpm ( 1 ) sendmail
나. sendmail 이라는 문자열이 있는 패키지를 검색한다.
# yum ( 2 ) sendmail
다. yum 관련 작업 이력을 확인한다.
# yum ( 3 )
라. yum 관련 작업 이력을 초기화하고 새롭게 생성한다.
#yum ( 3 ) ( 4 )
조건
- 1번에는 명령어의 옵션 하나를 기재한다.
- 2번부터 4번에는 관련 명령 및 항목 값을 하나씩 기재한다.
1. -V
2. search
3. history
4. new
2101
search
install
-ql
-e
2002
1. -qR
2. -qf
3. -qlp
4. -qc
2001
1. search
2. install
3. erase 또는 remove
4. history
1901
1. -e --nodeps
2. which (whereis)
3. ldd
4. /usr/sbin/postfix
ldd - 특정파일이나 프로그램이 의존하고 있는 공유 라이브러리 정보 확인
1802
1. list installed
2. search telnet
3. info
4.install
참고
https://www.lesstif.com/system-admin/yum-history-plugin-undo-6979667.html
http://www.incodom.kr/Linux/%EA%B8%B0%EB%B3%B8%EB%AA%85%EB%A0%B9%EC%96%B4/yum
https://codedragon.tistory.com/7695
https://harryp.tistory.com/877
https://wordpressxe.tistory.com/7
https://runtoyourdream.tistory.com/173
'리눅스' 카테고리의 다른 글
[리눅스] chomod, chown, chgrp, 특수권한(setuid) (0) | 2022.11.06 |
---|---|
[리눅스] 권한 permission (0) | 2022.11.06 |
[리눅스] DHCP (0) | 2022.11.05 |
[리눅스] Squid 프록시 (0) | 2022.11.05 |
[리눅스] dd 백업 (0) | 2022.11.05 |
댓글