Архив рубрики: Linux

Ваш путеводитель по одной из самых популярных и влиятельных операционных систем в мире. От базовых команд и установки дистрибутивов до глубокого изучения ядра и сетевых технологий — здесь вы найдете статьи и руководства на самые разные темы, связанные с Linux. Независимо от вашего уровня подготовки, здесь найдется что-то интересное и полезное.

Как запустить программу на Linux

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

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

Виды программ в Linux

Перед тем, как мы перейдем к запуску программ, нужно сначала понять что представляет из себя программа. В Linux программы отличаются от других файлов только тем, что для них установлен флаг исполняемости. Я уже подробно писал об этом в статье что такое исполняемость поэтому не буду повторяться.

Все программы можно поделить на несколько типов:

  • Бинарные программы - содержат инструкции процессору уже готовые к выполнению, большинство программ находятся в таком формате, они быстрые и выполняются сразу же системой;
  • Программы на байт-коде - это уже не процессорные инструкции, а инструкции определенной виртуальной машины, которая может их выполнять, без виртуальной машины такие команды не могут быть выполнены. Такие программы потребляют больше ресурсов, но тоже достаточно быстрые, их преимущество в том, что они могут выполняться без изменения везде где может работать виртуальная машина. К таким программам можно отнести программы на Java.
  • Скриптовые программы - эти программы состоят из набора команд в виде обычного текста, которые выполняет специальный интерпретатор. Такие программы более медленные, но зато они проще в разработке и их код можно легко и быстро изменить.

А теперь перейдем к запуску программ.

Запуск программ в терминале

Изначально в операционных системах Unix и Linux не было графического интерфейса, поэтому программы запускались командами из терминала. Сейчас это тоже возможно и достаточно активно используется опытными пользователями. Синтаксис запуска программы выглядит таким образом:

/путь/к/файлу/программы параметры

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

Разработчики придумали обходной путь. Была создана переменная PATH, в которой хранятся все пути к папкам где обычно находятся программы - /bin, /sbin, /usr/bin, /usr/sbin и так далее. Вы можете посмотреть ее содержимое командой:

echo $PATH

Когда вы набираете имя программы система ищет исполняемый файл с таким именем по всем папкам из PATH и если находит - то выполняет. Если же такого файла нет, то выдается сообщение - command not found. Таким образом, чтобы запустить одну из системных программ достаточно набрать имя ее исполняемого файла, например:

ls

И можно передать параметры после пробела:

ls /

Когда программа находится не в этих каталогах, нужно указать к ней полный путь:

/usr/local/bin/ls1

Если же вы хотите запустить программу через терминал ubuntu, которая находится в текущей папке, то ситуация будет немного другой. Система выполняет только поиск по папкам из переменной PATH, в текущей директории она не ищет. Поэтому, если вы наберете имя исполняемого файла, то получите ошибку. Нужно указывать полный путь, как вы помните путь к текущей папке будет ./:

./helloworld

Иногда возникает необходимость передать программе, какие-либо особые переменные окружения. Например, переменная EDITOR указывает какой текстовый редактор нужно использовать по умолчанию. Вы можете указать имя переменной и ее значение перед именем команды используя синтаксис:

имя_переменной=значение команда

Например:

EDITOR=nano visudo

По умолчанию эта команда открывает настройки утилиты sudo в редакторе Vim, но с этой переменной окружения настройки откроются в редакторе nano.

Запуск программ от имени другого пользователя

Вы уже знаете как запустить программу в терминале linux, а что насчет других пользователей? В Windows достаточно часто используется запуск программ от имени администратора чтобы программа могла получить больше прав доступа в системе. В Linux для этого используется утилита sudo. Ее имя можно расшифровать как switchuserdo - изменить пользователя и выполнить. По умолчанию утилита выполняет команду от имени суперпользователя root:

sudo команда
sudo whoami

Но с помощью опции -u можно выполнить программу от имени любого пользователя, зарегистрированного в системе:

sudo -u имя_пользователя команда
sudo -u postgres whoami 

Команда whoami (кто я) выводит имя текущего пользователя.

Как запустить программу в фоне

Иногда возникает необходимость запустить долго выполняющуюся программу в терминале так, чтобы она не мешала дальше работать. Для этого можно использовать запуск программы в фоновом режиме linux:

имя_программы &

Например:

dd if=/dev/zero of=~/file count=100000 &

Система выведет PID, уникальный идентификатор программы, который вы потом можете использовать чтобы закрыть ее командой kill:

kill 18110

Как запустить скрипт в Linux

Мы уже говорили, что программы делятся на бинарные и интерпретируемые. Раньше мы говорили только про бинарные программы. Для запуска интерпретируемых нужен непосредственно интерпретатор, к таким программам относятся написанные на таких языках, как Java, Python, Perl, Ruby, PHP, NodeJS и многих других. Синтаксис запуска такой программы отличается:

интерпретатор /путь/к/файлу/программы параметры

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

python hellowrld.py

А Java программы нужно запускать так:

java -jar program.jar

Для файлов интерпретируемых программ флаг исполняемости необязательный, поскольку они передаются в виде параметра основной программе. Только Bash скрипты составляют исключение. Вы можете запустить скрипт интерпретатором:

bash script.sh

Или же просто набрать путь к скрипту:

./script.sh

Оболочка сама определяет свои скрипты по флагу исполняемости и выполняет их. Если флаг исполняемости не установлен, то его стоит добавить:

sudo chmod u+x ./script.sh

Поэтому то и для большинства интерпретируемых программ созданы простые sh скрипты которыми их можно быстро запустить.

Запуск программ Linux в графическом интерфейсе

Намного удобнее запускать программы через графический интерфейс. Если консольные программы так запускать невозможно, то для всех графических утилит существуют ярлыки, которые вы можете найти в главном меню системы:

Кроме того, вы можете запустить программу из файлового менеджера, двойным кликом мышью, но тогда для нее обязательно должен быть установлен флаг исполняемости.

Точно так же работает запуск скриптов в графическом интерфейсе. Вы можете найти все ярлыки из меню в каталоге /usr/share/applications/. Любую программу можно запустить двойным щелчком отсюда. Но давайте посмотрим что находится внутри ярлыка, для этого откройте его в текстовом редакторе:

Кроме всего прочего, в строке Exec указана команда, которая выполняет запуск программы linux, когда вы делаете двойной клик на ярлыке. Вы можете взять один из существующих ярлыков и сделать на его основе свой. Здесь указано просто имя программы. Но важно заметить, что лучше указывать полный путь в таких местах, как ярлыки, скрипты, cron и так далее это уменьшит количество ошибок, поскольку вы не можете знать проверяет ли система в этом случае PATH или ищет программу только в текущем каталоге. Теперь вы знаете все о том как запустить программу на linux.

Выводы

В этой статье мы рассмотрели как запустить программу через терминал ubuntu или в других дистрибутивах Linux. Несмотря на то, что это кажется очень простой темой, тут есть свои интересные моменты, которые могут быть полезны. Но вы о них уже знаете. Если у вас остались вопросы, спрашивайте в комментариях!

Цвета терминала Linux

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

Особенно интересно, если не просто копируешь чужой "рецепт", а пытаешься разобраться, что и как устроено. И даже решая несерьезную задачу, узнаешь что-то новое.

Читать далее Цвета терминала Linux

Установка MariaDB CentOS 7

Как вы знаете, несколько лет назад разработка программного обеспечения для организации баз данных MySQL разделилась. У программы появилось две версии - оригинальная MySQL от компании Oracle и новая - MariaDB, разрабатываемая создателем MySQL и сообществом. Версия от сообщества быстро обогнала оригинальную версию по возможностям и оптимизациям и сейчас используется в большинстве дистрибутивов Linux по умолчанию.

В этой статье мы рассмотрим как выполняется установка MariaDB CentOS 7, на данный момент самая новая стабильная версия - MariaDB 10.2, именно ее мы будем устанавливать.

Читать далее Установка MariaDB CentOS 7

Как пользоваться TeamViewer

TeamViewer - это очень популярное программное обеспечение для удаленного управления компьютером, оказания технической поддержки пользователям удаленно, которое может работать в Windows, Linux и MacOS. Вы можете подключиться к компьютеру и управлять им даже с помощью смартфона на Android. Программа бесплатна для некоммерческого использования и поэтому ее может попробовать каждый желающий.

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

Читать далее Как пользоваться TeamViewer

Plank - быстрая панель запуска для Linux

Порой начинающих пользователей Linux пугает отсутствие панели задач внизу, а её перемещение вверх вызывает сильные неудобства. Ещё со времен Windows мы привыкли к закреплению часто используемых программ в панели быстрого запуска и больше не хочется тратить драгоценное время на поиск в папках или в хаосе значков на рабочем столе столь заветного ярлыка.

На самом деле в Linux существует множество полезных виджетов готовых прийти к вам на помощь в любой ситуации. Plank один из них. Разработчики характеризуют его как «Stupidly Simple» (Тупо Простой). И должна сказать, что это действительно так.

 

Установка plank

Установить plank можно из терминала:

sudo add-apt-repository ppa:docky-core/stable
sudo apt-get update
sudo apt-get install plank

Также возможна установка plank в ubuntu из центра приложений. Уж какой способ установки вы предпочитаете, зависит лишь от вас. В synaptic он тоже присутствует.

На plank стоит обратить внимание не только из-за своих "интеллектуальных" особенностей, быстрота работы и легкости интерфейса, но и в первую очередь из-за полезности.

Plank Ubuntu очень гибкий. Его можно разместить, хоть слева, хоть снизу, хоть сверху. Он будет там, где удобно вам. Многие скрывают приевшуюся стандартную левую панель Ubuntu. Я же решила её оставить. Она изрядно выручает в некоторых случаях, но всё же использую я её не так часто.

Настройки параметров скрытия Plank

У plank есть способность интеллектуального скрытия. Когда вы печатаете в документе
или пишите код, он автоматически скрывается и не надоедает вам своим внешним видом. Стоит лишь слегка навести курсор на угол его 'постоянного места жительства' и он сразу тут как тут. Также поведение plank может быть автоматическим скрытием, скрытием при развёрнутых окнах, прятаться за окна или прятаться от активного окна. Согласитесь выбор довольно таки большой, не правда ли?

Добавляем доклеты

С недавних пор plank обзавёлся своими доклетами. Это маленькие приятные фишки на панели: cpu процессора, часы, корзина. Их можно также установить отдельно.

Устанавливаем темы оформления

И моя любимая фишка, которая также придётся любителям эстетики по душе – темы оформления. У plank огромная база красивых иконок, тем и эффектов. Все они легки в установке и приятны глазу. Иконки можно изменять по размеру, увеличивать или вовсе убирать. Ну и несомненный плюс в том, что вы можете создать свои собственные иконки и установить.


Чтобы загрузить новые темы скопируйте их в ~/.local/share/plank/themes/
На сайте deviantart можно даже свободно подобрать понравившуюся тему, загрузить свою и делиться с нею пользователями (просто наберите в поиске сайта plank).

Меню настроек Plank

Чтобы попасть в меню настроек программы есть 2 волшебных способа. К сожалению разработчики не посчитали полезным создать отдельный значок настроек, но в этом и вся красота Linux:

  1. Зажать Ctrl + Shift + правый клик мышки по панели plank
  2. Команда: plank —preference 

Добавляем и удаляем значки

Для того, чтобы добавить новый значок на панель, необходимо запустить программу и ярлык автоматически отобразится в plank. Теперь щёлкните левой кнопкой мыши по этому значку и выберите опцию "Прикрепить к панели".

Для удаления значка нужно лишь левой кнопкой мыши вытянуть его из панели. Как видите, всё просто и легко.

Выводы

Plank существует уже давно и живёт он в моей Ubuntu 14.04 больше трех лет. Я его добавила в автоматический автозапуск программ и теперь он отображается сразу же при запуске системы. Есть только небольшая проблема, которая для меня стала удивлением. Теперь мне приходится дважды выходить из системы, если я не выключаю Plank заранее. Но со временем привыкаешь. Возможно, что такая проблема лишь в Ubuntu 14.04 LTS. Устанавливать Plank или нет решать только вам. Он сделал моё знакомство с Linux более радостным и красивым. Чего и желаю вам.

https://youtu.be/cgzeOSMIEiQ

Размер базы данных MySQL

В наше время базы данных используются практически везде, я уже не говорю про крупные компании и команды разработчиков приложений, даже веб-мастера, которые делают свои сайты используют базы данных для хранения динамически изменяющейся информации. Обычно это одна из самых популярных баз данных - MariaDB или MySQL.

Но сколько занимает ваша база данных? А каждая таблица? Для больших проектов эти показатели могут достигать очень больших значений. В сегодняшней статье мы поговорим о том, как узнать размер базы данных MySQL через консоль и другими способами.

Читать далее Размер базы данных MySQL

Как увеличить размер виртуального диска VirtualBox

Виртуальные машины достаточно часто используются в наше время для тестирования различных операционных систем и выполнения других задач. Одна из самых популярных свободных программ для запуска виртуальных машин - VirtualBox. Когда вы создаете новую машину, вам необходимо создать для нее жесткий диск и указать его размер. Но вы не всегда можете угадать сколько места будет занимать та или иная машина.

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

Как увеличить размер виртуального диска VirtualBox

В VirtualBox можно использовать три основных формата дисков - это VDI, VHD и VDMK. Я не буду здесь рассматривать чем они отличаются. Но важно то, что изменить размер можно только для VDI и VHD. Для дисков VDMK есть обходной путь.

Для увеличения размера диска нужно использовать команду в терминале или в командной строке, в графическом интерфейсе такой функции, к сожалению, нет. Также вам нужно знать полный путь к вашему диску. Допустим, наш диск находится по адресу ~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdi в Linux. Давайте посмотрим информацию о нем, чтобы знать текущий размер:

VBoxManage showhdinfo ~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdi

Здесь размер отмечен в поле capacity и в данном примере он составляет 22075 мегабайта. Важно знать размер в мегабайтах, так как именно его мы будем использовать для увеличения диска. Чтобы увеличить размер виртуального диска virtualbox используется та же команда, только с параметром modifyhd:

VBoxManage modifyhd ~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdi --resize 32075

Здесь мы увеличили размер диска на 10 гигабайт. Важно чтобы размер, который вы указываете в параметре resize был не меньше текущего размера диска, иначе данные операционной системы могут быть повреждены и вся суть этой операции теряет смысл.

Если у вашей машины есть снимки состояния, то их размер тоже нужно изменить, иначе ничего не заработает. Для этого можно использовать такой цикл:

for x in ~/VirtualBox\ VMs/Ubuntu17.04/Snapshots/*.vdi ; do VBoxManage modifyhd $x --resize 32075 ; done

Помните, что размер и имена дисков должны совпадать во всех командах для одной машины. Для формата VDMK увеличение размера диска VirtualBox не поддерживается, но зато можно его конвертировать в vdi, увеличить, как описано выше и конвертировать обратно:

VBoxManage clonehd "~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdmk" "~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdi" --format vdi
VBoxManage modifyhd "~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdi " --resize 32075
VBoxManage clonehd "~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdi " "~/VirtualBox\ VMs/Ubuntu17.04/Ubuntu1610.vdi_resized.vmdk" --format vmdk

Увеличение диска VirtualBox в Windows

В ОС Windows команда будет выглядеть немного по-другому, а путь к файлу будет начинаться с диска C:. Чтобы выполнить команду VBoxManage сначала необходимо перейти в папку с исполняемыми файлами VirtualBox:

cd “C:\Program Files\Oracle\VirtualBox”

Затем, запустите команду чтобы увеличить размер диска virtualbox, как было описано раньше, путь к файлу замените на свой:

VBoxManage showhdinfoC:\Users\Admin\VirtualBox VMs\Windows 7\Windows 7.vdi

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

VBoxManage modifyhd "C:\Users\Admin\VirtualBox VMs\Windows 7\Windows 7.vdi" --resize 32075

Увеличение файловой системы

То, что вы увеличили доступный размер диска еще ничего не меняет, как ничего не поменяет и то, что вы добавите новый жесткий диск к системе. Дальше вам нужно загрузится в вашу виртуальную машину расширить диск virtualbox и увеличить пространство, занимаемое файловой системой, для этого можно использовать утилиту Gparted. В дистрибутивах Linux она поставляется по умолчанию, запустите утилиту:

Здесь вы увидите отмеченное серым доступное пространство в конце диска. Теперь вы можете изменить размер для последнего раздела нажав на нем правой кнопкой и вызвав контекстное меню, затем выбрав "изменить размер/переместить":

Когда завершите, не забудьте нажать "Apply" чтобы применить все операции.

Читайте более подробно о том, как пользоваться Gparted в отдельной статье. Если у вас в качестве гостевой системы установлена Windows, вы можете использовать стандартную утилиту управления дисками или скачать ISO образ Gparted.

Выводы

В этой статье мы рассмотрели как увеличить размер виртуального диска virtualbox с помощью командной строки и как предоставить полученное пространство вашей гостевой системе. Если у вас остались вопросы, спрашивайте в комментариях!

https://youtu.be/OM2TLXtLvVA

Как пользоваться KeePass

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

Но есть и другой вариант — использоваться специальное хранилище паролей KeePassX. При помощи данного приложения вы сможете собрать все пароли в одну защищенную базу, и извлекать их оттуда по возможности. Итак, давайте разберемся, как пользоваться KeePass, и как установить программу на разные операционные системы?

Установка KeePassX

Менеджер паролей KeePass – это универсальное приложение, которое доступно на разных операционных системах. В это число входят как настольные ОС Linux, Windows, MasOS, так и его мобильные вариации.

Установка в Linux производится штатными средствами либо через терминал. В последнем случае необходимо открыть командную строку и ввести sudo apt-get keepassx. Для установки приложения в Ubuntu, Linux Mint и других дистрибутивах, основанных на Debian или Ubuntu, нет необходимости подключать сторонние репозитории.

Для установки программы в Windows и MacOS необходимо перейти на официальный сайт и скачать установочный пакет под свою ОС.

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

Русификация KeePassX

Но как русифицировать KeePassX? Более старая версия программы нуждалась в установке дополнительных языковых пакетов, а вариант с префиксом «X» уже поддерживает русский язык. Если же при установке вы случайно выбрали не тот вариант, тогда необходимо перейти в меню «Инструменты» и выбрать здесь «Настройки». На главной вкладке вы найдете пункт Language, где и нужно будет установить русский язык по умолчанию.

Как пользоваться KeePassX?

1. Создание хранилища паролей

Настройка KeePass начинается с создания хранилища, где будут сохраняться все пароли. Для этого, в главном окне программы переходим в меню «Хранилище» и выбираем пункт «Новое хранилище».

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

Для усиления защиты можно также подключить файл-ключ. Вы можете выбрать собственный текстовый документ или же сгенерировать новый. По окончании операций с паролями нажмите кнопку «Ок».

Следующий наш шаг — сохранение хранилища в файл, чтобы можно было в любой момент сохранить его и перенести на другое устройство. Снова перейдите в меню «Хранилище» и выберите пункт «Сохранить хранилище», после чего укажите путь, где будет храниться файл и задайте ему имя.

2. Сохранение пароля KeePassX

Для добавления в базу нового пароля необходимо нажать на соответствующую иконку в главном окне программы либо перейти в меню «Записи» и выбрать пункт «Добавить новую запись».

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

3. Использование паролей

Итак, мы научились создавать записи, но теперь пришло время научиться ими пользоваться. Здесь существует масса вариантов, среди которых пользователь может выбрать наиболее удобный.

Откройте сайт, на которой вы хотите осуществить вход. Сделать это можно прямо из KeePassX, используя сочетание клавиш Ctrl + U или же через контекстное меню — пункт «Открыть URL». Можно просто ввести ссылку в браузере.

Далее, скопируйте имя пользователя сочетанием клавиш Ctrl + B или выберите в контекстном меню соответствующий пункт. Вставьте скопированные данные в поле логина на сайте. Ту же операцию повторите и с паролем, только здесь применяется сочетание Ctrl + C.

Еще один вариант — это использование автоввода. Для этого, откройте необходимый сайт в браузере или через Ctrl + U, после чего в контекстном меню KeePassX выберите пункт «Произвести автоввод» или же, выбрав нужную запись, нажмите сочетание Ctrl + V.

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

4. Группировка паролей

Когда количество используемых сайтов тяжело подсчитать на пальцах, целесообразно заранее группировать записи по тем или иным критериям. Для этого перейдите в пункт меню «Группы» и выберите «Добавить группу», после чего введите название категории и подтвердите все действия кнопкой «Ок».

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

5. Восстановление и экспорт хранилища

Пользователи KeePassX могут экспортировать любое хранилище в CSV-файл, который поддерживается многими другими программами, а также мобильными устройствами. Для этого перейдите в меню «Хранилище» и выберите пункт «Экспортировать в файл CSV». Импорт ранее сохраненной записи производится через то же меню, но выбирать нужно соответствующий пункт. Синхронизация KeePass с базой производится либо вручную, либо автоматически. В последнем случае необходимо зайти в настройки программы и выбрать для себя наиболее удобный вариант.

Выводы

В этой статье мы рассмотрели как пользоваться KeePass. Это удобное хранилище паролей, которое имеет функцию автоматического заполнения, а также возможность экспорта базы в отдельный файл. Все данные хранятся в зашифрованном виде прямо на вашем компьютере, а по необходимости их можно перемещать посредством съемного накопителя.

Ошибка add-apt-repository command not found

В репозиториях Debian и Ubuntu есть множество различных программ, которых будет достаточно для удовлетворения потребностей большинства пользователей. Но есть специфичные программы, которых пока что нет в репозиториях, также там нет новых версий программ. Поэтому достаточно часто в Ubuntu, Debian, Linux Mint и других системах используются репозитории PPA.

Обычно такие репозитории поддерживают либо разработчики программ, таким образом, там будет всегда новая версия, либо добровольцы, они добавляют программы, которых нет в официальных репозиториях. Но при попытке добавить репозиторий в систему может возникнуть ошибка add-apt-repository command not found. В этой небольшой статье мы разберем как ее исправить и почему она возникает.

Читать далее Ошибка add-apt-repository command not found

Настройка сети VirtualBox

Виртуальные машины VirtualBox очень часто используются для тестирования различного программного обеспечения и его взаимодействия между собой. Обычно, таким программам необходим доступ к интернету. Время от времени возникает необходимость протестировать работу программ по сети или даже создать небольшую тестовую лабораторию из виртуальных машин.

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

Виды сетевых адаптеров VirtualBox

Существует несколько способов как настроить сеть в VirtualBox, и каждый из них подходит лучше для решения одной задачи и меньше для другой. Рассмотрим основные:

  • NAT - этот способ используется по умолчанию. Для каждой машины создается отдельная внутренняя локальная сеть, в которой машина получает ip 10.10.0.1. Машина может связаться с интернетом, используя технологию NAT, и вы можете обратиться к машине, используя проброс портов VirtualBox, но если у вас будет две виртуальные машины, то вы уже не сможете между ними так взаимодействовать. И если из основной системы к гостевой можно обратиться, то к основной из гостевой уже никак не получится;
  • Виртуальный адаптер хоста - создается виртуальный сетевой адаптер, к которому можно подключить несколько виртуальных машин, тем самым объединив их в локальную сеть. Доступа к интернету нет, но зато машины находятся в одной сети и каждая имеет свой ip адрес, теперь они могут взаимодействовать между собой. Основная система тоже доступна по ip 192.168.56.1. Машины доступны не только между собой, но и из основной системы;
  • Сетевой мост - при таком подключении виртуальная машина становится полноценным членом локальной сети, к которой подключена основная система. Машина использует сетевой интерфейс чтобы получить адрес у роутера и становится доступна для других устройств, как и основной компьютер по своему ip адресу.
  • Внутренняя сеть - почти то же самое, что и виртуальный адаптер хоста, только без возможности доступа к виртуальной сети из основной системы, доступа к интернету нет.
  • Универсальный драйвер - позволяет использовать драйвер из расширений VirtualBox для связи между машинами, расположенными на разных физических хостах.

Теперь рассмотрим каждый вариант настройки более подробно.

Настройка сети Virtualbox

1. Настройка сети NAT

Здесь почти не о чем говорить. Получение доступа к сети через NAT включено по умолчанию. Проброс портов я рассматривал в отдельной статье. Но если вы раньше отключали сетевые адаптеры, то чтобы включить NAT обратно достаточно открыть настройки нужной машины:

Перейти на вкладку "Сеть":

Выбрать один из адаптеров. К виртуальной машине можно подключить несколько адаптеров и это очень удобно, так как вы можете комбинировать вместе адаптер виртуального хоста и NAT чтобы получить преимущества обоих режимов. Дальше вам нужно выбрать пункт "NAT" в списке "Тип подключения".

На вкладке "Дополнительно" вы можете настроить марку устройства адаптера и MAC адрес:

Если вы собираетесь устанавливать туда в Windows, то лучше будет работать Intel PRO/1000 MT Desktop, а для Linux можно оставить AMD PCNet FAST III, так как он поддерживается всеми операционными системами.

2. Настройка сети NAT

В версии Virtualbox, начиная с 4.3 была добавлена поддержка сетей NAT, это работает очень похоже на виртуальный адаптер хоста, все машины, подключенные к одной сети могут получить доступ друг к другу, а доступ в интернет выполняется через NAT, но основная система доступа к гостевым не имеет. Чтобы настроить такое подключение нужно сначала создать сеть NAT. Для этого откройте "Файл" -> "Настройки", "Сеть". Здесь перейдите на вкладку "Сети NAT". Дальше нажмите кнопку с зеленым плюсом, чтобы создать новую сеть:

Нажмите "Ok" и закройте это окно. Дальше откройте настройки для виртуальной машины, перейдите на вкладку "Сеть" -> "Адаптер 1":

Выберите "Тип подключения" - "Сеть NAT", а "Имя" - только что созданную сеть.

Теперь все машины, подключенные к этой сети, будут доступны друг другу, как в VMWare.

3. Настройка адаптера виртуального хоста

Теперь задача немного интереснее - нам нужна локальная сеть virtualbox между несколькими виртуальными машинами и хостом. Для того чтобы все это заработало в Linux, нам нужно чтобы были загружены модули ядра vboxnetadp и vboxnetflt:

lsmod | grep vbox

Возможно, для их правильной работы вам придется установить пакет net-tools. Дальше нужно создать сам виртуальный адаптер. Для этого откройте меню "Файл", затем "Настройки" -> "Сеть". Затем нажмите кнопку с зеленым значком плюс, а затем "Ok", все параметры можно оставить по умолчанию. В VirtualBox 5.2 и выше интерфейс был изменен. Теперь вам нужно открыть меню "Инструменты" -> "Менеджер сетей хоста":

Нажмите кнопку "Создать", затем, в появившемся адаптере, напротив пункта DHCP установите галочку "Включен".

Теперь вернитесь к списку виртуальных машин, зайдите в настройки машины, "Сеть":

Выберите "Тип подключения" - "Виртуальный адаптер хоста", а имя vboxnet0, тот, который вы создали раньше.

Для всех машин, которые вы хотите объединить в одну сеть нужно выбирать один и тот же адаптер хоста. Если вы захотите добавить машинам также доступ в интернет, просто перейдите на вкладку "Адаптер 2", включите его и настройте NAT, как описано в первом пункте.

4. Настройка сетевого моста VirtualBox

Режим сетевого моста позволяет виртуальной машине выступать в роли реального сетевого устройства с отдельным ip адресом. Чтобы это настроить откройте это же меню - настойки виртуальной машины, затем "Сеть". Здесь выберите "Тип подключения" - "Сетевой мост":

В поле "Имя" вам необходимо выбрать сетевой интерфейс, который будет использоваться для связи с внешним миром. Минус такого способа в том, что внешние компьютеры смогут получить доступ к виртуальной машине, а это не очень хорошо с точки зрения безопасности.

5. Внутренняя сеть VirtualBox

Режим внутренняя сеть Virtualbox похож на "Виртуальный адаптер хоста", за тем лишь исключением, что из хостовой системы доступа к гостевым не будет, и настроить все немного проще. Достаточно выбрать "Тип подключения" - "внутренняя сеть", а затем просто выбрать нужную сеть в поле "Имя", или создать новую, просто изменив имя текущей.

Как видите, существует тип подключения NAT - где только интернет, Мост - где машина становится членом внешней сети, а все остальные - это настройка виртуальной сети virtualbox, где машины могут видеть друг друга.

Выводы

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