Не хорошая идея. Основная проблема заключается в файлах конфигурации. У большинства приложений есть несколько мест на вашем компьютере, где они хранят "локальную" информацию, необходимую для их правильного функционирования. Информация включает доступное оборудование, пользовательские настройки, версию дополнительных пакетов и т.д. Довольно часто эта информация хранится в скрытых файлах и / или каталогах в вашем домашнем каталоге, поэтому это плохая идея.
Что произойдет, так это то, что эти файлы могут относиться к версии программы, установленной с ОС №1, но по-прежнему недоступной для версии, установленной ОС №2. Нет никакой гарантии, что эти файлы конфигурации вообще совместимы; они могут отличаться, и одна версия может быть перезаписана, а вызывающий ее пакет может серьезно работать со сбоями.
Если вы считаете, что проблема разных версий пакетов, работающих в разных ОС, незначительна, вам следует взглянуть на эту таблицу, в которой показан процент пакетов для каждого дистрибутива, для которого имеется более свежая версия, чем та, которая доступна репозитории дистрибутива. Как видите, эти проценты обескураживают.
К сожалению, то же самое может относиться к коду. Вы точно знаете, что в двух дистрибутивах установлены одинаковые версии gcc, make, automake и т.д.? Вы знаете (почти) уверены, что заголовочные файлы linux будут другими (Arch Linux запускает ядро 3.11, Debian Wheezy 3.2, все остальные между ними). И так далее.
Хотя интересно установить два или более дистрибутивов, установить n-1 из них на виртуальной машине гораздо проще. У вас есть возможность совместно использовать папку, когда это необходимо, и вы можете сделать что-то более сложное с реальным диском, то есть изменить размер диска в соответствии с вашими потребностями.