3 способа запуска игр и приложений MS-DOS в Linux
MS-DOS (операционная система Microsoft Disk, часто используемая взаимозаменяемо с «DOS») часто связана с острой ностальгией. Старый текстовый процессор или, может быть, какая-нибудь игра для DOS, которая давала часы чистого, не основанного на интернете развлечения. Но какие у нас есть варианты для зажигания этого старого пламени в Linux? К счастью, довольно много!
FreeDOS
FreeDOS — это полная, бесплатная DOS-совместимая операционная система. Любая программа, которая работает на MS-DOS, должна также работать на FreeDOS. Наряду с тем, что она абсолютно бесплатна для загрузки и использования, она также может быть доступна всем желающим!
MS-DOS последний раз был выпущен в 1994 году, что было почти четверть века назад. Текущая версия FreeDOS была выпущена в декабре 2016 года. Это указывает на то, что команда все еще поддерживает проект в актуальном состоянии, чтобы принести пользу человечеству.
Вам нужно будет загрузить FreeDOS для использования в наших первых двух методах.
1. VirtualBox
Если на вашей машине есть некоторые ресурсы, работающие под управлением Oracle, VirtualBox — отличное бесплатное программное обеспечение для виртуализации.
, Это позволяет устанавливать виртуальные машины, включая DOS, на ваш хост-компьютер. Единственное соображение заключается в том, что ресурсы вашего хоста будут совместно использоваться виртуальной машиной, однако DOS не будет жадным.
Вы можете скачать VirtualBox для вашей соответствующей операционной системы и запустить установщик через ваш графический интерфейс. Если вы предпочитаете тип командной строки:
Создание виртуальной машины
это очень просто. После запуска VirtualBox нажмите на новый. Дайте вашей машине название и оставьте ОЗУ на 512 МБ. Выбрать Создайте виртуальный жесткий диск сейчас, и обеспечить VHD выбран под Тип файла жесткого диска. Оставьте диск установленным на Динамически распределяется и дать ему размер (достаточно 1 ГБ или 2 ГБ).
Нажмите Создайте завершить работу мастера и создать свою машину.
Далее нажмите на Настройки> Хранение> Контроллер: IDE> Пусто. в Атрибуты В разделе есть значок компакт-диска со стрелкой раскрывающегося списка, которая позволит вам найти только что загруженный ISO-образ FreeDOS. Нажмите на Хорошо Кнопка для завершения мастера.
Теперь нажмите на Начните с домашнего экрана VirtualBox, чтобы запустить установщик FreeDOS!
Установка FreeDOS
Ваш мастер установки должен запуститься, и, выполнив ряд простых действий, вы сможете установить FreeDOS. Выбрать Установить на жесткий диск, затем принять отказ от ответственности, а затем Перегородка диска C. Затем, как в старые времена, нам нужно перезагрузиться, чтобы разделы вступили в силу.
После быстрой перезагрузки выберите Установить на жесткий диск затем выберите предпочитаемый вами язык и снова примите отказ от ответственности. Выберите опцию Стереть и отформатировать диск, и, наконец, фактическая установка может начаться.
После того, как вы выбрали раскладку клавиатуры, выберите Полная установка с последующим Да — пожалуйста, установите FreeDOS. Определенно один из более вежливых мастеров установки. Ваша установка должна начаться.
После завершения установки вам нужно удалить ISO с виртуальной машины, чтобы машина загружалась прямо во FreeDOS. С того же экрана мы установили ISO выше; Вы можете размонтировать его, прежде чем нажимать перезагрузку в мастере установки.
Если вы сделали все вышеперечисленное правильно, и я уверен, что вы сделали, экран, который вы сейчас видите, должен быть знакомым сайтом.
Передача файлов для Virtualbox
Прежде чем переносить файлы на виртуальную машину, убедитесь, что она полностью выключена и для правильной работы выйдите из Virtualbox, пока вы находитесь на ней. Команда выключения DOS, на случай, если вы забыли, неисправность.
Метод монтирования накопителя во FreeDOS не был слишком последовательным. Это было с помощью libguesftfs-инструменты. Обходной путь использовал QEMU-окр команда. Чтобы установить это, запустите следующее в терминале:
Это устанавливает QEMU вместе со своими инструментами. Теперь выполните следующие команды:
По умолчанию ваш каталог VirtualBox должен находиться в вашей домашней папке. замещать в приведенной выше команде с указанием пути к вашей виртуальной машине. Теперь выполните следующую команду для монтирования устройства:
Теперь скопируйте ваши любимые программы и файлы на вашу виртуальную машину. После завершения отключите виртуальную машину, запустив:
2. Быстрый Эмулятор (QEMU)
Как и Virtualbox, QEMU — это гипервизор с открытым исходным кодом.
который может запускать FreeDOS в качестве гостевой операционной системы. Этапы очень похожи на описанный выше способ, однако, это может быть выполнено всего несколькими терминальными командами. Сначала установите QEMU, запустив:
Теперь нам нужно создать виртуальный жесткий диск для установки FreeDOS. Мы можем сделать это, набрав:
Теперь мы создаем нашу виртуальную машину одним махом, запустив:
В команде довольно много параметров. Вы в основном:
- Выбор FreeDOS ISO
- Установка размера оперативной памяти
- Выбор виртуального диска, который мы создали выше
- Настройка раскладки клавиатуры
- Обеспечение соответствия времени хозяину
- Выбор общей звуковой карты
- Выбор общей видеокарты
- Установка порядка загрузки
FreeDOS должна открыться в новом окне и мастер установки точно так же, как и метод Virtualbox, описанный выше. После завершения установки мы больше не требуем ISO и можем загружаться непосредственно в наш установленный образ, выполнив:
Передача файлов для QEMU
К счастью, эта часть намного проще. Все, что нам нужно сделать, это создать папку и включить эту папку в нашу команду, которую мы используем для запуска нашей машины QEMU FreeDOS. Сначала закройте окно QEMU, затем введите:
Теперь скопируйте любые файлы или папки, которые вы хотели бы видеть на своей виртуальной машине, в dosfiles папка. Когда вы закончите, введите:
Как видите, новая часть команды — это -привод параметр, который использует dosfiles Папка, которую мы создали. Он также будет подключен к следующей доступной букве диска, как в нашем случае D. Если вы хотите увидеть свой dosfiles папку внутри FreeDOS просто введите:
Еще раз, DOS от души!
3. DOSBox
Если все это кажется немного излишним, и вы просто хотите запустить странную игру, и вы больше человек с графическим интерфейсом, то вы можете получить DOSBox
, По их собственному признанию, разработчики DOSBox заявляют: «DOSBox также поставляется с собственной DOS-подобной командной строкой. Это все еще довольно элементарно, и в нем отсутствуют многие функции MS-DOS, но этого достаточно для установки и запуска большинства игр для DOS ».
Так много их внимания было уделено играм, и, если это все, что вам требуется, DOSBox может быть достаточно. Прежде чем мы начнем, создайте папку на вашем компьютере с Linux и переместите туда свои программы для DOS. Наш пример использует / DOSBox / dosfiles.
Теперь перейдите в Ubuntu Software и загрузите эмулятор DOSBox. После запуска DOSBox вы можете смонтировать папку, которую вы только что создали, набрав в консоли DOSBox следующее:
Теперь все ваши файлы должны быть видны, ваши игры играбельны, и начинается ностальгия!
Вы все еще можете запустить DOS!
Нравится вам это или нет, но MS-DOS была огромной частью компьютерного мира. Многие из игр, которые мы знаем и любим, произошли от дней славы MS-DOS. Вы можете быть удивлены, узнав, что многие компании все еще используют программы MS-DOS для управления всем своим бизнесом. Хорошая новость заключается в том, что Linux предлагает много возможностей для того, чтобы MS-DOS происходила, как мы продемонстрировали.
Не ограничивайтесь MS-DOS. Другие классические операционные системы могут быть установлены или эмулированы в Linux
Какие твои любимые игры для DOS? Как вы запускаете DOS в Linux? Как вы думаете, мы когда-нибудь избавимся от DOS? Дайте нам знать в комментариях ниже!
Источник
Запуск DOS-приложения в Linux
Необходимость запуска DOS-приложений под Linux возникает нечасто, но случается. Вот как-то и со мной случилось, решил поделиться опытом, может, кому пригодится.
А нужно было запустить кем-то, когда-то написанное приложение для поликлиники, работающее на Foxpro под DOSом, в Linux, т.к. денег на покупку Windows лицензий не нашлось.
Исходные данные:
Suse Linux Enterprise Desktop 10.3 — рабочие станции.
Suse Linux Enterprise Server 10.3, на нем шара на Samba (я же до этого и расшаривал для работы с Windows рабочих станций, т.к. на лицензию для Win-сервака тоже денег не было), имя шары, как ни странно, — SHARE.
Происходило всё 2-3 года назад, поэтому версии SLED и SLES на момент установки были не такие уж и древние.
Т.к. сервер уже настроен, то все нижеописанные манипуляции производим на десктопе.
Ставим из репозитория, или отдельно скачиваем dosemu-xxx.rpm.
Ещё нам понадобятся кириллические шрифты (далее по тексту папка XFonts), не помню уже где я их взял, приложу в архиве к статье.
Создаём папку, куда смонтируем шару, прописываем монтирование в fstab и монтируем:небольшое пояснение: 192.168.0.130 — IP сервера, user и userpassword берём из пользователей на сервере, которым разрешён доступ к Samba-шаре.
Дальше копируем шрифты:прописываем папку подобно остальным шрифтам в файле /etc/X11/xorg.conf, и добавляем их в систему командой:
В /etc/dosemu.conf добавляем или изменяем в соответствующих разделах следующие опции (у меня в итоге только эти опции и остались):
В файл autoexec.bat, находящийся в папке /usr/share/dosemu/drive_z пишем следующее (. при копировании # и пояснения убрать. ):
Для полной ясности вот содержание lin.bat (. при копировании # и пояснения убрать. ):
Делаем первый запуск, командем:получим фигвам, потому что нет файла lin.bat, исправляем созданием в домашней директории, в папке .dosemu/drive_c (папка создаётся при первом запуске эмулятора) этого файла с вышеприведённым содержанием.
Ещё раз запускаем dosemu и вуаля, наша досовская прога работает, показывает текст на русском языке и даже распечатывает под Linux.
Мои изыски относились к определённой программе, но, думаю, таким способом, с заменой путей и имён файлов, запустятся если не все, то многие приложения работающие под DOS.
Источник
От DOS к Linux
Вы решили перейти к использованию операционной системы Linux? Хорошая идея, но хочу предупредить: она может оказаться бесполезной для Вас. Потому, что не существует «идеального компьютера» или «идеальной операционной системы» — все зависит от того, что Вы собираетесь делать с этим компьютером и этой операционной системой, какие задачи Вы решаете с их помощью. Вот почему я не верю, что Linux является идеальным решением для любого пользователя, даже если у него уже есть богатый опыт работы с другими платформами. Вы сразу оцените достоинства Linux, если Вы нуждаетесь в приложениях для разработки программ, работы в сети Интернет или хорошем редакторе, например, таком, как ТеХ.
Linux пока еще не так прост в использовании и настройке, как Windows или MacOs, так что приготовьтесь к роли хакера. Но не забывайте, что Linux и MS DOS с Windows могут мирно сосуществовать на одном компьютере.
Если навыки работы с графическим оконным интерфейсом, полученные на опыте работы с другими ОС, несомненно, пригодятся в общении с Linux, то режим работы с командной строкой уже значительно отличается от системы MS DOS. В этой статье мы рассмотрим набор основных команд операционной системы Linux на примере их аналогий с ДОС’овскими командами. Поэтому я надеюсь, что:
— Вы знаете основные команды и концепции операционной системы MS DOS;
— ОС Linux уже установлен и правильно сконфигурирован на Вашем компьютере;
— Вашим шеллом (интерпретатором командной строки, эквивалентом COMMAND.COM) является bash;
— Вы понимаете, что эта статья далеко не полное руководство по работе с операционной системой Linux.
Итак, Вы установили Linux и программы, которые Вам нужны, на свой компьютер. Вы создали для себя учетную пользовательскую запись, которая дает Вам возможность входа в систему (если нет, то сделайте это при помощи команд adduser или useradd, в зависимости от выбранного дистрибутива). Добро пожаловать в Linux! Вы только что ввели свое имя и пароль и теперь внимательно рассматриваете экран, размышляя над тем, что же делать дальше.
Не отчаивайтесь. Вы уже почти готовы к тому, чтобы делать все то, что Вы делали с операционной системой MS DOS, плюс много чего еще. Когда Вы работали с DOS, Вы имели возможность выполнять следующие задачи:
— запуск программ, а также создание, копирование, просмотр, удаление, вывод на печать, переименование файлов.
— создание, удаление, просмотр содержимого и переключение между каталогами.
— форматирование дискет и перемещение файлов между носителями.
— редактирование файлов AUTOEXEC.BAT и CONFIG.SYS.
— создание своих.BAT файлов и простейших программ на Бэйсике.
— . ну и еще 1% всех оставшихся возможностей.
Вы будете рады узнать, что все эти задачи можно выполнять и под ОС Linux. В DOS пользователю доступно порядка сотни команд, у Linux их столько же.
Несколько важных моментов, которые необходимо усвоить перед началом активных действий:
— Первое — как выйти из системы: в текстовом режиме работы с командной строкой просто нажать волшебную комбинацию клавиш CTRL-ALT-DEL, дождаться завершения работы операционной системы и соответствующего сообщения, после чего выключить компьютер. Если Вы работаете с графической оконной системой Х, нажмите CTRL-ALT-BACKSPACE, а затем — CTRL-ALT-DEL. Никогда не выключайте свой компьютер с работающей ОС, это может повредить файловую систему (для ОС Windows эти требования тоже актуальны).
— В отличие от DOS, Linux имеет встроенные механизмы безопасности системы соответственно своей многопользовательской природе. Файлы и каталоги имеют атрибуты доступа, некоторые файлы недоступны обычным пользователям, а только администратору системы — пользователю root. Если Вы установили Linux на свой компьютер, Вы сами являетесь администратором. DOS, наоборот, предоставляет весь жесткий диск со всеми файлами любому пользователю.
— Настоятельно рекомендую побольше экспериментировать, играть командами и пробовать все самостоятельно — Вы не сможете ничего повредить, будьте уверены. Вы можете получить некоторую помощь, напечатав в ответ на приглашение ОС ($ — для всех обычных пользователей, # — для администратора) команду: help.
$ help
(эта команда выводит подсказку по шеллу bash). Или можно получить справочную информацию по конкретной команде:
$ man command
Можно также попробовать:
$ apropos command
$ whatis command
command — имя конкретной команды. Для выхода из справки следует нажать клавишу «q».
— Главная сила и гибкость операционной системы Unix заключается в простой концепции перенаправления результатов выполнения команд и программных каналов. Простые команды могут объединяться вместе в командной строке для выполнения более сложных задач. Используйте эти средства!
— Последовательности означают обязательные элементы и параметры команд, а [. ] — необязательные, которые могут быть пропущены.
Для нетерпеливых
Хочется поскорее перейти к действиям? Эта табличка может оказаться Вам полезной.
DOS | Linux | примечания |
BACKUP | tar -Mcvf device dir/ | разный синтаксис |
CD dirname\ | cd dirname/ | синтаксис совпадает |
COPY file1 file2 | cp file1 file2 | синтаксис совпадает |
DEL file | rm file | внимание! отмена невозможна |
DELTREE dirname | rm -R dirname/ | внимание! отмена невозможна |
DIR | ls | синтаксис не совпадает |
EDIT file | vi file emacs file jstar file | целое семейство текстовых редакторов |
FORMAT | fdformat,mount,umount | разный синтаксис |
HELP command | man command | аналогичная программа |
MD dirname | mkdir dirname/ | синтаксис почти совпадает |
MOVE file1 file2 | MV file1 file2 | — // — |
NUL | /dev/null | — // — |
PRINT file | lpr file | — // — |
PRN | /dev/lp0,/dev/lp1 | — // — |
RD dirname | rmdir dirname | — // — |
REN file1 file2 | mv file1 file2 | не для набора файлов |
RESTORE | tar -Mxpvf device | синтаксис не совпадает |
TYPE file | more file,less file | эта команда получше |
WIN | startx | графический интерфейс |
Файлы и программы
Операционная система Linux имеет свою файловую систему (структуру хранения файлов и каталогов на диске) — ext2fs. Файлы имеют свои имена, вид которых определяется специальными правилами и хранятся внутри каталогов (или директориев). Некоторые файлы являются выполнимыми или содержат наборы команд операционной системы. Более того, можно использовать маски для групповых файловых операций, перенаправление ввода-вывода и программные каналы (pipes). Вот некоторые различия между файловыми системами DOS и Linux:
— В ДОС’е имена файлов ограничены рамками 8.3 — восемь символов для имени файла и три для расширения, например README.TXT. В Linux можно использовать имена файлов длиной до 255 символов, причем символ «точка» может присутствовать в имени файла несколько раз, например: This_is.a.Very_long.filename.
— Следует добавить, что Linux различает символы различных регистров (большие и маленькие буквы имеют различное значение). В одном каталоге могут мирно сосуществовать файлы, например, с такими именами: FF, Ff, ff и fF! Ни Dos, ни Windows такие возможности и не снились! Но следует внимательно относиться к вводимым командам: ls — это команда, а LS — ошибка.
— Не существует специальных расширений для выполняемых файлов и программ, подобных ДОС’овским.COM,.EXE или.BAT. Эти файлы помечаются символом звездочки — «*» при просмотре содержимого каталога командой ls -F, например:
$ ls -F
letter_to_Joe
cindy.jpg
cjpg*
I_am_a_dir/
my_1st_script*
old
— Файлы cjpg* my_1st_script* являются выполнимыми — программами. В DOS файлы резервных копий имеют расширение.BAK, в Linux эти файлы заканчиваются символом «тильда» — «
«. Файлы, имена которых начинаются с точки, воспринимаются системой как скрытые, они не отображаются в стандартных листингах содержимого каталогов, а только при использовании специального параметра команды «ls».
— В DOS программам могут передаваться параметры, отделяемые символом «слэш» — «/switch», в Linux подобную роль играют другие символы: -switch —switch. Например, команда «DIR /s» превращается в команду «ls -R». Некоторые DOS программы, такие, как PKZIP, ARJ, воспринимают аргументы в стиле UNIX.
Символьные ссылки
В UNIX есть тип файлов, который отсутствует в DOS: символьные ссылки. Они служат указателями на файлы или каталоги и могут использоваться вместо объектов, на которые они указывают. Это аналоги «ярлыков» (или shortcut) Windows95. Примерами таких ссылок служат файлы /usr/X11, указывающий на /usr/X11R6; /dev/modem, который указывает на файл /dev/cua0 или /dev/cua1.
Чтобы создать символьную ссылку, введите команду:
$ ls -s
Пример:
$ ls -s /usr/doc/g77/DOC g77manual.txt
Теперь Вы можете работать с файлом g77manual.txt вместо файла /usr/doc/g77/DOC.
Атрибуты разрешения доступа и принадлежности владельцу файлов
Файлы и каталоги в MS DOS могут иметь следующие атрибуты: A (архивный), H (скрытый), R (доступ только по чтению) и S (системный). Только атрибуты H и R имеют свои аналоги в Linux: имена скрытых файлов начинаются с точки, а что касается режимов доступа к файлам, хочется рассказать о них подробнее.
В ОС Linux каждый файл имеет атрибуты «разрешения доступа» для владельца этого файла, для пользовательской группы, к которой относится владелец, и для «всех остальных пользователей». Рассмотрим пример:
$ ls -l /bin/ls
-rwxr-xr-x 1 root bin 27281 Aug 15 1995 /bin/ls*
Первое поле листинга содержит набор разрешений доступа к файлу /bin/ls, который принадлежит пользователю root, группе bin. Оставим без внимания всю информацию, кроме символов -rwxr-xr-x, которые обозначают слева направо:
«-» это тип файла («-» = обычный файл, «d» = каталог, «l» = ссылка, и т.д.); «rwx» — это набор разрешений доступа для владельца файла (по чтению, записи и выполнению); «r-x» — набор разрешений доступа для группы владельца файла (по чтению и выполнению) и «r-x» — набор разрешений доступа для всех пользователей (по чтению и выполнению). Я не буду здесь описывать понятие пользовательских групп в UNIX, даже новичок может самостоятельно разобраться с этим, ознакомившись с документацией по системе. Вот почему Вы не сможете удалить файл /bin/ls, если Вы не являетесь пользователем root, у Вас нет разрешения на подобные действия. Для изменения атрибутов разрешений доступа файлов служит команда:
$ chmod
где who может означать: u (пользователь, являющийся владельцем файла), g (группа), o (остальные пользователи), X — заменяется на «+» или «-» (включить или отключить), а perm — это режим доступа: r (чтение), w (запись), x (выполнение). Например:
$ chmod u+x file
устанавливает разрешение на выполнение файла file для его владельца. Теперь этот файл может выполняться операционной системой.
$ chmod go-wx file
убирает разрешение по записи и выполнению для всех кроме владельца файла.
$ chmod ugo+rwx file
дает разрешение всем-всем-всем на чтение, запись и выполнение указанного файла, «зеленая улица».
$ chmod +s file
а вот это так называемый «setuid» или «suid», после установки этого атрибута каждый пользователь, запустивший на выполнение такую программу, получает все права и привилегии пользователя-владельца этого файла (даже системного администратора root. ) на время выполнения программы. Разумеется, этот атрибут устанавливается для исполняемых файлов — программ или скриптов. Атрибуты разрешений доступа могут быть представлены и в цифровом, восьмеричном формате, например, -«rwxr-xr-x» будет эквивалентно «755», на первый взгляд непривычно, но зато короче! Каждой букве соответствует определенный бит: «—-» = 0, «—х» = 1, «-w-» = 2, «-wx» = 3. и т.д. Немного практики — и Вы поймете основную концепцию. Не следует забывать, что только супервизор системы, пользователь root может менять атрибуты разрешений доступа у ВСЕХ файлов и каталогов на диске компьютера. Каждый отдельно взятый рядовой пользователь властен только над своими файлами.
Команды в DOS и Linux
В левой колонке — команды DOS, в правой — их аналоги в Linux:
COPY cp
DEL rm
MOVE mv
REN mv
TYPE more, less, cat
Операторы перенаправления и программные каналы: >> |
Маски для имен файлов: * ?
nul: /dev/null
prn, lpt1: /dev/lp0 или /dev/lp1; lpr
Примеры:
DOS | Linux |
C:\DIR> copy joe.txt joe.doc | $ cp joe.txt joe.doc |
C:\DIR> copy *.* total | $ cat * > total |
C:\DIR> copy fractals.doc prn | $ lpr fractals.doc |
C:\DIR> del temp | $ rm temp |
C:\DIR> del *.bak | $ rm * |
C:\DIR> move paper.txt tmp\ | $ mv paper.txt tmp/ |
C:\DIR> ren paper.txt paper.asc | $ mv paper.txt paper.asc |
C:\DIR> print letter.txt | $ lpr letter.txt |
C:\DIR> type letter.txt | $ more letter.txt |
C:\DIR> type letter.txt | $ less letter.txt |
C:\DIR> type letter.txt > nul | $ cat letter.txt > /dev/null |
аналогов нет | $ more *.txt *.asc |
аналогов нет | $ cat section*.txt | less |
Примечания:
— маска «*» в Linux ведет себя умнее: «*» заменяет все файлы, кроме скытых, «.*» подразумевает все скрытые файлы, «*.*» — замена всех файлов, содержащих в своем названии символ точки, «p*r» совпадает со всеми файлами, имя которых начинается с «p» и заканчивается «r», «*с*» — все файлы, имена которых содержат букву «с».
— при использовании команды more, для перемещения вперед по тексту на следующую страницу нажмите «пробел», для выхода — «q» или CTRL-C. Программа less позволяет перемещаться вниз-вверх по тексту при помощи стрелок.
— восстановление удаленных файлов невозможно, поэтому советую дважды подумать перед тем, как что-либо удалять.
— маски для имен файлов могут задаваться также последовательностями символов в квадратных скобках: [abc]* совпадает со всеми файлами, имена которых начинаются с a,b или c; *[I-N,1,2,3] — совпадает с файлами, имена которых заканчиваются на I,K,L,M,N,1, 2, 3.
— нет полного аналога ДОС’овской команды RENAME, mv *.xxx *.yyy не сработает.
— используйте команды «cp -i» и «mv -i» для запроса подтверждения на перемещение каждого файла.
Игорь Грень
Компьютерная газета. Статья была опубликована в номере 04 за 1999 год в рубрике soft :: unix
Источник