/ Dev / (u) এলোমেলোভাবে কীভাবে ব্যবহার করবেন


32

আমি কীভাবে /dev/(u)randomউবুন্টু বা কোনও * নিক্স সিস্টেমে ব্যবহার করতে পারি ?

আমি এটি চেষ্টা করেছিলাম তবে এটি অনুমতি অস্বীকার করে বলেছে।
দ্রষ্টব্য: আমিও রুট হিসাবে চেষ্টা করেছি।

/dev/(u)random
sudo /dev/(u)random
sudo -s; /dev/(u)random

2
দয়া করে লক্ষ্য করুন যে এই কমান্ডগুলি কেবলমাত্র তখনই ব্যবহার করা উচিত, যখন আপনার সত্যিই ভাল পাসওয়ার্ড তৈরি করার জন্য উচ্চ মানের র্যান্ডম ডেটা প্রয়োজন হয়। অন্যথায় আরও হালকা-ওজনের বিকল্প রয়েছে, উদাহরণস্বরূপ শেল এনভায়রনমেন্ট 'ভেরিয়েবল' RANDOMএলোমেলো ধনাত্মক পূর্ণসংখ্যার সংখ্যা তৈরি করতে: echo $RANDOMএবং প্রোগ্রামটি shufএলোমেলো ক্রমবর্ধমান উত্পন্ন করার জন্য, উদাহরণস্বরূপ প্লেলিস্ট থেকে এলোমেলো ক্রমে খেলুন।
সুডোডাস

উত্তর:


54

এটি ডিভাইসের মতো একটি ফাইল, যাতে আপনি এটি বিড়ালের মতো কাজ করতে পারেন বা এটি থেকে অনুলিপি করতে পারেন। এই ক্ষেত্রে:

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 লাইন লিখবে


1
নির্দ্বিধায় তখন নির্দ্বিধায়!
aychedee

5
আমি চাইলে আমার প্রতিনিধি> 15
ক্যানার কর্কমাজ

1
দ্রষ্টব্য: কম-পারফরম্যান্স সিস্টেমে বিড়াল / দেব </ urandom> ~ / urandom_test2 করবেন না -> যে সিস্টেমটি হিমশীতল
ক্যানার কর্কমাজ

1
আচ্ছা .. এটি আপনার লাইনের সংজ্ঞাটির উপর নির্ভর করে। আমার সংজ্ঞা bytes terminated by a \n। তোমার কোনটা? head -30 /dev/urandomআপনাকে 30 লাইন এলোমেলো বাইট দেবে। এই লাইনের দৈর্ঘ্য অবশ্যই এলোমেলো হবে। আপনি wc -lযদি নিশ্চিত না হন তবে আপনার আউটপুট ফাইলে চালানোর চেষ্টা করুন ।
আইচিডি

3
দ্রষ্টব্য যে /dev/urandomপ্রতি 32 MiB এর মধ্যে সীমাবদ্ধ read()এবং ddএকবারে /dev/urandom32 বারের মধ্যে 32 বারের মতো MiB পাওয়া যায় না, তাই আপনাকে কল ddকরতে হবে iflag=fullblock। দেখুন ডিডি 1 গিগাবাইটের পরিবর্তে 32 এমবি র‌্যান্ডম ফাইল তৈরি করছে
সের্গেই কোলডিয়াজহনি

14

এলোমেলো বাইট পান

আপনার যদি একটি নির্দিষ্ট সংখ্যক এলোমেলো বাইটের প্রয়োজন হয় তবে এ থেকে বাইট সংখ্যাটি পড়ুন /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অভ্যন্তরীণভাবে ব্যবহার করে, জটিল অংশগুলির যত্ন নেওয়া।


4

আপনি যদি স্বীকৃত সংখ্যা সহ এটি পড়তে চান তবে আপনি এটি করতে পারেন

od -d /dev/random

0

আমি ব্যক্তিগতভাবে এটি টোকেন উত্পন্ন করার জন্য ব্যবহার করি:

dd if=/dev/urandom  count=1 bs=128 | sha512sum
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.