EQVPS
KontrollpanelKom igång

Så byter du värdnamn och tidszon på en VPS

Byt namn på din server och ställ klockan på din tidszon i Ubuntu, Debian och Windows Server, utan sudo-varningen som kommer efter ett ensamt hostnamectl, och med kontroll av cron, loggar och tidssynkronisering efter bytet. Varje steg testat på våra avbilder.

En ny server heter det du skrev när du beställde den, och klockan står på UTC. Båda är lätta att ändra. Namnbytet har en hake: det vanliga kommandot lämnar en gammal rad kvar i /etc/hosts, och på Ubuntu klagar sudo på den före varje kommando. Den här guiden fixar båda i Ubuntu och Debian och visar kommandona för Windows Server. Vi körde varje steg på våra egna avbilder.

Du behöver en användare med sudo. Guiden för att sätta upp Ubuntu skapar en.

1. Kontrollera nuvarande namn och tid

hostnamectl
timedatectl

Vår nya Ubuntu 24.04-server visade beställningsnamnet som statiskt värdnamn, samt Time zone: Etc/UTC, System clock synchronized: yes och NTP service: active. Debian 12 och 13 såg likadana ut. Tidssynkroniseringen fungerar alltså redan, du behöver inte installera NTP.

2. Byt värdnamn

Välj ett kort namn, eller ett fullständigt om det ska stämma med en DNS-post du styr, till exempel web1.example.com:

sudo hostnamectl set-hostname web1.example.com

Namnet ändras direkt, men /etc/hosts låter fortfarande 127.0.1.1 peka på det gamla. På Ubuntu syntes det med en gång:

sudo: unable to resolve host web1.example.com: No address associated with hostname

hostname -f misslyckades på samma sätt. Debian hittade namnet en annan väg och visade ingen varning, men dess /etc/hosts var lika inaktuell. Rätta filen på båda:

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

Efter det var sudo tyst, hostname -f skrev ut web1.example.com och hostname -s skrev ut web1.

Kommentaren överst i /etc/hosts säger att cloud-init hanterar filen och att dina ändringar kan försvinna. På våra avbilder skriver cloud-init den bara vid serverns första start. Vi startade om och fick sedan cloud-init att behandla nästa start som en ny instans. Namnet och vår rad i /etc/hosts klarade båda.

Värdnamnet finns bara på din server. Om andra datorer ska nå den under det namnet, lägg till en DNS-post också: peka en domän mot din VPS går igenom det. För en e-postserver spelar den omvända posten också roll: se ställa in omvänd DNS.

3. Byt tidszon

Lista zonerna och välj din. Vår server hade 497:

timedatectl list-timezones | grep -i tokyo
sudo timedatectl set-timezone Asia/Tokyo
timedatectl

Klockan själv flyttas inte. Det enda som ändras är hur tider visas och hur lokala scheman läses. Så här såg det ut efter bytet från UTC till Asia/Tokyo:

VadEfter bytet
date, journalctlTokyotid direkt
cronTokyotid direkt: ett jobb inställt på 09:48 körde 09:48:01 JST, utan omstart
/var/log/syslog (Ubuntu)Skrev UTC-tider tills rsyslog startades om
/etc/timezone (Ubuntu)Stod kvar på Etc/UTC

Starta därför om loggtjänsten och allt långlivat som skriver ut tider, som din app:

sudo systemctl restart rsyslog

Debian 12 och 13 installerar inte rsyslog. Deras loggar finns bara i journalen, som följer den nya zonen av sig själv.

Några äldre program läser zonen från /etc/timezone i stället för systeminställningen. Om något av dem fortfarande visar UTC, skriv in samma namn där och starta om programmet:

echo Asia/Tokyo | sudo tee /etc/timezone

Gå igenom din crontab innan du byter. En rad 0 3 * * * som skrevs för 03:00 UTC körs nu 03:00 Tokyotid, nio timmar tidigare i verklig tid.

4. Windows Server

Öppna PowerShell som administratör i Windows Server 2022. Namnbytet kräver en omstart:

Rename-Computer -NewName web1 -Restart

Datornamn i Windows är begränsade till 15 tecken, så använd det korta namnet här.

För tidszonen letar du upp id:t och ställer in det. Det gäller direkt, utan omstart:

Get-TimeZone -ListAvailable | Where-Object Id -like '*Tokyo*'
Set-TimeZone -Id 'Tokyo Standard Time'
Get-TimeZone

När du ändå är inloggad är det ett bra tillfälle att säkra RDP.

Vilken plan

Värdnamn och tidszon kostar ingenting, så vilken plan som helst duger: Nano för $3/mån för en liten Linux-server, Windows-Small för $11/mån för Windows Server 2022. Alla planer finns på sidan VPS, och betalning sker i USDT, USDC eller ETH på Base, Ethereum eller Polygon.

FAQ

Återställer cloud-init mitt värdnamn efter en omstart?

Inte på våra avbilder. Vi satte ett nytt namn med hostnamectl, startade om och fick dessutom cloud-init att behandla nästa start som en helt ny instans. Namnet stod kvar båda gångerna, liksom vår ändring i /etc/hosts. En ominstallation ger dig ett nytt system med det ursprungliga namnet.

Varför säger sudo "unable to resolve host" efter namnbytet?

hostnamectl byter namnet men inte /etc/hosts, där 127.0.1.1 fortfarande pekar på det gamla namnet. På Ubuntu skriver sudo då "unable to resolve host" före varje kommando. Byt ut det gamla namnet mot det nya på raden 127.0.1.1 så försvinner varningen.

Ska min server gå på UTC eller på min lokala tid?

UTC är det säkrare valet: loggtider från olika servrar stämmer överens och det blir inga hopp vid sommartid. Byt till din egen zon om du vill läsa cron-jobb och loggtider i din egen tid. Båda fungerar, och du kan byta igen när som helst.

Måste jag ställa in NTP?

Nej. Våra Ubuntu- och Debian-avbilder håller klockan synkad med systemd-timesyncd från första starten. Kör timedatectl och leta efter "System clock synchronized: yes".

Förstör ett tidszonsbyte mina cron-jobb?

Cron använder den nya zonen direkt. På vår Ubuntu 24.04-server körde ett jobb inställt på 09:48 Tokyotid klockan 09:48:01 Tokyotid, utan att cron startades om. Kontrollera däremot jobb som är skrivna för UTC: de körs nu vid den timmen i din lokala tid.

Kommentarer

Inga kommentarer än. Bli först.

Lämna en kommentar

Kommentarer modereras innan de visas.