Як залишатись увійти через SSH на сервер Synology?


1

Як мені постійно входити в систему на сервері Synology (користувальницький Linux) через SSH? Я намагаюся змусити програму постійно працювати на сервері, але коли я закриваю вікно SSH з власного комп’ютера, програма також вбивається. Будь-які способи навколо цього? Дякую.


Обкладіть завдання завдання "nohup foo.sh &". Не потрібно залишати з'єднання SSH відкритим.
спудер

Відповіді:


1

Використовуйте screenутиліту. Якщо ви використовуєте дистрибутив на базі Debian або Ubuntu, встановіть його через sudo apt-get install screen. Щоб запустити його, введіть screenі натисніть Enterна екрані інформації. Виконайте тут свої команди.

Якщо ви коли-небудь відключитеся, ви можете повернутися, ввівши screen -rdта натиснувши Enter. Це поверне вас до сеансу, який триває. Чудово підходить для переміщення сеансу на інший термінал або з'єднання SSH.


Отже, якби я запустив екранну програму, виконував мої команди, потім виходив за допомогою exit, а потім exitзнову закривав вікно ssh, що вбило б програму?
користувач02103012

Вихід закриє сеанс. Якщо ви хочете, щоб він працював у фоновому режимі, натисніть ctrl d після запуску програми
канадський Лука

Варіант 2, закрийте сеанс і відкрийте нове ssh-з'єднання. Екран буде продовжувати працювати
канадський Люк

0

З іншого Linux ви можете це просто виконати, запустивши команду без pty (тобто немає опції ssh -t):

ssh syno 'sleep 999 </dev/null >&/dev/null &'

Я не використовую вікна , ні мастику , але якщо це ваш випадок , я бачу , є команда палити в свиті замазки, яка аналогічна:

plink -ssh -l root -i mykey.ppk syno 'sleep 999 </dev/null >&/dev/null &'

Крім того, ви можете мати змогу запускати свою команду з програми putty

nohup sleep 999 </dev/null &

0

Використання 'nohup' та 'screen' є хорошими рішеннями для того, щоб робота, яку ви вручну розпочали, продовжувала виконувати.

Якщо ви хочете, щоб ваш процес пережив перезавантаження, ви повинні переконатися, що він починається після перезавантаження. Для цього існує кілька рішень. На своїй станції Synology я виявив, що файли, що починаються з "S" в каталозі '/ volume1 / startup', запускаються як сценарії запуску в каталозі 'init.d'. Це можна побачити у сценарії '/ etc / rc':

/etc/rc:        if [ -d /volume1/startup ]; then
/etc/rc:                for startsh in /volume1/startup/S* ; do

що працює, якщо /etc/synoinfo.conf має

supportstartupd="yes"

Це також пережило б перевстановлення системи Synology.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.