Kullanıcı saat dilimi nasıl değiştirilir?


11

Biliyorum (örneğin Debian'da) bir sistemindpkg-reconfigure tzdata saat dilimini değiştirmek için kullanabilirsiniz ama bir kullanıcının saat dilimini nasıl değiştirebileceğini merak ediyorum (Linux / Unix böyle bir fikri destekliyorsa).

Normalde ssh üzerinden uzaktan sunucu üzerinde çalışıyorum ve sunucunun UTC ile dahili olarak (dosyalar, ...) çalıştığı ve zaman dilimlerinin oldukça yüzeysel olduğu göz önüne alındığında, nereden bağlandığıma bağlı olarak istenen zaman diliminde saatleri görmek istiyorum. Mümkün mü?


Ne denedin? Hatta web üzerinde "ssh TZ bilgi aktarma" aradınız mı?
Anthon

Yanıtlar:


13

TZOrtam değişkenini kullanın . Örneğin:

bash$ export TZ=US/Pacific
bash$ date
Mon Mar  3 00:31:17 PST 2014
bash$ export TZ=US/Eastern
bash$ date
Mon Mar  3 03:33:06 EST 2014

İçin olası değerler TZdizindedir /usr/share/zoneinfo(örneğin, varlığına bakın /usr/share/zoneinfo/US/Pacific)


Benim durumumda, datefarklı bir zaman-zon ve zaman verir uname -a. Neden olsun ki?
Geremia

8

İlk olarak, ssh sunucusu ve ssh istemcisi için bazı yapılandırmalara ihtiyacınız vardır.

Sunucu'da, değişkenini /etc/ssh/sshd_configkabul ettiğinizden emin olun TZ:

AcceptEnv LANG LC_* TZ

İstemci'de /etc/ssh/ssh_configveya içinde ~/.ssh/config, TZdeğişken gönderdiğinizden emin olun :

SendEnv TZ

(Varsayılanlar genellikle istemciden hiçbirini göndermez ve sunucuda hiçbirini kabul etmez.)

Sonra için takma yapmak sshkomutu akımı kullanmak TZiçinde sshoturumda. Bu satırı .bashrcdosyaya ekle :

alias ssh='TZ=${TZ:-"$(cat /etc/timezone)"} ssh'

veya bunu sistemde kullanmayın /etc/timezone:

alias ssh='TZ=${TZ:-"$(date +%Z)"} ssh'

Daha sonra sshuzak sunucuya her girişinizde, sunucudaki saat yerel saat diliminize göre gösterilir.


Ayrıca TZ=$(date +%Z), tarihin çoğu sürümünde (Linux / * BSD / Solaris) kullanabilirsiniz, bu /etc/timezone, yapılmayan şeyin olmadığı sistemlerde daha iyi çalışacaktır .
mr.spuratic

Arkadasşça bir uyarı. Değişikliklerin etkili olması için sshd'yi yeniden başlatmayı unutmayın. Ubuntu "hizmet ssh yeniden başlatma"
cavalcade
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.