If you don't have much Linux experience, here are more details:
First you will need a "server" to hold your media. This can be Wind0ze, Mac, or Linux. I have a slackware server that has 1.6TB of disk space, it runs Samba so all the wind0ze boxen on our network can access it easily. It has 3 shares; Movies, Music, and Recordings. The Movies and Music are read-only, so my housemates don't accidentally hose anything, and the Recordings is where you can put stuff. Only the OSD has access to the Recordings share because it's restricted by IP. There is a symbolic link from recordings to Movies, so people can watch the OSD recordings but cannot delete them.
So at the very least, we need one share. Depending on your operating system, creating this will differ in procedure, but information on how to do this can be easily found on the net. I DO NOT recommend you set a password on it, at least not yet. Once you have your share ready, download Bagster's VNC package and put the files into your new shared directory. Here is where to get them:
https://svn.neurostechnology.com/hackers/bagster/x11vnc/ The 2 files you need are "send_ir.sh" and "x11vnc". You don't need the readme.
Now, You will need to determine the IP address of your OSD. Once you know this, open your shell, command prompt, or terminal window depending on what OS you run. On windows this would be "Command Prompt". Almost all OS's have Telnet. So now type this:
telnet 0.0.0.0
Replace 0.0.0.0 with the actual IP address of your OSD. What I did on mine was assign it a fixed address via DHCP. This way it never changes. Your router or DHCP server usually has a way to do this, but it's not needed. You can also set it as static IP in the OSD setup.
Once connected the OSD will display a "login:" prompt. Type "root" and hit enter. It will then ask for the password. It should be "pablod", but if that fails, try just hitting enter. You can change this if you like, but I don't recommend it.
Once logged in you will see (should see!) something similar this:
Connected to neuros.
Escape character is '^]'.
neuros login: root
Password:
BusyBox v1.6.1 (2008-01-08 12:18:59 CST) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
~ $
The "~$" is your command prompt. Type "cd /mnt/OSD" and hit enter. (don't type the quotes!) The prompt will change reflecting your current directory. The "cd" command means "change directory".
Now type "ls" and hit enter. This will list stuff (files and subdirectories) in your current directory. It should show a few files and return to a waiting command prompt. Beware that case matters in linux for everything, and pay attention to where I put the spaces.
Now, lets test your share. Type "mkdir /media/test" and hit enter. This will create an empty directory which we will use as a mount point. This is where the OSD "looks" for media when you browse. If you go to the "Play - Browse" menu on your OSD now, you will see a new entry called "test". There will be nothing in it, yet. Also note that this is not persistent. As soon as you reboot the OSD it will go away.
Now let's put something in it! Type "mount.cifs //0.0.0.0/sharename /media/test" where 0.0.0.0 is replaced with the IP address of the machine with the share, and "sharename" with the name of your share. On mine, it's called "neuros", so I did this: "mount.cifs //10.0.0.1/neuros /media/test". Note the spaces. I have exaggerated them so they are clear. It usually doesn't hurt to have extra spaces where one is required, but having at least one is absolutely needed!
I use the IP address for my server's name, but you could also use the machines name. Like "//mypc/myshare". It should work, but is not guaranteed like an IP address is. Beware, that the IP address could change in the future if it is not set static!!!
Once you hit enter on the mount.cifs command, it should come back and ask you for a password. If you have set a password on your share, (against my advice) enter it now. You should get a "could not update mount table" if all went well. Ignore this error, it is a quirk because the mount table on the OSD is set in ROM. If you get something like:
retrying with upper case share name
mount error 6 = No such device or address
Refer to the mount.cifs(8) manual page (e.g.man mount.cifs)
You probably didn't get the IP address right, or your share doesn't actually exist. If it worked, you should be able to Browse into test on the OSD and see your x11vnc files! Did it work? If it didn't, you need to troubleshoot your share. Can you access it from another machine on your network? Can you "ping" the IP address from yoour OSD? (type "ping 0.0.0.0" with the IP address of your server, it should come back with "64 bytes from 0.0.0.0: seq=1 ttl=52 time=4.2 ms". The seq will increment and the time will vary. To stop ping, hit CTRL-C.)
Once you get the shares working, then we are ready to make the script to automount them.
type "vi /mnt/OSD/rc.user" and hit enter. "vi" is a old-school UNIX text editor. It scares many, and hurts few. There are many tutorials online on how to use it fully, but I'm going to only give you the basics.
Hit the "i" key which means "insert". Type the following:
#!/bin/sh
/mnt/OSD/phils.sh &
Then hit the ESC key to take you out of insert. Hit the colon key ":" then "w" then enter. This means write. Then hit ":" then "q" then Enter. This Quits. Voila! Your first encounter with vi and you lived to tell about it! =)
Now lets create the phils.sh file:
Type "vi /mnt/OSD/phils.sh" and hit enter. You know the drill now, hit "i" then begin typing: (or you can copy/paste into your telnet)
#!/bin/sh
if [ -e /var/tmp/philran ]; then
date >> /var/tmp/philran
else
touch /var/tmp/philran
exit
fi
/bin/mkdir /media/Recordings
/sbin/mount.cifs //0.0.0.0/myshare /media/Recordings -o user=root,pass=,rw,nolock
if [ -x /media/Recordings/x11vnc ]; then
date >> /var/tmp/vnclog
/media/Recordings/x11vnc -rawfb fb0 -pipeinput /media/Recordings/send_ir.sh -forever >> /var/tmp/vnclog &
else
/bin/rmdir /media/Recordings
fi
Note that you need to replace the IP address and share name with yours!!!
If you want to add more shares, or the UPNP killer, do it later. For now, lets see if it works! Carefully verify your script is correct, then Hit ESC, then ":w" enter, then ":q" enter.
You can check your file by typing "cat /mnt/OSD/phils.sh" and hitting enter. It will spit it all out.
We now need to make them executable. type "chmod 755 /mnt/OSD/rc.user" and hit enter, then do the same for phils.sh: "chmod 755 /mnt/OSD/phils.sh" and hit enter. We also need to do this for the 2 vnc files. If you sucessfully mounted them in test, you do that with "chmod 755 /media/test/x11vnc" and "chmod 755 /media/test/send_ir.sh". If you get a "chmod: /media/Movies/.htaccess: Input/output error" that means your share is not writeable. Fix this!!!
If all is well, you should be able to type "reboot". The OSD will kick you out of telnet and reboot. Once it's up, you should be able to VNC into it if all went well!
I recommend UltraVNC:
http://prdownloads.sourceforge.net/ultravnc/UltraVNC-102-Setup.exe?downloadRun the VNC Viewer and put in the IP address of your OSD. Voila!
If it didn't work, check to make sure your "Recordings" share is in Play - Browse. If it is not, something's wrong! Telnet in and try to see what happened. You can look at the "logs" in the form of /var/tmp/philran and /var/tmp/vnclog to see what happened.
Enjoy!
cd /mnt/OSD