Hoş geldiniz!

TechForum.TR, Türkiye’de teknolojiye ilgi duyan herkes için bir rehber ve topluluk ortamı sunuyor.. E-Posta Onay derdi yok 10 saniye de üyelik işlemi, TechForum.tr, samimi ve bilgi dolu bir topluluk sunar. Uzmanların ve meraklıların buluştuğu bu platform, teknoloji dünyasına dair her şeyi tek bir çatı altında toplar. Siz de teknolojiye dair merak ettiğiniz her şeyi öğrenmek ve deneyimlerinizi paylaşmak için TechForum.tr'ye katılabilirsiniz. Kullanıcılar, deneyimlerini ve bilgilerini paylaşarak başkalarına yardımcı olabilirler. Karşılaşılan sorunlara hızlı ve etkili çözümler bulunabilir. Ortak ilgi alanlarına sahip insanlar bir araya gelerek güçlü bir topluluk oluşturabilirler. Teknoloji dünyasındaki gelişmeleri takip etmek için harika bir kaynaktır. Öğrenme: Yeni beceriler öğrenmek ve bilgi dağarcığını genişletmek için ideal bir ortam sunar.

Kayıt Ol!

Linux Gnome GUI Kapatma İstemi

81cocuk

Yeni Üye
Kayıtlı
Katılım
24 Aralık 2024
Mesajlar
2
Sistem kapanmadan önce bir açılır pencere istedim. Bu normalde Gnome GUI'sini kullanarak kapattığınızda yapılır. Arka planda olan şey, "gnome-session-quit --power-off" çağrılması ve GUI'nin size kapatmak isteyip istemediğinizi soran bir istem göstermesi ve 60 saniye boyunca kullanıcıdan yanıt alınamazsa cihazın otomatik olarak kapanması. Bunu bir systemd hizmetinden de aynı şekilde çağırabileceğimi varsaydım. Ancak, systemd, DISPLAY ve XAUTHORITY hakkında Ortam değişkenleri sağlamasına rağmen bir X11 ekranına bağlanamama konusunda hatalar verdi. Bir SE gönderisini okurken, Gnome GUI'sinde desktop dosyasının başlangıçta çalıştırıldığı ~/.config/autostart konumunda bulunan bir otomatik başlatma klasörü olduğunu gördüm. Bu yüzden, kapatma koşulu karşılanana kadar her 30 saniyede bir uyku döngüsü çalıştıran bir betik çağıran bir desktop dosyası yazarak bunu kendi avantajıma kullanmaya karar verdim. Karşılandığında, betik döngüden çıkar ve "gnome-session-quit" çağırır. Tüm bu yaygara neden? Bu sistem, bir yedek sunucu olmasının yanı sıra bir HTPC olarak da kullanılıyor. Yedek sunucu durumunda, cihaz her gün belirli bir saatte açılır, yedeklemeyi çalıştırır ve sonra kapanır. Ancak, bir HTPC olarak kullanıldığında, sistemin bir filmin doruk noktasındayken kapanması pek hoş değildir. Bu nedenle, bu betik, kullanıcının etkileşime girebileceği ve kapatmayı iptal edebileceği bir GUI onay iletişim kutusu çıkarır. En iyi yanı, ekran açık olmasa bile bunun işe yaramasıdır. HDMI kablosunun bağlanması gerekebileceğini düşünüyorum, ancak bunun dışında başka bir şeye gerek olduğunu düşünmüyorum. İşte .desktop otomatik başlatma dosyası ve betik.

1735048355668.png
Kod:
[Desktop Entry]

Name = UrBackup System Shutdown Script

Comment = Test for file in /var/urbackup. If present, delete the file and shutdown the system.

Exec = /home/user/Documents/Scripts/urbackup.sh

Terminal = false

Type = Application

X-GNOME-Autostart-enabled = true

Komut dosyası için kod:

Kod:
#!/bin/bash

while [ ! -f /var/urbackup/shutdown_now ];

do

sleep 30

done

# Eğer dosya yoksa 30 saniye boyunca uykuya dal ve döngüyü tekrarla.

#Eğer dosya varsa, döngüden çık, sonra shutdown_now'ı sil ve son olarak power-off niteliğini başlat.

sudo -u urbackup rm -R /var/urbackup/shutdown_now

gnome-session-quit --power-off



Herhangi biriniz bana HTPC'yi yedekleme sunucusu olarak kullanmaya karşı çıkmadan önce, vb., vb. Bu kuruluşun daha önce hiçbir tür yedeklemesi yoktu. Her zaman hiçbir şeydense bir şeyi tercih ederim.

Ayrıca, bunu optimize etmenin daha iyi bir yolunu bilen varsa dinlerim.

Umarım bu, gelecekte internette arama yapan birine yardımcı olur. (ancak büyük olasılıkla bir LLM'ye aktarılacak ve sonra kullanılacaktır.)
 
gnome-session-quit yerine şunun gibi bir şey denediniz mi

Kod:
dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.PowerOff boolean:true

Yani bir betikte döngüye girmek yerine bir systemd servis dosyasını kullanmayı denedin mi (bunun gnome'da açılır pencereyle sonuçlandığını varsayarsak)
 
gnome-session-quit yerine şunun gibi bir şey denediniz mi

Kod:
dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.PowerOff boolean:true

Yani bir betikte döngüye girmek yerine bir systemd servis dosyasını kullanmayı denedin mi (bunun gnome'da açılır pencereyle sonuçlandığını varsayarsak)

deneyeceğim güncelleme ile bilgi vereceğim size