Il comando mkdir() permette di specificare i permessi, ma rispetta le impostazioni di umask (che di default se non sbaglio e' 0022). Devi usare il comando umask(0) per fare in modo che i permessi specificati nella chiamata a chmod() vengano effettivamente applicati.