Я выполняю Debian с программным обеспечением RAID1 и LVM как XEN dom0 без любых проблем в течение некоторого времени теперь. Установка нового domU's не могла быть легче с xen-инструментами, и плоскость "xm" дает мне все питание управления, в котором я нуждаюсь. На основе моего опыта я предлагаю, чтобы Вы сэкономили некоторые деньги и пошли набег программного обеспечения + Ваш предпочтительный дистрибутив Linux.
Что касается набега SW по сравнению с набегом HW, уже существует большое обсуждение serverfault: RAID - программное обеспечение по сравнению с оборудование
Я думаю, что можно сталкиваться с несколькими проблемами.
Если команда закончится, прежде чем Вы повторно прикрепите, экран уйдет. Можно продемонстрировать это при помощи:
screen -d -m ls -l
Это будет работать ls -l
команда, но screen -list
не покажет его, когда экранный процесс закончился.
Я также понятия не имею, что Вы пытаетесь сделать с этими \015 материалами. Возможно, обновление Вашего вопроса помогло бы, как, что я думаю, что Вы пытаетесь сделать, выполняется несколько команд на экранной сессии. Это должно быть столь же просто как:
screen -d -m bash -c "command1 ; command2 ; command3"
Если они используются много, возможно, необходимо сделать сценарий оболочки, который выполняет просто эти команды, то используйте более простое:
screen -d -m /path/to/script.sh
Запустите отдельный экран
screen -dmS <screen name>
Выполните команду на ранее созданном отдельном экране
screen -S <screen name> -X stuff '<CMD>\n'
Да необходимо ввести ввести символ для представления команды, или иначе это просто добавит строку к экрану.
Я сталкивался с этой проблемой раньше, это была ошибка в реализации cygwin.
Я создал «.screenrc_detaching», содержащий только следующую команду
#detach
detach
, а затем начальный экран с
screen -c ~/loginScripts/tempScreenrc/.screenrc_detaching
Затем у вас есть сеанс экрана, который уже подключен и отсоединен, и вы можете перекачивать на него команды.
Легко! : P
Это сработало для меня, без -c
не работал
экран -d -m bash -c "command1; command2; command3"
Копировать и вставлять предыдущие ответы можно следующим образом:
# No sessions:
screen -ls
# Returns immediately:
time screen -dmS screen_descritive_session_name bash -c 'sleep 20; hostname >> /tmp/h'
# New session present:
screen -ls
# File with return of command was created :)
sleep 20; cat /tmp/h
Ожидаемый результат должен быть похож на:
No Sockets found in /var/run/screen/S-yourusernamehere.
(это означает, что сеанс экрана ранее не создавался)
real 0m0.002s
user 0m0.000s
sys 0m0.000s
(Это время, затрачиваемое на создание экрана и отсоединение от него. Почти мгновенно.)
There is a screen on:
20318.screen_descritive_session_name (20/08/2018 16:29:35) (Detached)
1 Socket in /var/run/screen/S-yourusernamehere.
(Этот вывод показывает доступные сеансы экрана. Создано последней командой.)
sleep 20; cat /tmp/h
(Этот cat
показывает имя хоста выполняется внутри gnu-screen)