Перейти к содержимому



- - - - -

Как из Windows сделать UNIX


  • Вы не можете ответить в тему
  • Вы не можете создать новую тему
Сообщений в теме: 8

#1 OFFLINE   Viktor@s

 

    Знаток

  • [Хранители]
  • сообщений: 6 524
    Последний визит:
    11 Сен 2019 12:48
  • Пол:Мужчина
  • Откуда:Lithuania
 

Отправлено 02 Ноябрь 2007 - 03:32

Как из Windows сделать UNIX

"Настоящий мужчина должен поставить unix!" - правда, не совсем понятно зачем, но должен. А покажите мне человека, у которого не установлен unix? Любопытно, но windows nt поддерживает стандарт unix - posix и формально могла бы быть отнесена в разряд многочисленных клонов unix, если бы дядя-Билл стремился получить этот гордый титул. Ежу понятно, сколько windows 9x ни корми, а у windows nt все равно толще, но что-то от unix и в девяносто пятых определенно есть.
Понятное дело, в любом из нас больше крови сэра Баскервиля, чем в windows оригинального кода unix, и любой фанатик этой самой unix презрительно спросит, а можно ли на windows запускать unix-приложения? Нет? Нет, вот и славненько! Кто unix не поставил, тот не мужчина, а, с позволения сказать, ламер позорный.

Легко сказать "поставь unix". То есть, поставить-то его, конечно, дело не хитрое, много по этому делу бумаги исписано, и с помощью пива и чьей-то мамы погрузить unix на свой компьютер дело одного часа.

Но что потом с этим зверем делать? Антрацитово-черный экран и мерцающий курсор, очевидно ждущий команды. Но какой команды? Тут бы не дурно в Интернет зайти, туторал почитать, ан-нет - треска хвостом вперед, это только в must die все делается шелчком мыши, а в unix без гуру и ящика пива с этой проблемой не справиться.

Вот было бы хорошо запустить unix в окне windows! А почему бы и нет? Забавно, но это действительно можно, причем не какой-нибудь эмулятор unix типа тренажера для начинающих, а самый что ни на есть полноценный unix, на котором хоть apache сервер гоняй!

Вообще-то, если честно, windows очень трудно научить правильно обращаться с исполняемыми файлами unix - ну анатомия у нее не та (имеется в виду формат исполняемых файлов и системные вызовы, хотя это не относится к posix-вызовам). Если кому такой фокус и удастся, все будет жутко тормозить и часто падать. Но не беда - ведь unix-программисты никогда не зажимают исходники, остается только перекомпилировать и все. Ха, тоже мне сказали - "и все". Да любой windows компилятор скорее подавится, чем проглотит такой исходник. А если и проглотит, работать все равно ничего не будет.

Разработать такой компилятор, который бы работал в windows и пережевывал бы исходные тексты от unix, впервые решился Дэвид Корн - и, представьте себе, разработал! Компания at&t (в которой он работает) пробовала наложить на это дело лапу, но Дэвид, как настоящий программист, отстоял за собой право распространять продукт бесплатно.

Зайдем на его домашнюю страничку (http://www.research....m/sw/tools/uwin), кликнем по ссылке download - и, ответив на множество пикантных вопросов (о поле, возрасте и месте проживания), попадем, наконец, на список предлагаемых файлов, которых так много, что немудрено и растеряться. Если вы не разработчик и не собираетесь программировать под unix (а если вы программируете под unix, с чего бы это windows оказалась на вашем компьютере?), то вам достаточно скачать лишь один из них: "uwin_base.win32.i386.exe" - восемь с хвостиком мегабайт, и заплатку, исправляющую многие ошибки, "uwin_base_update2_1. win32.i386.exe" - чуть больше двух мегабайт. Также нелишне разжиться хотя бы одной интерактивной оболочкой. Недурно зарекомендовал себя midnight commander - клон norton commander, написанный специально для unix. Без него пришлось бы общаться одной командной строкой и постоянно помнить множество мудреных команд. Скачать его можно со следующего ftp сервера - ftp://ftp.xraylith.wisc. edu/pub/khan/gnu-win32/uwin/ ports/mc-4.1.35-uwin2.0.tar.gz. Несмотря на "закрученное" расширение, с архивом вполне успешно справляется обыкновенный winzip32.

Установка uwin, а именно так называется творение Дэвида Корна, никаких проблем не вызывает. Не нужно специальным образом конфигурировать соединение с internet или возиться с драйверами принтера или монитора - 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, а можно и то и другое сразу - на всякий случай, как говорят.

Хорошо, а как компилировать-то? Дэвид не очень-то подробно это описывает, да вдобавок на английском языке, попробуй тут, разберись после пятого пива! Тээкс, сперва надо запустить `cc` (для microsoft visual studio) или `bc` (для borland turbo c), следом за ним, указав имя файла, например, так: "cc land.c", где land.c - имя файла, который надо откомпилировать. Если все пройдет успешно и не будет никаких ругательств на недостающие включаемые файлы, образуется "land.o", то есть объективный файл. Он еще не готов для запуска - прежде его необходимо слинковать. А для этого существует утилита `ncc`. Запускаем ее `ncc land.o` и... получаем ругательство, дескать, того тут нет, этого тут нет, и вообще error такой-то и ничего линковать не буду. Значит, линкер не может найти библиотеки, - открываем каталог "lib" и попробуем подключить их самостоятельно, указав после имени файла - `ncc land.c ast.lib posix.lib`. Сработало? Неужели и на этот раз нет? Тогда, вместе с нюком должен поставляться make-файл, так и называющийся `make` или `makefile` - обработаем его утилитой `nmake`, ("nmake makefle") и уж на этот раз наверняка все получится - но, к сожалению, не все нюки распространяются с make-файлом.

Полученный файл не обязательно запускать из среды uwin, ничуть не хуже он будет работать, запущенный из "проводника" windows или, скажем, far-навигатора. Но если попытаться одолжить его приятелю, то у него ничего не получится, программа поругается и потребует наличия двух файлов - astxx.dll (где xx - номер версии uwin) и posix.dll - оба они находятся в каталоге "windows\system".

Разумеется, uwin не единственное творение в своем роде. В сети можно найти просто прорву аналогичных примочек. Ну, например, большую популярность завоевал известный cygwin (http:// sources.redhat.com/cygwin/), разработанный cygnus solutions. Он полностью бесплатен, распространяется вкупе с исходниками, но... требует глубоких знаний unix и умения программировать.

В предыдущих версиях, конечно, были трудности с установкой данного продукта, но на данный момент имеется инсталлятор, который позволяет выкачивать и/или инсталлировать данный программный продукт, используя возможность работы как с прямым соединением, так и с соединением через прокси-сервер. Единственная проблема возникает при выборе необходимых компонентов, потому что cygwin - это не только обертка unix, а еще и unix-like компилятор с/с++, что отличается от uwin, который позволяет работать только с posix-вызовами и не имеет собственного компилятора. Выкачиваем все необходимое, инсталлятор устанавливает данное творение.

Единственная проблема заключается в том, что cygwin`ом можно портировать множество вещей. Недавно из-за своей лени я не хотел перегружаться под linux и решил скомпилировать самопальный прокси-сервер cygwin`ом. Хочу отметить, что данный проксик писался с расчетом на то, что он будет работать под linux и будет висеть демоном. Скомпилировал, все без ошибок. Запустил - работает. Единственная проблема возникает при компиляции приложений, сильно завязанных на использовании функций ядра различных операционных систем, но большая часть приложений компилируется без особых проблем, чего нельзя сказать о ms visual c++, т.к. в его include-файлах отсутствуют или не совпадают процедуры и функции с аналогичными в unix. Все портированные программы можно запускать и не из среды cygwin, достаточно скопировать cygwin1.dll в каталог windows\system, и запускать их, хоть из эксплорера, хоть из far-менеджера.

А, кстати, вместе с uwin распространяется и компактный dns сервер. Зачем он нам? Конечно, если подключиться к дорогому, шустрому провайдеру - то незачем. А вот вся халява связана с большими тормозами. Как повысить скорость соединения, не платя лишнего? Очень просто - обзавестить собственным dns. Порой это увеличивает скорость лазанья по web-страничкам на 20%-50% - и главное, совершенно бесплатно. Правда, комфортная работа потребует, по крайней мере, тридцати двух метром мозгов на вашей машине, но если у вас меньше - как вы вообще умудряетесь существовать в таких условиях? Есть еще telnet и ftp сервера, которые позволяют вам на 100% ощущать себя как бы под unix системой.

Итак, uwin и cygwin дает возможность изучать unix, не отказываясь от мира windows, запускать многочисленные атакующие программы, не работающие с обычной windows, установить собственный dns сервер, повысив скорость соединения с internet, наконец, просто ощутить себя настоящим мужчиной, не понаслышке знакомым с unix, хотя cygwin является просто сеансом работы в unix-шелле и не предоставляет возможность использовать dns, telnet, ftp, что возможно в uwin. Но все равно истинного unix`а или unix-клона (linux, bsd, sco unix, solaris, irix, aix, hp-ux) вам никто ни при каких условиях не заменит, т.к. очень много различий в структуре ядер windows и unix.

А теперь выбирайте, устанавливать uwin или cygwin на свой компьютер или нет.

©.www.interface.ru

#2 OFFLINE   Deshielo

 

    Мамкаюсь.Бываю периодами

  • Постоянные посетители
  • PipPipPipPipPipPipPip
  • сообщений: 200
    Последний визит:
    28 Мар 2010 09:59
 

Отправлено 02 Ноябрь 2007 - 11:50

мой муж вообще на фря работает и проблем с ним не испытывает (это freeBSD) )) уже привык к черной командной строке ))) в Окнах вообще не лазит)))

#3 OFFLINE   drBatty

 

    Долгожитель

  • Юзвери
  • PipPipPipPipPipPipPipPipPipPip
  • сообщений: 1 023
    Последний визит:
    02 Май 2010 14:30
  • Пол:Мужчина
 

Отправлено 25 Ноябрь 2007 - 05:49

Ребята, вы чего?! На дворе 2007 год! Скоро 2008 будет!!! Этой новости уже 12 лет!!! Да кто из вас(кроме меня  :scbv: ) помнит NT4??? (это бабушка XP, и прабабушка висты).

#4 Гость_GlaDooo_*

 
  • Пришельцы
 

Отправлено 25 Ноябрь 2007 - 08:07

Помню моя первая винда была 3.1... Вроде и глюков меньше было чем с XP :scbv:

#5 OFFLINE   toootooo

 

    Постоянный

  • Постоянные посетители
  • PipPipPipPipPip
  • сообщений: 83
    Последний визит:
  • Пол:Мужчина
  • Откуда:In god we trust!
 

Отправлено 25 Ноябрь 2007 - 09:55

Помню, работал в Norton Commander :P

#6 OFFLINE   drBatty

 

    Долгожитель

  • Юзвери
  • PipPipPipPipPipPipPipPipPipPip
  • сообщений: 1 023
    Последний визит:
    01 Июл 2011 08:27
  • Пол:Мужчина
 

Отправлено 27 Февраль 2008 - 19:45

Просмотр сообщенияViktor@s (2nd November 2007 - 11:32) писал:

Любопытно, но windows nt поддерживает стандарт unix - posix и формально могла бы быть отнесена в разряд многочисленных клонов unix,
ага, другой вопрос КАК она его поддерживает! процентов на 5, максимум.

Просмотр сообщенияViktor@s (2nd November 2007 - 11:32) писал:

Антрацитово-черный экран и мерцающий курсор, очевидно ждущий команды.
бред и сказки!!!
Изображение

Просмотр сообщенияViktor@s (2nd November 2007 - 11:32) писал:

Ха, тоже мне сказали - "и все". Да любой windows компилятор скорее подавится, чем проглотит такой исходник. А если и проглотит, работать все равно ничего не будет.
гы подавится, а самый обычный линуксовый компилятор gcc разве не имеет порта под windows?

Просмотр сообщенияViktor@s (2nd November 2007 - 11:32) писал:

А теперь выбирайте, устанавливать uwin или cygwin на свой компьютер или нет.
:mad: :tease:

#7 OFFLINE   denixx

 

    Свой

  • Постоянные посетители
  • PipPipPipPipPipPip
  • сообщений: 111
    Последний визит:
    02 Май 2010 14:30
  • Пол:Мужчина
 

Отправлено 22 Март 2008 - 12:25

Viktor@s, я конечно премного благодарен за свежие новости на форуме, но, простите, что это за ромашканая снежинка?
Неактуально уже несколько лет!
Вы так упадёте в глазах пользователей, аккуратнее ;)

#8 OFFLINE   Gadget

 

    Хранитель ослиной тропы

  • [Супер Модератор]
  • PipPipPipPipPipPipPipPipPipPipPipPip
  • сообщений: 10 861
    Последний визит:
    11 Сен 2013 12:09
  • Пол:Мужчина
  • Откуда:Таллинн
 

Отправлено 14 Ноябрь 2009 - 08:54

rofl denixx привел классную ссылку, читал и плакал.

А по теме, нафиг делать из винды никсы если есть уже готовый вариант:)

#9 OFFLINE   xzzblabla

 

    Свой

  • Постоянные посетители
  • PipPipPipPipPipPip
  • сообщений: 119
    Последний визит:
    12 Мар 2018 01:57
  • Пол:Мужчина
 

Отправлено 05 Июнь 2010 - 02:24

Просмотр сообщенияViktor@s (Nov 2 2007, 12:32) писал:

Любопытно, но windows nt поддерживает стандарт unix - posix и формально могла бы быть отнесена в разряд многочисленных клонов unix,
ЗЫ Винда и была Изначально Клоном *nix , правда на сей дей сильнейше мутировала.





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных