Как начать знакомст...
 

Как начать знакомство с командами Linux: Cygwin  

  RSS

SuperUser
(@superuser)
Active Member
Присоединился: 11 месяцев назад
Сообщения: 19
15/07/2019 6:36 дп  

Я знаю про виртуальные машины и про то, что Microsoft что-то там реализовала с поддержкой ядра Linux. Виртуальная машина требует ресурсов (не подходит для совсем слабых компьютеров). Другие варианты тоже не особо простые.

Cygwin устанавливается как обычное портативное приложение. После установки на рабочий стол добавляется ярлык при клике по которому открывается консоль Linux. При том это не просто эмулятор — здесь самые настоящие программы Linux — то есть как они будут работать точно также и в настоящей ОС Linux.

У такого подхода есть ограничения — в первую очередь, нет доступа к железу (к Wi-Fi картами, сетевым картам, видеокарте). Также отсутствует как таковой менеджер пакетов — пакеты для установки можно выбрать в установщике Cygwin. То есть установить то, что не входит в стандартную поставку Linux (например, sqlmap, WPScan и т. д.) будет проблематично.

То есть с одной стороны использовать как полноценный Linux не получится. Но с другой стороны здесь предостаточно программ на знакомства с командной строкой. Например, cURL, grep, wget, sed, vim и многие другие.

Например, можно тренироваться в парсинге (в этом окружении будут работать практически все примеры из «Парсинг сайтов: азы, продвинутые техники, сложные случаи»).

Пример запуска команды в Cygwin:

curl -s  https://hackware.ru/  | grep -E -o '<h3 class=ftitle>.*</h3>' | sed 's/<h3 class=ftitle>//' | sed 's/<\/h3>//'

В Cygwin имитирована структура директорий Linux, то есть вы также сможете начать знакомство с устройством этой операционной системы.

Для начала обучения работе в консоли Linux рекомендуется ознакомиться со статьями:

Как установить Cygwin

Перейдите на сайт https://www.cygwin.com/ , найдите там файл setup-x86_64.exe, скачайте и запустите его.

В процессе установки программа предложит выбрать зеркало для скачивания, папку для сохранения и программы для установки — всё это можно оставить без изменений.

После установки на рабочем столе появится ярлык.

SSH, Python, Vim, инструменты компиляции

Не надо воспринимать Cygwin как простую игрушку. Это весьма продвинутая среда, которая содержит множество инструментов Linux, в том числе для продвинутых пользователей

В Cygwin имеется полноценный SSH клиент, который позволяет подключаться к удалённым системам и даже генерировать SSH ключи. То есть вы можете использовать Cygwin для подключения к вашим удалённым серверам или другим системам Linux — Cygwin может заменить сторонние клиенты SSH, которые не всегда удобны

В Cygwin уже присутствует Python — вы можете начать осваивать данный язык без установки в Windows.

Консольный текстовый редактор, например, Vim — обязательный инструмент при редактировании конфигураций на удалённых системах — здесь вы можете в спокойной обстановке начать с ним знакомство.

Имеется Git — обновления своих репозиториев Git, либо можно использовать просто для скачивания (клонирования) репозиториев других разработчиков.

Совсем продвинутые пользователи могут даже воспользоваться инструментами компиляции.

В пакетах можно увидеть PHP, веб-сервер и многое другое.

Итак

Cygwin — это отличный вариант начать знакомство с Linux. Работает даже на слабых компьютерах и поддерживает очень многие возможности ОС Linux.

В этой теме будем рассматривать простые и сложные примеры использовании Cygwin, в том числе компиляцию и установку инструментов.


Цитата
MiAl
 MiAl
(@mial)
Участник Admin
Присоединился: 1 год назад
Сообщения: 117
14/10/2019 9:57 дп  

Как получить доступ к дискам в Cygwin

Если при установке Cygwin вы оставили путь по умолчанию, то Cygwin храниться в папке C:\cygwin64. Именно эта папка является для Cygwin корнем файловой системы выше которой подняться невозможно.

В ОС Linux другие диски (если они есть) подключаются в выбранные точки монтирования ниже по дереву файловой системы. То есть в Cygwin можно просматривать список файлов, создавать новые файлы, редактировать и удалять существующие файлы на всех дисках ОС Windows (если позволяют права записи). Но нужно знать, куда они смонтированы.

Чтобы просмотреть список физических дисков в системе:

ls -l /dev/s*

Пример вывода:

brw-rw-rw- 2 MiAl Отсутствует 11, 0 окт 14 10:23 /dev/scd0
brw-rw-rw- 1 MiAl Отсутствует 8, 0 окт 14 10:23 /dev/sda
brw-rw-rw- 1 MiAl Отсутствует 8, 1 окт 14 10:23 /dev/sda1
brw-rw-rw- 1 MiAl Отсутствует 8, 2 окт 14 10:23 /dev/sda2
brw-rw-rw- 1 MiAl Отсутствует 8, 3 окт 14 10:23 /dev/sda3
brw-rw-rw- 1 MiAl Отсутствует 8, 4 окт 14 10:23 /dev/sda4
brw-rw-rw- 2 MiAl Отсутствует 11, 0 окт 14 10:23 /dev/sr0
lrwxrwxrwx 1 MiAl Отсутствует 15 июл 12 23:41 /dev/stderr -> /proc/self/fd/2
lrwxrwxrwx 1 MiAl Отсутствует 15 июл 12 23:41 /dev/stdin -> /proc/self/fd/0
lrwxrwxrwx 1 MiAl Отсутствует 15 июл 12 23:41 /dev/stdout -> /proc/self/fd/1

Как можно понять из предыдущего вывода, диск /dev/sda разделён на четыре раздела: /dev/sda1, /dev/sda2, /dev/sda3 и /dev/sda4.

Но здесь размещены диски как устройства — то есть к этим устройствам в Linux можно обращаться при форматировании, создании и удалении томов (возможно, Cygwin не может взаимодействовать с дисками на таком уровне). Для доступа к файлам дисков, их нужно смонтировать, то есть подключить к дереву файловой системы (подробности смотрите в статье «Структура директорий Linux. Важные файлы Linux»).

Чтобы просмотреть информацию о смонтированных дисках и точках монтирования, выполним команду:

mount

Пример вывода:

C:/cygwin64/bin on /usr/bin type ntfs (binary,auto)
C:/cygwin64/lib on /usr/lib type ntfs (binary,auto)
C:/cygwin64 on / type ntfs (binary,auto)
C: on /cygdrive/c type ntfs (binary,posix=0,user,noumount,auto)
Z: on /cygdrive/z type vboxsharedfolderfs (binary,posix=0,user,noumount,auto)

Из этой информации следует, что диск C смонтирован в директорию /cygdrive/c. Диск Z: (это сетевой диск) смонтирован в директорию /cygdrive/z.

Запись C:/cygwin64 on / означает, что в качестве корневой файловой системы (/) смонтирована папка C:/cygwin64.

Чтобы увидеть все диски системы, включая сетевые и включая флешки и другие внешние диски выполните команду:

ls -l /cygdrive/

Итак, к любому диску в Windows из Cygwin можно получить доступ через папку /cygdrive/. К примеру, для просмотра файлов и папок на диске C:

ls -l /cygdrive/c


ОтветитьЦитата
Share:

Пожалуйста, Вход или Зарегистрироваться