Вы должны сделать файл исполняемым с помощью, например,
chmod +x VBoxLinuxAdditions.run
а затем запустить его. Если после этого вы снова проверите ls -l
, вы увидите, что для "исполняемого файла" будет установлен флаг x
.
Краткое резюме из Википедии:
В Unix-подобных системах есть три конкретных разрешения, которые применяются к каждому классу:
Разрешение на чтение , которое дает возможность читать файл. Когда установлено для каталога, это разрешение предоставляет возможность читать имена файлов в каталоге (но не узнавать дополнительную информацию о них, такую как содержимое, тип файла, размер, владение, разрешения и т.д.)
Разрешение на запись , которое дает возможность изменять файл. Когда установлено для каталога, это разрешение дает возможность изменять записи в каталоге. Это включает в себя создание файлов, удаление файлов и переименование файлов.
Разрешение на выполнение , которое дает возможность выполнить файл. Это разрешение должно быть установлено для исполняемых двоичных файлов (например, скомпилированной программы C++) или сценариев оболочки (например, программы Perl), чтобы операционная система могла их запускать. Когда установлено для каталога, это разрешение предоставляет возможность доступа к содержимому файла и metainfo, если известно его имя, но не к списку файлов внутри каталога (если не установлено чтение).
Редактировать: как отмечено в комментарии ниже (или в оригинальном сообщении, если замечен путь /media/cdrom0/
), файл находился на носителе только для чтения. Либо полную структуру можно скопировать на записываемый носитель и изменить разрешения, либо можно запустить их прямо с диска с помощью явного интерпретатора, такого как
sh VBoxLinuxAdditions.run
или же
bash VBoxLinuxAdditions.run
Если ни один из этих переводчиков не работает, можно проверить предполагаемого переводчика, например,
head -1 VBoxLinuxAdditions.run
но это, скорее всего, обычный сценарий оболочки.