Where is the script that creates home folders in linux?

Fedora will copy the contents of /etc/skel into your newly created home directories upon account creation. You can just toss empty public_html and private_html directories there.


In debian you can provide a script that is run after adduser is called. Perhaps fedora has something analog. You can use this script, if you have further things to do...

Here a snippet from man adduser

If the file /usr/local/sbin/adduser.local exists, it will be executed  
after the user account has been set up in order to do any local setup.  
The  arguments passed to adduser.local are:
username uid gid home-directory
The environment variable VERBOSE is set according to the following rule:

0 if --quiet is specified

1 if neither --quiet nor --debug is specified

2 if --debug is specified

(The same applies to the variable DEBUG, but DEBUG is deprecated 
and will be removed in a later version of adduser.)