как сделать файл исполняемым в linux через терминал
Это сработало для меня:
3 ответа
Вы можете пометить файл как исполняемый:
Затем вы можете запустить его следующим образом:
Если вы хотите использовать другую команду для его запуска, вы можете добавить псевдоним:
Добавьте это в конец файла:
Откройте новый сеанс терминала или введите source
Чтобы сделать его невыполняемым, выполните:
После того, как я напишу код в редакторе vi, я выйду из редактора vi:
Есть два способа сделать файл исполняемым:
Метод графического интерфейса:
Щелкните файл правой кнопкой мыши и выберите «Свойства». Перейдите на вкладку разрешений, затем установите флажок Выполнить: [] Разрешить выполнение файла как программу или в Nautilus Программа: [] Разрешить запуск этого файла как программу в Thunar. [] 1267] Терминал / Метод команды:
Вы можете использовать:
cd / to / my / required / directory
chmod + x filename.extension
Или просто запустите:
chmod + x /path/to/your/filename.extension
chmod также имеет несколько дополнительных параметров:
r означает чтение, w для записи и x для eXecute.
Таким образом, чтобы разрешить всем читать его, но только Группа для выполнения и Пользователь для чтения и записать его (но по какой-то причине не выполнить) будет:
chmod + rw-rx-r— / путь / к / файлу.расширение
chmod также может делать это в числах. Он основан на двоичном формате (я думаю, что это 1,2 и 4)
Итак, вот эти числа:
Затем вы складываете их вместе, чтобы получить желаемую комбинацию.
Таким образом, чтобы разрешить всем читать его, но только Группа для выполнения и Пользователь для записи (но для по какой-то причине не выполняется) будет:
400 + 040 + 004 и 010 и 200
В сумме получается 600 + 050 + 004 = 654.
Затем вы можете запустить команду.
И чтобы установить все разрешения, вы можете ввести:
chmod + rwxrwxrwx / path / to /file.extension
или (это немного проще написать, но сложнее запомнить каждый):
chmod +777 /path/to/file.extension
Наконец, вы можете сделать:
Отобрать все разрешения у всех.
chmod +300 /path/to/file.extension
Чтобы добавить чтение и запись для пользователя, не влияя на другие разрешения (например, разрешения на выполнение).
На этом веб-сайте есть очень полезный маленький флажок сетки, при этом вы можете отметить нужные вам опции, и вы получите команду:
Однако не все возможные комбинации целесообразно использовать; используются следующие основные:
И, если вы используете нетривиальные группы пользователей:
777 и 666 используются редко, за исключением /tmp.
. Спасибо Илмари Каронен за указание на общие использование!
Как сделать файл исполняемым в Astra Linux и запустить его?
Друзья, приветствую! Продолжаем решать практические задачи на примере Astra Linux CE Орел. При скачивании игры (или какого либо полезного софта) мы иногда получаем файлы-сценарии, которые для запуска сначала нужно сделать исполняемыми.
В Windows мы привыкли, что файлы программ (или программы инсталляторы) уже являются исполняемыми. Определить это можно по их названию (setup, install) или расширению *.exe, *.com или *.bat.
В линуксе механизм другой. Возможность запуска файла определяется не расширением — а разрешением полномочий. Проще говоря, по умолчанию Linux «разрешает» только читать и копировать файл. А исполнять нет.
Устанавливается (или убирается) соответствующий флаг в свойствах файла и операционная система ведет себя соответственно.
В разрезе пользователей (и групп) можно выставить права на чтение, запись, исполнение конкретного файла. И тогда его можно будет запустить как программу. Такова идеология Linux.
Как сделать файл исполняем в Astra Linux через менеджер файлов?
Все это может показаться сложным, но на самом деле, все просто. В Linux Astra установлен дружественный графический интерфейс, есть встроенный графический менеджер — проводник.
И сделать нужный файл исполняемым у Вас получится легко, быстро, привычно. Для примера скачал игру Kerbal Space Programm и сейчас мы подготовим ее файлы на Linux Astra CE.
Сначала правой кнопкой мыши откроем свойства нужного файла, открыв его расположение через файловый менеджер:
Как сделать исполняемый файл в Astra Linux через терминал Fly?
Навыками работы с терминалом необходимо владеть. Все, что мы сделали в графике, можно повторить через консоль Fly. Команда CHMOD позволяет менять права доступа к файлам и каталогам в Linux.
Синтаксис ее обширен и позволяет вносить изменения двумя способами — буквенном или числовым обозначением прав.
В нашем случае удобнее и быстрее использовать числовой способ. Важно помнить, что права на каталог или файл назначаются в разрезе пользователей и групп. А числовые обозначения прав (чтение, запись, исполнение) выглядят так:
Синтаксис команды будет следующим, если мы даем всем пользователям полные права (чтение, запись, исполнение):
CHMOD 777 kerbal_space_program_russian_1_9_0_02781_36048.sh
В терминале нужно еще добраться до папки с игрой. Предлагаю попрактиковаться и попутно изучить две полезные команды терминала, без которых трудно в Линуксе. Посмотрите видео, операция занимает минуту (когда набита рука) :
Запускаем терминал Fly. В моем случае игра лежит в папке game на на первом рабочем столе. И в терминале я прописываю команду:
Приглашение показывает, что я внутри. Естественно, не помню, как называется следующая папка и файл. Чтобы узнать — ввожу следующую команду:
Получаю на экране наименование следующей папки (KerbalSpace); копирую его в буфер обмена ( Ctrl+Ins ). Нажимаю ↑ на клавиатуре, пока не добираюсь до команды:
CD / home/superuser/Desktops/Desktop1/game/ вставляю наименование из буфера в конец строки через знак / ( Shift+Ins )
Обратите внимание, файл который мы уже сделали исполняемым через графический файловый менеджер зеленого цвета. Сейчас мы дадим права на исполнение файлу который выше, это другая часть той же игры.
Копируем имя файла в буфер обмена (чтобы руками не набирать) и в итоге получилась вот такая команда:
chmod 777 kerbal_space_program_making_history_dlc_russian_1_9_0_02781_36048.sh
Далее, не выходя из терминала можно установить игру. Для этого набираем команду:
sudo apt install «имя файла» (без кавычек)
Или в менеджере файлов запускаем его на исполнение привычным способом. У меня всё, пока!
Как сделать файл исполняемым в Linux
Операционная система Linux, в отличие от Windows, определяет какие файлы являются программами не по расширению, а по специальному флагу исполняемости. У каждого файла есть три основных флага, чтение, запись и исполнение. Они определяют что система может делать с этим файлом.
Что такое исполняемость?
Уже много написано о том, как установить флаг исполняемости. Но что происходит с файлом во время этого, что такое исполянемость и как это работает?
Как сделать файл исполняемым в Linux?
В операционной системе Linux, для управления флагами файлов используется утилита chmod. Синтаксис вызова утилиты:
$ chmod категория действие флаг адрес_файла
Например, чтобы сделать исполняемый скрипт в linux для владельца файла, достаточно выполнить:
chmod u+x адрес_файла
Этого в большинстве случаев бывает достаточно, но если мы хотим чтобы файл могли выполнять и другие пользователи, нужно указать также другие категории: g и o:
chmod ugo+x адрес_файла
Посмотреть флаги в терминале можно с помощью утилиты ls:
Снять флаг исполняемого файла очень просто. Используется та же команда только со знаком минус:
chmod u-x адрес_файла
Как установить фалг исполняемости в GUI
Вы можете сделать файл исполняемым в linux не только через терминал. Такая функциональность есть во всех файловых менеджерах. Возможно, на первых порах это будет для вас проще. Рассмотрим на примере файлового менеджера GNOME, Nautilus. Кликните правой кнопкой по нашему файлу программы или скрипта, чтобы открыть контекстное меню, затем выберите свойства:
Дальше перейдите на вкладку права и установите галочку Разрешить выполнение файла как программы:
Готово, исполняемый файл linux может быть запущен системой, прямо из файлового менеджера.
Выводы
Вот и все, теперь вы знаете как сделать файл исполняемым в linux. И если нужно будет запустить скрипт или установщик из интернета, у вас не возникнет никаких проблем. Если остались вопросы, спрашивайте в комментариях!
Как в Linux сделать файл исполняемым?
Весьма часто в инструкциях по установке игр в Linux или в других ситуациях необходимо сделать файл выполняемым. У новичков, особенно тех кто перешёл на Ubuntu с операционной системы Windows этот момент возбуждает много вопросов. Давайте разберёмся в тонкостях и посмотрим как сделать всё правильно. Для начала чуть-чуть теории. в Windows, исторически ещё со времён DOS, было реализовано определение исполняемых файлов по их продолжению.
В Linux и других unix системах ситуация иная. Здесь расширение файлов как таковые отсутствуют, т.е. безусловно вы можете в имени файла использовать точку и три буквы в качестве расширения, но только из собственных эстетических соображений. Для операционной системы это не будет иметь никакого значения. Ну и главный вопрос как же операторная система определяет какой файл исполняемый, является программой, а какой нет. Всё очень элементарно — это устанавливается одним из битов прав на файл.
Исполняемые файлы в Linux
В вопросах исполняемых файлов, то есть, когда по простому, обычных программ, Ubuntu кардинально отличается от Windows. В Windows исполняемые компданные имеют расширение exe (в основном), а внутри представляют из себя нечитаемый набор байтов. А в Ubuntu выполняемым может быть даже текстовый файл. Сразу скажу, что exe — это программы для Windows и в Ubuntu они не трудятся без Wine (приложения для запуска исполняемых файлов Windows в Linux), но вообще говоря и в Wine они трудятся далеко не всегда.
Итак, что же такое исполняемый файл с точки зрения Ubuntu? Практически это любой файл, который помечен, как исполняемый и который Ubuntu сможет запустить на исполнение. Означает это вот что: у каждого файла есть специальное свойство-переключатель, никак не зависящее ни от имени, ни от охватываемого, отвечающее за исполняемость. Если файл помечен, как исполняемый, то вообще говоря он таковым и представляется, а если не помечен — то это обычный файл с данными и напрямую запустить его на выполнение нельзя. Иное дело, что не любой файл, помеченный как исполняемый, Ubuntu сможет выполнить, хотя в запасе Ubuntu есть масса методов запуска файлов с совершенно различным содержимым.
Характерные черты исполняемых файлов в Linux
Пользователи, активно применяющие в повседневной работе операционную систему Windows, свыкнули к тому, что программы имеют расширение «.exe». Такие файлы содержат скомпилированный программный код, или иными словами – последовательность байтов, которая загружается в оперативную память и выполняется процессором. Linux реализует асбсолютно другой подход. Ранее, изучая написание скриптов командного интерпретатора Bash, мы уже поспели рассмотреть пример создания исполняемого файла. Он в отличие от Windows представляет собой обыкновенный текстовый документ с набором команд. Его особенностью является то, что перед основным содержимым дополняется специальный комментарий, говорящий операционной системе Linux, какую программу использовать для интерпретации. Кроме скрипта, исполняемым файлом является и скомпилированная программа. Таким образом, все файлы в Linux смогут быть, как обычными текстовыми документами, так и исполняемыми программами. Отличие лишь в специальных флагах и преимуществах доступа операционной системы (множество элементов, находящихся в отношениях и связях друг с другом, которое образует определённую целостность, единство).
Назначение прав для запуска файла в Linux
Сделать файл вразумительным для запуска можно с помощью графической оболочки. Нажмите по ярлыку правой кнопкой мыши. В контекстуальном меню выберите пункт «свойства». Открывшееся окно должно содержать вкладку «преимущества», в котором нужно активировать пункт «разрешить выполнение файла как программы». Данный метод будет отличаться в зависимости от дистрибутива Linux и графической оболочки. Также возможно приставить права запуска через консоль. Для этого используется команда chmod. Пример, презентованый ниже, устанавливает право выполнения для владельца файла и его группы. Вы можете скопировать Bash-скрипт из первоначального примера в файл и провести с ним данную операцию.
chmod ug+x games-dialog
Установка прав на пуск в Linux
Для того чтобы сделать файл исполняемым в Ubuntu Linux необходимо осуществить в окне терминала простую команду:
sudo chmod +x имя_файла
Вот и все, сейчас вы знаете как сделать файл исполняемым в Linux. И если нужно будет запустить script или установщик из интернета, у вас не возникнет никаких проблем. Если остались вопросы, спрашивайте в комментах!
Делаем файл исполняемым в Linux
Чем отличается Linux от Windows в плане исполнений файлов, так это тем, что первая система определяет выполняемые файлы программными не по расширению, а по специальному флагу исполняемости. Так у каждого файла есть три режима исполняемости: чтение, исполнение и запись. Именно эти режима определяют, что система может делать с конкретным файлом. Когда пользователь скачивает различные установщики из интернета или создает скрипт, то по умолчанию ему присваиваются следующие режимы – чтение и запись. Одним словом, пользователь не сможет сделать с такой программой ничего, так как с ним нужно сделать кое-что еще.
Что означает исполняемость?
Но для начала не будет лишним разобраться с таким вопросом, как: что такое исполняемость и что это вообще означает? Начнем с программы, являющейся набором инструкций, выполняемых процессором над совокупностью данных с целью получения нужного результата. Для процессора не существует разницы между инструкциями и данными.
И первые, и вторые состоят из цифр – байт. То есть, определенное сочетание цифр будет означать для процессора необходимость выполнения конкретного действия. Для процессора нет принципиальной разницы, какой процесс выполнять – файл операционной системы или текстовый файл. И первый, и второй файл будут выполнены, вот только в случае с текстовым файлом необходимость в инструкциях фактически отпадает.
Как сделать файл исполняемым
В системе Linux предусмотрена специальная утилита, которая позволяет управлять флагами файлов, которая получила название chmod. Для вызова этой утилиты необходимо задействовать синтаксис:
$ chmod категория действие флаг адрес_файла
И здесь необходимо учитывать следующее:
Таким образом, чтобы сделать исполняемым скрипт в Linux, пользователю необходимо выполнить:
Зачастую уже этого достаточно, чтобы сделать файл исполняемым, но если необходимо наделить других пользователей полномочиями исполнять эти файлы, еще необходимо добавить:
Чтобы посмотреть флаги в терминале достаточно воспользоваться утилитой ls:
Снять флаг исполняемого файла очень просто. Используется та же команда только со знаком минус:
Дальше рассмотрим вопрос установки управляемости в GUI.
Как установить флаг исполняемости в GUI
Установка файлов исполняемости доступна не только через терминал, но и файловые менеджеры, одним из которых является GUI. Для новичков, возможно, даже эта инструкция окажется проще и доступней. Рассмотрим на примере файлового менеджера GNOME, Nautilus. Кликните правой кнопкой по нашему файлу программы или скрипта, чтобы открыть контекстное меню, затем выберите свойства:
Переходим на вкладку права и устанавливаем галочку «Разрешить выполнение файла как программы»:
Теперь файл будет запущен системой непосредственно из файлового менеджера. Вот и вся инструкция. Теперь с запуском программы или скрипта из интернета у вас не возникнет трудностей.