Как да направите UNIX от Windows

"Истинският мъж трябва да инсталира UNIX!" - Вярно, не е съвсем ясно защо, но трябва. И покажете ми човек, който няма инсталиран UNIX? Любопитно е, че Windows NT поддържа стандарта UNIX-POSIX и технически би могъл да бъде класифициран като един от многобройните клонинги на UNIX, ако чичо Бил се бе стремил към тази горда титла. Колкото и да храниш Windows 9x, Windows NT все е по-дебел, но определено има нещо от UNIX в деветдесет и петата.

Разбира се, във всеки от нас има повече кръв на сър Баскервил, отколкото в Windows на оригиналния код на UNIX, и всеки фанатик на UNIX ще попита презрително, възможно ли е да стартирате UNIX приложения на Windows? Не? Не, това е хубаво! Който не е инсталирал UNIX не е човек, а ако мога така да се изразя - срамен ламар.

Лесно е да се каже "вземете UNIX". Тоест, поставянето му, разбира се, не е трудна работа, много хартия е изписана по този случай и с помощта на бира и нечия майка зареждането на UNIX на вашия компютър е въпрос на един час.

Но тогава какво да правим с този звяр? Антрацитно черен екран и трептящ курсор, очевидно чакащ команда. Но какъв отбор? Няма да е зле да влезете в интернет, да прочетете урок, но не - първо опашка на треска, само в Must Die всичко става с едно щракване на мишката, а в UNIX не можете да се справите с този проблем без гуру и кутия бира.

Би било хубаво да стартирате UNIX в кутия с Windows! Защо не? Смешно е, но наистина е възможно и не някакъв емулатор на UNIX като симулатор за начинаещи, а най-пълният UNIX, на който поне да карате сървъра Apache!

Всъщност, за да бъда честен, за Windows е много трудно да се научи как правилно да обработва изпълними файлове на UNIX - добре, анатомията му не е същата (което означава форматът на изпълнимите файлове и системните извиквания, въпреки че това не есе отнася за POSIX повиквания). Ако някой успее с такъв трик, всичко ще се забави ужасно и често ще пада. Но това няма значение - все пак UNIX програмистите никога не затварят изходните кодове, остава само да прекомпилират и това е. Ха, и на мен ми казаха – „и това е“. Да, всеки Windows компилатор по-скоро ще се задави, отколкото да погълне такъв източник. И ако глътне, така или иначе нищо няма да работи.

Дейвид Корн беше този, който пръв се осмели да разработи компилатор, който да работи на Windows и да дъвче изходния код на UNIX - и, представете си, го разработи! AT&T (където той работи) се опита да сложи ръка на този въпрос, но Дейвид, като истински програмист, защити правото да разпространява продукта безплатно.

Нека отидем на началната му страница, щракнете върху връзката Down Load - и след като отговорихме на много пикантни въпроси (за пол, възраст и място на пребиваване), най-накрая ще стигнем до списъка с предложени файлове, които са толкова много, че не е чудно да се объркате. Ако не сте разработчик и няма да програмирате под UNIX (и ако програмирате под UNIX, защо Windows ще е на вашия компютър?), тогава просто трябва да изтеглите само един от тях: "uwin_base.win32.i386.exe" - осем мегабайта, и корекция, която коригира много грешки, "uwin_base_update2_1. win32.i386.exe" - малко повече от два мегабайта. Също така е полезно да се сдобиете с поне една интерактивна обвивка. Midnight Commander, клонинг на Norton Commander, написан специално за UNIX, се оказа не лош. Без него ще трябва да комуникирате с един команден ред и постоянно да помните много трудни команди. Можете да го изтеглите от следното тук. Въпреки "усуканото" разширение, обикновеният WinZip32 се справя доста успешно с архива.

Инсталиране на UWIN, което се нарича създаванеДейвид Корн, няма проблем. Няма нужда да конфигурирате вашата интернет връзка или да се занимавате с драйвери за принтер или монитор - UWIN използва интелигентно ресурсите на Windows и не изисква допълнителна конфигурация. Можете дори да инсталирате X-Windows - и тогава рядък фен на UNIX ще разбере на коя операционна система работите (това се отнася и за CYGWIN, описан по-долу).

Не е ли страхотно? Опитайте, предложете най-добрия начин да научите UNIX! И какво поле се отваря за всякакви атаки! В края на краищата повечето експлойти, т.е. научен език, софтуерни реализации на атаки, но по прост начин, всякакви нюанси, работят изключително в UNIX среда и категорично отказват да бъдат приятели с Windows. Е, UWIN е най-добрият начин да го направите!

Вярно, това е лошият късмет - всички нови нукове лежат на rootshell под формата на файлове с разширение "c", тоест, докато не ги компилирате, няма какво да мислите за стартирането им! Къде е компилаторът? Отново се изкачваме на сайта на Дейвид Корн и изтегляме файла "uwin_development.win32.i386.exe" - малко по-малко от четири мегабайта. Вярно, това не е целият компилатор, а само набор от заготовки, които помагат на компилаторите на Windows да преодолеят паралогичния имунитет към UNIX. Оказва се, че трябва да станеш, да си обуеш ботушите и да задраскаш Митино (или както му викаш?) и да си купиш допълнителен диск с произволен Windows компилатор. Можете, например, Visual Studio от Microsoft или Turbo C от Borland, или и двете наведнъж - за всеки случай, както се казва.

Добре, но как да компилирам нещо? Дейвид не го описва много подробно, а освен това на английски, опитайте го тук, разберете го след петата бира! Teex, първо трябва да стартирате 'cc' (за Microsoft Visual Studio) или 'bc' (за Borland Turbo C), последвано от името на файла, така: "ccland.c", където land.c е името на файла, който трябва да се компилира. Ако всичко върви добре и няма псувни за липсващите включени файлове, се формира "land.o", тоест обективен файл. Той все още не е готов за стартиране - първо трябва да бъде свързан. И за това има помощната програма 'ncc'. Стартирайте я 'ncc land.o' и. Така че, линкерът не може да намери библиотеките, - отворете директорията "lib" и опитайте да се свържете ги сами, като посочите след името на файла - 'ncc land.c ast.lib posix.lib'. Работи ли? Наистина ли не този път? След това, заедно с nuke, трябва да бъде доставен make файл и той се нарича 'make' или 'makefile' - ние ще го обработим с помощната програма 'nmake', ("nmake makefle") и този път вероятно ще се получи - но, за съжаление, не всички ядрените оръжия се разпространяват с makefile.

Полученият файл не трябва да се стартира от средата на UWIN; той ще работи също толкова добре, когато се стартира от Windows Explorer или, да речем, FAR навигатор. Но ако се опитате да го заемете на приятел, тогава той ще се провали, програмата ще се кара и ще изисква два файла - astxx.dll (където xx е номерът на версията на UWIN) и posix.dll - и двата се намират в директорията "WINDOWS\SYSTEM".

Разбира се, UWIN не е единственото творение по рода си. В мрежата можете да намерите просто бездна от подобни джаджи. Е, например, известният CYGWIN, разработен от Cygnus Solutions, придоби голяма популярност. Той е напълно безплатен, разпространява се заедно с изходния код, но. изисква задълбочени познания за UNIX и умения за програмиране.

В предишните версии, разбира се, имаше трудности при инсталирането на този продукт, но в момента има инсталатор, който ви позволява да изтеглите и / или инсталиратетози софтуерен продукт, използващ възможността за работа както с директна връзка, така и с връзка чрез прокси сървър. Единственият проблем възниква при избора на необходимите компоненти, тъй като CYGWIN е не само UNIX обвивка, но и UNIX-подобен c / c ++ компилатор, който е различен от UWIN, който ви позволява да работите само с POSIX извиквания и няма собствен компилатор. Ние изпомпваме всичко необходимо, инсталаторът инсталира това творение.

Единственият проблем е, че CYGWIN може да пренася много неща. Наскоро, поради моя мързел, не исках да рестартирам под Linux и реших да компилирам домашен прокси сървър с CYGWIN. Искам да отбележа, че този прокси е написан с очакването, че ще работи под Linux и ще виси като демон. Компилиран без грешки. Пуснат - работи. Единственият проблем възниква при компилирането на приложения, които са силно зависими от използването на функциите на ядрото на различни операционни системи, но повечето от приложенията се компилират без никакви проблеми, което не може да се каже за MS Visual C ++, защото. неговите включени файлове липсват или не съответстват на процедурите и функциите с тези в UNIX. Всички пренесени програми могат да се изпълняват извън средата на CYGWIN, просто копирайте cygwin1.dll в директорията WINDOWS\SYSTEM и ги стартирайте или от Explorer, или от FAR мениджъра.

И, между другото, заедно с UWIN се разпространява и компактен DNS сървър. Защо му трябваме ние? Разбира се, ако се свържете със скъп, интелигентен доставчик, тогава няма нужда. Но цялата безплатна е свързана с големи спирачки. Как да увеличите скоростта на връзката си, без да плащате твърде много? Много просто - да придобиете собствен DNS. Понякога увеличава скоростта на катерене по WEB страници с 20%-50% - и най-важното, напълно безплатно. Вярно, удобна работаще изисква най-малко тридесет и два метра мозък на вашата машина, но ако имате по-малко - как изобщо успявате да съществувате в такива условия? Има също Telnet и Ftp сървъри, които ви позволяват да се чувствате 100% като под UNIX система.

И така, UWIN и CYGWIN позволяват да изучавате UNIX, без да изоставяте света на WINDOWS, да стартирате множество атакуващи програми, които не работят с обикновен Windows, да инсталирате свой собствен DNS сървър, да увеличите скоростта на вашата интернет връзка и накрая просто да се почувствате като истински мъж, запознат с UNIX от първа ръка, въпреки че CYGWIN е просто сесия в UNIX shell и не предоставя възможност за използване на DNS, Telnet, Ftp, което е възможно в UWIN. Но все пак никой няма да замени истински UNIX или клонинг на UNIX (Linux, BSD, Sco Unix, Solaris, Irix, Aix, HP-UX) при никакви обстоятелства, т.к. има много разлики в структурата на ядрата на Windows и UNIX.

Сега изберете дали да инсталирате UWIN или CYGWIN на вашия компютър или не.