May I recommend the Unix utility split (1)?
split -- split a file into pieces
split [-a suffix_length] [-b byte_count[k|m] | -l line_count -n
chunk_count] [file [name]]
The split utility reads the given file and breaks it up into files of
1000 lines each. If file is a single dash or absent, split reads from
the standard input. file itself is not altered.
The options are as follows:
-n Split file into chunk_count smaller files.
Okay, maybe that was a bad suggestion. The GNU version does not have a split-to-n-chunks feature, it seems.