Очень часто в инструкциях по установке игр в Linux или в других ситуациях необходимо сделать файл исполняемым. У новичков, особенно тех кто перешёл на Ubuntu с операционной системы Windows этот момент вызывает много вопросов. Давайте разберёмся в тонкостях и посмотрим как сделать всё правильно.
Рекомендуется к изучению: Как приобретать игры в Steam из России в условиях ограничений
Как определяется исполняемый файл linux
Для начала немного теории. В Windows, исторически ещё со времён DOS, было реализовано определение исполняемых файлов по их расширению. Например расширения .exe, .com, .bat говорили операционной системе, что эти файлы являются исполняемыми. В Linux и прочих unix системах ситуация иная. Здесь расширение файлов как таковые отсутствуют, т.е. конечно вы можете в имени файла использовать точку и три буквы в качестве расширения, но только из своих эстетических соображений. Для операционной системы это не будет иметь никакого значения.
Ну и главный вопрос как же операционная система определяет какой файл исполняемый, является программой, а какой нет. Всё очень просто — это устанавливается одним из битов прав на файл. Как и права на чтение и запись права на запуск файла так же могут быть назначены трём группам пользователей:
- владельцу файла;
- группе файла;
- всем остальным пользователям.
Таким образом, чтобы сделать файл исполняемым в Linux нужно назначить ему права на запуск в качестве программы. Далее операционная система определяет тип файла по заголовку и в зависимости от того какого типа заголовок файла происходит запуск соответствующего процесса. Например если исполняемый файл является двоичным кодом программы то он выполняется операционной системой, а если это скрипт bash или python, то запускается соответствующий интерпретатор и ему передаётся содердержимое файла на выполнение.
Установка прав на запуск файла в консоли Linux
Для того чтобы сделать файл исполняемым в Ubuntu Linux необходимо выполнить в окне терминала простую команду:
chmod +x имя_файла
или
sudo chmod +x имя_файла
Эта команда установит права на исполнение для всех пользователей.
Например:
$ls -la итого 8 drwxrwxr-x 2 dkplayer dkplayer 4096 окт. 30 21:57 . drwxr-xr-x 24 dkplayer dkplayer 4096 окт. 30 21:57 .. -rw-rw-r-- 1 dkplayer dkplayer 0 окт. 30 21:57 test1 $chmod +x test1 $ls -la итого 8 drwxrwxr-x 2 dkplayer dkplayer 4096 окт. 30 21:57 . drwxr-xr-x 24 dkplayer dkplayer 4096 окт. 30 21:57 .. -rwxrwxr-x 1 dkplayer dkplayer 0 окт. 30 21:57 test1
Сделать файл исполняемым в Ubuntu
Сделать аналогичное в графическом интерфейсе можно кликнув правой кнопкой по имени файла и выбрав пункт свойства:
Затем на вкладке права необходимо поставить галку «Разрешить выполнение файла как программы»
На этом процедура закончена и вы можете сразу запустить файл на исполнение дважды кликнув по нему левой клавишей мыши или выполнив в окне терминала команду (находясь в папке с исполняемым файлом):
./имя_файла
Сделать файл исполняемым в KDE
В KDE сделать файл исполняемым так же просто как и в Gnome или XFCE, достаточно просто кликнуть правой кнопкой мыши по файлу и выбрать в контекстном меню пункт свойства.
Затем в свойствах на вкладке права необходимо установить галочку в поле «Является выполняемым». И нажав кнопку «ОК» применить права к файлу.
Заключение
Теперь вы знаете что такое в Linux исполняемый файл и как сделать файл исполняемым в Linux с помощью консольной команды или графического интерфейса. В инструкции мы рассмотрели установку бита на выполнение с использованием рабочего стола Ubuntu, однако в Linux бывают разные графические среды и в этих средах методы установки прав доступа и прав на выполнения могут немного отличаться. А вот способ как сделать файл исполняемым с помощью консольной команды универсален для всех дистрибутивов Linux и в большинстве других unix-подобных системах.
красавчик!
использовал в ubuntu 16.04 для запуска *.run