If you want to start a VNC server before login on your Linux machine a good option is to make the graphical login manager start the VNC server.
Create /etc/init/x11vnc:
vi /etc/init/x11vnc
Then paste:
start on login-session-start script /usr/bin/x11vnc -xkb -auth /var/run/lightdm/root/:0 -noxrecord -noxfixes -noxdamage -rfbauth /etc/x11vnc/passwd \ -forever -bg -gone "xscreensaver-command -lock" -nodpms -rfbport 5900 -httpdir /usr/share/vnc-java/ -httpport 5800 \ -rfbversion 3.6 -permitfiletransfer -shared -dontdisconnect -alwaysshared -o /var/log/x11vnc.log end script
The above line presumes you are using lightdm and you have setup x11vnc with a password file.
Reboot.