이 기사에서는 깨끗한 Linux CentOS 8을 설치하는 데 필요한 기본 단계를 다룹니다. 처음부터 초기 서버 설정.
CentOS 8의 새로운 기능
CentOS 8번째 버전 2019년 9월 24일에 출시되었습니다. CentOS Red Hat의 상용 Red Hat Enterprise 배포판을 기반으로 하며 호환되는 Linux 배포판입니다.
CentOS 8의 주요 변경 사항을 살펴보겠습니다. 릴리스:
- Linux 커널 4.18 사용 중입니다.
- yum에서 전환 패키지 관리자를 dnf로 . 현재 yum은 dnf에 대한 심볼릭 링크로 존재합니다.
- 주 리포지토리는 BaseOS 2개로 나뉩니다. 및 AppStream . 사용자가 다른 패키지 버전을 설치할 수 있도록 하기 위함입니다. BaseOS 정상 작동 중입니다.
- 커널을 포함한 모든 소프트웨어가 업데이트되었습니다. 이제 php 7.2를 설치할 수 있습니다. 기본 저장소에서 (마침내!);
- Iptables nftables로 대체되었습니다.;
- 네트워크 스크립트 기본적으로 네트워크 설정을 구성하는 데 사용되지 않습니다. 네트워크 관리자 네트워크를 관리하는 데 사용해야 합니다.
- 기본적으로 조종석 서버 관리 웹 인터페이스가 설치되어 있습니다(초보자에게 편리함).
- Podman(docker 또는 mobdy 대신)은 컨테이너를 관리하는 데 사용됩니다.
- 새로운 버전의 TCP/IP 4.16 스택이 더 높은 성능과 BBR 및 NV 제어 알고리즘 지원을 제공하는 것으로 나타났습니다.
- 새로운 배포 버전.
ISO 이미지에서 CentOS 8을 설치하는 방법
KVM에 CentOS를 설치했기 때문에 가상 머신, 설치 ISO를 다운로드했습니다. 공식 미러(https://www.centos.org/download/mirrors/)에서 미리 이미지를 다운로드하고 마운트하여 가상 서버에 OS를 설치합니다. (물리적 서버에 CentOS를 설치하고 싶다면 USB 스틱에 설치 ISO 이미지를 써주세요.) 저는 CentOS 8 설치 과정은 이전 버전과 다르지 않으며, 이 글은 처음 설치하시는 분들을 위한 참고용으로 작성되었습니다.
CentOS 8 설치에 권장되는 최소 요구 사항은 10GB 이상입니다. 디스크 공간 및 712MB RAM CPU 코어당.
CentOS 설치 이미지에서 컴퓨터 또는 가상 머신을 부팅합니다. 첫 번째 단계에서 추가 작업을 선택하라는 메시지가 표시됩니다. 설치가 필요하므로 메뉴에서 첫 번째 항목을 선택하십시오.
Install CentOS Linux 8.0.1905
선택 후 설치 프로세스가 시작됩니다.
필요한 소프트웨어가 로드되는 동안 프로세스를 지켜보기만 하면 아무 작업도 수행할 필요가 없습니다.
검은색 화면이 CentOS를 사용하는 대화형 화면으로 변경되는 경우 로고, 키보드와 마우스를 가까이에 두십시오.
시작 화면에서 설치 프로세스 중에 사용할 언어를 선택하라는 메시지가 표시됩니다. 그런 다음 계속을 클릭합니다. . 다음 메뉴에서 기본 CentOS 설치 설정을 선택합니다.
설치를 시작하려면 설치 대상 항목 하나만 구성해야 합니다. . 여기에서 디스크 파티션 레이아웃을 선택하지만 이 단계에서 네트워크, 시간 및 날짜를 구성하는 것을 선호합니다.
시간대에 따라 설정을 선택하세요.
네트워크를 구성하려면 네트워크 및 호스트 이름을 클릭합니다. .
호스트 이름에 서버 이름을 지정합니다. 필드를 클릭하고 구성을 클릭합니다. 네트워크 인터페이스를 구성합니다.
일반 탭에서 사용 가능한 경우 이 네트워크에 자동으로 연결 확인란을 선택합니다. 이 네트워크 인터페이스를 자동으로 시작합니다.
IPv4 설정으로 이동합니다. 탭(또는 IPv6 이 프로토콜을 사용하는 경우) IP 설정 주소, 넷마스크, 게이트웨이 및 DNS 서버:
특정 IP 주소를 입력하려면 , 수동 선택 방법을 선택하고 추가를 클릭합니다. . 변경 사항을 저장한 후 초기 네트워크 구성 화면으로 돌아갑니다.
스크린샷에서 볼 수 있듯이 IP 주소 추가되었으며 네트워크 인터페이스가 작동 중입니다(상태:연결됨).
다음 단계에서는 디스크 파티션으로 이동합니다.
설치 과정을 보여주기 위해 CentOS 개발자의 자동 저장소 구성을 사용했습니다. 다른 방식으로 디스크를 분할하려면 사용자 지정을 선택합니다. 여기.
서버 저장소 컨트롤러가 하드웨어 RAID를 지원하지 않는 경우 mdadm을 사용하여 서버 디스크에 소프트웨어 RAID를 구성할 수 있습니다.게스트 OS가 내 가상 머신에 이전에 설치되어 있었기 때문에 설치에서 확인했습니다. 다음 메뉴가 나타나면 이전 운영 체제의 파티션을 제거했습니다.
모두 삭제를 클릭하여 파티션을 제거할 수 있습니다. . 그런 다음 공간 확보를 클릭해야 합니다. 사용 가능한 디스크 공간의 크기를 업데이트합니다.
설치 패키지 목록은 소프트웨어 선택에서 선택됩니다. . CentOS 8을 서버로 사용하려는 경우 최소 설치를 선택하면 됩니다. , 표준 및 게스트 에이전트(가상 머신에 게스트 OS를 설치하는 경우)
그런 다음 설치 시작을 클릭하여 설치를 시작할 수 있습니다. .
필요한 구성 요소의 압축을 풀고 설치하는 동안 루트의 암호를 입력하라는 메시지가 표시됩니다. 사용자. 다른 사용자를 만들 수도 있지만 선택 사항입니다.
루트 비밀번호를 클릭합니다. , 비밀번호를 입력하고 확인합니다. 그런 다음 완료를 클릭합니다. 설치로 돌아가려면:
CentOS 8 설치는 약 5-7분 정도 소요되었습니다. 재부팅이 표시되면 버튼을 누르면 설치가 끝났음을 의미하며 서버를 다시 시작해야 합니다.
따라서 CentOS 8 설치가 완료되었습니다.
설치 후 CentOS 8 기본 설정 구성
기본 CentOS 8 설치 후 구성은 CentOS 7과 거의 비슷하며 모든 서버에서 동일한 기본 설정을 구성합니다.
CentOS에 업데이트 및 관리자 도구 설치
앞서 언급했듯이 dnf yum을(를) 대체했습니다. CentOS 8에서 .
DNF – Linux 배포판용 RPM 패키지 관리자인 차세대 YUM 응용 프로그램입니다. 이전 dnf는 Fedora 배포판에서 사용되었으며 이제는 CentOS 8에 이르렀습니다.새로 설치된 서버에서 가장 먼저 하는 일은 시스템을 업데이트하는 것입니다.
# dnf update -y
이미지가 최신 상태이면 제 경우와 같이 업데이트할 패키지가 없을 가능성이 높습니다.
Dependencies resolved. Nothing to do. Complete!
업데이트가 있으면 설치하십시오.
다음 단계에서 EPEL을 활성화합니다. 편리한 서버 관리를 위한 도구 설치:
# dnf install epel-release -y
# dnf install mc wget screen nano net-tools bind-utils curl lsof vim -y
이 유틸리티로 충분하지만 익숙해진 유틸리티를 설치할 수 있습니다.
필요한 업데이트를 항상 수동으로 설치하기 때문에 자동 시스템 업데이트를 사용하지 않습니다. 자동 업데이트를 구성하려면 dnf-automatic을 설치하세요. 패키지:
# dnf install -y dnf-automatic
활성 시스템 업데이트 작업을 확인하려면 다음 명령을 입력하십시오.
# systemctl list-timers *dnf-*
CentOS에서 SELinux를 비활성화하는 방법
초기 서버 설정 단계에서는 항상 SELinux 를 비활성화합니다. (변경 사항을 적용하려면 서버를 재부팅해야 합니다):
# nano /etc/sysconfig/selinux
# reboot
다음 명령을 사용하여 즉시 SELinux를 비활성화할 수 있습니다.
setenforce 0
CentOS 8에서 네트워크 설정 구성
OS 설치 중에 네트워크 설정을 구성했으므로 지금은 구성할 필요가 없습니다(CentOS의 네트워크 구성에 대한 자세한 기사는 여기 참조). CentOS 8에서 말하고 싶습니다. 네트워크 관리자 만 사용하여 네트워크를 관리할 수 있습니다. 및 nmcl . 네트워크 스크립트 기본적으로 지원되지 않습니다. 솔직히 말해서 이전에는 항상 NM을 비활성화했습니다. 저에게 편리하지 않아서 사용하지 않았습니다. 하지만 지금은 배워야 합니다.
네트워크 상태를 확인하는 방법은 다음과 같습니다.
# systemctl status NetworkManager
● NetworkManager.service - Network Manager Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-06-29 08:23:11 NY; 3h 37min ago Docs: man:NetworkManager(8) Main PID: 870 (NetworkManager) Tasks: 3 (limit: 5060) Memory: 4.7M CGroup: /system.slice/NetworkManager.service └─870 /usr/sbin/NetworkManager --no-daemon
CentOS 8에서 호스트 이름을 변경하는 방법
CentOS 설치 중에 올바른 서버 호스트 이름을 설정하지 않았거나 변경하려는 경우 몇 가지 방법으로 수행할 수 있습니다. /etc/hostname 파일에서 편집하거나 다음 명령을 사용하여 변경하십시오.
# hostnamectl set-hostname mycentos8server
CentOS 8에서 방화벽 구성
firewalld
의 신뢰할 수 있는 영역 목록에 필요한 서비스(SSH 및 HTTP/HTTPS)를 추가합니다. :
firewall-cmd –-add-service=ssh
firewall-cmd --permanent –-add-service=http
firewall-cmd --permanent –-add-service=https
CentOS에서 시간 및 시간대 변경
CentOS에서 현재 시간과 시간대를 보려면 날짜를 입력하세요. 명령:
# date
시간대를 설정합니다. 시스템 설치 중에 NY 시간이 있습니다. 시간대를 변경하려면 , 해당 명령을 사용하십시오:
# timedatectl set-timezone America/Toronto
# timedatectl list-timezones
시간을 동기화하려면 chronyd 사용하는 경우 이를 활성화하고 systemctl을 사용하여 자동 시작에 추가합니다.
# systemctl start chronyd
# systemctl enable chronyd
# systemctl status chronyd
● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-06-29 16:13:48 +06; 9s ago Docs: man:chronyd(8) man:chrony.conf(5) Main PID: 31700 (chronyd) Tasks: 1 (limit: 5060) Memory: 1.1M CGroup: /system.slice/chronyd.service └─31700 /usr/sbin/chronyd
Bash 기록 구성
더 편리한 방법으로 bash 명령 기록을 보기 위해 항상 .bashrc에 몇 줄을 추가합니다. 필요한 명령 내역 정보를 쉽게 얻을 수 있습니다.
기본 설정을 사용하면 기록 출력은 다음과 같이 표시됩니다.
# history
1 dnf repolist 2 dnf install epel-release
이는 서버에서 어떤 명령이 실행되었는지는 알 수 있지만 시간과 날짜는 볼 수 없음을 의미합니다. 그것은 나에게 중요합니다. 역사를 만들어 봅시다. 더 편리하게 볼 수 있습니다. /root/.bashrc를 엽니다. 다음 줄을 추가합니다.# nano /root/.bashrc
export HISTSIZE=10000
export HISTTIMEFORMAT="%d/%d/%y - %H:%M:%S "
그런 다음 기록을 볼 때 , 명령이 실행된 정확한 시간과 날짜가 표시됩니다.
# history
1 Jun/06/29 - 16:16:29 dnf repolist 2 Jun/06/29 - 16:16:29 dnf install epel-release
Cockpit:CentOS 8의 서버 관리 웹 인터페이스
이미 언급했듯이 CentOS 8에는 조종석이 있습니다. 서버 관리 웹 인터페이스가 사전 설치되어 있습니다. systemctl을 사용하여 관리할 수도 있습니다. 당신은 그것을 실행하고 시작에 추가할 수 있습니다:
# systemctl enable cockpit.socket
# systemctl start cockpit.socket
기본적으로 Cockpit 웹 서버는 포트 TCP/9090에서 수신 대기합니다. 방화벽에서 허용된 포트에 추가:
# firewall-cmd --get-active-zones
# firewall-cmd --add-port=9090/tcp --zone=MY_ACTIVE_ZONE --permanent
# firewall-cmd --reload
Cockpit 웹 인터페이스에 액세스하려면 다음 URL을 엽니다. https://Your-CentOS8-IP:9090
브라우저에서 인증하세요.
Cockpit을 사용하여 서버의 부하를 확인하고 네트워크, 저장소 및 컨테이너를 관리하거나 로그를 볼 수 있습니다.
일반적인 CentOS 서버 구성이 끝나면 일반적으로 프로젝트 설명에 따라 추가 구성을 하며 요구 사항은 다를 수 있습니다.