Утилиты unix для windows

Утилиты unix для windows

GNU utilities for Win32

Here are some ports of common GNU utilities to native Win32. In this context, native means the executables do only depend on the Microsoft C-runtime (msvcrt.dll) and not an emulation layer like that provided by Cygwin tools.

by ftp: no FTP mirror at the moment

latest updates (after 14-04-03): UnxUpdates.zip

I have started an Open source project at http://unxutils.sourceforge.net. There is a CVS repository of all sources, even if the changes to the original GNU code are trivial. The repository can be accessed via anonymous CVS with the command
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/unxutils co unxutils
Note: The repository is not up-to-date at the moment, but will recover soon.

The following program versions are covered:

forward as well as backward slashes in file paths are accepted.

Added AES-Rijndael encryption program. My version uses Dr Brian Gladman’s implementation of the algorithm.
Usage:
aesy [-v] [-e] [-k String] input-file
-e : encrypt file, default is decrypt.
-k String : your secret key, don’t forget it!

Notes: The key length is fixed to 256 bit at the moment. This is very alpha stage stuff, use it on your own risk ( Download ).

added John Walkers steganographic encryption program stego (public domain, Cryptography). As with all encryption programs, be careful.

updated dd.exe: now writes to physical devices. Use with care.

added unrar.exe: compiled from source code at http://www.rarlab.com.

added makedepend.exe from the X11 distribution.

The programs are in use on all continents of earth, including Antarctica. Still no users on Mars.

updated sed to version 4.0.7: uses binary mode for input and output files by default,
unless the —text option is given

updated textutils-2.1: sort.exe did some bad things

updated gawk.exe to version 3.1.3

updated zsh.exe: Thanks to the Wind River people at Salzburg, there is a much improved zsh now.
The latest sources are here at the moment: zsh.zip

updated less.exe to v3.81

updated make to v3.80

updated grep v2.5.1: there was a bug in grep -r pattern .

updated sort.exe: Fixed a bug with sorting larger files

updated grep v2.5.1 : the -P option (Perl-style regexes now works)

UNIX. Шаг первый. Эмуляция и установка UNIX System V Release 4

Любому человеку, работающему в сфере IT-инженерии, рано или поздно приходится сталкиваться с UNIX-подобными операционными системами, как бы не любил он продукцию корпорации Microsoft. Тоже самое приключилось и со мной, когда я стал устраиваться на работу в одну небезызвестную компанию. Именно после часа технического собеседования я серьёзно заинтересовался изучением UNIX-систем.

Самый первый вопрос, который встанет перед вами после решения окунуться в мир UNIX – с чего же начать изучение? Вопрос, на который однозначного ответа я для себя так и не нашёл. Поэтому решил так: начну изучать архитектуру и устройство системы, причём начать мне хотелось именно с тех самых ранних UNIX-систем. В своём городе стал искать в книжных магазинах (люблю всё читать с книги, электронные варианты использую только в крайних случаях) и нашёл книжку-руководство по легендарной UNIX System V Release 4. Перед тем, как заказывать её, мне хотелось точно понимать, что я смогу сэмулировать данную систему на своём ПК. Стал искать дистрибутивы данной системы на трекерах и всё-таки нашёл.

Первый вариант дистрибутива напугал наличием 30 IMA-файлов (файлы виртуальных дискет) с Readme-файлов описания назначения каждой из дискет, из которого начинающему IT-инженеру вряд ли что будет понятно. Попробовал добить в строку поиска фразу «готовый образ» — и, к своей радости, нашёл! Образ UNIX System V Release 4 для… Parallels Desktop (одним из лучших эмуляторов для Apple OS X, разработанным компанией Parallels, основанной нашим земляком, Сергеем Белоусовым). Попытки установить OS X с рабочим Интернетом и свободным доступом к папкам основной и гостевой ОС на VirtualBox и VMWare ограничился провалом (поиск по коду ошибок kernel.panic дал предположить, что всё дело в видеокарте AMD). Поэтому, стал искать другой способ эмуляции UNIX System V Release 4.

В комментариях к тому самому «страшному» торренту из 30 файлов-дискет я прочитал, что у многих получилось развернуть эту систему в эмуляторе Bochs. Начав искать информацию о принципе работы этого эмулятора и о том, как устанавливается UNIX System V Release 4, я начал понимать первые принципы организации дистрибутива этой ОС. Далее, я приведу Вам процедуру описания успешной установки этой системы, результатом которой станет доступ shell системы с правами супер-пользователя.

Не знаю, стоит ли выкладывать подобную информацию, но вот описание машины, на которой выполнялась вся процедура:
• Процессор Intel Core i5-3450 CPU 3,1 ГГц;
• ОЗУ 4 ГБ;
• ОС Microsoft Windows 8.1, 64-разрядная.
Нам понадобятся:
• Дистрибутив UNIX System V Release 4 (можно скачать с rutracker rutracker.org/forum/viewtopic.php?t=882391);
• Эмулятор Bochs 2.6 (НЕ работает в версиях 2.6.7 и 2.6.8, скачать можно здесь: bochs.software.informer.com/2.6).

Этап 1. Скачивание и приготовление дистрибутива

Поскольку, Bochs понимает только IMG-файлы, нужно преобразовать все скаченные IMA-образы в IMG. Делается это очень просто – переименованием расширения файлов (да, это действительно работает). В дистрибутив входят 30 дискет (U01.IMA – U30.IMA). В Readme-файле идёт их описание, которое я переведу для Вас на более понятный и простой язык. Для удобства, я советую Вам перекопировать все файлы в отдельную папку и переименовать их так, как это сделал я.

Итак, выделим три группы дискет:
• Необходимые для минимальной установки системы;
• Опциональные;
• Неиспользованные дискеты в данной процедуре установки системы.

1 группа – Необходимые файлы-дискеты для установки системы, которые располагаются в таком порядке:

U14.IMA —> Base — [01 of 10].img
U16.IMA —> Base — [02 of 10].img
U17.IMA —> Base — [03 of 10].img
U18.IMA —> Base — [04 of 10].img
U19.IMA —> Base — [05 of 10].img
U20.IMA —> Base — [06 of 10].img
U21.IMA —> Base — [07 of 10].img
U22.IMA —> Base — [08 of 10].img
U25.IMA —> Base — [09 of 10].img
U23.IMA —> Base — [10 of 10].img
U24.IMA —> Maintenance [01 of 02].img
U01.IMA —> Maintenance [02 of 02].img

Именно U14.IMA является первой загрузочной дискетой для установки системы, а не U01.IMA как это было бы логично. Советую Вам переименовать вышеперечисленные файлы в соответствующие им названия, указанные после стрелки – так будет гораздо удобнее переключаться между дискетами. Данная подгруппа называется Base – именно эти дискеты будет по порядку запрашивать программа установки UNIX. Два других дисковода (подгруппа Maintenance) содержат в себе базовые необходимые пакеты для работы с системой. Наличие этих дискет необходимо и достаточно для нормальной работы UNIX.

Читайте также:  Windows home basic oa cis and ge acer group

2 группа – Опциональные дискеты:

U02.IMA —> Remote Terminal Package [01 of 01].img
U03.IMA —> BSD Compatibility Package [01 of 02].img
U04.IMA —> BSD Compatibility Package [02 of 02].img
U05.IMA —> Networking Support [01 of 01].img
U06.IMA —> Xenix Compatibility Package [01 of 01].img
U07.IMA —> Framed Access Command Environment Package [01 of 01].img
U08.IMA —> Form + Menu Language Interpreter Package [01 of 01].img
U09.IMA —> Editing Utilities [01 of 01].img
U10.IMA —> Operations, Administration, and Maintenance package [01 of 03].img
U11.IMA —> Operations, Administration, and Maintenance package [02 of 03].img
U12.IMA —> Operations, Administration, and Maintenance package [03 of 03].img
U30.IMA —> 2 Users to 16 Users License [01 of 01].img
U29.IMA —> 16 Users to Unlimited Users License [01 of 01].img
U28.IMA —> Printer Package [01 of 03].img
U27.IMA —> Printer Package [02 of 03].img
U26.IMA —> Printer Package [03 of 03].img

Я думаю, что здесь пояснять ничего не нужно, названия дискет говорят сами за себя.

3 группа — Неиспользованные дискеты в данной процедуре установки системы:

U13.IMA Floppy Options) и выставляем следующие параметры:
• Type of floppy drive: 3.5” 1.44M;
• First floppy image/device – выбираем образ, соответствующий U14.IMA, то есть Base — [01 of 10].img;
• Type of floppy media: 1.44M;
• Установите галочку Inserted – это означает, что данная дискета вставлена в привод; если Вам потребуется далее выполнить перезагрузку системы, выгрузив все дискеты с приводов – просто снимите галочку.

Далее – подключаем жёсткий диск Disk & Boot -> ATA Channel 0:
• Устанавливаем галочку Enable this device;
• Path or physical device name – выбираем созданный файл-образ жёсткого диска;
• Здесь заполняем из блокнота информацию о цилиндрах, заголовках и SPT.

Теперь осталось настроить приоритет загрузки устройств Disk & Boot -> Boot Options:
• Boot drive #1: floppy;
• Boor drive #2: disk.

Нажимаем ОК и возвращаемся в главное меню Bochs. Сохраняем эту конфигурацию под любым удобным для Вас именем (получится файл с расширением BXRC) и после любого перезапуска эмулятора загружаем эту конфигурацию (кнопка Load), чтобы постоянно не производить все эти настройки вручную.

Этап 4. Установка UNIX System V Release 4

Убедитесь, что во floppy-дисководе находится файл-образ U14.IMA / Base – [01 of 10].img и нажимаем кнопку Start. Произойдёт загрузка с гибкого диска и мы начнём получать сообщения от программы установки:

Please insert the UNIX System «Base System Package» Floppy Disk 2 and then strike ENTER.
Вверху будет иконка floppy-диска A – используя её, мы сможем переключаться между нашими файлами-образами. Переключаемся на U16.IMA / Base — [02 of 10].img и нажимаем ENTER.

Please strike ENTER to install the UNIX System on your hard disk or DEL to cancel the installation.
Нажимаем ENTER.

WARNING: A new installation of the UNIX System will destroy all files currently on the system. Do you wish to continue (y or n)?
Конечно же, да – нажимаем y.

If you wish to use part of your hard disk for other operating system(s) other than the UNIX System, such as MS-DOS, that space MUST be reserved now. You are about to partition hard disk 0. Please strike ENTER when ready or DEL to cancel the installation.
Нажимаем ENTER.

The recommended default partitioning for your disk is: a 100% «UNIX System» partition. To select this, please type «y». To partition your disk differently, type «n» and the «fdisk» program will let you select other partitions
Если Вы желаете поделить диск сами, нажимайте n и используйте утилиту fdisk. Нажимаем y, затем ENTER, если соглашаемся на автоматическое разбиение диска.

Please select the File System Type for / (Root File System) from the following list: ufs, s5. Please press ENTER for the default type, ufs.
UFS нас устраивает, нажимаем ENTER.

Do you wish to create any optional disk slices of filesystems (y or n)?
В данной процедуре нас эта опция не интересует, нажимаем n, затем ENTER.

Далее система выведет информацию о логической организации диска и спросит Is this configuration acceptable (y/n)
Нажимаем y, затем ENTER.

Surface analysis will now be performed on your hard disk and UNIX System file systems will be created on your hard disk. This will overwrite all data in the UNIX System partition. Please strike ENTER to continue ot DEL to cancel the installation.
Нажимаем ENTER.

Система выведет конфигурацию жёсткого диска и спросит Is this configuration acceptable (y/n)
Нажимаем y, затем ENTER.

Далее система потребует перезагрузку и предупредит Вас о том, чтобы Вы изъяли из дисковода floppy-диск. Не забудьте это сделать (снимите галочку Inserted) и нажмите вверху кнопку Reset. Поскольку floppy-привод теперь пустой, система загрузится с жёсткого диска и выведет на экран следующее сообщение:

Затем нас спросят о том, с какого носителя будет устанавливаться система. Установку UNIX мы будем производить при помощи дискет, поэтому нажимаем f.

Далее потребуется поочерёдно эмулировать Base-дискеты с 3 по 10, когда этого требует система.
После этого нужно будет придумать и ввести пароли для трёх пользователей системы:
• Первый пользователь – это всем известный root или супер-пользователь;
• Второй пользователь – это install user, назначение которого мне пока не понятно;
• Третий пользователь – service user, назначение которого мне тоже пока не понятно.

Далее надо придумать и ввести системное имя. Введите любое (кроме «UNIX»). Система будет перестраивать ядро в соответствии с введёнными данными.

Установка продолжится и теперь нам понадобятся диски группы Maintenance. Сэмулируйте первый диск этой подгруппы и менеджер пакетов обнаружит список пакетов на этом диске для установки:
The following packages are available: 1 basepat UNIX SystemV/x86 Release 4.0 Version 2.1 Maintenance Disk #1 (i386) 4.0 2.1
Select package(s) you wish to process (or ‘all’ to process all packages). (default: all) [. q]:

Нам нужны все пакеты, поэтому просто нажимаем ENTER и через некоторое время эмулируем вторую дискету подгруппы Maintenance, пишем go и нажимаем ENTER. Появится следующее сообщение:

If any of the following packages are ever installed or reinstalled, you must reinstall the UNIX System V/x86 Release 4.0 Version 2.1 Maintenance Disk #1:

LP Print Service Version 4.0 2.1
Networking Support Utilities Version 4.0 2.1
XENIX Compatibility Package Version 4.0 2.1

Нажимаем ENTER. Теперь если Вы удалите гибкий диск из привода и перезагрузите машину, то, введя в качестве логина root и пароля – придуманный пароль, попадёте в командную оболочку легендарной операционной системы – поздравляю, Вы только что установили UNIX и можете лично прикоснуться к истории!

Читайте также:  Команды для управления командной строкой windows

Если эта статья будет интересна, полезна и актуальна, то в следующий раз попробую описать установку опциональных пакетов. Всех благодарю за внимание, надеюсь увидеть конструктивную критику и советы от уже бывалых «юниксоидов»!

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

Перемещаем приложения UNIX в WINDOWS с помощью SUA

Корпорация Microsoft обеспечивала поддержку приложений UNIX для своих операционных систем, начиная с выпуска Windows NT 3.1, которая имела совместимую с POSIX подсистему.

Корпорация Microsoft обеспечивала поддержку приложений UNIX для своих операционных систем, начиная с выпуска Windows NT 3.1, которая имела совместимую с POSIX подсистему. Поддержка приложений UNIX и интероперабельность постепенно расширялись, и разработчики Microsoft реализовали такие функции, как поддержка сети, демонов и даже X Window. С выпуском Windows Server 2008 и Windows Vista, вероятно, настало время предприятиям подумать о перемещении приложений для бизнес-применения из UNIX в Windows, используя подсистему Microsoft для приложений, основанных на UNIX Subsystem for UNIX-based Applications (SUA). Узнать некоторые функции этой подсистемы и установить ее легко: загрузите нужные инструменты, проверьте возможности, которые предлагает SUA для традиционных приложений UNIX, и измените приложение UNIX, чтобы запустить его на Windows.

Установка SUA

Прежде чем начать использовать SUA, который включен в Server 2008 и Vista, нужно установить и запустить этот компонент. В панели управления в модуле Programs and Features щелкните на Turn Windows features on or off в панели слева. В Vista в диалоговом окне Windows Features следует выбрать флажок SUA, как показано на экране 1, и нажать OK. Если вы используете Server 2008, запустите Server Manager, затем правой кнопкой щелкните на Features, выберите Add Features из контекстного меню и установите флажок для Subsystem for UNIX-based Applications (необходимые системные файлы были скопированы ранее, когда вы устанавливалась Windows Server 2008 или Vista).

В папке SUA, которая появляется в меню All Programs впоследствии, видим два пункта. Файл подсказки Help поможет в освоении новых функций подсистемы. Пункт Download Utilities перенаправит в Microsoft Download Center, откуда можно загружать утилиты и набор средств разработки SDK для SUA. И 32-разрядная, и 64-разрядная версия SUA доступны на Server 2008 и Vista. Загрузите и установите комбинированный пакет, содержащий утилиты и SDK, которые имеют разные размеры (от 193 до 210 Mбайт) в зависимости от версии и операционной системы. SDK доступен для любых систем, на которые вы портируете или для которых вы будете компилировать приложения для UNIX. То же самое относится к утилитам, имеющим программные оболочки в стиле UNIX. При загрузке вы получите исполняемый файл архива. Потребуется указать каталог, куда файлы будут разархивированы для последующей установки.

В процессе установки система запрашивает имя, согласие с условиями лицензионного договора и предлагает стандартный или выборочный вариант установки. Стандартный вариант предполагает размещение используемых файлов в C:WindowsSUA и соответствующую настройку системы. Однако я рекомендую указать выборочную установку и установить только те компоненты, которые действительно нужны, такие как поддержка систем BSD и UNIX, утилиты GNU, SDK и подключаемый модуль для Visual Studio. Если решено установить GNU SDK, нужно принять условия лицензионного договора, с названием GNU Lesser General Public License, копия которого устанавливается вместе с SDK.

Единственный шаг в работе мастера, на который необходимо обратить особое внимание, — это настройки системы безопасности, показанные на экране 2. Появляющиеся параметры (как в стандартной, так и в выборочной установке) зависят от ваших предпочтений в ходе установки. Параметр Enable Su To Root behavior for SUA programs позволяет приложениям выступать от имени пользователя root (это аналог учетной записи Administrator в системе Windows), когда активирована функция User Account Control (UAC). Во многих случаях системные приложения и процессы, такие как демоны в системах UNIX, требуют этой возможности; действия конечного пользователя, такие как ввод данных или пользовательские настройки программ, редко требуют подобной функциональности. Второй параметр позволяет управлять настройкой setuid, которая связана со способностью приложений UNIX выступать от имени собственника программы. Распространенный сценарий в системах UNIX — это когда данный параметр позволяет пользователям, которые обычно не имеют доступа к базам данных или файлам, запускать приложение в качестве собственника ресурса и получать доступ, контролируемый приложением. Всякий раз по возможности отключайте эту функцию.

Третий параметр — включать ли в Windows чувствительность к регистру вводимых символов. По умолчанию в Windows этого нет, и можно получить доступ к файлу README. TXT, открыв readme.txt. Делая Windows чувствительным к регистру вводимых символов, вы можете разместить разные файлы в той же папке, и их имена будут отличаться только регистром ввода, например README. TXT, Readme.Txt и readme.txt. Взломщик, знающий о том, как получают доступ к таким файлам, может использовать это. Я рекомендую вам не делать Windows чувствительным к регистру, а заняться проблемами с регистром символов при портировании приложений. Описание проблем с безопасностью для всех параметров можно найти в файле Install.htm в C:WindowsSUA.

Исследуем SUA

После того, как вы установите утилиты и SDK для подсистемы, дополнительные пункты меню присоединятся к группе программ SUA, включая (зависит от вариантов установки) программные оболочки C и Korn, файл с последними изменениями и ссылку для проверки критических обновлений. Самый простой способ исследовать подсистему — это запустить новый продукт в одной из установленных командных оболочек. Тогда вы сможете исследовать файловую систему подсистемы, используя cd и ls — команды UNIX, как показано на экране 3.

Корневой каталог файловой системы смонтирован к каталогу установки SUA, как показано на экране 4. Чтобы раскрыть файловую систему и получить доступ к локальным и сетевым дисководам Windows, используйте устройства файловой системы, расположенные в /dev/fs. Например, dev/fs/C позволяет получить доступ к корневому каталогу или диску C;/dev/fs/Z дает доступ к сетевому диску, смонтированному как диск Z; а /dev/fs/C/Windows предоставляет доступ к папке Windows.

При использовании команды cd или написании пути к этой команде следует помнить, что в UNIX нужно использовать прямой слэш (/), а не обратный (), как в Windows. Просмотр известных каталогов для исполнимых файлов, таких как/bin,/usr/bin (который является символической ссылкой к /bin),/usr/local/bin и /usr/sbin, открывает много утилит командной строки, известных пользователям UNIX (например, cp, rm, mkdir, find, size, join, sort). В других каталогах можно найти поддержку подсистемы X Window, sendmail и служб сети, а также демонов. Последнее я опишу позже.

Можно просмотреть запущенные процессы подсистемы, используя команду ps. Изначально команда Ps возвращает только процессы, запущенные пользователем из оболочки. Если вы применяете сложные программные оболочки или хотите осмотреть процессы подсистемы и всей Windows, которые запущены, можете использовать команду ps с ключом х (для информации обо всех процессах, принадлежащих пользователю) или с ключом А (для информации обо всех процессах в системе).

Читайте также:  Как установить linux mint по сети

Чтобы получить информацию о ключах, поддерживаемых каждой командой, можно использовать команду man оболочки. Сами программные оболочки богаты возможностями, и вы можете использовать их, как при работе в системе UNIX. На экране 5 показан сценарий программной оболочки Korn, используемый для распаковки с помощью zip и tar дистрибутива XFree86 UNIX, который поставляется в виде нескольких файлов. Программная оболочка Korn — это интерпретатор командной строки UNIX, аналог cmd.exe в Windows, но более гибкий. Tar — это команда, которая используется для создания архивов файлов и извлечения файлов из имеющихся архивов.

Она раньше предназначалась для работы с магнитной лентой, но сейчас это утилита, используемая для распространения программного обеспечения, состоящего из большого количества файлов.

Запуск SUA, демонов и сетевых служб

Запуская Vista, вы запускаете и подсистему UNIX. Как и UNIX, наша подсистема имеет процесс init, который читает файлы запуска из папки/etc/rc2.d, содержащей символические ссылки на файлы в каталоге/etc/init.d. В системе UNIX у вас были бы дополнительные папки, такие как rc3.d и rc4.d, представляющие каждый уровень исполнения и состояние, в котором может быть система, такое как «однопользовательская», «без поддержки сети», «в нормальном режиме и запущена». В отличие от систем UNIX, SUA работает только с уровнем исполнения 2. Названия сценариев в rc2.d начинаются с Snn (для сценариев, вызванных при запуске) или с Knn (для сценариев, вызванных при завершении), где nn — двузначное число, используемое для указания порядка, в котором вызываются сценарии. Сценарий, который заканчивается на 00, вызывается первым; тот, который заканчивается на 99, — последним. Такая поддержка запуска и завершения демонов упрощает их подсоединение к Windows Vista.

Подсистема обеспечивает поддержку служб, запущенных inetd (диспетчером служб, который управляет службами Internet), таких как серверы Telnet, FTP, и TFTP. SUA поддерживает IPv4 и IPv6. Чтобы активировать сетевые службы, отредактируйте файл/etc/inetd.conf и снимите символ комментария у стандартной службы или добавьте собственную. Если у вас есть сетевая служба UNIX, запущенная inetd, SUA будет поддерживать службу после ее портирования.

Поддержка X Window

Как уже упоминалось выше, SUA поддерживает X Window. Однако подсистема нt включает в себя X Server, поэтому необходимо либо приобрести и установить коммерческую версию сервера Х Window, такого как Exceed jn Hummingbird (www.hummingbird.com), либо недорогой или бесплатный Х Server, такой как SourceForge.net (www.sourceforge.net).

С установленным и запущенным Х Server можно работать с программами X Window, которые поставляются с подсистемой SUA, в том числе такими, как xeyes, системные часы, с названием xclock, и xterm (стандартный эмулятор терминала для X Window). Подсистема также дополнена менеджером X Window: twm. Вдобавок X Window поддерживается со стороны SUA заголовочными файлами и библиотеками, необходимыми для создания приложений X Window.

Сценарии оболочки для портирования

С полностью функциональными оболочками C и Korn и привычными инструментами обработки данных, такими как sort, uniq и col, портирование большинства сценариев оболочек должно быть сравнительно легким. Здесь подходящие кандидаты — сценарии, которые преобразуют данные из файлов, например сортируют или соединяют их, удаляют копии или отфильтровывают выбранные столбцы, до того как они будут загружены или после извлечения из базы данных, а также сценарии, которые использует FTP для отправки или получения файлов данных. Клиент и сервер FTP, которые поставляются вместе с подсистемой SUA, являются более функциональными, чем их аналоги в Windows. Многие организации до сих пор полагаются на FTP, чтобы перемещать большое количество данных, и на системы UNIX, если дело касается дополнительных функций и настраиваемых клиентов FTP.

Компоновка приложений Cи и C++

SUA поддерживает портирование приложений Cи и C++ из UNIX, но необходимо учитывать некоторые моменты. Подсистема поставляется с поддержкой компиляторов Cи и C++ GNU. Однако по умолчанию для компилятора используется интерфейс среды Microsoft Visual Studio, которая должна быть установлена. Visual Studio может использоваться для компиляции приложений, написанных только в Cи, но не в C++. На экране 6 показано содержание Makefile — простого файла на Си — и пример того, что происходит, когда запускается команда make.

Если у вас нет Visual Studio, и вам нужно компилировать исходный код на C++ или вы просто предпочитаете использовать компиляторы GNU, можете сделать это, вызывая gcc или g++. Используя компиляторы GNU, обращайте внимание на расширение файла. Например, файл с исходным кодом на C++ в Windows обычно имеет расширение cpp, но компилятор g++ ожидает от файла с исходным кодом на C++ расширения .cc. Если у файла неправильное расширение, вы можете столкнуться со случайными ошибками, особенно на платформах с 64-разрядной архитектурой. Я рекомендую проверить файлы подсказок SUA и последние исправления; эти документы содержат полезную информацию, которая поможет избежать затруднений.

В каталоге/usr/examples можно найти пример исходного кода, который показывает, как использовать Oracle Call Interface (API для базы данных Oracle) и ODBC API. Пример демонстрирует, как использовать процедуру клиента Open Network Computing для вызова удаленных процедур.

При портировании пакетных приложений для SUA вам, возможно, придется менять сценарии командной оболочки, которые можно использовать для просмотра системы и создания файлов makefile, необходимых для компоновки приложений. Сценарии более старых версий, особенно config.guess и config.sub, работают в подсистеме не слишком хорошо; я рекомендую загрузить последние версии этих сценариев с сайта ftp.gnu.org до портирования приложений.

Когда вы портируете или создаете приложения X Window, убедитесь, что установлены и доступны все необходимые файлы. Многие приложения X Window используют дополнительные модули или шрифты независимых компаний, поэтому следует установить и скомпоновать их в первую очередь. Большинство известных пакетов должны портироваться сравнительно легко, особенно если применяются компиляторы GNU.

Другой мир

Итак, мы познакомились с подсистемой для приложений, основанных на UNIX, которые дополняют Server 2008 и Vista. Эта подсистема обеспечивает реальную альтернативу системам UNIX для многих предприятий, позволяя им исключать устаревшие системы UNIX за счет перемещения приложений на Windows Server 2008 или Vista. Функционально богатые программные оболочки подсистемы, средства управления файлами, легкий запуск демонов и сетевая поддержка действительно делают развертывание и управление некоторыми сценариями и утилитами в SUA более простым, чем в среде Windows.

Джон Хоуи (jhowie@microsoft.com) — руководитель подразделения World Wide Services and IT Technical Community for Security компании Microsoft. Имеет сертификаты CISSP, CISM и CISA

Проблема Со времени Windows NT 3.1 система Windows поддерживала приложения POSIX. Однако недостаток встроенных функций и инструментов требовал подключения приложений UNIX к Windows, так что пользователям приходилось приобретать и использовать инструменты независимых фирм.
Решение Установите подсистему для приложений, основанных на UNIX, Subsystem for UNIX-based Applications (SUA) для Server 2008 и Vista.
Что нужно Server 2008 или Vista, связь с Internet, пакет X Server (необязательно)

Оцените статью