Cronjob düğümünü çalıştıramaz.js dosyası

0

Soru

Bu soru bir ton atıldığı için buraya göndermekten çok tereddüt ettim, ancak son 2 gün içinde internette bulduğum hemen hemen her şeyi denedim. Linux kullanan ilk haftamdayım ve vahşi bir yolculuk oldu. (Ubuntu 20.04 LTS)

Bu yüzden tarayıcı -> şirket webapp'ımıza giriş yapan ve çalışma saatlerimi otomatik olarak kaydeden node uygulamasını yaptım, eve döndüğümde saatlerimi işaretlediğimden beri bilgisayarı yeniden başlatırken çalıştırmak istiyorum. Böylece onları işaretlemeyi unutmam. (not: Ayrıca her dakika çalıştırmayı denedim ya da bir sonraki dakika sadece @reboot komutuyla ilgili olmadığından emin olmak için)

Bunlar denediğim farklı seçeneklerden bazıları. Denediğimden beri her şeyi gerçekten hatırlayamıyorum, şimdi 100'den fazla farklı varyanta inanıyorum. Ayrıca aşağıdaki kodlarda, ya tam yollarla ya da sadece eski ile denedim. bin / düğüm vb.

@reboot cd /home/sepi/Documents/MyProjects/eas_app && /usr/local/bin/node index.js

@reboot usr/local/bin/node /home/sepi/Documents/MyProjects/eas_app/index.js

@reboot /bin/node /home/sepi/Documents/MyProjects/eas_app/index.js

hangi düğüm verir: /usr/local/bin/node

automation bash cron linux
2021-11-22 16:49:19
1

En iyi cevabı

0
  1. Önce düğüm ikili dosyanızın nerede olduğunu kontrol edin

    $ whereis node

    ve bu yolu sadece cronjob'da kullan.

  2. Herhangi bir cronjob'u çözmek için yapmanız gereken ilk şey, stdout ve stderr'yi bir günlük dosyasına yönlendirmektir.

    @reboot /bin/node /home/sepi/Documents/MyProjects/eas_app/index.js > out.log 2>&1

    Bu şekilde, herhangi bir kitaplık veya yol sorunu olup olmadığını anlayacaksınız.

  3. Hala sorunla karşı karşıyaysanız, aşağıdaki satırları crontab'ınıza eklemeniz yeterlidir

    SHELL=/bin/bash
    BASH_ENV="/home/user/.bashrc" 
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
    

    Kullanıcı yerine BASH_ENV'DE kullanıcı adınızı ekleyin, kontrol edin whoami

    Not: KABUK ve YOL girişi şu adreste bulunabilir: echo $SHELL ve echo $PATH sırasıyla.

Ayrıca önce çalışıp çalışmadığını test etmek için zaman tabanı cron ekleyin, ardından yeniden başlatma senaryoları için cronjob ekleyin.

2021-11-22 17:18:56

Diğer dillerde

Bu sayfa diğer dillerde

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................