Linux выбрать программу для открытия файла
Начинающим пользователям Ubuntu зачастую нелегко привыкнуть к некоторой специфике обращения с файлами в этой системе. Однако на самом деле всё крайне просто и очень элегантно, в этой статье я постараюсь объяснить все тонкости, чтобы потом при использовании системы вы не удивлялись некоторым непонятным с первого взгляда вещам.
Названия файлов и папок
Я уже упоминал, что в Linux все имена файлов являются регистрозависимыми, то есть вы спокойно можете создать в одном каталоге два файла с одинаковыми именами, но записанными в различных регистрах, например, Ubuntu.txt и ubuntu.txt.
Кроме того, я так же говорил, что вы можете использовать в именах файлов абсолютно любые символы, которые пожелаете, кроме прямого слеша / 1) , однако в силу некоторых причин я бы не рекомендовал использовать следующие символы: \ < >* , а также символы переноса строки и табуляции. Вы можете подписывать свои файлы китайскими иероглифами, рунами, греческими буквами и вообще чем угодно, если вам конечно будет удобно использовать такие имена 2) .
Ну и напоследок ещё раз напомню, что разделителем каталогов в пути к файлу в Linux всегда является символ / , в отличие от Windows, в которой используется \ .
Доступ к файлам
В предыдущей статье я уже рассказал про права доступа к файлам, поэтому лишь кратко напомню: в Linux можно с помощью механизма разграничения прав ограничить доступ к файлу на редактирование или же просто полностью запретить доступ к содержимому. Например, все системные конфигурационные файлы закрыты для редактирования обычному пользователю, если вы попытаетесь сохранить какие-нибудь изменения в такой файл, Ubuntu вам скажет, что у вас не хватает на это прав. Некоторые же файлы вы даже не сможете открыть и посмотреть их содержимое. Если вы до сих пор не знаете, как это обойти, внимательно прочитайте предыдущую статью.
Содержимое и расширение файлов
Если вы пользовались раньше операционными системами Windows, то вы скорее всего привыкли к тому, что тип файла определяется его расширением (последняя часть имени файла после точки). Например, файл «Голубой ледопад.mp3» - это музыка в формате mp3 3) , а «Урания.txt» - это текстовый файл 4) . На самом деле всё немного не так, расширение - это всего лишь часть имени файла, которое никак не зависит от собственно содержимого, и тип файла обычно определяется по-другому 5) . Например, перейдите в Ubuntu в какую-нибудь папку с mp3 файлами и переключитесь на режим отображения списком 6) . В колонке «Тип» рядом с mp3 файлами вы увидите «аудио MP3 »:
Теперь переименуйте любой файл, приписав ему вместо mp3 расширение ?? .
Видите, тип файла не изменился. Если вы сейчас попробуете открыть такой файл, то он преспокойно откроется как mp3 в проигрывателе 7) .
Конечно расширение нужно, мало того, Ubuntu полагается в первую очередь именно на него, то есть если вы переименуете mp3 файл, добавив к нему расширение txt , то Ubuntu будет считать такой файл текстовым. Однако то, что Ubuntu умеет смотреть не только на имя файла, спасает от многих проблем. Поэтому не удивляйтесь, когда встретите в Ubuntu файлы вообще без расширения, с которыми система преспокойно работает, ничего при этом не спрашивая.
Кстати, в Ubuntu есть мощная утилита определения типа файла, которая вообще не смотрит на имя и расширение, а пытается идентифицировать файл только по содержимому. Она бывает полезна, когда файл по каким-либо причинам не открывается, поскольку позволяет убедиться, что в нём содержаться данные именно того типа, которого вы и ожидаете там увидеть. Утилита эта консольная и называется file . Вот что она говорит о переименованном в текстовый документ аудио в формате mp3:
Обмануть утилиту file практически невозможно, а знает она о большинстве используемых форматов файлов.
Исполняемые файлы
В вопросах исполняемых файлов, то есть, если по простому, обычных программ, Ubuntu кардинально отличается от Windows. В Windows исполняемые файлы имеют расширение exe (в основном), а внутри представляют из себя нечитаемый набор байтов. А в Ubuntu исполняемым может быть даже текстовый файл. Сразу скажу, что exe - это программы для Windows и в Ubuntu они не работают без Wine (приложения для запуска исполняемых файлов Windows в Linux), но вообще говоря и в Wine они работают далеко не всегда.
Итак, что же такое исполняемый файл с точки зрения Ubuntu? Фактически это любой файл, который помечен, как исполняемый и который Ubuntu сможет запустить на выполнение. Означает это вот что: у каждого файла есть специальное свойство-переключатель, никак не зависящее ни от имени, ни от содержимого, отвечающее за исполняемость. Если файл помечен, как исполняемый, то вообще говоря он таковым и является, а если не помечен - то это обычный файл с данными и напрямую запустить его на выполнение нельзя. Другое дело, что не любой файл, помеченный как исполняемый, Ubuntu сможет выполнить, хотя в арсенале Ubuntu есть масса методов запуска файлов с совершенно различным содержимым.
Характерным примером необычных с первого взгляда исполняемых файлов Linux являются так называемые скрипты. Скрипты - это обычные текстовые файлы, содержащие набор инструкций для программы-интерпретатора, которая занимается собственно выполнением скриптов. Так вот, если на скрипте установлено свойство исполняемости, то это программа, которую можно запустить обычным образом, а если не установлено - то это всего лишь текстовый файл. То есть сделать файл исполняемым или же наоборот, убрать возможность его выполнения, можно изменением всего одного его свойства.
Мало того, на самом деле это магическое свойство-переключатель исполняемости является одним из трёх прав доступа, о которых я мельком упоминал в предыдущей статье. Я говорил, что у каждого файла есть три группы прав доступа - для пользователя-владельца, для группы-владельца и для всех остальных, каждая группа состоит в свою очередь из трёх прав: на чтение, модифицирование и выполнение. Так вот, право на выполнение и является тем самым волшебным переключателем исполняемости.
Из этого вытекает весьма забавное свойство: один и тот же файл может быть одновременно и исполняемым, и не исполняемым, допустим, если на его выполнение есть права только у пользователя-владельца. Тогда пользователь, которому принадлежит этот файл, сможет его запустить как программу, а для всех остальных он будет обычным файлом с данными.
Вот так всё на самом деле просто и красиво, надеюсь, вы осознали основную логику и не будете путаться при работе с исполняемыми файлами в Ubuntu.
Текстовые файлы
Текстовые файлы в Ubuntu повсюду. Все настройки хранятся в виде текстовых файлов, исходные коды всех программ представляют из себя текстовые файлы, многие программы в Ubuntu являются на самом деле скриптами, то есть тоже текстовыми файлами. И естественно Ubuntu умеет работать с текстовыми файлами как угодно. И этой темы даже не пришлось бы касаться, если бы не одна проблема операционных систем Windows. Дело в том, что в Windows до сих пор кое-где ещё используется устаревший в 90-х прошлого столетия способ сохранения обычного текста, в частности, в текстовых файлах 8) .
На самом деле большинство файлов откроется в стандартном текстовом редакторе Ubuntu без проблем 9) , но всё же иногда попадаются файлы, которые отображаются «кракозябрами». В этом случае необходимо немного помочь Gedit и указать кодировку файла вручную. Для этого закройте в редакторе вкладку с нечитаемым файлом, затем выберите в меню программы пункт «Открыть», найдите свой файл и обратите внимание на поле «Кодировка символов», находящееся внизу диалогового окна открытия. В этом поле необходимо указать нужную кодировку, после чего файл откроется уже в пригодном для чтения виде. Кстати, рекомендую такие файлы сразу сохранять в utf-8 , дабы в дальнейшем не возникало с ними проблем.
Существуют и более лёгкие способы работы с кодировками, например, плагин для Gedit, позволяющий менять кодировку у открытых файлов без необходимости их переоткрывания. Кроме того, существуют утилиты для автоматического перекодирования файлов в utf8 , например, enca . Можно также управлять механизмом автоопределения кодировки в Gedit, это делается через редактор конфигурации, про который я немного расскажу в одной из последних статей.
Напоследок хочется сказать, что очень рекомендуется так или иначе перевести всю текстовую информацию на использование utf8 , поскольку фактически только эта кодировка нормально распознаётся везде и всегда, а в будущем скорее всего только она и будет использоваться.
Аудиофайлы
В случае с аудиофайлами также существует проблема с кодировками, только проявляется она в тегах. К сожалению, некоторые популярные Windows-программы редактирования тегов как и текстовые редакторы до сих пор используют устаревшую кодировку. Некоторые плееры Ubuntu поддерживают указание кодировки воспроизводимых файлов, однако гораздо предпочтительней обработать всю вашу медиатеку специальными программами, которые автоматически приведут все теги в нормальный вид, дабы в дальнейшем не было проблем. Самой популярной программой такого рода является EasyTag, она доступна в стандартных репозиториях, так что почти сразу после прочтения следующей статьи вы сможете ей воспользоваться.
Что же касается форматов, то Ubuntu поддерживает все существующие аудио-форматы, однако для воспроизведения некоторых требуются дополнительные кодеки. О том, как их поставить, я расскажу в одной из следующих статей.
Изменение ассоциаций файлов с приложениями
Когда вы немного освоитесь в Ubuntu, у вас возможно возникнет желание познакомиться с доступными в изобилии в репозиториях программами. И вскоре после того, как вы выберите из бесчисленного множества альтернатив подходящие для себя приложения, перед вами скорее всего встанет вполне закономерный вопрос: а как заставить определённые типы файлов открываться в установленных вами программах, а не в доступных по умолчанию?
Ответ на него весьма прост. Нажмите правой клавишей мыши на любом файле нужного типа, выберите в появившемся меню пункт «Свойства» и в открывшемся окне перейдите на вкладку «Открывать в программе»:
В списке будут содержаться все приложения, которые сообщили Ubuntu о поддержке ими выбранного типа файлов. Ну а отмечена будет программа, используемая по умолчанию. Вам останется только выбрать нужное приложение и закрыть окно, после чего файлы указанного типа начнут открываться по умолчанию в выбранном вами приложении. То есть если вы хотите, например, чтобы фильмы в формате avi открывались в установленном вами VLC, а не в медиапроигрывателе Totem, то вам всего лишь надо в свойствах любого avi файла отметить VLC в качестве приложения по умолчанию.
Кстати, вы легко можете включить свои приложения в список, нажав на кнопку «Добавить» внизу окна и выбрав одну из установленных в системе программ или введя свою команду запуска. Таким образом вы можете настроить ассоциации с любыми приложениями для всех используемых вами типов файлов.
Однако у описанного механизма есть одна небольшая проблема: чтобы изменить привязку к приложению для определённого типа файлов вам необходимо иметь файл нужного типа. Просто же посмотреть и изменить список всех используемых в системе ассоциаций по умолчанию нельзя. К счастью, подобный функционал доступен в уже упоминавшейся утилите Ubuntu Tweak, так что если вы хотите изменить ассоциации сразу для большого количества типов файлов, то советую вам использовать именно её.
В качестве заключения
В этой статье я постарался подробно рассказать об основных особенностях в работе с файлами в Ubuntu. Надеюсь, вы смогли разобраться что к чему и уловить основные моменты. Напоследок хочется заметить, что Ubuntu без какого-либо дополнительного программного обеспечения поддерживает большинство распространённых форматов файлов, специфические файлы же скорей всего можно как минимум сконвертировать в один из стандартных форматов с помощью различных программ, в изобилии доступных в репозиториях Ubuntu.
Чуть позже я расскажу как поставить пакет полной поддержки мультимедиа форматов, который не входит в Ubuntu по умолчанию из-за несовершенного законодательства некоторых стран, с которым, к сожалению, приходится считаться, но для этого необходимо рассмотреть следующую очень важную тему:
Правда есть мнение, что не стоит называть файлы с использованием нелатинских символов и пробела, потому как подобные имена плохо могут быть восприняты операционными системами от Microsoft. Действительно, версии Windows до Vista не умеют корректно работать с файлами, названными с использованием национальных символов, так же Windows не поддерживает в названиях файлов большинство типографических знаков и не знает про то, что оказывается можно писать в разном регистре. Ubuntu правда старается позаботится об этом, поэтому, например, при копировании файлов на флешку, которую можно использовать в Windows, Ubuntu автоматически заменит все плохие для Windows символы на знаки подчёркивания. Кроме того, русские имена файлов всё-таки отлично отображаются даже в старых русскоязычных версиях Windows. Но проблема тем не менее есть, поэтому решайте сами, я лично предпочитаю удобство организации файлов в Ubuntu редким накладкам в коммуникации с Windows.
Установка мультимедийного проигрывателя VLC является для меня одним из первых шагов после установки Ubuntu. Первое из того, что я делаю после установки VLC - это устанавливаю его приложением по умолчанию, чтобы при двойном щелчке в нем можно было открыть любой видеофайл.
Как новичок, вы, возможно, должны знать, как изменить любое приложение по умолчанию в Ubuntu, и это то, что я собираюсь показать вам в этом небольшом руководстве.
Но прежде чем начать, я рекомендую вам также прочитать мое руководство о том, как устанавливать или удалять программное обеспечение в Ubuntu - в случае, если вы все еще путаетесь в этом.
Изменение приложений по умолчанию в Ubuntu
Есть, по сути, два способа изменить приложения по умолчанию в Ubuntu:
- через системные настройки (действительны для изменения стандартного веб-браузера, почтового клиента, календаря, музыкального приложения, видеоплеера и программы просмотра изображений).
- через меню правой кнопки мыши (действует для приложений, отличных от вышеперечисленных).
Если вы предпочитаете смотреть, а не читать, вы можете посмотреть видео ниже:
1. Изменение приложений по умолчанию в Ubuntu из системных настроек
Просто перейдите к Настройкам:
В Системных настройках нажмите на пункт меню Подробности:
Теперь нажмите на пункт Приложения по умолчанию, как показано на скриншоте ниже:
Как вы видите, есть только несколько видов приложений по умолчанию, которые можно изменить. Здесь вы можете изменить стандартные приложения, такие как веб-браузеры, почтовые клиенты, приложения календаря, музыки, видео и фотографий. А как насчет других видов приложений?
Не волнуйтесь. Чтобы изменить приложения по умолчанию, не перечисленные здесь (например, текстовый редактор), мы воспользуемся опцией в меню правой кнопки мыши.
2. Изменение приложений по умолчанию в Ubuntu из контекстного меню правой кнопки мыши
Допустим, у вас есть файл в формате markdown (.md), который по умолчанию открывается в текстовом редакторе Gedit. Но Вы хотите использовать другие приложения для открытия файлов разметки. Вот что Вам нужно сделать.
Щелкните правой кнопкой мыши по файлу и выберите Открыть в другом приложением:
Если вы не нашли приложение в списке, нажмите на кнопку Просмотреть все приложения:
Найдите желаемое приложение и выберите его:
При этом файл откроется в выбранном приложении.
Дело в том, что файловый менеджер автоматически распознает ваш выбор и при следующем двойном щелчке по файлу, чтобы открыть его, он откроет его с приложением, которое вы выбрали последним.
Помните, что такое поведение неприменимо к веб-браузеру, музыкальному плееру, видеоплееру, почтовому клиенту, календарю и просмотрщику фотографий. Для этого необходимо использовать первый метод, описанный выше.
Изменение приложений по умолчанию в Ubuntu Unity
Конечно, если вы хотите использовать определенное приложение для открытия файла, вы всегда можете выбрать опцию "Открыть с" из меню правой кнопки мыши. Но, если вы хотите изменить приложение по умолчанию для определенного типа файлов, вот что вы должны сделать:
Щелкните правой кнопкой мыши на файле, который вы хотите открыть. Перейдите к свойствам.
Здесь вы можете выбрать приложение, которое вы хотите использовать, и установить его по умолчанию.
Проще простого, не так ли? Как только вы это сделаете, все файлы одного вида будут открыты с помощью выбранного вами приложения по умолчанию.
Если вы хотите изменить эмулятор терминала по умолчанию, то шаги будут совершенно другими.
Надеюсь, вы нашли это небольшое руководство по изменению приложений по умолчанию в Ubuntu, направленное, в основном, на новичков полезным. Если у вас есть вопросы или предложения, не стесняйтесь, оставляйте комментарии ниже.
Поскольку вы находитесь здесь, я предположу, что вы пользователь Linux. И время от времени вы задаетесь вопросом: могу ли я запускать приложения windows в Linux?
Ответ на этот вопрос - да, вы можете запускать приложения Windows в Linux. Вот некоторые способы запуска программ Windows в Linux:
- Установка Windows на отдельный раздел жесткого диска
- Установка Windows в качестве виртуальной машины в Linux
Оба они работают просто отлично. Но они несколько требовательны к ресурсам.
Если вам нужно использовать только небольшое приложение Windows, установка Windows на отдельный раздел жесткого диска или в качестве виртуальной машины неэффективна. Более того, виртуальная машина не может использовать всю мощность вашей машины. Итак, каково же решение?
Не волнуйтесь, есть другой способ использовать программное обеспечение Windows в Linux. Он называется Wine. Если вы еще не знакомы с ним или являетесь новичком в мире Linux, эта статья для вас.
В этом руководстве для начинающих я покажу вам, что такое Wine и как использовать его для запуска программ Windows в Linux. Я использовал здесь Ubuntu, поскольку Ubuntu является одним из лучших дистрибутивов Linux для начинающих, но любой другой дистрибутив Linux будет иметь более или менее те же шаги (за исключением команд в дистрибутивах на базе Arch или Fedora).
Использование Wine для запуска программ Windows в Linux
Wine означает Wine Is Not an Emulator. И WINE на самом деле является акронимом этого слова. И, как уже говорилось ранее, это даже не виртуальная машина.
Скорее это уровень совместимости для запуска приложений Windows на UNIX-подобных или POSIX-совместимых операционных системах (например, Linux, Mac, BSD). В то время как виртуальная машина или эмулятор имитирует внутреннюю логику Windows, Wine переводит эту логику Windows в родную логику UNIX/POSIX-совместимости.
Говоря простыми и нетехническими терминами, Wine преобразует внутренние команды Windows в команды, которые ваша Linux-система может понимать как родные.
Установка Wine
Существуют различные способы установки Wine на вашу систему. Поскольку это руководство для начинающих, я опишу самый простой из них.
Почти все дистрибутивы Linux поставляются с Wine в репозитории пакетов. Чаще всего в репозитории пакетов доступна последняя стабильная версия Wine. Установить Wine на Ubuntu так же просто, как открыть терминал и выполнить следующие команды:
Однако если вы используете 64-разрядную установку Ubuntu, вам потребуется выполнить эти дополнительные команды:
Это добавит поддержку 32-разрядной архитектуры в ваш дистрибутив, что поможет вам при установке определенного программного обеспечения.
Какие приложения Windows поддерживаются Wine?
Существует большое количество приложений Windows, которые в настоящее время полностью поддерживаются Wine. Они будут работать без каких-либо проблем.
Однако каждый день разрабатываются новые приложения Windows. Многие из них не будут работать в Wine так, как мы хотим. Но темпы развития Wine также стремительны, поддержка новых приложений добавляется постоянно.
И для отслеживания этого существует специальная база данных.
База данных приложений Wine содержит почти 24 000 приложений, имеющих различные статусы в зависимости от того, насколько хорошо эти приложения работают в Wine. Если вы хотите быстро проверить рейтинг приложения, которое вы хотите использовать в Wine, вы можете заглянуть туда. Вот значение этих рейтингов:
- Platinum: Эти приложения устанавливаются и безупречно работают в "готовом" Wine.
- Gold: Эти приложения работают безупречно с некоторыми специальными настройками.
- Silver: Приложения с незначительными проблемами помечаются как Silver.
- Bronze: Бронзовые имеют серьезные проблемы, которые достаточно сильно влияют на использование.
- Garbage: Они просто не будут работать в Wine.
Отзывы, процедура установки, с какой версией Wine оно тестировалось и различные полезные данные также доступны для каждого приложения здесь.
Разумеется, база данных приложений Wine - это в основном пользовательские данные, поэтому вы всегда можете попробовать запустить приложение с другой версией Wine и поделиться своими результатами с остальными членами сообщества.
Поиск приложения в базе данных приложений Wine
Давайте посмотрим, как мы можем найти приложение в базе данных приложений Wine.
Поиск приложения в Wine AppDB
Напишите имя приложения, которое вы хотите найти, в поле Имя.
Фильтр имен Wine AppDB
Нажмите на ссылку-приложение из результата поиска.
Вы увидите описание приложения. Там будет список различных версий с рейтингом их совместимости с конкретной версией Wine.
Давайте нажмем на ссылку "Последняя версия".
Это главная страница, которую вам нужно проверить. Там будет подробная информация об этой конкретной версии.
Подробная информация о приложении
Вы получите представление о том, что будет работать, а что нет. Также здесь будет приведена процедура установки, если для установки потребуются какие-либо дополнительные задачи.
Начало работы с Wine
Прежде чем приступить к установке и запуску приложений в Wine, мы должны иметь четкое представление о некоторых вещах и о том, как настроить Wine для использования:
WinePrefix
Приложениям Windows необходим диск C:. Wine использует для этой цели виртуальный диск C:. Каталог этого виртуального диска C: называется wineprefix. Прежде всего, нам нужно создать wineprefix. Для этого откройте терминал и введите следующую команду:
Это создаст wineprefix и откроет окно конфигурации для Wine. Вы можете изменить параметры конфигурации, если хотите, или оставить все как есть и закрыть его. Теперь вы можете найти виртуальный диск C: по адресу
WinePrefix C: Диск
Общее правило - устанавливать каждое новое приложение в новый wineprefix. Мы можем создавать и поддерживать несколько wineprefix вручную. Но эта задача покажется довольно утомительной для новичков. Поэтому мы пока пропустим эту часть. Но позже я покажу, как можно легко выполнить эту часть.
Установка приложения с помощью Wine
Установка поддерживаемого приложения в Wine обычно не сложнее двойного щелчка по установочному файлу. Однако сейчас мы рассмотрим пошаговое руководство по установке 7-zip в Wine.
Прежде всего, проверьте рейтинг 7-zip в базе данных приложений Wine. Он имеет рейтинг Platinum, так что все готово. Откройте конфигурацию Wine ( winecfg ) и установите версию Windows на Windows 7.
Wine Windows 7
Щелкните правой кнопкой мыши на установочном файле 7-zip и выберите Open With Wine Windows Program Loader.
Установочный файл 7-zip
Видите путь к конечной папке? Установка 7-zip распознала виртуальный диск C: из wineprefix.
7-zip Установочный каталог в Wine
Завершите установку и перейдите в каталог установки [ $HOME/.wine/drive_c/Program Files/7-zip/ ] из браузера файлов.
Щелкните правой кнопкой мыши на файле 7zFM.exe и выберите Свойства > Открыть с помощью.
Установка загрузчика .exe по умолчанию
Выберите Wine Windows Program Loader и закройте окно. Дважды щелкните на файле 7zFM.exe.
7-zip работает в Wine
И вот, пожалуйста! Для создания ярлыка на рабочем столе щелкните правой кнопкой мыши на файле.
Создание ярлыка 7-zip
Теперь переместите ссылку на рабочий стол.
Переместить ярлык на рабочий стол
Теперь вы можете запускать 7-zip просто с рабочего стола. Все, что вам нужно сделать, это дважды щелкнуть по значку.
Запустите 7-zip с рабочего стола
Если вы хотите получить доступ к своим файлам в Linux, они обычно находятся на диске Z:.
Каталог Linux на диске Z:
Вы можете использовать 7-zip так же, как и в Windows - для извлечения и создания архивов и тому подобного.
Давайте сделаем все (намного) проще
Вы могли заметить, что в Wine Application Database при обзоре каждой версии приложения упоминается конкретная версия Wine.
Это связано с быстрыми темпами развития Wine. Хотя приложение работает с текущей версией Wine, оно может не работать с будущей версией из-за внесенных изменений.
Кроме того, я упоминал об установке каждого приложения в свой собственный свежий wineprefix. Таким образом, у приложения нет шансов помешать другому. И делать все это вручную, как правило, из терминала, отнимает много времени, утомляет и порой сбивает с толку.
На помощь приходит PlayOnLinux. Он предоставляет удобный интерфейс для выполнения всех этих действий. Для установки PlayOnLinux на Ubuntu просто выполните эту команду:
Интерфейс PlayOnLinux
С помощью PlayOnLinux вы можете легко выполнить любую задачу, связанную с Wine, используя красивый и интуитивно понятный графический интерфейс:
- Установка и удаление приложений.
- Создание, обновление и удаление wineprefixes.
- Поддерживать Wine различных архитектур и версий.
- Запуск и создание ярлыков для установленных приложений.
- И так далее.
Но все же вам нужно будет проверить базу данных приложений Wine на предмет отзывов, процедур установки и тому подобного.
Преимущества использования Wine
Когда речь идет о запуске приложений Windows в системе Linux, Wine предоставляет множество преимуществ по сравнению с использованием эмуляторов или виртуальных машин.
- Производительность: Wine не подвержен снижению производительности, которое в противном случае происходит при эмуляции.
- Нативный опыт: Нет необходимости открывать Wine перед запуском приложения Windows. Как именно работает Wine, станет более понятно из этой цитаты с официального сайта,
Wine можно рассматривать как эмулятор Windows примерно так же, как Windows Vista можно рассматривать как эмулятор Windows XP: оба позволяют запускать одни и те же приложения, переводя системные вызовы примерно одинаковым образом. Настройка Wine для имитации Windows XP мало чем отличается от настройки Vista для запуска приложения в режиме совместимости с XP.
Производные Wine
Существует довольно много проектов для запуска приложений Windows на других платформах, основанных на Wine:
-
: CrossOver разработан компанией CodeWeavers. Она основана непосредственно на Wine с некоторыми изменениями и собственными дополнениями. На самом деле, в CodeWeavers работает большая часть разработчиков Wine. В отличие от быстрых релизов Wine, релизы CrossOver более стабильны. Единственным и основным недостатком является то, что Crossover не является бесплатным. : PlayOnLinux полностью основан на Wine. Он обеспечивает более легкий путь для установки и управления приложениями с помощью Wine. PlayOnLinux бесплатен. Он также доступен для Mac как PlayOnMac. : ReactOS - это совершенно другая операционная система с открытым исходным кодом для запуска приложений Windows. В ней повторно используется значительное количество кода из Wine. Однако этот проект находится в разработке уже более десяти лет, и я не стал бы его рекомендовать.
Дополнительные советы по использованию Wine
Winetricks
Это еще одна важная часть использования Wine. Winetricks - это вспомогательный скрипт для загрузки и установки различных перераспределяемых библиотек времени выполнения, необходимых для запуска некоторых приложений в Wine. Они могут включать замену компонентов Wine, использующих библиотеки с закрытым исходным кодом. Winetricks поставляется вместе с установкой Wine на Ubuntu.
Для запуска winetricks выполните эту команду:
Winetricks
Существует множество вариантов помощи в решении различных задач.
Установка приложения с помощью Winetricks
Если вы установите приложение из winetricks, оно будет установлено в отдельный wineprefix. Давайте установим VLC:
Winetricks – Установить приложение Winetricks – установить VLC
После этого начнется загрузка установочных файлов VLC. А затем проведет вас через весь остальной процесс. Это довольно просто.
Установка DLL или компонентов Windows и другое
Вы можете выбрать wineprefix из winetricks и установить различные библиотеки и компоненты, необходимые для запуска приложения, а также выполнить другие операции.
Сценарии Winetricks Библиотеки и компоненты Winetricks
Примечание: Если использование winetricks кажется вам сложным, это совершенно нормально. Я тоже так считаю. По этой причине я всегда использую PlayOnLinux. PlayOnLinux может делать все, что вам может понадобиться от winetricks.
Для получения дополнительной информации вы можете ознакомиться с FAQ и документацией по Wine.
Я надеюсь, что это руководство для начинающих по использованию Wine в Linux будет вам полезно. Теперь вы можете запускать программы Windows в Linux без установки виртуальной машины или двойной загрузки.
Сообщите нам, если у вас есть вопросы или мнения, в разделе комментариев ниже.
В Linux файловая система — это способ организации, управления, структурирования и хранения данных, что-то вроде карты, с помощью которой система ориентируется в файлах, сохраненных на физическом носителе. Все файловые системы с открытым исходным кодом относятся к категории файловых систем Linux. Ключевое отличие в том, что Linux абсолютно все компоненты обнаруживает как файл, даже сам по себе жесткий диск, Linux посчитает данными! Поэтому в линуксах, в отличии от Windows, нет никаких «диск E» или «диск С». Но в Linux есть домашний каталог, аналог «моего компьютера» из виндоуз, там хранятся все рабочие файлы. Внутри домашнего каталога или, как еще говорят, корневой директории, пользователи могут создавать файлы с помощью команд терминала или оболочки.
Создание файлов в Linux с помощью команд терминала
Создание файла на машине с Линуксом – это как демонстрация силы, как показать кто тут главный. И для этого есть множество способов, но, прежде чем приступить, давайте коснемся основ файловой системы Linux. Смотрите, внутри корневого каталога лежат папки с файлами: bin, boot, dev, home, lib, opt, usr, srv и т. д. Не пугайтесь мы не будем досконально изучать ВСЮ файловую систему, только основы, совсем чуть-чуть.
В этом посте мы узнаем о функциональных возможностях файловой системы Linux и о том, как создавать файлы в Linux с помощью команд терминала. Помимо этого, мы также увидим различные способы создания файлов определенного размера в Linux.
Прежде чем приступить непосредственно к созданию файла, давайте рассмотрим очень простую команду. Команда tree обычно используется для просмотра корневого каталога, который показывает список папок с файлами. Обычно tree предустановлена в Linux, но, если у вас есть какие-либо проблемы с использованием этой команды, вы можете следовать приведенным ниже командам.
· Для Ubuntu
· Для Red Hat Type
· Для openSUSE
· Для Arch-подобных дистрибутивов
Теперь, если вы наберете в терминале команду tree, как показано ниже, система покажет вам диаграмму со всеми вашими файлами, папками и каталогами в корневой директории.
Если вы не хотите видеть перегруженную информацией диаграмму, вы можете просмотреть только основные каталоги с помощью этой команды
1. Команда cat
Команда concatenate или cat используется для создания одного или нескольких файлов. Это позволяет пользователям вместе создавать цепочки или серии файлов. Команда сat может создавать или отображать файлы из локального каталога. Она может просматривать один или несколько файлов. А также может сортировать файлы в зависимости от содержимого нескольких файлов.
Что бы использовать команду cat, или любую другую, для начала стоит открыть терминал. Поищите его с помощью вашего Linux Launcher, или используйте шорткат: Ctrl + Alt + T. Обычно терминал лежит в корневой директории, и файлы, созданные описанным здесь способом, будут сохраняться, соответственно, в корневую директорию. Что бы убедиться в этом, воспользуйтесь командой pwd, она выведет путь к текущей директории.
Предположим, что вы хотите создать файл .doc с именем newfile101, все, что вам нужно сделать, это просто набрать команду, указанную ниже, в вашем терминале. После того, как файл создан, вы сможете проверить, создан он или нет с помощью следующей команды.
Здесь этот знак «>» (больше) известен как знак перенаправления; скоро я расскажу о нем более подробно.
(Зануда моуд от переводчика, который можно не читать, если ты сам не зануда: технически, команда cat ничего не создает, она выводит содержимое файла в поток, или, если вы захотите, она может последовательно вывести в поток содержимое нескольких файлов и слепить их в один. Операнд «>» записывает вывод, т.е. результат, команды в указанный файл, если указанный файл не существует, он его создаст. Таким образом, набранная в терминале команда cat > newfile101.doc действительно создаст файл с именем newfile101.doc, но сама по себе команда cat тут почти не причём)
2. Команда touch
В Linux команда touch используется для создания файлов, где отметка времени является жизненно важной точкой. Если вы дата-инженер и имеете опыт работы с CSV-файлами, я уверен, что вы знаете, насколько важно поддерживать временную метку в файлах. С помощью команды touch вы можете изменять и манипулировать отметкой времени файлов.
Чтобы создать файл с помощью touch, наберите в терминале следующее:
Чтобы проверить, был ли файл создан или нет, просто воспользуйтесь командой ls в терминале.
3. Символ «>», известный как математическое больше или редирект (перенаправление)
Если вы системный администратор, вам может потребоваться каждый день создавать тонны файлов для обновления журналов. А что, если вы сможете создавать файлы из терминала, используя только знак «>» ? Обычно в Linux каждый файл связан с другим файлом, и эта связь отображается с помощью знака «>». Но в терминале, если вы поместите символ перенаправления перед именем несуществующего файла вместе с его расширением, он создаст пустой файл в локальном каталоге.
Чтобы создать файл, используя символ перенаправления, просто введите символ «>» в терминале и напишите имя файла. Вот и все! Вы получили свой желанный файл. Как и прежде, проверить наличие файла вы можете с помощью команды ls.
4. Команда echo
В Linux echo используется для помещения любого оператора или аргумента в любой файл. Если ранее был создан пустой текстовый файл, вы можете записать в него строку с помощью команды echo. Предположим, ранее я создал документ с именем newfile101.doc. Теперь я хочу записать в него строку «hello world».
Таким образом, вместо того, чтобы открывать файл вручную из каталога, я могу просто набрать команду echo из терминала, как показано ниже. После выполнения команды вы можете проверить наличие строки в файле с помощью команды cat.
5. Vim
Если вы программист и привыкли писать код в IDE, я уверен, что вы не раз слышали название Vim. Vim - текстовый редактор, используемый в интерфейсе командной строки, который, в том числе, пригоден для создания файлов. Чтобы создать файл с помощью vim, просто введите следующую строку в терминале.
Допустим, вы захотите создать файл с именем newfile106.txt, тогда все, что вам нужно для этого - ввод этой команды в терминал.
(Зануда моуд от переводчика: строго говоря команда откроет текстовый редактор vim, а в нем файл с указанным именем, если такого файла нет, она его создаст. И, вместо распространенных в интернете шуток типа «дед: ищет выход из vim», я вам лучше в двух словах расскажу, как файл сохранить и выйти. Воспользуйтесь командой :wq, она сохранит файл и выйдет из редактора. Ну и, если вы хотите подробный, четкий и весёлый гайд по vimу, вы там намекните как-нибудь в комментариях.)
Чтобы убедиться в том, что все сработало как надо - юзайте как и прежде ls lh.
6. Nano
Nano — это популярный текстовый редактор «Что видишь, то и получаешь» (WYSIWYG - What You See Is What You Get) в Linux. В кодировке UTF-8 Nano — это текстовый редактор обычного типа, также известный как GNU nano. Он весьма эффективен и полезен и может ускорить процесс написания кода. А чтобы создать файл с помощью nano, вам нужно продублировать командную строку, приведенную ниже.
(Зануда моуд: опять же, этой командой вы откроете этот файл в редакторе, если файл не существовал до сих пор, он будет создан. Что бы сохранить файл воспользуйтесь шорткатом: Ctrl+O, что бы выйти: Ctrl+X)
После создания файла вы можете просмотреть файл, используя команду ls или команду cat.
7. Команда printf
Все программисты по всему миру знают функцию printf. Чтобы создать текстовый файл с помощью команды printf, вам нужно использовать следующую запись в терминале.
(Зануда моуд: это команда, используется для форматирования данных, в качестве аргументов принимает методы форматирования и список элементов для форматирования. В конечном счете, команда, приведенная ниже, сработает, но напрашивается сравнение про гвозди и микроскопы.)
Для просмотра типа файла и содержимого файла из терминала ls и cat вам в помощь:
8. Команда head
Для вывода начальной части больших файлов, программисты часто используют команду head.
Предположим, что я хочу открыть некий файл логов. Для этого я могу открыть список файлов из терминала. А затем использовать команду head для вывода первых 10 строк этого файла. 10 строк – это дефолтный параметр и его легко поменять с помощью соответствующего аргумента.
9. Команда tail
Команда tail аналогична команде head. Единственное отличие заключается в том, что команда tail выводит последние 10 строк файла, вместо первых. Эта команда обычно используется для просмотра последнего вывода данных в датасете, например.
Например, если вы захотите вывести в поток последние 10 строк файла fontconfig.log.
10. Команда truncate
В Linux команда truncate используется для уменьшения или увеличения размера файла. Давайте сначала создадим текстовый файл с помощью touch, а затем посмотрим, как увеличить размер этого файла с помощью truncate.
В примере ниже я создаю файл newfile112.txt. Затем с помощью команды truncate я задаю ему размер 1024 Кб (1 Мб). Еще ниже, используя ту же команду, я снова меняю размер файла до 1.5 Мб.
Создание файлов определенного размера в Linux
Иногда админам нужны файлы конкретного размера, чтобы проверить возможности хранения, скорость сети или производительность системы. Такие файлы – что-то вроде заглушки или типографской рыбы, просто тест для проверки работы базы данных. Вот зачем стоит уметь создавать файлы определенного размера. Ниже мы рассмотрим некоторые методы создания таких тестовых файлов.
1. И снова truncate.
Выше мы только что узнали, как увеличить размер файла с помощью команды truncate. Помимо увеличения размеров файлов, вы можете создавать файлы точного размера с помощью этой команды. Здесь я собираюсь показать, как создать файл размером 25M с помощью этой команды. Откройте терминал и введите команду, приведенную ниже.
2. Команда fallocate
Fallocate позволяет пользователям создавать файлы маленького или очень маленького размера. Используя команду fallocate, вы можете контролировать размер создаваемых файлов вплоть до байта. Впрочем, создание большого файла точного размера с помощью этой команды тоже возможно, но придется немного поумножать.
Допустим, вы хотите создать файл размером 20 КБ. Для этого вам следует произвести вот такое нехитрое математическое действие 20 * 1024 = 20480 КБ.
(А режим зануды и мануал команды говорят нам, что за аргументами офсета и длинны файла может следовать мультипликативный суффикс. KiB (=1024), MiB (=1024*1024) и далее по тексту. И еще, к слову, окончание «iB» опционально, просто K будет значить ровно тоже самое, что и KiB, вуаля, и не надо в математику.)
3. Еще раз про head
Из первой части этой статьи мы уже знаем, что команда head может вывести 10 первых строк логфайла или текста. А сейчас я покажу вам, как вы можете использовать команду head для создания файлов заданного размера. Здесь следует отметить, что каждый файл имеет некоторую системную зарезервированную часть. Вот почему, если вы создадите файл размером 100 МБ, он не будет содержать сто мегабайт данных, из-за системного резервирования.
(благодаря нашей постоянной рубрике «зануда моуд», вы уже и сами догадываетесь какая часть приведенной команды отвечает за создание файла, да?)
4. Perl
Perl — высокоуровневый интерпретируемый динамический язык программирования общего назначения. Название языка официально расшифровывается как Practical Extraction and Report Language («практический язык для извлечения данных и составления отчётов») Он сочетает в себе некоторые из лучших функций sed, awk и sh, что делает его привычным и простым в использовании для пользователей Unix, чтобы быстро находить решения назойливых проблем.
Теперь я собираюсь показать, как создать файл определенного размера с помощью команды perl. Я выделяю размер файла до 1К.
(«Ну, вы понели», - говорит зануда моуд – это все еще операнд > создает вам необходимый файл, без него команда perl -e'print "a" x 1024' выведет на экран строку «а» в 1024 бита весом. Да, это работает, вопрос только в общем КПД такого действия.)
5. Команда xfs_mkfile
Команда xfs_mkfile — это быстрая команда для создания файла определенного размера в Linux. Здесь термин xfs — это краткая форма высокопроизводительной файловой системы журналирования, а mkfile — это синтаксис Linux, который позволяет пользователям задавать размер файла в байтах, килобайтах, мегабайтах или гигабайтах.
Последние мысли
Изучение файловой системы Linux помогает нам понять иерархию слоев или файловой системы. Создание файлов с помощью шелл-команд— это первый урок изучения файловой системы Linux. Терминальные команды помогают пользователям взаимодействовать с основными файлами. В этом посте описано несколько полезных команд, с помощью которых можно создавать файлы. Для лучшего понимания каждая команда поясняется краткой заметкой и примером. Все эти команды очень просты, и, если вы системный администратор, вам стоит изучить их все.
Записная книжка рассеянного [в пространстве и времени] программиста
Статья дополнена 2022-03-08
Не секрет, что для новичков в никсах существует лишь один путь для выбора приложения, которым будет открываться какой-либо тип файлов: конфигуратор его рабочей среды (кеды, гном, xfce или иное).
Однако то, что происходит за кадром пользователю остается неизвесным. И как только юный падаван попадает в голые иксы с запущенным xterm или голым, но от этого не менее дружелюбным, оконным менеджером (openbox, fluxbox, xmonad и т.д.) - у него сразу возникает куча проблема.
- почему все мои файловые ассоциации, которые я так долго настраивал исчезли?
- Почему в mc все картинки и видео вдруг начинают открываться в браузере?
- почему они вообще открываются через mc?
- почему firefox при выборе пункта “открывать файл” вместо сохранить открываеть его непонятно где или вообще не открывает?
И новичок это гиблое дело забрасывает и возвращается в удобные кеды, гном или что-то еще.
Но на самом деле не все так страшно.
Современные стандарты freedesktop указывают нам на то, что запуск приложений осуществляется с помощью *.desktop файлов, которые описывают все, что необходимо для работы приложения.
А чтобы связать тип файла с приложением, которое будет запускаться введен стандарт Association between MIME types and applications.
Этот стандарт описывает ряд файлов, которые отвечают за связь меджу типом файла и приложением.
Путь | Предназначение |
---|---|
$HOME/.config/$desktop-mimeapps.list | Пользовательские ассоциации. Специфичные для рабочего стола $desktop |
$HOME/.config/mimeapps.list | Пользовательские ассоциации (независимы от рабочего стола) |
/etc/xdg/$desktop-mimeapps.list | Глобальные ассоциации. Предоставляются администратором. специфичные для рабочего стола $desktop |
/etc/xdg/mimeapps.list | Глобальные ассоциации, предоставляемые админом и вендорами ПО. |
$HOME/.local/share/applications/$desktop-mimeapps.list | Глобальные системные ассоциации. Специфичны для рабочего стола $desktop. Запрещен к использованию. Будет удален в новых редакциях стандарта. |
$HOME/.local/share/applications/mimeapps.list | Глобальные системные ассоциации. Запрещен к использованию. Будет удален в новых редакциях стандарта. |
/usr/local/share/applications/$desktop-mimeapps.list and | |
/usr/share/applications/$desktop-mimeapps.list | Набор ассоциаций, которые предоставляются мейнтейнерами дистрибутива. Специфичны для рабочего стола $desktop. |
/usr/local/share/applications/mimeapps.list and | |
/usr/share/applications/mimeapps.list | Набор ассоциаций, которые предоставляются мейнтейнерами дистрибутива. |
Таблица описывает файлы в том порядке, в котором они обрабатываются системой. Переменная $desktop представляет из себя имя рабочего стола в нижнем регистре (kde, gnome, xfce, …).
Данные файлы представляют из себя набор записей вида
mimetype - описание формата. Что-то вроде audio/ogg. Стандарт описания mimetype можно глянуть в соответствующих RFC.
*.desktop есть файл запуска вашего приложения. Обрабатывается список файлов последовательно до первого встреченного существующего приложения. Либо система перейдет к обработке следующего файла.
Помимо основной секции стандарт оговаривает две дополнительных секции.
Секция “added associations” добавляет к выбранным mime-типам указанные приложения в начало списка. Секция “removed association” соотственно удаляет указанные приложения из ассоциации к выбранному mime-типу.
Все. с теорией покончено.
Как было сказано выше - в “дружелюбном окружении уже существует какая-нибудь утилита, которая позволяет пользователю изменить ассоциации.
Но гораздо проще делать это в консоли.
Существует инструмент под названием xdg, который как раз отвечает за работу со списками ассоциаций. И большинство приложений как раз используют его api дабы открывать файлы (mc, nautilus, firefox, …).
Попробуем сделать в консоли
Вы увидите, что картинка откроется при помощи стандартного вьювера для вашего рабочего стола.
А теперь попробуйте сделать
Вы увидите что-то вроде
xdg-mime - инструмент, который входит в комплект поставки любого дистрибутива. Им можно как просматривать, так и изменять ассоциации файлов.
Для примера узнаем, как система распознает какую-нибудь картинку.
Shared MIME database
Это спецификация, которая позволяет приложениям легче прописывать в систему информацию о том, какими расширениями файлов они могут манипулирвать.
Для целей статьи это неинтересно, но почитать можно тут.
Как работает привязка файлов в ручном режиме
Посмотрим, что происходит под капотом. Сейчас это не самый лучший способ. О более простом варианте речь пойдет чуть дальше.
Допустим, что у нас свежезаведенный профиль.
У вас этого файла может не быть, либо он может содержать какие-то дефолтные значения.
А теперь мы хотим, чтобы файлы mp4 открывались при помощи vlc.
Как видим - используется vlc. И если мы попробуем сделать
Файл откроется уже в vlc.
Автоматизированный способ привязки
Сначала нам нужно понять, какие приложения поддерживают нужный mime.
Каждый *.desktop-файл содержит записи mime-типов, которые он поддерживает.
Теперь нам нужно лишь грепнуть все desktop чтобы найти, что нам надо.
Допустим, что нам хочется переопределить приложение для открытия папок. Найдем, кто их может открывать.
Тут мы видим, что папками манипулируют ranger, baobab и pcmanfm.
Для привязки приложения и типа нам так же поможет xdg-mime.
Тем самым мы связали тип inode/directory с приложением pcmanfm. Стоит заметить, что указывать путь до *.desktop не надо. Он будет разыскиваться по стандартным путям, которые мы обсудили выше.
Замечания
Искать кто может открыть какой-то файл долго и сложно. Можно воспользоваться утилитой lsdesktopf.
Читайте также: