ในบทความนี้ เราจะพูดถึงขั้นตอนพื้นฐานที่จำเป็นในการติดตั้ง Linux CentOS 8 ตั้งแต่เริ่มต้นและการตั้งค่าเซิร์ฟเวอร์เริ่มต้น
มีอะไรใหม่ใน CentOS 8
เวอร์ชันที่ 8 ของ CentOS เปิดตัวเมื่อวันที่ 24 กันยายน 2019 CentOS เป็นการแจกจ่าย Linux โดยอิงตามการแจกจ่าย Red Hat Enterprise เชิงพาณิชย์โดย Red Hat และเข้ากันได้กับมัน
มาดูการเปลี่ยนแปลงหลักใน CentOS 8 ปล่อย:
- ลินุกซ์ เคอร์เนล 4.18 ใช้;
- เปลี่ยนจาก ยำ ตัวจัดการแพ็คเกจไปยัง dnf . ขณะนี้ yum อยู่ในฐานะเชื่อมโยงไปยัง dnf;
- ที่เก็บหลักถูกแบ่งออกเป็น 2 อัน — BaseOS และ AppStream . มีการดำเนินการเพื่อให้ผู้ใช้สามารถติดตั้งเวอร์ชันต่างๆ ของแพ็คเกจได้ BaseOS ใช้งานได้ตามปกติ
- อัปเดตซอฟต์แวร์ทั้งหมดแล้ว รวมถึงเคอร์เนลด้วย ตอนนี้คุณสามารถติดตั้ง php 7.2 จากคลังข้อมูลพื้นฐาน (สุดท้าย!)
- Iptables ถูกแทนที่ด้วย nftables;
- สคริปต์เครือข่าย ไม่ได้ถูกใช้โดยค่าเริ่มต้นเพื่อกำหนดการตั้งค่าเครือข่าย ตัวจัดการเครือข่าย ควรใช้ในการจัดการเครือข่าย
- โดยค่าเริ่มต้น ห้องนักบิน ติดตั้งเว็บอินเตอร์เฟสการจัดการเซิร์ฟเวอร์แล้ว (สะดวกสำหรับมือใหม่);
- Podman (แทน docker หรือ mobdy) ใช้สำหรับจัดการคอนเทนเนอร์
- เวอร์ชันใหม่ของสแต็ก TCP/IP 4.16 ดูเหมือนว่าจะให้ประสิทธิภาพที่สูงขึ้นและรองรับอัลกอริธึมการควบคุม BBR &NV
- เวอร์ชันการจัดจำหน่ายใหม่
วิธีการติดตั้ง CentOS 8 จากอิมเมจ ISO
เนื่องจากฉันติดตั้ง CentOS บน KVM เครื่องเสมือน ฉันได้ดาวน์โหลดการติดตั้ง ISO ภาพจากมิเรอร์อย่างเป็นทางการ (https://www.centos.org/download/mirrors/) ล่วงหน้าและติดตั้งเพื่อติดตั้งระบบปฏิบัติการบนเซิร์ฟเวอร์เสมือน (ถ้าคุณต้องการติดตั้ง CentOS บนเซิร์ฟเวอร์จริง ให้เขียนอิมเมจ ISO การติดตั้งบนแท่ง USB) ฉันจะบอกว่า CentOS 8 ขั้นตอนการติดตั้งไม่ต่างจากเวอร์ชันก่อนหน้า และบทความนี้จัดทำขึ้นเพื่อเป็นแนวทางสำหรับผู้ใช้ในครั้งแรก
ข้อกำหนดขั้นต่ำที่แนะนำสำหรับการติดตั้ง CentOS 8 อย่างน้อย 10GB ของพื้นที่ดิสก์และ แรม 712MB ต่อซีพียูคอร์
บูตคอมพิวเตอร์หรือเครื่องเสมือนจากอิมเมจการติดตั้ง CentOS ในขั้นตอนแรก คุณจะได้รับแจ้งให้เลือกการดำเนินการเพิ่มเติม เนื่องจากเราต้องการการติดตั้ง ให้เลือกรายการแรกในเมนู:
Install CentOS Linux 8.0.1905
หลังจากเลือกแล้ว กระบวนการติดตั้งจะเริ่มขึ้น:
ในขณะที่กำลังโหลดซอฟต์แวร์ที่จำเป็น คุณสามารถดูกระบวนการและไม่ต้องดำเนินการใดๆ
เมื่อหน้าจอสีดำเปลี่ยนเป็นแบบโต้ตอบด้วย CentOS โลโก้ วางคีย์บอร์ดและเมาส์ไว้ใกล้มือ
ในหน้าจอต้อนรับ คุณจะได้รับแจ้งให้เลือกภาษาที่จะใช้ในระหว่างขั้นตอนการติดตั้ง จากนั้นคลิกต่อไป . ในเมนูถัดไป คุณจะเลือกการตั้งค่าการติดตั้ง CentOS พื้นฐาน
ในการเริ่มต้นการติดตั้ง คุณต้องกำหนดค่าเพียงรายการเดียว:ปลายทางการติดตั้ง . ที่นั่นคุณเลือกเค้าโครงพาร์ติชั่นดิสก์ แต่ฉันต้องการกำหนดค่าเครือข่าย เวลาและวันที่ในขั้นตอนนี้
เลือกการตั้งค่าของคุณตามเขตเวลาของคุณ
ในการกำหนดค่าเครือข่ายของคุณ ให้คลิก เครือข่ายและชื่อโฮสต์ .
ระบุชื่อเซิร์ฟเวอร์ของคุณใน ชื่อโฮสต์ ฟิลด์ และคลิก กำหนดค่า เพื่อกำหนดค่าอินเทอร์เฟซเครือข่าย
ในแท็บ ทั่วไป ให้เลือกช่อง เชื่อมต่อกับเครือข่ายนี้โดยอัตโนมัติเมื่อพร้อมใช้งาน เพื่อเริ่มอินเทอร์เฟซเครือข่ายนี้โดยอัตโนมัติ
ไปที่ การตั้งค่า IPv4 แท็บ (หรือ IPv6 หากคุณใช้โปรโตคอลนี้) เพื่อตั้งค่า IP ที่อยู่ เน็ตมาสก์ เกตเวย์ และเซิร์ฟเวอร์ DNS:
ในการป้อน ที่อยู่ IP . เฉพาะ , เลือก คู่มือ เมธอดแล้วคลิก เพิ่ม . หลังจากบันทึกการเปลี่ยนแปลงแล้ว ให้กลับไปที่หน้าจอการกำหนดค่าเครือข่ายเริ่มต้น
ดังที่คุณเห็นในภาพหน้าจอ ที่อยู่ IP เพิ่มแล้วและอินเทอร์เฟซเครือข่ายใช้งานได้ (สถานะ:เชื่อมต่อแล้ว)
ในขั้นตอนต่อไป เราจะไปที่การแบ่งพาร์ติชั่นของดิสก์:
เพื่อแสดงขั้นตอนการติดตั้ง ฉันใช้การกำหนดค่าพื้นที่เก็บข้อมูลอัตโนมัติโดยนักพัฒนา CentOS หากคุณต้องการแบ่งพาร์ติชั่นดิสก์ด้วยวิธีอื่น ให้เลือก กำหนดเอง ที่นี่.
หากตัวควบคุมที่เก็บข้อมูลเซิร์ฟเวอร์ของคุณไม่รองรับฮาร์ดแวร์ RAID คุณสามารถกำหนดค่าซอฟต์แวร์ RAID บนดิสก์เซิร์ฟเวอร์ของคุณโดยใช้ mdadmเนื่องจากก่อนหน้านี้มีการติดตั้ง guest OS บนเครื่องเสมือนของฉัน การติดตั้งจึงมองเห็นได้ ฉันลบพาร์ติชั่นของระบบปฏิบัติการก่อนหน้าในเมนูถัดไปที่ปรากฏ:
คุณสามารถลบพาร์ติชั่นได้โดยคลิก ลบทั้งหมด . จากนั้นคุณจะต้องคลิก เรียกคืนพื้นที่ เพื่ออัปเดตขนาดของพื้นที่ว่างในดิสก์
รายการแพ็คเกจสำหรับการติดตั้งถูกเลือกใน การเลือกซอฟต์แวร์ . หากคุณกำลังจะใช้ CentOS 8 เป็นเซิร์ฟเวอร์ ให้เลือก Minimal Install รวมถึง Standard และ Guest Agents (หากคุณติดตั้ง guest OS บนเครื่องเสมือน)
หลังจากทำเช่นนั้น คุณสามารถเริ่มการติดตั้งได้โดยคลิก เริ่มการติดตั้ง .
ในระหว่างการแกะและติดตั้งส่วนประกอบที่จำเป็น คุณจะได้รับแจ้งให้ป้อนรหัสผ่านสำหรับ ราก ผู้ใช้ คุณยังสร้างผู้ใช้รายอื่นได้ แต่เป็นทางเลือก
คลิก รูทรหัสผ่าน ป้อนรหัสผ่านและยืนยัน จากนั้นคลิกเสร็จสิ้น เพื่อกลับไปที่การติดตั้ง:
CentOS 8 การติดตั้งใช้เวลาประมาณ 5-7 นาที เมื่อคุณเห็นรีบูต บนหน้าจอการติดตั้ง แสดงว่าการติดตั้งสิ้นสุดลง และคุณต้องรีสตาร์ทเซิร์ฟเวอร์
ดังนั้น CentOS 8 การติดตั้งเสร็จสมบูรณ์
การกำหนดค่าการตั้งค่าพื้นฐานของ CentOS 8 หลังการติดตั้ง
พื้นฐาน CentOS 8 การกำหนดค่าหลังการติดตั้งเกือบจะเหมือนกับของ CentOS 7 และฉันกำหนดค่าการตั้งค่าพื้นฐานเดียวกันบนเซิร์ฟเวอร์ทั้งหมด
ติดตั้งการอัปเดตและเครื่องมือผู้ดูแลระบบบน CentOS
ดังที่ได้กล่าวไว้ก่อนหน้านี้ dnf ได้เข้ามาแทนที่ ยำ ใน CentOS 8 .
DNF – เป็นแอปพลิเคชั่น YUM รุ่นต่อไป ตัวจัดการแพ็คเกจ RPM สำหรับลีนุกซ์รุ่น dnf ก่อนหน้านี้ถูกใช้ใน Fedora distribution และตอนนี้ก็มาถึง 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-*
จะปิดการใช้งาน SELinux บน CentOS ได้อย่างไร
ในขั้นตอนการตั้งค่าเซิร์ฟเวอร์เริ่มต้น ฉันจะปิดการใช้งาน 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
เพิ่มบริการที่คุณต้องการ (SSH และ HTTP/HTTPS) ในรายการโซนที่เชื่อถือได้ใน firewalld
:
firewall-cmd –-add-service=ssh
firewall-cmd --permanent –-add-service=http
firewall-cmd --permanent –-add-service=https
การเปลี่ยนเวลาและ TimeZone บน CentOS
หากต้องการดูเวลาปัจจุบันและเขตเวลาบน CentOS ให้ป้อน วันที่ คำสั่ง:
# date
เราตั้งค่า เขตเวลา ระหว่างการติดตั้งระบบของเรา ดังนั้นเราจึงมีเวลาในนิวยอร์ก หากต้องการเปลี่ยน เขตเวลา , ใช้คำสั่งที่เกี่ยวข้อง:
# 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 ในวิธีที่สะดวกยิ่งขึ้น ฉันจะเพิ่มสองสามบรรทัดใน .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
ห้องนักบิน:เว็บอินเตอร์เฟสการจัดการเซิร์ฟเวอร์บน 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
ในเบราว์เซอร์ของคุณและรับรองความถูกต้อง
เมื่อใช้ห้องนักบิน คุณสามารถดูโหลดของเซิร์ฟเวอร์ของคุณ จัดการเครือข่าย ที่เก็บข้อมูล และคอนเทนเนอร์ หรือดูบันทึกได้
การกำหนดค่าเซิร์ฟเวอร์ CentOS ทั่วไปสิ้นสุดลงแล้ว ฉันมักจะทำการกำหนดค่าเพิ่มเติมตามคำสั่งโครงการของฉัน และข้อกำหนดอาจแตกต่างกันไป