Başlangıça .sh eklemek

Başlatan mrfelicity, 22 Ocak 2018 - 23:55:02

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

mrfelicity

Merhaba yakın zamanda ubuntu bir vps sunucu aldım ve bu sunucuda nodejs uygulaması çalıştırmam gerekiyor. SSH ile .sh dosyasını çalıştırıyorum ve nodejs tabanlı uygulamam çalışıyor fakat ssh bağlantısını kestikten sonra app devre dışı oluyor ve anladığım kadarıyla bunu start up'da çalışacak şekilde ayarlamam lazım bir kaç konu vardı fakat anlamadım. Bu arada sh dosyasına node index.js dışında bir şey yok abartılı bir şey olmadığı için lütfen en kısa çözüm yolunu söyleyin. İyi forumlar...

illedelinux

Konuyu pek anlayamadım ama anladığım kadarıyla sistem açıldığında bahsettiğiniz sh dosyasının otomatik açılmasını istiyorsun.
Eğer anladığım gibiyse alttakini boş bir dosyaya yapıştırın, oto ismini verin ve /etc/xdg/autostart dizinine atın.

[Desktop Entry]
Type=Application
Exec=sh "ÇALIŞMASINI-İSTEDİĞİN-DOSYANIN-YOLUNU-BURAYA-GİRİN"
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name=oto
StartupNotify=true
GNU/Linux kullanmıyorum, onu yaşıyorum...

mrfelicity

[mention=635919]@illedelinux[/mention] bunu yapıştıracağım dosyanın uzantısı ne olacak? Ve nano editor ile mi yapıştıracağım yoksa herhangi bir editor olur mu? Teşekkürler...

illedelinux

Herhangi bir metin editörü olur.
GNU/Linux kullanmıyorum, onu yaşıyorum...

mrfelicity

autostart klasörü yoktu oluşturup içine attım ve makineyi kapatıp açtım fakat olmadı? Yanlış bir şey mi yaptım acaba?

Bipolar_Disorder

Arkadaşın verdiği dizinde oluşturdun değilmi autostart dosyasını.

Home dizininde oluşturursan, oturum açmadan aktif olmaz çünkü.

mrfelicity

Evet o dizinde açtım fakat olmadı? Olmazsa sunucuyu birine satacağım lütfen acil yardım edin  :'(

Bipolar_Disorder

Hocam hangi distro yu kullanıyorsunuz ?

mrfelicity


Bipolar_Disorder

Arkadaş söylememiş ama.

/etc/xdg/autostart'de oluşturdugun dosyanın formatını .desktop yaptınmı ?

mesela dosya.desktop olucak.

mrfelicity

#10
Aaa ben uzantısız yaptım ordaki dosyalar öyle diye düzeltip tekrardan denerim.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 24 Ocak 2018 - 10:39:00

Uzantısını .desktop yaptım sunucuyu yeniden başlattım fakat değişen bir şey olmadı  :-[ :'(

oguz-ismail

en kolay systemd ile yaparsın bence. google'dan aratınca ilk sonuçta anlatıyor zaten; https://askubuntu.com/questions/919054/how-do-i-run-a-single-command-at-startup-using-systemd

mhmtkrktr

Alıntı YapExec=sh "ÇALIŞMASINI-İSTEDİĞİN-DOSYANIN-YOLUNU-BURAYA-GİRİN"

Bu komut şu şekilde olabilir, ( -c )
Exec=sh -c "ÇALIŞMASINI-İSTEDİĞİN-DOSYANIN-YOLUNU-BURAYA-GİRİN"

Fakat bu aynı anda birden çok komutun çalıştırılması için uygulanan bir yöntem. Çalışacak olan dosyanın zaten özel bir betik olduğunu düşünürsek buna gerek yok. Doğrudan betiğin yolunu yazman yeterli olur.
Exec=/betiğin/bulunduğu/dizin/betik.sh



Not 1: Betiğin çalışma izni olduğundan emin olmak gerekiyor. Bunun için şu komutu kullanabilirsin.
chmod +x /betiğin/bulunduğu/dizin/betik.sh

Not 2: Betik içerisinde yönetici (sudo) izni isteyen bir komut varsa uygulanması gereken yöntem buna göre değişecektir.