Linux Yum 원본 생 성 및 설정 (Centos 7 의 경우)

10209 단어 Linux
개술
우리 의 일상 업무 에서 시스템 자체 의 yum 소스 다운로드 패키지 속도 가 느 리 거나 네트워크 원인 으로 인해 시스템 자체 의 yum 소스 를 사용 할 수 없 는 문제 가 자주 발생 합 니 다.이 글 은 Centos 에서 yum 소스 를 만 들 거나 설정 하 는 방법 을 공유 하 는 것 입 니 다.
Yum 이 뭐야?
Yum (Yellow dog Updater, Modified) 은 Fedora 와 RedHat, CentOS 에 있 는 Shell 전단 패키지 관리자 입 니 다.RPM 패키지 관 리 를 바탕 으로 지 정 된 서버 에서 RPM 패 키 지 를 자동 으로 다운로드 하고 설치 할 수 있 으 며, 의존성 관 계 를 자동 으로 처리 할 수 있 으 며, 모든 의존 하 는 패 키 지 를 한 번 에 설치 할 수 있어 번 거 롭 게 한 번 에 다운로드, 설치 할 필요 가 없다.
2 Yum 프로필
yum 의 프로필 은 기본적으로 /etc/yum.repos.d/ 디 렉 터 리 에 놓 여 있 습 니 다. 'repo' 를 파일 이름 접미사 로 합 니 다. 예 를 들 어 Centos. repo 는 보통 설정 이 있 습 니 다.
[Centos-yum]
name=Centos-yum
baseurl=http://www.centos.com/yum/centos/$releasever/$basearch/
enabled=1
gpgcheck=0

상용 설정 항목 설명:
설명: [...]: 이 라 이브 러 리 의 이름 을 대표 합 니 다. 유일한 것 이 어야 합 니 다. 중복 할 수 없습니다.name: 이 라 이브 러 리 의 설명 입 니 다. 큰 실제 적 인 의미 가 없고 필드 설명 일 뿐 입 니 다.baseurl: 어떤 방식 으로 전송 하 는 지 설명 합 니 다. 구체 적 인 경로 가 어디 에 있 는 지, 사용 할 수 있 는 방식 은 file:/, ftp:/, http:/등 이 있 습 니 다.enabled: 이 업데이트 라 이브 러 리 를 사용 하 는 것 을 설명 합 니 다. 1 은 시작 을 표시 하고 0 은 사용 하지 않 음 을 표시 합 니 다.gpgcheck: 1 은 gpg 파일 을 사용 하여 패키지 의 서명 을 검사 하고 0 은 검사 하지 않 음 을 표시 합 니 다.gpgkey: gpg 파일 이 저 장 된 위 치 를 표시 합 니 다. http 방식 의 위치 도 있 습 니 다.명령 을 사용 하면 yum 의 매 뉴 얼 을 볼 수 있 습 니 다.
man yum.conf

새 yum repo 를 만 든 후 색인 을 만 들 고 명령 을 실행 해 야 합 니 다.
yum clean all
yum makecache

설 정 된 repo 를 보 려 면 명령 을 실행 하 십시오.
yum repolist

3 Yum 상용 명령
Yum 의 명령 형식 은 일반적으로 다음 과 같 습 니 다.
yum [options] [command] [package ...]

그 중의 [options] 는 선택 할 수 있 습 니 다. 옵션 은 - h (도움말), - y (설치 과정 알림 이 모두 "yes"로 선택 되 었 을 때), - q (설치 과정 을 표시 하지 않 음) 등 을 포함 합 니 다.[command] 작업 을 위 한 작업 입 니 다. [package...] 작업 의 대상 입 니 다.
상용 명령
  • 가장 빠 른 미 러 플러그 인 자동 검색: yum install yum-fastestmirror
  • yum 그래 픽 창 플러그 인 설치: yum install yumex
  • 대량 설치 가능 한 목록 보기: yum grouplist
  • 설치 명령
  • 모두 설치: yum install
  • 지정 한 패키지 패키지 설치 1: yum install package1
  • 설치 프로그램 그룹 group 1: yum groupinsall group1
  • 업데이트 및 업그레이드
  • 전체 업데이트: yum update
  • 지정 한 패키지 패키지 업데이트 1: yum update package1
  • 업데이트 가능 한 프로그램 검사 yum check-update
  • 지정 패키지 패키지 업그레이드 1: yum upgrade package1
  • 업그레이드 프로그램 그룹 group 1: yum groupupdate group1
  • 찾기 및 표시
  • 패키지 정보 패키지 1: yum info package1
  • 표시
  • 설치 되 어 있 고 설치 할 수 있 는 모든 패 키 지 를 표시 합 니 다. yum list
  • 지정 한 패키지 설치 상황 패키지 1: yum list package1
  • 디 스 플레이 프로그램 그룹 group 1 정보 yum search string 키워드 string 에 따라 설치 패 키 지 를 찾 습 니 다: yum groupinfo group1
  • 프로그램 삭제
  • 패키지 삭제 1: yum remove | erase package1
  • 프로그램 그룹 그룹 삭제 1: yum groupremove group1
  • 프로그램 패키지 1 의존 상황 보기: yum deplist package1
  • 프로그램 삭제
  • 캐 시 디 렉 터 리 에 있 는 패키지 지우 기: yum clean packages
  • 캐 시 디 렉 터 리 에 있 는 headers 지우 기: yum clean headers
  • 캐 시 디 렉 터 리 에 있 는 오래된 headers 지우 기: yum clean oldheaders
  • 캐 시 디 렉 터 리 에 있 는 패 키 지 를 지우 고 오래된 headers: yum clean, yum clean all (= yum clean packages, yum clean oldheaders) `
  • 4. Yum repo 를 마 운 트 하 는 방법
    2 절 에 서 는 Yum repo 프로필 의 위치 와 설정 방법 을 설명 하 였 으 며, 여기 서 는 더 이상 군말 하지 않 습 니 다. 주로 다음 세 가지 설정 방식 http, 로 컬 디 렉 터 리, 원 격 디 렉 터 리 입 니 다.
    4.1 http 프로 토 콜 설정
    인터넷 에 이미 만들어 진 repo 서 비 스 를 사용 할 수 있 습 니 다. 예 를 들 어 아 리 (http://mirrors.aliyun.com/repo/[linux - relase]), 163 등 이 제공 하 는 repo 서버 도 자체 적 으로 웹 서버 를 구축 하여 자신의 수요 에 따라 rpm 패 키 지 를 준비 하여 웹 서버 를 통 해 Yum repo 를 대리 할 수 있 습 니 다.
  • apache 서버 를 설치 하고 다른 웹 서버 도 가능 합 니 다
  • # 安装apache服务
    yum install httpd
    #开启apache服务
    service httpd start
    #配置apache服务开机自启
    systemctl enable httpd.service
    
  • http 서비스 맵 만 들 기 (CDH 의 CM repo 를 예 로 들 면)
  • ln -s /opt/software/cloudera/cm6.3.0/ /var/www/html/cm 
    
  • yum repo 파일 설정
  • vi /etc/yum.repos.d/cm.repo
    # 编辑yum源配置
    [cm]
    name=cm
    baseurl=http://132.46.112.97/cm
    enabled=1
    gpgcheck=0
    

    다른 사람의 웹 서버 라면 baseurl 을 대응 하 는 url 로 수정 합 니 다. 다른 사람 이 알 리 와 같은 repo 설정 을 제공 하면 repo 파일 을 /etc/yum.repos.d/ 디 렉 터 리 에 직접 넣 을 수 있 습 니 다.
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.back
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
    
  • 다시 불 러 오기
  • yum clean all
    yum makecache
    yum search cm
    

    4.2 로 컬 마 운 트 디 렉 터 리
  • iso 파일 을 다운로드 하여 CentOS 홈 페이지 에서 CentOS 의 전체 iso 파일 을 다운로드 하고 Linux 파일 시스템 에 업로드 합 니 다. 예 를 들 어/opt/tools/.
  • iso 파일 로 마 운 트 디 렉 터 리 를 만 듭 니 다.
  • mkdir /mnt/vcdrom
    
  • iso 파일 을 마 운 트 디 렉 터 리 에 마 운 트 합 니 다.
  • mount -o loop -t iso9660 /opt/tools/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/vcdrom
    
  • Centos - Base. repo 파일 을 제거 하거나 백업 합 니 다
  • cd /etc/yum.repos.d/
    mv Centos-Base.repo Centos-Base.repo.back
    
  • Centos - Media. repo 파일 편집
  • vim /etc/yum.repos.d/Centos-Media.repo
    name=CentOS-$releasever - Media
    baseurl=file:///mnt/vcdrom/#将baseurl修改为DVD的挂载目录
    gpgcheck=1
    enabled=1#开启本地更新模式
    
  • yum 다시 불 러 오기
  • yum clean all
    yum makecache
    

    4.3 원 격 디 렉 터 리 마 운 트
    nfs 를 사용 하여 원 격 디 렉 터 리 를 만 들 고 원 격 디 렉 터 리 를 로 컬 에 마 운 트 한 다음 4.2 와 같은 방법 으로 repo 를 설정 합 니 다.
    5 Yum Repo 만 들 기
    만약 기 존의 rpm 가방 이 있다 면, 우 리 는 자신의 yum repo 를 만 들 수 있 습 니 다.
  • yum 소스 위치 만 들 기
  • #创建test yum的仓库目录
    mkdir -p /usr/local/test.repo
    #将准备好的rpm包拷贝到test.repo目录里
    mv ./*.rpm /usr/local/test.repo/
    #创建仓库
    cd /usr/local/test.repo/
    createrepo ./
    

    생 성 이 완료 되면 생 성 됩 니 다 /usr/local/test.repo/repodata. 이 디 렉 터 리 는 우리 가 만 든 test repo 의 메타 데이터 디 렉 터 리 입 니 다.2. yum 소스 Yum 마 운 트 repo (본 고 제4 장 에 있 는 임의의 방법 으로 마 운 트 합 니 다. 이 장 에 서 는 http 를 사용 합 니 다) 먼저 소프트 연결 을 만 드 는 방식 으로 우리 가 만 든 test yum repo 를 apache 서버 에 마 운 트 합 니 다.
    ln -s /usr/local/test .repo/ /var/www/html/test 
    

    repo 파일 설정
    # 编辑mysql yum源配置 vim /etc/yum.repos.d/test .repo
    [test ]
    name=test 
    baseurl=http://192.168.1.200/test 
    enabled=1
    gpgcheck=0
    

    Yum 캐 시 다시 만 들 기
    yum clean all
    yum makecache
    

    6. Yum Repo 에 대한 우선 순위
  • yum - priorities 를 설치 하여 설치 되 어 있 는 지 확인 rpm -qa yum-priorities
  • yum install yum-priorities -y
    
  • priorities 의 설정 파일 은/etc/yum/pluginconf. d/priorities. conf 로 존재 하 는 지 확인 합 니 다.내용:
  • cat /etc/yum/pluginconf.d/priorities.conf
    #配置以下内容
    [main]
    enabled = 1 # 0禁用 1启用
    
  • 편집/etc/yum. repos. d/디 렉 터 리 에 있 는 *. repo 파일 로 우선 순 위 를 설정 합 니 다.매개 변 수 는:
  • priority=N # N值为1-99,数字越大,优先级越低
    

    ★ 추천 하 는 설정 은:
    [base], [addons], [updates], [extras] … priority=1 
    [centosplus],[contrib] … priority=2
    Third Party Repos such as rpmforge … priority=N (where N is > 10 and based on your preference)
    

    예:
    echo "priority=1" >> CentOS7.repo
    

    예:/etc/yum. repos. d/디 렉 터 리 에 있 는 *. repo 파일 을 편집 하여 우선 순 위 를 설정 합 니 다.
    [base]
    name=CentOS-$releasever – Base
    baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
    gpgcheck=0
    priority=1
    

    7 Q&A
  • 가방 의 이름 이 완전 하지 않 거나 가방 이름 에 입력 할 수 없 는 특수 문자 가 있 으 면 (중국어 또는 기타 특수 문자): yum install test*
  • 좋은 웹페이지 즐겨찾기