Исполняемый файл должен быть setuid и принадлежавший корню:
$ ls -la /usr/bin/sudo
---s--x--x 2 root root 173154 Oct 19 2010 /usr/bin/sudo
Ваш двоичный файл пропускает одну из тех черт. Сделайте это (как корень):
# chown root /usr/bin/sudo
# chmod u+xs /usr/bin/sudo
bdiff, кажется, доступен на Linux (по крайней мере, как часть Семейной реликвии Toolchest).
Я, вероятно, просто использовал бы регулярную старую разность с этим переключателем однако:
diff --speed-large-files bigfileA bigfileB
См. комментарий @EvanTeitelman, --speed-large-files
не влияет, как файлы загружаются в память.
Может демонстрироваться/подтверждаться для не работы с помощью следующей команды:
fallocate -l 10G testa; fallocate -l 10G testb && \
diff --speed-large-files -a testa testb
Трудно для подтверждения этого, но я нашел инструмент названным bsdiff
который происходит из bdiff
. Я подтвердил, что этот инструмент находится в Ubuntu, просто apt-get install bsdiff
.
Снова спасибо @EvanTeitelman в комментариях, bsdiff
выше различный инструмент для двоичных файлов. bsdiff
двоичный различный инструмент и может иметь дело с большими файлами. Это неясно как большой. Посмотрите следующие ссылки на поток, которые обсуждают, это - использование.
Я думаю, что Вы могли также использовать rdiff, чтобы сделать это также. Rdiff может иметь дело с очень большими файлами.
Создайте подпись одного файла:
rdiff signature A sigs.txt
Используйте сгенерированный файл подписи sigs.txt и другой большой файл B для создания дельты:
rdiff delta sigs.txt B deltaAB.txt
Delta содержит всю информацию, необходимо воссоздать файл B, когда Вы имеете просто A и файл дельты deltaAB.txt.
Для воссоздания B работайте:
rdiff patch A deltaAB.txt B
Я нашел это сообщение в блоге названным: Лучшая разность Или Что Сделать, Когда разность GNU Исчерпывает Память ("разность: память исчерпала"), который сообщает, что rdiff файлов на 4.5 ГБ только использовал ~66MB RAM.
lfhex является приложением для просмотра и редактирования файлов в шестнадцатеричном числе, восьмеричном, двоичном, или тексте ASCII. Основная сила lfhex, это - способность работать с файлами, намного больше, чем системная память. Это - инструмент GUI как бы то ни было.
-H
как синоним для--speed-large-files
. – 27.05.2013, 15:10bsdiff
двоичный различный инструмент, не инструмент разности большого файла. – 27.05.2013, 15:17--speed-large-files
флаг не влияет на способ, которым разность GNU загружает файлы в память. Попытайтесь работатьfallocate -l 10G testa; fallocate -l 10G testb && diff --speed-large-files -a testa testb
подтвердить это. (Или смотрите на исходный код.) – 27.05.2013, 15:25bdiff
от Семейной реликвии Toolchest после замены/sbin/sh
/bin/sh
в make-файлах. Теперь, когда я пытаюсь выполнить его на месте, я добираюсьbdiff: Can not execute '/usr/5bin/diff'
. Извините, я не хочу устанавливать что-либо на/usr/5bin/
. Это не эффективное решение. Другие опции, упомянутые здесь, не работают на меня, потому что я хочу к глазному яблоку различия как текст. – Christian Pietsch 02.02.2015, 19:57lfhex -c file1 file2
работы хорошо для меня после основы установки View-> Editing –> ASCII для обеих областей. – Christian Pietsch 02.02.2015, 20:13