Як я можу використовувати /dev/(u)randomUbuntu або будь-які * nix системи?
Я спробував це, але в ньому сказано, що в дозволі відмовлено.
Примітка. Я також спробував як root.
/dev/(u)random
sudo /dev/(u)random
sudo -s; /dev/(u)random
Як я можу використовувати /dev/(u)randomUbuntu або будь-які * nix системи?
Я спробував це, але в ньому сказано, що в дозволі відмовлено.
Примітка. Я також спробував як root.
/dev/(u)random
sudo /dev/(u)random
sudo -s; /dev/(u)random
Відповіді:
Це файл, схожий на пристрій, тому ви можете робити такі речі, як кішка, або копіювати з нього. Наприклад:
dd if=/dev/urandom of=~/urandom_test count=4 bs=1024
Створює файл, що містить 4K випадкових байтів.
cat /dev/urandom > ~/urandom_test2
Буде продовжувати записувати випадкові байти у цей файл, поки ви не натиснете Ctrl-C. Не робіть цього в низькопродуктивній системі ...
head -30 /dev/urandom > ~/urandom_test3
Напишемо 30 рядків випадкових байтів
bytes terminated by a \n. Що твоє? head -30 /dev/urandomдасть вам 30 рядків випадкових байтів. Довжина цих рядків, безумовно, буде випадковою. Спробуйте запустити wc -lсвій вихідний файл, якщо ви не впевнені.
/dev/urandomобмежується до 32 Мбайт за read()і ddне буде намагатися прочитати ще раз /dev/urandomприбутковості тих 32 MiB, так що ви повинні зателефонувати ddз iflag=fullblock. See dd створює 32 Мб випадковий файл замість 1 Гб
Якщо вам потрібна певна кількість випадкових байт, прочитайте цю кількість байтів /dev/urandom.
Це "спеціальний файл", який створений таким, щоб схожий на файл для читання випадкових чисел.
Використовувати catдля читання з /dev/urandom- це погана ідея, оскільки вона буде намагатися читати /dev/urandomдо кінця - але це не закінчується.
Можна використовувати head. Але слідкуйте за читанням у байтах, а не за рядками - адже рядки будуть випадковим чином розділені випадковими байтами нового рядка.
Отже, щоб прочитати 30 випадкових байтів у файл random.bytes, використовуйте:
head -c 30 /dev/urandom > random.bytes
Ви можете читати з нього як звичайний користувач.
Зазвичай ви хочете використовувати /dev/urandom, ні /dev/random.
Проблема полягає в тому, що /dev/randomважко використовувати правильний спосіб - а простий у використанні неправильно. Неправильне використання спочатку спрацьовує, але пізніше створює дивні - навіть випадкові проблеми з роботою. Іноді.
Коли ви користуєтесь /dev/urandom, він використовує /dev/randomвнутрішньо, піклуючись про складні деталі.
RANDOMдля створення випадкових натуральних чисел:echo $RANDOMта програмаshufдля генерації випадкових перестановок, наприклад, відтворення у випадковому порядку зі списку відтворення.