Dreamhost ดูเหมือนจะคิดว่าเราชอบ PDT แม้จะอยู่ในมิดเวสต์ก็ตาม ฉันจะเปลี่ยนเขตเวลาได้อย่างไร
Dreamhost ดูเหมือนจะคิดว่าเราชอบ PDT แม้จะอยู่ในมิดเวสต์ก็ตาม ฉันจะเปลี่ยนเขตเวลาได้อย่างไร
คำตอบ:
dpkg-reconfigureเครื่องมือที่ผมพบว่าให้ง่ายต่อการใช้งาน ใช้:
sudo dpkg-reconfigure tzdata
tzselectคุณจะได้รับความหลากหลายของตัวเลือกรวมทั้งบางส่วนที่ไม่ได้รวมอยู่ใน
นี่น่าจะช้าไปหน่อยสำหรับ OP และมีไว้สำหรับผู้ค้นหารายอื่นที่มาถึงที่นี่
หากคุณต้องการโซลูชันที่ไม่โต้ตอบให้ลองใช้วิธีแก้ไขปัญหานี้จากการเปลี่ยนเขตเวลาด้วย dpkg-reconfigure tzdata และ debconf-set-selections
echo "Europe/Zurich" > /etc/timezone
dpkg-reconfigure -f noninteractive tzdata
คุณสามารถกำหนดเขตเวลาของคุณได้ด้วยการเข้าไปใน / usr / share / zoneinfo ในความเป็นจริงคำสั่ง dpkg-reconfigure ด้านบนคัดลอกไฟล์ที่เหมาะสมจากที่นั่นไปยัง / etc / localtime ฉันเคยทำเช่นนั้นด้วยตนเองและดูเหมือนว่าจะทำงานได้ดี
อย่าแปลกใจถ้ากระบวนการที่ใช้เวลานานไม่สามารถรับการเปลี่ยนแปลงได้ เช่นการประทับเวลาบันทึก Apache มาถึงใจ พิจารณาว่ามีความสำคัญและด้วยเหตุนี้ไม่ว่าคุณจะต้องเริ่มกระบวนการทำงานใหม่หรือแม้กระทั่งรีบูต
/etc/localtimeไม่มีอยู่จริง หากมีอยู่และเป็น softlink ไประบบ/usr/share/zoneinfo/whateverจะใช้เป็นฐานและเป็นข้อมูล/etc/localtimeที่ได้รับการอัปเดตให้แทนที่การเปลี่ยนแปลงของคุณ
หากต้องการแก้ไขแบบไม่โต้ตอบกับรุ่น Debian และ Ubuntu ล่าสุด (Stretch / Xenial เป็นต้น) คุณต้องลบออก/etc/localtimeเช่นกันมิฉะนั้น/etc/timezoneจะถูกเขียนทับ
echo 'Europe/Zurich' > /etc/timezone
rm /etc/localtime
dpkg-reconfigure -f noninteractive tzdata
คำตอบนี้ขึ้นอยู่กับคำตอบ mc0e ' ฉันไม่สามารถเพิ่มความคิดเห็นด้วยชื่อเสียงของฉัน
TL; DR
echo "TZ=Etc/UTC" >> /etc/environment
tzconfig
ซึ่งเป็นเขตที่คุณต้องการคุณพบการใช้Etc/UTCtzselect
รุ่นที่ยาวกว่า
เมื่อคุณใช้
dpkg-reconfigure tzdata
ข้อมูลเขตเวลาจะไม่ถูกเก็บไว้หลังจากรีบูต คุณสามารถตรวจสอบการตั้งค่าของคุณด้วย
diff -s /etc/localtime /usr/share/zoneinfo/`cat /etc/timezone`
หากคุณกำลังอัปเดตเพียงอย่างเดียวการอัปเด/etc/timezoneตจะไม่สอดคล้องกัน/etc/localtimeดังนั้นจึงเป็นการดีกว่าที่จะดำเนินการ
tzconfig
ใช้tzselectเพื่อค้นหาโซนเวลาที่มีอยู่จริง (หรือเพียงแค่เรียกดู/usr/share/zoneinfoไดเรกทอรี)
ในระบบ POSIX TZควรมีความสำคัญก่อน/etc/localtime:
export TZ='Europe/Berlin'
$ date
Tue Apr 10 08:51:03 CEST 2018
export TZ='Pacific/Efate'
$ date
Tue Apr 10 18:28:33 +11 2018
การใช้โดยตรงTZ สามารถบันทึกการโทรของระบบจำนวนมากได้เนื่องจากฟังก์ชั่นที่เกี่ยวข้องกับวันที่ / เวลาที่ใช้บ่อยต้องเข้าถึงระบบไฟล์ในแต่ละครั้งที่บางโปรแกรมถามถึงวันที่ปัจจุบัน มันเป็นการเพิ่มประสิทธิภาพขนาดเล็ก แต่ค่อนข้างง่าย
TZในไฟล์โปรไฟล์ของคุณสร้าง symlink หรือไม่? นั่นไม่ได้ฟังดูจริงเลยในประสบการณ์ของฉัน บางทีคุณอาจหมายถึง "ตรวจสอบให้แน่ใจว่าได้สร้าง symlink ... " หรือไม่
$TZอ่านตัวแปรglibc: gnu.org/software/libc/manual/html_node/TZ-Variable.html
echo "TZ=Etc/UTC" >> /etc/environment? คุณหายไปTZ=ส่วนหนึ่ง ... (ถ้ากรณีที่มีคนยังคงใช้เวอร์ชันเดเบียนโบราณ) นอกจากนี้สิ่งที่ไม่โต้ตอบเช่น daemons จะยังคงใช้/etc/localtimeเวอร์ชันแทนที่จะเป็นหนึ่งชุดในTZ...