Найдите файлы, которые содержат только пустые символы '\0' и символы новой строки '\n'.
q
в sed заставляет каждый поиск файла выходить непосредственно после нахождения любого ненулевого символа в строке.
find -type f -name 'file-*' |
while IFS= read -r file ;do
out=$(sed -n '1=; /^\x00\+$/d; i non-null
; q' "$file")
[[ $out == "1" ]] && echo "$file"
done
Сделайте тестовые файлы
> file-empty
printf '%s\n' 'line1' 'line2' 'line3' > file-with-text
printf '%4s\n' '' '' xx | sed 's/ /\x00/g' > file-with-text-and-nulls
printf '%4s\n' '' '' '' | sed 's/ /\x00/g' > file-with-nulls-and-newlines
printf '%4s' '' '' '' | sed 's/ /\x00/g' > file-with-nulls-only
вывод
./file-with-nulls-and-newlines
./file-with-nulls-only
Как насчет встроенного cryptsetup benchmark
?
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 633198 iterations per second
PBKDF2-sha256 329326 iterations per second
PBKDF2-sha512 216647 iterations per second
PBKDF2-ripemd160 474039 iterations per second
PBKDF2-whirlpool 248713 iterations per second
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 707.0 MiB/s 3120.9 MiB/s
serpent-cbc 128b 98.3 MiB/s 307.2 MiB/s
twofish-cbc 128b 195.0 MiB/s 381.7 MiB/s
aes-cbc 256b 513.8 MiB/s 2373.9 MiB/s
serpent-cbc 256b 97.4 MiB/s 315.1 MiB/s
twofish-cbc 256b 198.8 MiB/s 383.9 MiB/s
aes-xts 256b 2706.1 MiB/s 2634.1 MiB/s
serpent-xts 256b 318.0 MiB/s 310.4 MiB/s
twofish-xts 256b 370.5 MiB/s 380.1 MiB/s
aes-xts 512b 2083.2 MiB/s 2073.8 MiB/s
serpent-xts 512b 323.0 MiB/s 311.4 MiB/s
twofish-xts 512b 375.9 MiB/s 380.2 MiB/s
Обычно Вы будете хотеть использовать один из шифров AES. Даже если Ваша система не поддерживает AES-NI сегодня, Ваше следующее поле может...
Посмотрите, дает ли bonnie ++ Вам тесты/результаты, Вы ищете. Bonnie ++ может быть доступной от repos Вашего дистрибутива.
Эта статья, SSD сравнительное тестирование Linux: Сравнение файловых систем и методов шифрования может также быть интересно Вам.
taskset
ограничить использование CPU Вашего шифровать/дешифровать.
– rickhg12hs
11.10.2013, 13:07
Решения, которые Вы упоминаете, действительно отличаются значительно по тому, что они на самом деле делают - dm-склеп является шифрованием целой файловой системы, в то время как ecryptfs/encfs выше файловой системы. Если Вы хотите безопасность, решаете сначала, что Вы действительно хотите и только затем, как пойти об этом.
Тем не менее не удивляйтесь, становится ли Ваш ЦП узким местом - я предполагаю, что, так как это не поддерживает AES-NI, его производительность имеет порядок величины, например, Intel Core2 Duo - который я, оказалось, протестировал приблизительно год назад. Скорость в криптомодулях ядра была примерно 38MB/s±10MB/s в зависимости от шифра и используемого размера блока (Twofish, AES, Змея и Камелия, с размерами блока 128/192/256b).