Oyun sunucuları, bellek sızıntılarını temizlemek, yapılandırma değişikliklerini uygulamak ve uzun oyun oturumları boyunca performansı kararlı tutmak için düzenli yeniden başlatmalardan yarar sağlar. Bu kılavuz, GPanel'deki Schedules özelliğini kullanarak otomatik zamanlanmış yeniden başlatmaları nasıl ayarlayacağınızı gösterir, böylece sunucunuz manuel müdahale olmadan sağlıklı kalır.
Neden Yeniden Başlatmaları Zamanlamalı?
Çoğu oyun sunucusu zamanla bellek kullanımını ve geçici verileri biriktirir. Periyodik yeniden başlatmalar olmadan şunları fark edebilirsiniz:
- RAM kullanımı saatler veya günler boyunca arttıkça artan gecikme ve rubber-banding
- Minecraft ve Project Zomboid gibi oyunlarda varlık ve parça yükleme yavaşlamaları
- Yalnızca tam sunucu yeniden başlatmasında sıfırlanan mod kaynaklı bellek sızıntıları
- Etkin olması için yeniden başlatma gerektiren yapılandırma değişikliklerinin gecikmeli uygulanması
Her 6 ila 12 saatte bir zamanlanmış yeniden başlatma en yaygın kurulumdur ve bu sorunların çoğunu önler.
Ön Koşullar
- Legion Hosting ile aktif bir oyun sunucusu
- Hesap kimlik bilgilerinizle GPanel erişimi
- Sunucunuz Running durumunda olmalıdır (zamanlamalar, aksi yapılandırılmadıkça yalnızca sunucu çevrimiçiyken tetiklenir)
Adım 1: Schedules Sekmesini Açın
- GPanel'e giriş yapın ve sunucu listesinden sunucunuzu seçin.
- Sol kenar çubuğunda Schedules sekmesine tıklayın.
- Mevcut zamanlamaların bir listesini göreceksiniz. Bu yeni bir sunucuysa, liste boş olacaktır.
Adım 2: Yeni Bir Zamanlama Oluşturun
- Create Schedule düğmesine tıklayın.
- Zamanlama için bir Name (ad) girin —
Auto Restart Every 6 Hoursgibi açıklayıcı bir şey. - Zamanlamanın ne zaman çalışacağını kontrol etmek için Cron Expression'ı ayarlayın. Yaygın örnekler için aşağıdaki bölüme bakın.
- Enabled seçeneğinin açık olduğundan emin olun.
- Zamanlamayı oluşturmak için Save'e tıklayın.
Adım 3: Zamanlamaya Bir Yeniden Başlatma Görevi Ekleyin
- Zamanlamayı kaydettikten sonra, açmak için adına tıklayın.
- Tasks bölümü altında New Task'a tıklayın.
- Action'ı Send power action olarak ayarlayın.
- Payload'ı Restart olarak ayarlayın.
- Time Offset'i
0saniye olarak ayarlayın (bu, zamanlama tetiklendiğinde görevin hemen çalışması anlamına gelir). - Save'e tıklayın.
Zamanlanmış yeniden başlatmanız artık aktif. Sunucu, yapılandırdığınız cron ifadesine göre otomatik olarak yeniden başlatılacaktır.
Cron İfadelerini Anlamak
GPanel, bir zamanlamanın ne zaman çalışacağını tanımlamak için cron ifadeleri kullanır. Bir cron ifadesi, boşluklarla ayrılmış beş alana sahiptir:
Minute Hour Day-of-Month Month Day-of-Week
* * * * *
| Alan | İzin Verilen Değerler | Açıklama |
|---|---|---|
| Minute | 0–59 | Görevin çalıştığı saatin dakikası |
| Hour | 0–23 | Günün saati (24 saat formatı) |
| Day of Month | 1–31 | Ayın günü |
| Month | 1–12 | Yılın ayı |
| Day of Week | 0–6 (0 = Pazar) | Haftanın günü |
Özel karakterler:
*— her değerle eşleşir (joker karakter)*/N— her N aralığıyla eşleşir (örneğin, Hour alanındaki*/6her 6 saatte bir anlamına gelir),— birden fazla değeri ayırır (örneğin,0,120'da ve 12'de anlamına gelir)
Yaygın Yeniden Başlatma Zamanlamaları
İşte en popüler yeniden başlatma aralıkları ve GPanel'de kullanılacak cron ifadeleri:
| Yeniden Başlatma Sıklığı | Cron İfadesi | Yeniden Başlatma Zamanı (Sunucu Saati) |
|---|---|---|
| Her 6 saatte bir | 0 */6 * * * |
12:00 AM, 6:00 AM, 12:00 PM, 6:00 PM |
| Her 8 saatte bir | 0 */8 * * * |
12:00 AM, 8:00 AM, 4:00 PM |
| Her 12 saatte bir | 0 0,12 * * * |
12:00 AM, 12:00 PM |
| Günde bir kez (4:00 AM) | 0 4 * * * |
4:00 AM |
| Günde bir kez (6:00 AM) | 0 6 * * * |
6:00 AM |
| Her 3 saatte bir | 0 */3 * * * |
12 AM, 3 AM, 6 AM, 9 AM, 12 PM, 3 PM, 6 PM, 9 PM |
Yeniden Başlatmadan Önce Oyuncuları Uyarma
Uyarı olmadan yeniden başlatmak, oyuncuları eylemin ortasında kesintiye uğratabilir ve hayal kırıklığına veya ilerleme kaybına neden olabilir. Yeniden başlatma gerçekleşmeden önce oyunculara bir uyarı mesajı yayınlamak için GPanel'in Send Command görevini kullanabilirsiniz.
Nasıl Çalışır
Tek bir yeniden başlatma görevi yerine, aynı zamanlama içinde zaman ofsetleriyle kademelendirilmiş birden fazla görev oluşturursunuz:
- Bir uyarı mesajı yayınlayan
0ofsetinde bir Send Command görevi (örneğin, "Server restarting in 5 minutes") - Son bir uyarı ile
240ofsetinde (4 dakika sonra) bir Send Command görevi (örneğin, "Server restarting in 1 minute") 300ofsetinde (ilk uyarıdan 5 dakika sonra) bir Send power action → Restart görevi
0, 1 dakika için 60, 5 dakika için 300 vb. kullanın.
Örnek: Uyarılı Tam Zamanlama
İşte 5 dakikalık bir uyarı, 1 dakikalık bir uyarı ve yeniden başlatma ile tam bir zamanlamanın nasıl göründüğü:
| Görev # | Action | Payload / Command | Time Offset |
|---|---|---|---|
| 1 | Send command | (oyuna özgü uyarı komutu — aşağıya bakın) | 0 saniye |
| 2 | Send command | (oyuna özgü son uyarı komutu) | 240 saniye |
| 3 | Send power action | Restart | 300 saniye |
Oyuna Özgü Uyarı Komutları
Oyunculara mesaj yayınlamak için kullandığınız komut oyuna göre değişir. Aşağıda en popüler oyunlar için komutlar yer almaktadır:
Project Zomboid
Bağlı tüm oyunculara oyun içi bir mesaj göndermek için servermsg komutunu kullanın:
servermsg "Server restarting in 5 minutes. Please find a safe location."
servermsg "Server restarting in 1 minute!"
Minecraft
Tüm oyunculara bir sohbet mesajı yayınlamak için say komutunu kullanın:
say Server restarting in 5 minutes. Please save your progress.
say Server restarting in 1 minute!
ARK: Survival Ascended
Tüm oyuncular için ekranda bir mesaj görüntülemek için broadcast komutunu kullanın:
broadcast Server restarting in 5 minutes. Please find a safe location.
broadcast Server restarting in 1 minute!
En İyi Uygulamalar
- Yoğun olmayan saatlerde yeniden başlatın. Sunucunuzun öngörülebilir bir oyuncu zamanlaması varsa, yeniden başlatmaları en az oyuncunun çevrimiçi olduğu zamana ayarlayın. 4:00 AM veya 6:00 AM'de günlük bir yeniden başlatma çoğu topluluk için iyi çalışır.
- Her zaman bir uyarı ekleyin. 1 dakikalık bir uyarı bile oyunculara güvenli bir yere ulaşmak veya bir takası tamamlamak için zaman verir. 5 dakikalık bir uyarı idealdir.
- Yeniden başlatmaların yanı sıra yedekleri kullanın. Oyununuz veya GPanel otomatik yedeklemeleri destekliyorsa, yeniden başlatmadan önce bir yedek zamanlayın. Bu, bir şeyler ters gitmesi durumunda her zaman güncel bir kaydınızın olmasını sağlar.
- Çok sık yeniden başlatmayın. Her saat yeniden başlatmak çoğu sunucu için gereksizdir ve oyuncuları hayal kırıklığına uğratır. Bilinen bellek sızıntısı sorunları olan yoğun mod'lu bir sunucu çalıştırmıyorsanız, her 6 ila 12 saatte bir ideal noktadır.
- Zamanlamanızı test edin. Bir zamanlama oluşturduktan sonra, yeniden başlatmanın gerçekleştiğini onaylamak için ilk beklenen tetikleme zamanından sonra tekrar kontrol edin. Yeniden başlatma olayı için GPanel Console kaydına bakın.
- Zamanlamalarınızı net bir şekilde adlandırın. Her zamanlamanın ne yaptığını hızlıca tanımlayabilmek için "6h Auto Restart with Warning" gibi açıklayıcı adlar kullanın.
Mevcut Zamanlamaları Yönetme
GPanel'deki Schedules sekmesinden istediğiniz zaman zamanlamaları değiştirebilir veya devre dışı bırakabilirsiniz:
- Bir zamanlamayı düzenlemek için: zamanlama adına tıklayın, cron ifadesini veya görevleri değiştirin ve Save'e tıklayın.
- Bir zamanlamayı geçici olarak devre dışı bırakmak için: zamanlamayı açın ve Enabled'ı kapatın. Zamanlama kaydedilmiş kalır ancak yeniden etkinleştirene kadar tetiklenmez.
- Bir zamanlamayı silmek için: zamanlamanın yanındaki silme simgesine tıklayın. Bu, onu kalıcı olarak kaldırır.
Sorun Giderme
| Sorun | Neyi Kontrol Etmeli |
|---|---|
| Zamanlama tetiklenmiyor | Zamanlamayı açın ve Enabled'ın açık olduğunu onaylayın. Cron ifadesini iki kez kontrol edin — yaygın bir hata yanlış alan sırası kullanmaktır. Zamanlamanın tetiklenmesi gerektiğinde sunucunun çevrimiçi olduğundan emin olun. |
| Yeniden başlatma gerçekleşiyor ancak uyarı mesajı görünmüyor | Send Command görevinin oyununuz için doğru komutu kullandığından emin olun. Zaman ofsetinin yeniden başlatma görevinin ofsetinden küçük olduğunu doğrulayın (örneğin, 0 saniyede uyarı, 300 saniyede yeniden başlatma). |
| Sunucu yeniden başlatmadan sonra tekrar çevrimiçi olmuyor | Başlatma hataları için GPanel Console'u kontrol edin. Sunucu kapanma sırasında çöktüyse, düzgün bir şekilde yeniden başlamayabilir. GPanel'den manuel bir Start deneyin. Sorun devam ederse, bir destek talebi açın. |
| Cron ifadesi kabul edilmiyor | GPanel, cron ifadesinde tam olarak 5 alan gerektirir (dakika, saat, ayın günü, ay, haftanın günü). Bir saniye alanı eklemeyin. Fazladan boşluk veya özel karakter olmadığından emin olun. |
| Uyarı komutu gönderiliyor ancak oyuncular görmüyor | Bazı oyunlar belirli biçimlendirme gerektirir. Project Zomboid için mesaj tırnak içinde olmalıdır: servermsg "Your message here". Minecraft için say tırnak kullanmaz. Yukarıdaki oyuna özgü bölümü kontrol edin. |
Yardıma mı İhtiyacınız Var?
Zamanlanmış yeniden başlatmaları ayarlamakta sorun yaşıyorsanız veya zamanlamanız beklendiği gibi çalışmıyorsa, bir destek talebi açın ve şunları ekleyin:
- GPanel'den sunucu adınız
- Kullandığınız cron ifadesi
- Neyin olduğunun (veya olmadığının) bir açıklaması
Destek ekibimiz zamanlamayı doğru şekilde yapılandırmanıza yardımcı olacaktır.