Vente på /dev/random (bash-script)
Hej folkens
Jeg er ved at lave et bash-script til automatisk dannelse af nøglefiler (til LUKS/dm-crypt).
#!/bin/bash
sdir=/home/user/keyfiles
name=$(($(ls -U -l $sdir|wc -l)+1))
target=$sdir/$name
echo $sdir
echo $name
dd if=/dev/random of=$target bs=1024 count=5
chmod 0400 /root/keyfile
$name læser antallet af filer og adderer med 1, således at den første fil hedder "1", den næste "2" osv.
Mit problem ligger dog i, at /dev/random ikke spytter 1024*5 ud, som dd ellers beder den om, men stopper langt før, hvilket resulterer i en for lille fil.
Spørgsmål:
Hvordan lader jeg mit script vente på, at /dev/random får genereret nok bits?
- Log in to post comments
Kommentarer2
Prøv evt med /dev/urandom i
Prøv evt med /dev/urandom i stedet.
Det virker (selvfølgelig)
Det virker (selvfølgelig) at benytte /dev/urandom.
Ideen med at benytte /dev/random er, at kvaliteten af den tilfældigt generede data er meget bedre end ved brug af /dev/urandom (omend langsommere)
Jeg er fint med på, at /dev/random blokerer for kommandoer, således at entropy pool'en ikke bliver tømt, men der må vel være en måde at få /dev/random eller dd til at vente på hinanden, således at resultatet ikke bliver ligesom beskrevet herover?