Лучшие практики для предотвращения 'комнаты-rf /' в сценариях удара

Ближайшей вещью в понятии к специализированному "Настольному" Гипервизору Типа 1 в данный момент является, вероятно, Экстремальное значение Рабочей станции Параллелей, хотя это - все еще размещенный Гипервизор. Это полагается в большой степени на относительно новые аппаратные возможности виртуализации (Intel VT-d и ряд Xeon 5500 ЦП для начинающих), чтобы позволить гостям выборочно получать прямой доступ к аппаратному обеспечению машинной графики насколько я могу сказать. Проблема, которую я имею с Вашим вопросом, состоит в том, что почти по определению Гипервизор Типа 1 обычно не поддерживает компоненты интерфейса профессионального пользователя (конкретно ускоренная консольная графика). Я не полагаю, что существует любой огромный технический контрольно-пропускной пункт, но никто, кажется, не был побеспокоен для создания того все же.

Ваша точка при не желании взять нагрузку мощного хоста, ОС достаточно справедлива, но если Вы проявляете подход, что Хост ОС будет одной из ОС, Вы хотите выполнить затем "издержки" этой ОС, становится меньшим количеством проблемы, и это - главная причина, что я полагаю, что никто не потрудился разрабатывать то, что Вы просите.

Относительно Ваших других вопросов.

  1. Единственные Гипервизоры, которые имеют лучшую производительность, являются "надлежащими" Гипервизорами Типа 1 как ESX\i, Xen и т.д., но они не предоставляют Вам ускоренную консоль поддержки GUI в Хост-системе, таким образом, я сказал бы, что текущий ответ на Ваш вопрос не в большинстве случаев. Если производительность при обработке графики VM - то, что Вы ищете затем вышеупомянутое Экстремальное значение Рабочей станции Параллелей, действительно работает лучше, чем другие, но это имеет очень ограниченную поддержку оборудования, как я отметил выше. Следующая версия VMware Workstation, как известно по слухам, поддерживает значительно улучшенную производительность при обработке графики (например, поддержка Аэро в Windows 7 Guests), но когда это будет доступно, я не могу сказать. Я предположил бы, что другие размещенные поставщики Гипервизора работают над подобными улучшениями, поскольку спрос на это довольно высок.

  2. Я запускаю Vista с XP, Windows 7 и Ubuntu под VMware Workstation как гости. Переход между ними является бесшовным с моей точки зрения (если у меня есть достаточно RAM) - я никогда не искал горячую клавишу одиночного нажатия для переключения между ними, но я не вижу, что было бы трудно реализовать. В моей системе единственная причина я могу сразу сказать, что работаю в VM по сравнению с, исходно то, что Гости в настоящее время не поддерживают усовершенствованную графику. По большей части пользовательский опыт, когда переключение является "seemless" с моей точки зрения.

  3. XenDesktop (как Представление VMware) является архитектурой виртуализации настольных систем, но рассматриваемый VM's предназначается для работы кластеров Хоста в company\organizations центры обработки данных. Пользователи получают доступ к этим машинам через Тонкий клиент или приложение удаленного рабочего стола (т.е. они - или RDP или сессии удаленного рабочего стола ICA). Существует RDP и клиенты ICA, доступные для Linux & OSX, а также Windows. Нет также ничего останавливающего Вас запускающий внутриполосное приложение удаленного рабочего стола (как VNC), но удаленный терминал Гипервизора будет более полезным и вероятно даст лучшую производительность. Я использовал много Тонких клиентов, которые имеют довольно гладкую горячую клавишу, переключающуюся между консолями поэтому, возможно, это - то, что Вы видели, это не то, что я назвал бы уничтожающей функцией, но это достаточно аккуратно.

  4. Посмотрите выше - можно загрузить клиенты с Citrix и различных других репозиториев, Google является другом и всем это. Я понятия не имею о настройках Hot Key, я предположил бы, что Вы читаете документацию для того, какой бы ни клиент, который Вы выбираете, поскольку они, вероятно, будут варьироваться.

  5. По большей части ответ на это - усовершенствованная графическая поддержка не является большой в данный момент, но это должно улучшиться довольно много довольно скоро. Существуют некоторые все 3D графические технологии удаленного терминала там, которые становятся более основными, такие как Teradici\PC по IP. В то время как можно получить это сегодня для использования со специализированным (т.е. не виртуализированные) аппаратные средства рабочей станции как Dell Precision R5400 рабочая станция для монтажа в стойку, это еще не доступно для VM's. И VMware и Teradici заявили, что поддержка его будет интегрирована с Представлением VMware V4, когда это выйдет. Citrix для их части объявил о 3D улучшениях ICA HDX, которые обеспечат подобную ускоренную графическую возможность их гостя ОС. Можно найти довольно хорошее сообщение в блоге на HDX 3D здесь, который покрывает это в некоторых деталях.

  6. Не уверенный, что Вы спрашиваете с этим.

7
задан 9 November 2010 в 13:05
9 ответов
alias rm='rm --preserve-root'

IIRC - сохранять-корень является значением по умолчанию в более новых версиях coreutils.

12
ответ дан 2 December 2019 в 23:13
  • 1
    В Bash, если Вы не делаете shopt -s expand_aliases псевдонимы не расширены в сценариях. Кроме того, искажение rm плохая идея - что, если Вы в зависимости от искаженного поведения и псевдонима, не там? Некоторые версии rm может не иметь --preserve-root. –  Paused until further notice. 9 November 2010 в 17:37

Всегда заключайте свои аргументы в кавычки. Даже когда Вы знаете, что они нормальны, почти никогда не повреждает заключать им в кавычки в сценариях.

rm -rf "/$FOO" не удалит / если $FOO будет иметь ведущее пространство, то вместо этого Вы ничего просто не удалите. Это действительно требует, чтобы кавычки присутствовали на строке с rm -rf, конечно, не что-то как:

TODEL="/$FOO"
rm -rf $TODEL

Если Вы сделаете это, то Вы вернетесь в целой загрузке проблемы.

Кроме того, я склонен думать старое доброе:

if [ -d "/$FOO" ] ; then
    ...
fi

(Или -e если это - просто файл), всегда хорошая идея прежде, чем удалить что-либо.

7
ответ дан 2 December 2019 в 23:13

Первые вещи сначала: имейте резервные копии.:-)

Но в то время как я изрубил те потенциально опасные сценарии, я всегда первое эхо опасные строки, таким образом, я вижу то, что произошло бы.

Можно также добавить названный файл -i к важным каталогам, таким образом, в некоторых ситуациях комната запросила бы при попытке удалить их. Конечно, если Вы делаете удаление с помощью некоторого другого метода, такого как сценарий Perl или даже с различными параметрами комнаты, которые не помогли бы.

Также возможно установить неизменный флаг на важные файлы и директоров с chattr +i, но будьте осторожны с тем. Это может укусить Вас, если на самом деле необходимо удалить файлы из некоторого каталога или изменить файлы...

2
ответ дан 2 December 2019 в 23:13

Один способ избежать проблемы состоял бы в том, чтобы использовать ОС, которая предотвращает такую команду для следования дизайном, поскольку это - возможно не совместимый POSIX. Это инициировалось Солярисом 10 (2005), сопровождалось BSD затем комната Гну в 2006.

2
ответ дан 2 December 2019 в 23:13

Проверка работоспособности Ваш код сначала. Серьезно, что-либо, что любой скажет Вам, просто будет чем-то эквивалентным проверке, которую необходимо было сделать в коде для проверки значения $MYPATH. Если сценарий работает в интерактивном режиме, Вы могли бы удалить-f.

1
ответ дан 2 December 2019 в 23:13

Можно обрезать MYPATH переменная прежде, чем выполнить команду комнаты. Просто используйте эхо:

MYPATH=`echo $MYPATH`
1
ответ дан 2 December 2019 в 23:13

После смущающего инцидента много лет назад на поле Ultrix, где я действительно как базировался a userdel -r sccs (или эквивалентный Ultrix, это было долгое время), не проверяя то, чем корневой каталог sccs пользователя был заранее, и $HOME sccs пользователя оказался/, и файловая система ушла, я постарался не помещать rm -rf $ANYTHING в сценариях. Можно проверить переменную, пока Вы не посинели, но я склонен вместо этого распечатывать сообщение как, "если Вы довольны идеей, необходимо теперь работать sudo rm -rf $ANYTHING".

1
ответ дан 2 December 2019 в 23:13
  • 1
    Как насчет того, чтобы очистить резервные копии, сделанные rsync? –  igorp1024 9 November 2010 в 13:27
  • 2
    Извините, я не уверен, что понимаю вопрос. –  MadHatter supports Monica 9 November 2010 в 14:56

Вы могли передать MYPATH через sed и проверить, что то, что Вы вставляете, является тем же самым как, что Вы вынимаете

MYPATH1=`echo "$MYPATH" | sed -e 's|[ \t]\/[ \t]| |' -e 's|^/[ \t]| |' -e 's|[ \t]/$| |' `
if [ "$MYPATH" != "$MYPATH1" ]
then
    dosomething 
fi
1
ответ дан 2 December 2019 в 23:13

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

0
ответ дан 2 December 2019 в 23:13

Теги

Похожие вопросы