DrMaemi / blog

1 stars 0 forks source link

[CentOS] Repository #168

Open DrMaemi opened 4 months ago

DrMaemi commented 4 months ago

Linux Repository란

CentOS에서 패키지 설치 시 벌어지는 일

yum repository 설정 파일

[main] 옵션 작성

comments abridged ...

PUT YOUR REPOS HERE OR IN separate files named file.repo

in /etc/yum.repos.d


자주 사용되는(commonly-used) 옵션들

| 옵션                   | 설명                                                                                                                  | 
|----------------------|---------------------------------------------------------------------------------------------------------------------|
| `assumeyes`=value    | - yum 명령어 실행 시 critical한 action인 경우 프롬프트에 표시한다.(default value = 0)<br>- value가 1인 경우 yum 명령어는 `-y` 옵션을 받은 것처럼 동작한다. |
| `cachedir`=directory | - yum이 cache와 database 파일을 저장할 디렉토리의 절대 경로를 지정한다.(default directory = `/var/cache/yum/$basearch/$releasever`)       | 
| `cachedir`=directory | - yum이 cache와 database 파일을 저장할 디렉토리의 절대 경로를 지정한다.(default directory = `/var/cache/yum/$basearch/$releasever`)       |
| `debuglevel`=value   | - 1 ≤ value ≤ 10 (default 2), value가 높아질수록 더 자세한 정보가 디버깅된다. 0으로 세팅할 경우 디버깅을 비활성화한다.                                 |
| ...생략                |                                                                                                                     |
| `retries`=value      | 0 ≤ value, yum이 패키지를 다운받는 중 error 를 반환하기 전 재시도 횟수 (default 2)                                                       |

#### `[repository]` 옵션 작성
- [8.4.2. Setting [repository] Options, *access.redhat.com*](https://access.redhat.com/documentation/ko-kr/red_hat_enterprise_linux/6/html/deployment_guide/sec-setting_repository_options#doc-wrapper)
- `/etc/yum.conf`에 작성할 수 있지만, `/etc/yum.repos.d/` 디렉토리 하위 `.repo` 파일을 통해 설정하는 것을 권장하므로..
```bash
vi /etc/yum.rpos.d/${REPO_NAME}.repo

[red-hat-enterprise-linux-scalable-file-system-for-rhel-6-entitlement-rpms] name = Red Hat Enterprise Linux Scalable File System (for RHEL 6 Entitlement) (RPMs) baseurl = https://cdn.redhat.com/content/dist/rhel/entitlement-6/releases/$releasever/$basearch/scalablefilesystem/os enabled = 1 gpgcheck = 1 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release sslverify = 1 sslcacert = /etc/rhsm/ca/redhat-uep.pem sslclientkey = /etc/pki/entitlement/key.pem sslclientcert = /etc/pki/entitlement/11300387955690106.pem

[red-hat-enterprise-linux-scalable-file-system-for-rhel-6-entitlement-source-rpms] name = Red Hat Enterprise Linux Scalable File System (for RHEL 6 Entitlement) (Source RPMs) baseurl = https://cdn.redhat.com/content/dist/rhel/entitlement-6/releases/$releasever/$basearch/scalablefilesystem/source/SRPMS enabled = 0 gpgcheck = 1 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release sslverify = 1 sslcacert = /etc/rhsm/ca/redhat-uep.pem sslclientkey = /etc/pki/entitlement/key.pem sslclientcert = /etc/pki/entitlement/11300387955690106.pem

[red-hat-enterprise-linux-scalable-file-system-for-rhel-6-entitlement-debug-rpms] name = Red Hat Enterprise Linux Scalable File System (for RHEL 6 Entitlement) (Debug RPMs) baseurl = https://cdn.redhat.com/content/dist/rhel/entitlement-6/releases/$releasever/$basearch/scalablefilesystem/debug enabled = 0 gpgcheck = 1 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release sslverify = 1 sslcacert = /etc/rhsm/ca/redhat-uep.pem sslclientkey = /etc/pki/entitlement/key.pem sslclientcert = /etc/pki/entitlement/11300387955690106.pem



자주 사용되는 옵션들

| 옵션                       | 설명                                                                                                                                                                                                                                        | 
|--------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `name`=repository_name   | - human-readable한 repository 이름을 적는다. `yum repolist` 명령어 실행 시 확인 가능                                                                                                                                                                       |
| `baseurl`=repository_url | - `repodata` 디렉토리가 위치한 repository URL.<br>- 만약 http로 접근 가능한 repository라면 `http://path/to/repo`, ftp로 접근 가능하다면 `ftp://path/to/repo`, 로컬에서 접근 가능하다면 `file://path/to/local/repo` 형식이다.                                                       |
| `enabled`=value          | - value = 0 or 1. 0인 경우 yum 이 패키지 업데이트, 설치 시 해당 repository를 사용하지 않는다 (비활성화).<br>- 이 설정값을 통해 손쉽게 repository 사용 여부를 on/off 할 수 있다.<br>- on/off 의 또 다른 방법으로 `yum` 명령어 옵션에 `enablerepo=<repo_name>` 또는 `--disablerepo=<repo_name>`을 사용할 수 있다. |
| `gpgcheck`=value         | gpg 키 사용 여부 (value = 0 or 1)                                                                                                                                                                                                              |

## A. 참조
- [8.4. Configuring Yum and Yum Repositories, *access.redhat.com*](https://access.redhat.com/documentation/ko-kr/red_hat_enterprise_linux/6/html/deployment_guide/sec-configuring_yum_and_yum_repositories)
- [[Linux] yum repository 설정하기, *tistory.com*](https://kim-dragon.tistory.com/232)