- Лучшие HEX редакторы Linux
- Лучшие HEX редакторы для Linux
- 1. Vim
- 2. Hexedit Hex Editor
- 3. Ghex – GNOME Hex Editor
- 4. Bless Hex editor
- 5. Okteta Editor
- 6. wxHexEditor
- 7. HexCurse
- 8. Hexer
- 9. Dhex Hex Editor
- 10. Jeex Hex Editor
- 11. Binary Ninja
- 12. Fileobj Hex Editor
- 13. Joe Hex Editor
- 14. VBdiff Hex Editor
- 15. HexCmp
- Выводы
- Best Hex Editors for Linux
- Xxd
- Jeex
- GHex
- wxHexEditor
- Okteta
- Hexedit
- Hexer
- Conclusion
- About the author
- Nitesh Kumar
Лучшие HEX редакторы Linux
HEX-редактор — это приложение, с помощью которого можно просмотреть и отредактировать файл, содержащий двоичные данные (записанные при помощи комбинаций из цифр 0 и 1), перекодировав его в 16-ричный формат.
А поскольку все без исключения файлы хранятся в памяти компьютера именно в таком виде, использование программ, позволяющих работу с HEX, открывает широкие возможности для различных манипуляций с данными (например, для восстановления поврежденных текстовых и графических документов). Некоторые HEX редакторы предназначены для анализа и редактирования данных с HDD и съемных накопителей — их называют редакторами дисков или редакторами секторов.
Рабочее окно стандартного HEX-редактора разделено на три области. Справа расположена так называемая область символов, в центральной части — область 16-ричного кода и слева — область адресов. В наше время пользователям Linux доступно множество таких программ — каждый может выбрать ту, которая окажется максимально полезной в конкретной ситуации. В этой статье мы собрали лучшие hex редакторы linux.
Лучшие HEX редакторы для Linux
Порой информация, которая хранится на каких-либо носителях, повреждается из-за ошибок в работе системы. В таком случае нет смысла изобретать велосипед и придумывать специальную программу для извлечения данных. Гораздо эффективнее будет использование HEX-редактора. Мы отобрали 20 лучших программ и подготовили их обзор.
1. Vim
Vim служит для редактирования текстовых файлов в шестнадцатеричной системе. В работе он задействует внешний инструмент «xxd», который входит в базовый набор некоторых дистрибутивов Linux. Такое «сотрудничество» иногда становится причиной ошибок в работе редактора.
Преобразование файлов происходит после применения команд:
- :%! xxd — для конвертирования файла в 16-ричный формат;
- %! xxd -r — для возвращения к исходному варианту.
2. Hexedit Hex Editor
Hexedit — простой и надежный HEX editor linux. Среди прочих выделяется наличием большого количества опций (быстрый поиск и/или сравнение, подсветка символов, EBCDIC, применение цветовых схем, режимы INS/OVR, закладки. отслеживание изменений.
- Hexedit используется в работе таких функций ПК как макросы, нажатия клавиш, фоновый поиск, редактор дисков и другие.
- Настройка подсказок, калькулятор, шаблоны. Поддержка файлов, размер которых превышает 4 Гб.
- Наличие инструментов Auto-hide tool windows (для быстрого скрытия окон) и Docking tool windows (для закрепления окон).
- По команде пользователя Hexedit может получать доступ к памяти компьютера, всем дискам и файлам.
3. Ghex – GNOME Hex Editor
Ghex — это бесплатный редактор, который кроме 16-ричного формата поддерживает и ASCII. Спектр использования этой программы очень широк, в частности, она позволяет обманывать систему к компьютерных играх и получать дополнительные очки либо жизни для персонажей.
- Многошаговые команды Undo (отмена) и Redo (повтор).
- Поиск функций в файлах и их замена.
- Отслеживание взаимодействий между восьмеричным, двоичным, шестнадцатеричным и десятичным кодами.
- Настраиваемый MDI.
4. Bless Hex editor
Bless — редактор с открытым исходным кодом, быстрый в работе и простой в настройке. Его интерфейс собран на GTK. Обеспечивает удобную работу с большими файлами, позволяет отменять и повторять действия.
- Управление при помощи клавиатуры.
- Функция поиска и замены файлов.
- Возможность копировать и вставлять текст.
- Блокировка устройств и редактирование большого количества файлов.
5. Okteta Editor
Изначально это приложение было разработано для программистов, однако, пригодится и обычным пользователям, у которых возникла потребность работать с файлами на уровне байтов и редактировать hex linux.
6. wxHexEditor
Мощный инструмент, поддерживающий различные типы файлов, аксессуары и тэги, размер которых может исчисляться в Эксабайтах (1 Эб = 10 18 байт). В большей степени его использование имеет смысл для программистов.
7. HexCurse
Написан на языке C на основе ncurses. Нравится пользователям из-за наличия большого числа функций. Среди прочего, он позволяет изменять сочетания клавиш, использующиеся для управления программой.
8. Hexer
Бесплатный HEX редактор Linux, который умеет только загружать весь файл целиком, что не позволяет редактировать отдельные блоки. Впрочем, есть у него и преимущества — например, функция редактирования в командной строке, многоуровневая команда отмены (Undo) и множественные буферы.
9. Dhex Hex Editor
Эта программа работает на базе ncurses, а в качестве дополнения разработчики снабдили ее функцией сравнения файлов. При желании можно активировать и режим визуализации. Зачастую используется для преобразования дискретных байтов в файлы большого размера.
10. Jeex Hex Editor
Jeex может похвастаться открытым исходным кодом, который был написан на языке Gtk + и опубликован под публичной лицензией GNU. Позволяет выполнять операции в двоичном, восьмеричном, десятичном и шестнадцатеричном форматах. На данный момент является одним из лучших HEX-редакторов.
11. Binary Ninja
Платная программа, написанная на Python и опубликованная под лицензией GPLv2. Особенность этой программы — она рассчитана в первую очередь на реверс-инжиниринг. Все желающие могут скачать демо-версию и в течение 25 минут протестировать Binary Ninja с урезанным количеством опций.
Особенности программы:
- Графики с синопсисами, позволяющими просмотреть и проанализировать информацию о заданной в данный момент функции.
- Благодаря подменю, выбранные плагины можно объединять в отдельные группы.
- Улучшенная работа PE-анализатора и PE-парсера.
- Доступ к логам осуществляется посредством нажатия на строку с адресом.
- Binary Ninja помогает найти нужную библиотеку для выполнения той или иной бинарной функции.
12. Fileobj Hex Editor
Fileobj был написан на python и основывается на ncurses. Интерфейс этого HEX-редактора напоминает Vi, соответственно, у этих программ много одинаковых функций. Кроме того, Fileobj умеет выполнять большинство команд Vi, что удобно для пользователей.
13. Joe Hex Editor
Джо — еще один HEX-редактор на ncurses, доступный пользователям Linux. Имеет пользовательский mode-less интерфейс, который весьма прост в использовании. Доступ к справочным материалам предоставляется через специальную кнопку на экране.
- Для упрощения работы можно использовать комбинации клавиш.
- Настройка конфигураций.
- Поддержка всех популярных форматов файлов.
14. VBdiff Hex Editor
Название этой программы — VBdiff — буквально обозначает «Визуально двоичный diff». Этот бесплатный редактор способен открывать два файла одновременно и может их сравнивать. Умеет работать с большими документами.
15. HexCmp
HexCmp входит в состав программного обеспечения Fairdell. Это удобное приложение для сравнения и редактирования двоичных файлов как в двоичном, так и в 16-ричном форматах.
Выводы
Упомянутые выше HEX редакторы Linux, достаточно часто используются владельцами компьютеров, работающих под этой операционной системой. Некоторые из них более популярны среди специалистов — программистов и разработчиков. Другие приходятся по вкусу тем, кто пользуется подобным ПО лишь от случая к случаю. Тем не менее, можно сказать, что все они достаточно гибкие и функциональные для того, чтобы удовлетворить потребности всех пользователей.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Best Hex Editors for Linux
This article will list useful hex editor applications available for Linux. Hex editors allow you to modify pre-compiled binary files whose source code is typically not available to change. They work by browsing binary data present in a file and then presenting the data in hexadecimal notation to users. Hex editors can also show partial or full ASCII data depending on the contents of the file.
These hex editors allow you to change hexadecimal values, thereby allowing users to modify file behavior even if they don’t have access to source code. However, the data represented by a hex editor is not exactly human readable. Reading and interpreting hexadecimal values to infer program logic and behavior is not an easy task by any means and it takes considerable efforts to find values and make even the smallest of change. A hex editor is one of the first tools used while reverse engineering a file.
Xxd
Xxd command allows you to dump hexadecimal data from a binary file. It can also reverse dump the hexadecimal data into a binary file, thus making it a useful command line hex editor. It is available in repositories of almost all major Linux distributions, usually as a part of the Vim text editor package.
To dump hex data from a file, run a command in the following format:
To convert a hexdump to binary, use “r” switch:
You can explore all of its options by running the two commands mentioned below:
Jeex
Jeex is an open source hex editor that can view and edit binary files. It can present data in binary, ASCII, hexadecimal and octal formats. It can be used to find and replace values in a variety of formats, explore data types and parse strings. It can also be used to view differences between two binary files.
You can install Jeex in Ubuntu by using the command mentioned below:
Jeex is available in repositories of all major Linux distributions, so you can install Jeex from the package manager. You can also compile a build from source code available here.
GHex
GHex or “GNOME Hex Editor” is part of the GNOME3 application stack and is available in default repositories of most Linux distributions. It can present data in both hex and ASCII formats and you can edit and save your changes to the original binary file. You can also use it to show a table of values converted into different notations.
You can install GHex in Ubuntu by using the command mentioned below:
GHex is available in repositories of all major Linux distributions, so you can install GHex from the package manager. You can also download it from the Flathub store.
wxHexEditor
wxHexEditor is a hex editor that is specially designed to handle large binary files whose size can run in GBs. Its other features are on par with GHex and Jeex as it can both modify contents of a binary file and save them into the original file.
You can install wxHexEditor in Ubuntu by using the command mentioned below:
wxHexEditor is available in repositories of all major Linux distributions, so you can install wxHexEditor from the package manager. You can also compile its executable binary file from source code.
Okteta
Okteta is a hex editor written in C++ and Qt libraries. It is part of the KDE application suite and it features a multi-pane layout for better visibility and readability of binary data. Okteta’s main features include multiple data views, dockable panes, numerical and character encodings, tabbed views and so on.
You can install Okteta in Ubuntu by using the command mentioned below:
Okteta is available in repositories of all major Linux distributions, so you can install Okteta from the package manager. You can also download it from the Flathub store.
Hexedit
Hexedit is an open source command line tool that can view and edit binary files by presenting data in hexadecimal and ASCII formats. It supports searching data by values and can show scrollable output. It also accepts numerous keyboard shortcuts to navigate through the hex data. Hexedit also features useful editing shortcuts for copying, pasting and selecting the data.
You can install Hexedit in Ubuntu by using the command mentioned below:
Hexedit is available in repositories of all major Linux distributions, so you can install Hexedit from the package manager. You can also compile its executable binary file from source code.
To open a binary file in Hexedit, use a command in the following format:
To learn more about its usage, run the following two commands:
Hexer
Hexer is a command line hex editor that supports vi-like interface and keybindings. It can show multiple buffers and supports auto-completion. It can also use RegEx expressions to search data and allows users to undo their changes.
You can install Hexer in Ubuntu by using the command mentioned below:
Hexer is available in repositories of all major Linux distributions, so you can install Hexer from the package manager. You can also compile its executable binary file from source code.
To open a binary file in Hexer, use a command in the following format:
To learn more about its usage, run the following two commands:
Conclusion
Hex editors are really useful to view binary data of pre-compiled files whose source code is typically not available. However, viewing hex data, finding right values, understanding patterns and editing data can be an extremely difficult task as often human readable data is not available. In Spite of these challenges, developers often use hex editors to reverse engineer binary data.
About the author
Nitesh Kumar
I am a freelancer software developer and content writer who loves Linux, open source software and the free software community.