>>62
8P8(40320)個の{1..8}の順列すべてをあらかじめ内部に持っておいて、
んで random()%40320 すればいいんじゃね?

ウッホ、こんな難しすぎる問題にすんなり答えられるオレって天才!