Мне нужно выполнить долгую операцию в MATLAB на удаленном сервере Unix. Но я знаю, что не смогу оставаться в системе через SSH все время. Я root/admin, если это помогает.

Как я могу сделать это, не потеряв работу?

Сейчас я открываю MATLAB, а затем делаю что-то вроде следующего:

t=cputime; x=A\b; time=cputime-t; save('workspace.mat')

Пока это выполняется (x = A\b - это операция, выполняемая все время), я закрываю свою SSH-оболочку, на которой выполнялась MATLAB, и операция не продолжается. Так что я не получаю результаты.

Как я могу выполнить это, даже когда я выйду из SSH на полпути? Благодарю.

1 ответ1

4

Вам нужно либо отодвинуть команду на задний план, используя завершающий &

Или, что еще лучше, установите ЭКРАН и, возможно, BYOBU. Затем вы можете иметь постоянный сеанс, который вы можете вернуться и проверить без необходимости постоянного входа в систему.

Установите SCREEN и BYOBU на сервере и настройте по желанию. После того, как вы начали свой первый сеанс, вы сможете подключиться к нему, если вы закончите и перезапустите ваше соединение SSH. Есть множество умных вещей, которые вы можете сделать, чтобы автоматизировать сеансы, иметь несколько окон, несколько терминалов и многое другое. В этой статье о StackOverflow есть несколько идей по автоматизации соединений.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .