Saya ingin file .jar dijalankan setiap kali server melakukan boot (kami menggunakan VPS), jadi saya telah mengedit crontab menggunakan crontab -edan kemudian menambahkan @reboot bash /home/bash/startserver.sh. Tetapi saya bahkan belum sampai pada titik di mana script bekerja sama sekali.
Ini skrip saya:
#!/bin/bash
screen -S bukkit
cd $HOME/server
java -jar bukkit.jar
Alasan yang perlu saya gunakan screenadalah karena ketika saya memulai bukkit.jar, ia masuk ke konsol tempat saya dapat memasukkan lebih banyak perintah untuk program itu (saya yakin Anda semua akrab dengan Minecraft dan servernya di situs ini, meskipun , haha), tetapi saya harus dapat melakukan perintah lain sebagai root dan untuk program lain ketika sedang berjalan, dan bahkan menutup sesi Putty saya.
Satu-satunya masalah adalah ketika skrip ini dijalankan, ia membuat sesi layar, tetapi ID- nya tidak terdaftar screen -ls, karena ID-nya kosong. Sebaliknya, saya harus pergi /run/screen/S-rootuntuk mencari ID dan kemudian menggunakan yang khas screen -X -S $name quitdi atasnya.
Mungkin ini bahkan tidak mungkin, atau mungkin sebenarnya ada cara yang lebih sederhana untuk melakukan ini (saya akan suka lebih sederhana), tetapi saya tidak tahu mengapa ini tidak berhasil. Dan jika ini mungkin, apakah mungkin untuk bergabung kembali dengan sesi screen -S bukkitketika menjalankan skrip bash? (Beberapa pertanyaan, saya kira, tetapi terima kasih banyak atas bantuan Anda! (Kurung))