티스토리 뷰
REDHAT : rpm # yum
Debian : deb # apt
Suse : rpm #zypper
rpm (Redhat Package Manager)
- Binary 설치보다는 쉽다
- 의존성 문제에서 자유롭지 못하다
- source를 이용해서 rpm 파일을 만들 수 있다
- customizing이 불가능하다
- 업그레이드가 쉽다. 설정 파일이다 데이터 파일 백업이 불필요함
- 패키지 다운로드
- yum을 이용해 파일만 다운로드 하자
rpm 옵션
-ivh : 패키지 설치
-Uvh : 패키지 업그레이드
-qa : 패키지 설치 여부 확인
-qi : 패키지 인포메이션 확인
-ql : 패키지와 관련된 파일과 디렉터리 확인
-qf [파일명]
-qlp
-e : 패키지 삭제
yum (Yellodog Update Modified)
- 인터넷 상의 저장소에서 파일을 다운로드 후 설치
- 주로 배포판 개발 회사들이 관리한다
- 설치가 쉽고, 의존성 문제를 자동으로 해결해준다
- 업그레이드 시 설정 파일이나 데이터 파일의 백업이 불필요하다
- 인터넷을 이용해야 하기 때문에 인터넷 및 DNS가 정상적으로 동작해야 한다
- 최신 버전이 아닌 안정화된 버전이 설치된다
- 설치 위치나 모듈 선택을 customizing 할 수 없다
- 설정 파일의 위치 : /etc/yum.repo.d
Binary (Source)
- 설치가 가장 까다롭다
- 의존성 문제가 상당히 많다
- customizing이 가능하기 때문에 많이 사용한다
- 최신 버전 설치가 가능하다
- 업그레이드 시 설정 파일과 데이터 파일 백업 후 패키지 업그레이드를 하고, 백업한 설정 파일과 데이터 파일을 다시 copy해서 사용한다
local repository create
1. centos7 everything download -> wiki.centos.org -> download -> 7.9 mirrors
2. vm의 cdrom에 everythong.iso 파일 넣기
3. 디렉터리 /cd 생성 후 /dev/sr0 or /dev/cdrom 으로 마운트
4. local repository 디렉터리 생성 (/local)
5. cdrom의 패키지 파일 복사를 백그라운드 작업으로 진행 (cp /cd/Packages/* /local/ & (&=백그라운드작업 명령어))
6. 기존 repository 정보 파일 이동 (mv /etc/yum.repos.d/* /backup/)
7. local repository 정보파일 작성 (vi /etc/yum.repos.d/local.repo)
[rpm]
reponame=localrepo
baseurl=file:///local
enabled=1
gpgcheck=0
8. createrepo 설치
rpm -ivh deltarpm
rpm -ivh libxml2-python
rpm -ivh python-deltarpm
rpm -ivh createrepo
9. repository 구성
createrepo /local
10. 확인
yum repolist
yum install -y dhcp
웹서버 소스설치
httpd
systemctl로 httpd를 시작시켜주면 작동한다
방화벽도 내려주자
해당 가상머신의 ip로 접속하면 이렇게 아파치 테스트페이지가 뜬다
이걸 소스설치로 해보자
설치해뒀던걸 지우자
이렇게 한번에 지워줄 수도 있다
지워지는것 확인
일단 소스설치를 하려면 소스파일의 위치를 알아야한다
apache.org 에 가서 소스를 받으면 된다
이렇게 가서 소스를 받아오면 되는데...
문제는 리눅스가 CLI이다
그대로 받아와줄수는 없다
이를 해결해주는 패키지를 설치해주자
이제 아까 본 곳에서 링크 주소를 가져오자
이렇게 복사해서
잘 받아진 파일의 압축을 풀어주면 오케이
소스설치는 3단계의 과정을 거친다
1. 환경설정
- 설치 위치 및 필요 lib 구성
- # .configure --prefix=설치경로
여기서 의존성 문제가 생긴다
apache 페이지로 돌아가서 아래 파일의 링크를 복사해 web 디렉터리에 설치해준다
설치해보려하면
또 의존성 문제가 뜬다
그냥 yum으로 설치해주자
해주면 이렇게 좍 설정이 된다
이제 컴파일을 해주자
2. 컴파일
- 인간이 인식할 수 있는 프로그래밍 코드로 작성된 파일을 기계어로 번역하는 작업
- # make
3. 설치
- install
- # make install
이렇게하면 아파치를 설치할 수 있다
설치하러 가자
의존성 문제가 뜨니 또 링크를 받아와서 아카이브 해제 해주면 된다
소스설치의 의존성의 치명적인 문제이다
util을 설정하기 전에 이걸 util 디렉터리에 설치해주자
필수임!
다 하면 설정해주자
아우귀찮지만 해줘야한다
make와 make install도 해주자
나와서 다시 httpd를 설정해보자
이젠 정말 되겠지
안된다
pcre가 필요하다고 한다
아 속쓰려
친절하게 사이트도 알려주니 다운받자
이 링크를 복사해서 설치하면
인증서 문제가 뜬다
이렇게 인증서 확인 무시해주고
pcre 아카이브 해제해주고
configure 해주고
중간에 gcc-c++없다는 말 뜨니 yum으로 install해주고
다시 configure 해주면
된다
해주면
드디어 됨
make && make install도 해주자
이렇게 뜨면 멀쩡하게 실행된거다
소스설치는 이렇게 한다고함
..
....
소스설치 제거는 그냥 실행시켜줬던 apache를 명령어로 stop시켜주고 디렉터리와 파일을 제거하면 된다
이제 이 과정을 자동화해보자
스크립트용 디렉터리를 하나 만들어주자
이렇게 스크립트를 하나 짜주면 끝!
그냥 여태까지 했던 명령어를 한번에 써준다고 생각하면 편하다
LAMP
-> Linux + Apache + MySQL(Mariadb) + PHP
WAMP
-> Windows+ Apache + MySQL(Mariadb) + PHP
'OS > Linux' 카테고리의 다른 글
Linux Mail (Thunderbird) (0) | 2022.03.28 |
---|---|
Linux NFS (0) | 2022.03.25 |
Linux ACL (0) | 2022.02.24 |
Linux 디스크 관리 (0) | 2022.02.22 |
Linux 사용자 및 그룹 관리 (0) | 2022.02.18 |