무려 두 달 만에 포스팅을 진행하게 되었다. 어찌나 바쁘던지 9월과 10월은 어떻게 지나가는지도 모를 정도였다. 여전히 바쁘긴 하다만 다행히 숨을 조금 돌릴 시간을 조금이나마 얻게 되어 다시 글을 작성하게 되었다.
지난 포스팅에서는 Linux의 rpm 명령어를 사용하여, 현재 Linux에 설치되어 있는 프로그램과 그와 관련된 문서에 대해 검색하는 방법에 대해 알아보았다. 간략하게 지난 포스팅의 개요에 대해 다시 정리하자면, yum 명령어를 사용하여 설치하는 것도 가능하지만, 인터넷과 연결되지 않은 Linux 시스템에 프로그램을 설치하기 위해서는 프로그램 파일(rpm)을 저장매체등을 이용해 옮긴 다음 수동으로 설치해야하는 경우도 종종 있는데, 이 때 사용하는 명령어가 바로 rpm이라는 것이 개요 내용이다.
그럼, 지금부터는 rpm 파일의 다운로드와 파일의 이동, 그리고 설치와 삭제에 대해 하나씩 알아보도록 하자.
1. rpm 파일의 다운로드
기본 설정으로 설치된 리눅스에서는 인터페이스에 할당된 IP를 확인할 수 있는 ifconfig 명령어와 타 서버와의 연결 경로를 확인하는 traceroute 명령어가 없다.
인터넷에서 검색해보면 알겠지만, 이들 명령어를 사용하기 위해서 각각 net-tools, traceroute 패키지을 설치해주어야 한다. 일반적인 상황이라면 yum 명령어를 통해 자동으로 인터넷에서 검색 + 다운로드 + 설치까지 자동으로 진행하겠지만, 인터넷이 끊겨있는 상황에서는 설치를 제외한 나머지 과정을 yum 명령어로 진행할 수 없다.
rpm 파일을 다운받을 수 있는 사이트는 여러 군데 존재하지만, 필자는 아래의 사이트를 추천한다. Linux 종류를 별도로 필터를 걸어 검색할 수 있기 때문에, 자신이 사용하는 Linux에 적합한 rpm 파일을 받기 편하기 때문이다.
이번 포스팅에서는 net-tools만 rpm 파일로 다운받아 설치를 진행해보려고 한다. 검색창에 net-tools를 검색하면 아래와 같은 화면이 나오는데, 검색 결과 중 .rpm으로 되어 있는 링크를 하나 클릭하면 자동으로 다운로드가 진행된다. 필자는 가장 위의 파일을 선택하여 다운받았다.
다운로드 받은 파일은 winSCP나 Filezilla 등을 이용해 서버로 이동시키자.
파일을 이동시킨 서버에 rpm 파일이 존재하는지 확인하자. 여기까지 완료된다면, yum에서 rpm 파일의 다운로드와 동일한 과정까지 진행된 것이다.
2. rpm 파일의 수동 설치 / 삭제
필자는 rpm 파일의 설치 전, 인터넷 환경에서 서버를 분리하기 위해 ifdown 명령어를 사용하여 인터페이스를 다운시켰다.
ping이 외부 인터넷으로 나가지 않는 것을 확인한 상태에서 이제 rpm 설치를 진행해보려 한다.
(1) rpm 파일 설치
rpm 명령어의 옵션 중 -U와 -i 옵션이 있다. -i 옵션은 install, -U는 update를 의미하는데, -i 옵션은 기존에 설치된 rpm 파일이 존재하지 않는 경우 설치를 진행하는 옵션이고, -U는 기존에 설치된 rpm 파일이 존재하는 경우 업데이트를, 그렇지 않은 경우 설치를 진행하는 옵션이다(따라서 -U 옵션이 절대적으로 많이 사용된다).
rpm 파일 설치 명령어의 포맷은 다음과 같다.
rpm -U(vh) (--percentage) {rpm 파일명}
-U나 -i 옵션을 사용하는 경우, rpm 설치가 시작되는 순간 외에는 어떠한 설치 과정도 나타나지 않는다. 설치가 모두 끝나면 프롬프트만 떨어지고 끝이난다. rpm 파일의 크기가 크지 않은 경우, -U나 -i 옵션을 사용하는 것이 큰 문제가 되지 않지만, 파일의 크기가 큰 경우 설치가 완료되기 전까지는 설치 중에 오류가 나서 중단된 것인지, 아니면 파일의 크기가 커서 설치 중인지 알 수 없다. 따라서 설치 과정을 화면에 표시하기 위해서 -v, -h 또는 --percent 옵션을 추가해서 사용하기도 한다.
-v 옵션은 verbose(장황하게)의 줄임말로, 이 옵션을 사용하면 설치 과정에 무엇이 진행되는지 상세히 출력을 진행해준다.
-h 옵션은 hash의 줄임말이며, 설치 진행률이 hash(#)로 표시된다.
--percentage 옵션은 -h와 유사하나 설치 진행률이 한 줄 씩 소수점 단위로 출력된다는 차이점이 있다. 사실 이 --percentage 옵션은 다른 옵션에 비해 설치 과정 확인이 매우 번거로워 잘 사용하지는 않는다.
일반적으로 설치 시에는 -Uvh 옵션을 많이 사용한다.
설치가 되면 net-tools 명령어가 제공하는 ifconfig 명령어를 사용해보자. 설치 이전에는 명령어를 찾을 수 없다고 나왔지만, rpm 설치 이후 인터페이스의 IP 주소가 출력되는 것을 확인할 수 있다.
(2) 설치 rpm의 삭제
이제 설치한 net-tools rpm 파일을 삭제하여 원래의 상태로 복구시켜보자. rpm 파일을 삭제하는 명령어 옵션은 -e다(erase). 이 옵션 역시, -v 또는 -h 명령어와 함께 사용이 가능하며, 설치와 마찬가지로 옵션을 붙여 rpm -evh 형태로 명령어를 사용할 수 있다.
패키지를 삭제하는 rpm 명령어의 포맷은 아래와 같다.
rpm -e(vh) {패키지명}
설치와 달리, 삭제 시에는 rpm 파일명을 입력하는 것이 아닌, 패키지 명만 입력해준다. 별 것 아니지만 익숙하지 않으면 헷갈릴 수 있는 사항이니 유의하도록 하자.
이번 포스팅에서는 rpm 명령어를 사용하여, offline 상태의 서버에서 rpm 파일을 이용해 패키지를 직접 설치하고 삭제하는 방법에 대하여 알아보았다. 다음 포스팅에서는 rpm 명령어의 기타 옵션에 대해 간략하게 설명하고 rpm 명령어에 대한 포스팅을 마무리하려 한다. 지금까지 그러했듯이 rpm 설치와 삭제 관련 옵션을 본 포스팅 마지막에 정리해놓았다.
< Appendix >
명령어 | 옵션 | 설명 | ||
rpm | -i | 새 패키지를 rpm 파일로 설치 | ||
-U | 새 패키지를 rpm 파일로 설치하거나, 패키지가 설치되어 있다면, 최신 버전으로 업그레이드 | |||
-e | 설치된 패키지의 삭제 | |||
-v | 설치 및 삭제 과정의 설명 추가 | |||
-h | 설치 및 삭제 진행률을 #포 표시 | |||
--percent | 설치 및 삭제 진행률을 퍼센트로 표시 |
FIN.
'IT Security > LINUX Basic' 카테고리의 다른 글
33. Linux - NTP 서버 설치 및 시간 동기화1 (0) | 2020.10.25 |
---|---|
32. Linux - rpm 명령어 기본 사용법3(의존성 외) (0) | 2020.10.25 |
30. Linux - rpm 명령어 기본 사용법1(질의) (0) | 2020.08.23 |
29. Linux - 리눅스 방화벽 4, 기타 방화벽 설정 (0) | 2020.08.16 |
28. Linux - 리눅스 방화벽3, 방화벽 규칙(rule) 관련 명령어 (0) | 2020.08.11 |
댓글