Не удалось найти finalize.sh файл внутри контейнера jibri

#jitsi #jitsi-meet

#джитси #jitsi-знакомьтесь #jitsi

Вопрос:

Я пытаюсь использовать finalize.sh file для переименования записи после завершения записи. Я запускаю jibri docker container. в целях тестирования я просто печатаю значение RECORDINGS_DIR , чтобы проверить, работает finalize.sh скрипт или нет. это не сработало, и я получаю приведенную ниже ошибку в журналах контейнеров jibri:

 
2020-08-23 20:37:25.679 INFO: [40] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Quitting selenium
2020-08-23 20:37:25.707 INFO: [40] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Participants in this recording: []
2020-08-23 20:37:25.764 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving call and quitting browser
2020-08-23 20:37:25.764 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Recurring call status checks cancelled
2020-08-23 20:37:25.775 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 8 log entries for type browser
2020-08-23 20:37:25.831 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 695 log entries for type driver
2020-08-23 20:37:25.912 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 0 log entries for type client
2020-08-23 20:37:25.912 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving web call
2020-08-23 20:37:26.059 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Quitting chrome driver
2020-08-23 20:37:26.138 INFO: [40] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Chrome driver quit
2020-08-23 20:37:26.139 INFO: [40] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Finalizing the recording
2020-08-23 20:37:26.142 SEVERE: [40] org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize() Failed to run finalize script: java.io.IOException: Cannot run program "/config/jibri/finalize.sh": error=2, No such file or directory with stack:
java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
org.jitsi.jibri.util.ProcessWrapper.start(ProcessWrapper.kt:87)
org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize(FileRecordingJibriService.kt:207)
org.jitsi.jibri.service.impl.FileRecordingJibriService.stop(FileRecordingJibriService.kt:192)
org.jitsi.jibri.JibriManager.stopService(JibriManager.kt:257)
org.jitsi.jibri.api.xmpp.XmppApi.handleStopJibriIq(XmppApi.kt:256)
org.jitsi.jibri.api.xmpp.XmppApi.handleJibriIq(XmppApi.kt:162)
org.jitsi.jibri.api.xmpp.XmppApi.handleIq(XmppApi.kt:146)
org.jitsi.xmpp.mucclient.MucClient.handleIq(MucClient.java:547)
org.jitsi.xmpp.mucclient.MucClient.access$500(MucClient.java:50)
org.jitsi.xmpp.mucclient.MucClient$2.handleIQRequest(MucClient.java:511)
org.jivesoftware.smack.AbstractXMPPConnection$4.run(AbstractXMPPConnection.java:1188)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)

2020-08-23 20:37:26.144 INFO: [40] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: BUSY -> IDLE
2020-08-23 20:37:26.145 INFO: [40] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=IDLE, health=OverallHealth(healthStatus=HEALTHY, details={})), publisshing presence to connections
2020-08-23 20:37:26.146 FINE: [40] org.jitsi.xmpp.mucclient.MucClientManager.log() Setting a presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@531027d0
2020-08-23 20:37:26.146 FINE: [40] org.jitsi.xmpp.mucclient.MucClientManager.log() Replacing presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@30f60b25
2020-08-23 20:37:26.154 INFO: [56] org.jitsi.jibri.JibriManager.stopService() No service active, ignoring stop
  

Но когда я проверил finalize.sh скрипт внутри контейнера, он был там.

 root@e18b455c2622:/# cat /config/jibri/finalize.sh
#! /usr/bin/bash

RECORDINGS_DIR=$1
echo "Recording dir is: $RECORDINGS_DIR"
  

Jibri создает фрагмент файла

JIBRI_FINALIZE_RECORDING_SCRIPT_PATH: "/config/jibri/finalize.sh"

Я тоже пытался изменить разрешение на доступ к файлу, но это не сработало.

Пожалуйста, помогите.

Комментарии:

1. Существует /usr/bin/bash ли? За исключением систем, в которых /bin и /usr/bin имеют псевдонимы / объединены, обычно оболочки находятся в /bin и не /usr/bin (традиционно это было необходимо, чтобы они были надежно доступны в однопользовательском режиме или режиме обслуживания)

2. Большое спасибо @dave_thompson_085 «да», #!/bin/bash это правильное «нет» #!/usr/bin/bash . Пожалуйста, отправьте это в качестве ответа.