เซิร์ฟเวอร์ใหม่ใช้ชื่อที่คุณพิมพ์ตอนสั่งซื้อ และนาฬิกาอยู่ที่ UTC ทั้งสองอย่างเปลี่ยนได้ง่าย การเปลี่ยนชื่อมีกับดักหนึ่งข้อ คือคำสั่งที่ใช้กันทั่วไปจะทิ้งบรรทัดเก่าไว้ใน /etc/hosts และบน Ubuntu sudo จะบ่นเรื่องนี้ก่อนทุกคำสั่ง คู่มือนี้แก้ทั้งสองเรื่องบน Ubuntu และ Debian และแสดงคำสั่งสำหรับ Windows Server เราทดลองทุกขั้นตอนบนอิมเมจของเราเอง
คุณต้องมีผู้ใช้ที่ใช้ sudo ได้ คู่มือตั้งค่า Ubuntu จะสร้างให้
1. ดูชื่อและเวลาปัจจุบัน
hostnamectl
timedatectl
เซิร์ฟเวอร์ Ubuntu 24.04 ใหม่ของเราแสดงชื่อจากการสั่งซื้อเป็นชื่อโฮสต์แบบคงที่ พร้อม Time zone: Etc/UTC, System clock synchronized: yes และ NTP service: active ส่วน Debian 12 และ 13 ก็เหมือนกัน การซิงก์นาฬิกาทำงานอยู่แล้ว ไม่ต้องติดตั้ง NTP
2. เปลี่ยนชื่อโฮสต์
เลือกชื่อสั้น หรือชื่อเต็มถ้าจะให้ตรงกับระเบียน DNS ที่คุณดูแล เช่น web1.example.com:
sudo hostnamectl set-hostname web1.example.com
ชื่อเปลี่ยนทันที แต่ /etc/hosts ยังผูก 127.0.1.1 ไว้กับชื่อเก่า บน Ubuntu อาการนี้โผล่ทันที:
sudo: unable to resolve host web1.example.com: No address associated with hostname
hostname -f ก็ล้มเหลวแบบเดียวกัน Debian หาชื่อเจอด้วยวิธีอื่นจึงไม่แสดงคำเตือน แต่ /etc/hosts ของมันก็ล้าสมัยไม่ต่างกัน ให้แก้ไฟล์ทั้งสองระบบ:
sudo sed -i 's/^127\.0\.1\.1 .*/127.0.1.1 web1.example.com web1/' /etc/hosts
grep 127.0.1.1 /etc/hosts
hostname -f
หลังจากนั้น sudo ก็เงียบ hostname -f แสดง web1.example.com และ hostname -s แสดง web1
ความเห็นที่ด้านบนของ /etc/hosts บอกว่า cloud-init เป็นผู้ดูแลไฟล์นี้ และสิ่งที่คุณแก้อาจหายไป บนอิมเมจของเรา cloud-init เขียนไฟล์นี้เฉพาะตอนบูตเซิร์ฟเวอร์ครั้งแรก เรารีบูต แล้วทำให้ cloud-init มองการบูตครั้งถัดไปเป็นอินสแตนซ์ใหม่ ชื่อและบรรทัดของเราใน /etc/hosts ยังอยู่ทั้งสองครั้ง
ชื่อโฮสต์มีอยู่บนเซิร์ฟเวอร์ของคุณเท่านั้น ถ้าเครื่องอื่นต้องเข้าถึงด้วยชื่อนี้ ให้เพิ่มระเบียน DNS ด้วย การชี้โดเมนไปที่ VPS อธิบายวิธีไว้ สำหรับเมลเซิร์ฟเวอร์ ระเบียนย้อนกลับก็สำคัญ ดู การตั้งค่า DNS ย้อนกลับ
3. เปลี่ยนเขตเวลา
แสดงรายชื่อเขตเวลาแล้วเลือกของคุณ เซิร์ฟเวอร์ของเรามี 497 เขต:
timedatectl list-timezones | grep -i tokyo
sudo timedatectl set-timezone Asia/Tokyo
timedatectl
ตัวนาฬิกาไม่ขยับ สิ่งที่เปลี่ยนมีแค่การแสดงเวลาและการอ่านตารางเวลาท้องถิ่น นี่คือสิ่งที่เราเห็นหลังเปลี่ยนจาก UTC เป็น Asia/Tokyo:
| อะไร | หลังเปลี่ยน |
|---|---|
date, journalctl | เป็นเวลาโตเกียวทันที |
| cron | เป็นเวลาโตเกียวทันที: งานที่ตั้งไว้ 09:48 ทำงานตอน 09:48:01 JST โดยไม่ต้องรีสตาร์ต |
/var/log/syslog (Ubuntu) | ยังเขียนเวลา UTC จนกว่าจะรีสตาร์ต rsyslog |
/etc/timezone (Ubuntu) | ยังเป็น Etc/UTC |
ดังนั้นให้รีสตาร์ตบริการล็อกและทุกอย่างที่ทำงานนานและพิมพ์เวลา เช่น แอปของคุณ:
sudo systemctl restart rsyslog
Debian 12 และ 13 ไม่ได้ติดตั้ง rsyslog ล็อกของมันอยู่ใน journal เท่านั้น ซึ่งปรับตามเขตเวลาใหม่เอง
โปรแกรมเก่าบางตัวอ่านเขตเวลาจาก /etc/timezone แทนการตั้งค่าระบบ ถ้ามีตัวไหนยังแสดง UTC ให้เขียนชื่อเดียวกันลงไปแล้วรีสตาร์ตโปรแกรมนั้น:
echo Asia/Tokyo | sudo tee /etc/timezone
ก่อนเปลี่ยน ให้ตรวจ crontab ของคุณ บรรทัด 0 3 * * * ที่เขียนไว้สำหรับ 03:00 UTC จะทำงานตอน 03:00 เวลาโตเกียวแทน คือเร็วขึ้นเก้าชั่วโมงในเวลาจริง
4. Windows Server
บน Windows Server 2022 ให้เปิด PowerShell ในฐานะผู้ดูแลระบบ การเปลี่ยนชื่อต้องรีสตาร์ต:
Rename-Computer -NewName web1 -Restart
ชื่อคอมพิวเตอร์ใน Windows จำกัดไว้ 15 ตัวอักษร จึงควรใช้ชื่อสั้นตรงนี้
สำหรับเขตเวลา ให้หา ID แล้วตั้งค่า มีผลทันทีโดยไม่ต้องรีสตาร์ต:
Get-TimeZone -ListAvailable | Where-Object Id -like '*Tokyo*'
Set-TimeZone -Id 'Tokyo Standard Time'
Get-TimeZone
ในเมื่อเข้าระบบแล้ว ก็เป็นจังหวะดีที่จะ ป้องกัน RDP
เลือกแพ็กเกจไหน
ชื่อโฮสต์และเขตเวลาไม่มีค่าใช้จ่าย แพ็กเกจไหนก็ได้ Nano $3/เดือน สำหรับเซิร์ฟเวอร์ Linux ขนาดเล็ก Windows-Small $11/เดือน สำหรับ Windows Server 2022 แพ็กเกจทั้งหมดอยู่ในหน้า VPS ชำระเงินด้วย USDT, USDC หรือ ETH บนเครือข่าย Base, Ethereum หรือ Polygon
ความคิดเห็น
ยังไม่มีความคิดเห็น เป็นคนแรกสิ