Как запустить файл rb в ubuntu

Обновлено: 04.07.2024

Я недавно скачал пакет с расширением .bundle. это VMware-Player-6.0.3-1895310.x86_64.bundle . Я хочу установить vmware-player , но когда я открываю это, он открывается с помощью текстового редактора.

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

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

Запустите файл. Скорее всего, вам понадобятся привилегии root для установки VMWare, но это не всегда так. Итак, в этом случае:

Спасибо! Вздох. Если бы VMware только сказал об этом на своей странице загрузки . Также вы можете sudo /bin/sh VMware-Player-6.0.3-1895310.x86_64.bundle Разве это не должно быть chmod u+x «chmod a + x»? Не следует поощрять новых пользователей создавать что-то глобально исполняемое. Как бежать sudo от дельфина? если я щелкну правой кнопкой мыши по файлу - нет опции «Запуск от имени пользователя» (Запуск от имени администратора). Как установить VMWare без использования оболочки?

Как узнать, что это за файл?

Эти .bundle файлы для VMware Player, Workstation, и других продуктов, на самом деле сценарии оболочки, с внедренными двоичными данными. Вы можете обнаружить или проверить это с помощью file утилиты, которая удобна для выяснения, что это за файл (вероятно):

Как использовать файл, основываясь на этой информации?

Вы можете сделать его исполняемым с помощью chmod , а затем запустить его:

(Если это единственный .bundle файл в вашем текущем каталоге, вы можете просто использовать chmod +x *.bundle и ./*.bundle . Или введите первые несколько символов имени файла и нажмите Tab , и оболочка напечатает остальное для вас .)

Почему sudo ?

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

Почему sudo здесь все в порядке, когда установщик является графическим?

Установщики продуктов VMware являются графическими (по крайней мере, для части установки). Хотя обычно рекомендуется избегать запуска графической программы с (предпочитая или ), в этом случае все должно быть хорошо: sudo program gksudo program sudo -H program

  • Установщик VMware Player и исполняемые установщики в целом вряд ли будут пытаться записать файлы конфигурации в домашний каталог пользователя, который их запускает.
  • И даже если бы они это сделали, файлы конфигурации были бы связаны с самим установщиком - они не помешали бы нормальному запуску программ пользователем с ограниченными правами, потому что вы вряд ли захотите запускать такой установщик как пользователь без полномочий root.
Это варьируется для разных файлов комплекта. В Trusty file Downloads/VMw* говорится , что VMware-Player-7.0.0-2305329.x86_64.bundle: data вместо этого вы можете увидеть, с чего файл начинается через `cat -vt

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

Программы обычно распространяются в упакованных архивах, это файлы с расширениями

Нужно понимать отличие между архиватором и упаковщиком.

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

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

Программа tar умеет распаковывать, поэтому не нужно вызывать gunzip, а можно просто указать программе tar, что файл нужно cначала распаковать. Например, команда

сразу распакует и разархивирует. Отличие файлов с расширениями

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

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

Для сборки программ в GNU/Linux используется (в основном) программа make, которая запускает инструкции из Makefile, но поскольку дистрибутивов GNU/Linux много, и они все разные, то для того чтобы собрать программу, нужно для каждого дистрибутива отдельно прописывать пути,где какие лежат библиотеки и заголовочные файлы. Программисты не могут изучать каждый дистрибутив и для каждого отдельно создавать Makefile. Поэтому придумали конфигураторы, которые «изучают» систему, и в соответствии с полученными знаниями создают Makefile. Но на конфигураторе они не остановились и придумали конфигураторы конфигураторов …на этом они остановились

Для сборки нам нужны компиляторы: они прописаны в зависимостях пакета build-essential, так что достаточно установить его со всеми зависимостями. Ещё нужны autoconf и automake.

Итак, чтобы собрать что-то из исходников, нужно сначала собрать конфигуратор; как собрать конфигуратор, описано в файле configure.in. Для сборки конфигуратора необходимо выполнить

Если таких скриптов в архиве не оказалось, то можно выполнить последовательно следующие команды:

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

Конфигуратор построит Makefile основываясь на полученных знаниях и файле makefile.am. Можно передать конфигуратору опции, предусмотренные в исходниках программы, которые позволяют включать/отключать те или иные возможности программы, обычно узнать о них можно командой

Также есть набор стандартных опций, вроде

, которая указывает, какой каталог использовать для установки. Для Ubuntu обычно

БЕЗ слеша в конце! Теперь можно запустить процесс сборки самой программы командой

Для сборки достаточно привелегий обычного пользователя. Окончанием сборки можно считать момент, когда команды в консоли перестанут «беспорядочно» выполняться и не будет слова error. Теперь всё скомпилировано и готово для установки.

Усилия потраченные на Правильную установку в последствии с лихвой окупятся в случае удаления или обновления устанавливаемого программного обеспечения.

Правильная установка(Вариант №1)

Установка при помощи утилиты checkinstall. Для установки выполните

Минус данного способа: checkinstall понимает не все исходники, поскольку автор программы может написать особые скрипты по установке и checkinstall их не поймёт.

Для создания и установки deb-пакета необходимо выполнить

Правильная установка(Вариант №2)

Быстрое создание deb-пакета «вручную».

Основное отличие от предыдущего способа заключается в том, что в данном случае вы создаете пакет вручную и отслеживаете все вносимые изменения. Так же этот способ подойдет вам, если исходники не поддерживают сборку пакета с checkinstall. Производим установку во временную директорию, где получаем весь набор устанавливаемых файлов: Создадим в «корне пакета» директорию DEBIAN и сложим в DEBIAN/conffiles список всех файлов, которые должны попасть в /etc: После чего создаём файл DEBIAN/control следующего содержания: При необходимости там же можно создать скрипты preinst, postinst, prerm и postrm. Получаем на выходе tempinstall.deb, который и устанавливаем

Установка (вариант №3)

Процедура создания deb-пакета подробно описана в данной статье.

Неправильная установка

Минус данного способа заключается в том, что если вы устанавливаете напрямую через make install, то нормально удалить или обновить пакет вы, скорее всего, не сможете. Более того, установка новой версии поверх старой, скорее всего, затрёт ваши изменения в конфигах. make install делает ровно то, что ему сказано — производит установку файлов в нужные места, игнорируя тот факт, что там что-то уже есть. После этого процесса совершенно никакой информации о том, что и куда ставилось, получить в удобоваримом виде невозможно. Иногда, конечно, Makefile поддерживает действие uninstall, но это встречается не так часто, да и не факт, что корректно работает. Кроме того, вам будет необходимо хранить для деинсталяции распакованное дерево исходников и правил сборки.

Для установки необходимо выполнить

Для удаления пакета, установленного данным способом необходимо выполнить в корневой директории исходников программы (там где вы запускали make install).

Пакеты с буквами mm в конце описания — это пакеты для C++ программ. Список для bmpx, но подойдёт почти для любой GTK2/Gnome программы. Так что если не получается собрать, то посмотрите на этот список и сверьте с тем что у вас установлено.


На момент написание этого поста за окном март 2015 года. Уже появляются такие технологии как Oculus Rift, шлем виртуальной реальности. Но консоль по прежнему остается одним самых эффективных интерфейсов для работы с нашей системой. Если вы еще не освоили ее, то это отлично, потому что вам не составит труда сделать это!
Вы сможете погрузится в мир Ubuntu (любого дистрибутива linux) узнать много нового, но если вы хорошо знакомы с UNIX подобными системами, то все равно советую просмотреть эту статью, вдруг найдете для себе что-нибудь новое и интересное.

Основы консоли ubuntu для ruby кодинга

Хотелось сказать еще о фактах в пользу консоли, что ее популярность не падает и по сей день. Об этом говорит тот факт, что именно в Windows 10 добавят такие плюшки:
Как новая версия Powershell, которую наконец то появится пакетный менеджер, что позволит скачивать нужную программу, в одну простую команду. Также возможность и сразу установить программу без кликов по рекламным формочкам, которые так страстно желают нам подсунуть тот или иной яндексбар.

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

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

Основные команды консоли.
Права доступа.
Дополнительные настройки.

Архитектура расположения системных директорий любого дистрибутива linux сильно отличается от Windows. Но здесь все очень упорядочено. Корневая директория / и все лежит в ней.
Например в /etc лежат все конфигурационные файлы нашей системы и некоторых программ.
В /bin и /sbin попадают все приложения.

Но большую часть времени мы будем проводить в домашней директории /home/имя_пользователя/
Сюда будет сохранятся все, с чем мы будем взаимодействовать, от различных gem'ов до конфигурационных настроек приложений которые использует пользователь. Важный момент, что если удалить приложение, то его настройки сохранятся. Много раз спасало при восстановлении системы.

По умолчанию в Ubuntu нельзя создавать пользователя root в правилах безопасности. (Конечно нет нечего не возможного :D и это более символический запрет, но без особой причины не рекомендую его нарушать) поэтому мы будем повышать нашего пользователя до прав администратора когда нам без этого не обойтись. Этим и занимается утилитка sudo.

И так перейдем в консоль/терминал нашей системы.

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

Для постоянной работы я использую этот список команд каждый день и без них не обойтись.

Это имя моего пользователя @ хост. А

$ указывает, что это обычный user а не root.

pwd — Возвращает в каком каталоге мы находимся,

ls -a - Покажет какие файлы лежат в этом каталоге

ls -al - Покажет список файлов и права на их использование

программа одна, а ключи разные.

cd — это программа позволяет ходить по директориям вперед и назад.
При использовании укажем директорию куда идем.

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

Также ввести в консоль повторно программу можно сделать на стрелочке (вверх) а не набирать ее снова.

Вернуться на директорию назад поможет cd и две точки.

Открытие всех конфигурационных текстовых файлов поможет программа например nano или vim

Для просмотра файла, без его редактирование достаточно использовать cat

Основы консоли ubuntu для ruby кодинга

Права доступа

Основным моментом является что у каждой директории или файла есть права доступа.
Вам нужно обязательно разобраться с ними, в этом нет нечего сложного.
За изменение прав отвечает команда chmod (от слова change mod)
Но для начала посмотрим как узнать какие права уже стоят у нашего обьекта)

Нужно перейти в нужную директорию и выполнить:

Основы консоли ubuntu для ruby кодинга

Слева и написаны наши права. Первый символ бывает либо d(директория), либо — это файл

Далее идет 3 группы по rwx
r -Это от слова read
w - Это от слова write
x - execute (запуск)

Первые 3(rwx) это для текущего пользователя
Вторые 3(rwx) это для группы пользователей
Третьи 3(rwx) это для остальных пользователей

Важно, где прочерк вместо символа, это значит что данный тип прав отсутствует.

Чтобы изменить права доступа используется команда chmod права путь_до_файла

Основы консоли ubuntu для ruby кодинга

Также интересный момент чтобы изенить права сразу у вложенных файлов в директории, понадобится использовать рекурсию (т.е ключ -R)

С помощью прав доступа любой руби скрипт, можно сделать запускаемым.
Для это нужно будет добавить к правам на скрипт +x (т.е запуск)
Предположим у нас в домашней директории лежит файл start.rb

Для его обычного бы запуска потребовалось

Но если добавить ее, в права запуск

То можно будет запустить так

Дополнительные настройки
Обязательно в настройках вашей системы, где настройка клавиатуры, настройте горячие клавиши на все программы, которые используете каждый день. Удобно кликнуть комбинацию на клавиатуре и не тянуться искать на рабочем столе или в выпадающем меню.
Очень удобно настраивать используя комбинацию alt + (любой символ)

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

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

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

3. После того, как мы выбрали уже конкретную программу — можно приступать к ее поиску. Открываем Synaptic и с помощью поисковой формы пытаемся найти нужное приложение. Вместе с ним мы можем обнаружить множество расширений и дополнительных модулей. Ставим все что надо — это лучший вариант. Приложения в репозиториях обычно протестированы и работоспособны.

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

1. Находим официальный сайт приложения и пытаемся найти там .deb пакет (У нас Ubuntu Linux — у него пакетная система основана на deb формате). Если такой пакет есть на официальном сайте, то скачиваем его и устанавливаем.

2. Если .deb пакета нет на официальном сайте, то ищем его в поисковой системе (помимо автора, другие люди могли для удобства собрать deb-пакет для приложения). Запрос может выглядеть так: «xneur deb» или «gimp deb».

3. Если нам не повезло и программа настолько редкая, что deb-пакета для нее нет, то смотрим в каком виде она вообще распространяется.

Установка приложения из tar.gz

Часто приложения распространяются в архивах tar.gz. Этот формат не так удобен в Ubuntu, так как это не пакет, а просто архив, в котором могут быть как исходные коды, так и скомпилированные приложения и библиотеки.

Установка из tar.gz:

1. Распаковываем архив в отдельную директорию.

2. Если есть исполняемый файл — запускаем и пользуемся, если нет — читаем раздел «Компиляция».

Установка приложения из SVN

SVN — Subversion. Это система контроля версий кода, в которых хранится исходный код приложений, особенно Open Source.

1. Создаем директорию для нашего приложения.

2. Открываем терминал в директории (cd 'путь/к/директории');

3. Скачиваем исходные коды:

svn co (SVN-адрес)

4. Читаем раздел «Компиляция».

Установка приложения из CVS

CVS — Concurrent Versions System. Это также система контроля версий кода.

1. Создаем директорию для нашего приложения.

2. Открываем терминал в директории (cd 'путь/к/директории');

3. Скачиваем исходные коды:

cvs -z3 -d (CVS-адрес) co ./

4. Читаем раздел «Компиляция».

Установка приложения из RPM

rpm-пакеты не родные для Ubuntu. Существует утилита alien, с помощью которой можно установить как обычные (sudo apt-get install alien). С ее помощью можно переконвертировать rpm-пакет в deb-пакет. Очень проста в использовании:

И в директории с rpm-пакетом появится deb-пакет. А его мы уже без труда установим.

Компиляция

1. Открываем терминал в директории с нашим приложением (cd 'путь/к/директории');

2. Смотрим информацию о конфигурировании приложения:

Смотрим вывод и решаем с какими параметрами надо конфигурировать. Если эта команда выдает ошибку — значит конфигуратора нет. Если конфигуратор присутствует — конфигурируем:

Можно эту команду выполнить без аргументов — будет стандартная конфигурация.

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

3. Компилируем приложение:

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

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

Если приложения требует инсталляции, то выполняем (понадобятся права администратора — вспоминаем команду sudo):

Эта команда скопирует файлы приложения в необходимые системные директории.

5. Пользуемся приложением.

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

Читайте также: