View Full Version : UserData profiles (databases and thumbnails cache) on a SMB/Samba network share?
I have two Xboxs running XBMC pulling all files off a PC i.e no local content.
Is there anyway I can put the UserData file on the PC so that I don't have to keep updating both Xbox libraries? Both Xboxs are connected to TVs with the same specs, so GUisettings aren't a problem.
It'd be great if I can do this, as then my music and movie databases, especially top 100s, viewed movies etc will be synchronised
Greetings to EVERYONE
As this is my first post on this forum I would like to share some background. A few months ago I came across XBMC on the web and decided to try it out. A friend at work gave me an XBOX and the first thing I did was chip it and install XBMC. Well, I loved it so much that I got another two XBOXes and did the same thing so I could scatter them around the house. I set up a NAS and all of them can access media files from it. I’ve figure out how to do most things that I wanted to do apart from this:
On my main XBOX I sometimes spend some time organising the media and manually edit some stuff that’s not available IMDB or CDDB. Everything looks great on the main box and I can easily work out that copying the databases and thumbnails from the main box to the others will make them equally nice. But, I don’t want to have to do that every time I make some manual changes or download some IMDB or CDDB info.
What I want to do is share the databases and thumbnails from a SMB share on the NAS. And it would be really good that multiple boxes could use the databases at the same time. Is this possible with configuration like remapping directories? Would I be going in the right direction by remapping paths with ‘subst’? Will this work on an SMB share? Can the databases be shared?
LASTLY I would to thank the creators, contributors and maintainers for this excellent bit of software.
Two thumbs up to you ;)
you cant...
first, the thumbnails are cache locally for speed. a remote cache would negate this and every access to a folder would be just as slow as when you first enter a folder for the first time.
and the databases must be local. the sqlite engine does not have any visibility into the shared locations.
this leaves you with two choices:
1) change the code however you like to remove these restrictions
2) write some python scripts to sync up your userdata folder between xboxes
you cant...
first, the thumbnails are cache locally for speed. a remote cache would negate this and every access to a folder would be just as slow as when you first enter a folder for the first time.
and the databases must be local. the sqlite engine does not have any visibility into the shared locations.
this leaves you with two choices:
1) change the code however you like to remove these restrictions
2) write some python scripts to sync up your userdata folder between xboxes
Thanks for the prompt response and for the suggestions.
My problem is that I'm not much of a programmer (or at all).
What I do now is marry all my media files with a thumbnail image with tbn extensions on the shares. This has as much success as it can without much change to the application. It is not perfect but its okay... It does beat some of the low quality images that get downloaded from IMDB anyway...
hackmaster
2007-02-07, 22:44
This whole thought process started when I relised the shear number of modified xboxes I have running. I currently have an xbox running XBMC on each and every TV in my house, all wired to a central server which houses all of my house's media. It is quite a task to keep them all updated, and my friends/roommates/occational parent find it annoying that their settings are not uniform across all xboxes. I think it would be nifty if xbmc could be hacked together to do this:
have a central network server (aka 'squirrel') store each users 'userdata' settings. users would all share the same network shares, except a couple users who have extras (aka their own computers).
Big pluses would include being able to pause a video and resume it later on a different xbox. This could be achieved by:
* The prexisting setting to save locations in videos(video would be stopped then reopened. Works on same xbox now)
* A modified version of the XBMC Python script "ResumeX"(I guess stopped, dont really know)
* The not-likely option that XBMC could somehow premit a user to log-off and log back in mid-video playback. (best suggestion, probably not possible)
Remember, network share locations are all static, xboxs were all created by cloning, so all files exist in the same places.
Does anyone know if any of this is possible?
Any tips on where to start looking?
Any other wishes people have for their multi-box installations?
Would it be possible to even launch XBMC from a network share :shocked:
This would mean updating only the files in the network share to update XBMC across all boxes!
I think the ability to have user settings, or even global default settings (like bookmarks) on a common share has real merit. I am sure there are many people who run multiple xboxes.
This might be a good way to achieve the "follow me" concept found on this post. http://xbmc.org/forum/showthread.php?t=24415
no network share launching.
no network configuration files.
use scripts to syncronize.
there are technical reasons for this.
Solo0815
2007-02-12, 17:42
How about a Profile-Folder outside of Q:\Userdata? I posted a feature-request about half a year ago and didn get any feedback (yes / no / later)
http://xbmc.org/forum/showthread.php?t=20851
Then the user can store his settings on E: or F: outside if the xbmcdir and don't overwrite his settings by fault.
you can move the entire userdata folder.
that's the best we offer / are willing to offer.
fyi, i'm pointing to this; http://www.xboxmediacenter.com/wiki/index.php?title=Manually_Editing_Profiles
mind the comments for the first profile.
SpoonsJTD
2007-02-12, 19:52
I've been kicking around ideas for an Xbox Central service\application that would run on a PC on the same network as my xbox's. Between XBMC being so slick and the cost of a used XBOX being relatively reasonable, I imagine the multi-xbox community is growing, so this kind of stuff could be valuable.
Possible features:
Manage profiles
Manage updates (push changes for skins and binaries)
Manage save games (keep save games in sync across multiple xbox's)
Manage databases (keep movie, music, etc databases in sync across multiple xbox's)
There're probably some xbox-side changes that could be made to make the whole process nicer -- like a 'XBMC has detected that there are saved games on another xbox that are newer, would you like to sync them?' kind of thing.
What are people doing now to manage multple xbox's?
Solo0815
2007-02-12, 20:46
@ spiff: i missed that, sorry. I searched in the GUI of XBMC, there is only Q:\userdata\_whatever_ available
@ Spoons: Maybe some1 can write a python-script for that? Stuff can easily be copied per FTP from the "Brain"-Xbox ;)
ultrabrutal
2007-02-12, 23:56
spoons, I'm with you... I have 4 xbox1's (and 1 xbox360). This is maybe alittle more than usual but I know people with 2 or 3 boxes. Upgrading and maintaining them takes alot of time since it's done manually. I have the same Sources.xml on all boxes. Two has the stock harddrive and two have larger ones because of games.
All media files I have put on a NAS, but this could be any server or even an Xbox running XBMC.
I see no idea for a PC having to run. Files could be placed on the NAS (best) or on one of the boxes.
On NAS:
* Profiles - Same profiles on all boxes - settings per box (because screen is probably not the same)
* Updates. Put the new ZIP or a folder on the NAS and XBMC will fetch and install the new version (ofcourse not overwriting UserData)
* Save games (when exiting a game XBMC will notice that a save game changed and place them on NAS, other Xboxes will notice this a retrieve them automaticly and transparently)
* Central databases. No need to sync, just use them on the NAS
* Central games. Games could be stored centrally in ISO/RAR format and downloaded when run to xbox and unpacked. Ofcourse it will take some time provided you switch game. This would make alot of games run on a stock harddrive. This is good for a bedroom xbox where you usually don't play and with the savegame syncing it means you can move from one room to another. Ofcourse not all games are runable from stock drive because of limited space.
jabba200
2007-09-07, 21:39
I just got another xbox for my bedroom and its pissing me off to have to update both machines thumbnails when i add new media to my network share. any way that i can set a central shared userdata on my network share that both boxes would draw from?
thanks in advance for any help.
Typhoid Mary
2007-09-07, 22:04
Look here: http://xbmc.org/forum/showthread.php?p=78816
and here: http://xbmc.org/forum/showthread.php?t=27990
BTW both were found using the invisible-to-most search function... Give it a try :)
Hi,
I wondered if there is a way of telling the XBMC to create the UserData directory under an SMB share.
is there anyway of doing something like that ?
My XBOX is currently highly fragmented, and the UserData files are not helping it. I'm not really familiar with the smb mechanism the XBMC is using, but I guess there might be a benefit by storing it remotely.
thanks
or just ftp over the user data!!!!
takes about one minute!!!!
Solo0815
2007-09-16, 13:20
or just ftp over the user data!!!!
But if you have more than 2 Xboxes it is "much" work :oo:
Many ppl have a NAS where they store their media (films, mp3s pics). Why not storing the userdata-folder there? If you log in the Xbox loads the userdata from the SMB-share (for from ftp) and copys it to the Xbox-HD.
If the SMB share is not reachable, there can be a fallback and XBMC loads the last userdata from the HD with a Popup: i.e.
Can´t load userdata from Share. Using local userdata. Please check connection
MidKnight
2007-09-16, 14:02
But if you have more than 2 Xboxes it is "much" work :oo:
Many ppl have a NAS where they store their media (films, mp3s pics). Why not storing the userdata-folder there? If you log in the Xbox loads the userdata from the SMB-share (for from ftp) and copys it to the Xbox-HD.
If the SMB share is not reachable, there can be a fallback and XBMC loads the last userdata from the HD with a Popup: i.e.
i think thats a brillant idea
For thumbs, you could store thumbnails with your media on your PC/NAS
then each xbox would get the thumbs from there.
cyo80rg101
2008-05-14, 22:44
Hi guys,
I have three xboxes, all running xbmc, all on the same network, all using the same NAS for movies etc.
In fact, the only difference is their locations in different rooms - all my settings, tweaks, AV libraries etc I want to be the same.
For instance, I've spent some time updating the Movie Library on my lounge xbox with cover art etc.
Is it possible to store userData on a central point - ie the NAS perhaps - and tell all three xboxes to look their for userData, meaning they each run identical settings, libraries etc?
If not, is it simply a case of copying the User Data folder from one on to the others?
Thanks in advance...
rodercot
2008-05-15, 01:48
Yes that is the main idea is to replicate your Userdata folder from one to the other. I keep a back up on my data server and replicate that to the other machines in the house when the first is updated. I did notice an issue with the last build that I was getting my Video Db Overwritten and there was nothing in the log, somehow would take my 5Mb Db to 1Mb in any scenario. I did a clean install of the newest build and copied my Userdata files back to that machine after and all seems well now.
I would love to see a client/server setup such as mymovies for MCE with an SQL lite db. I am not a developer by any means but it would be an awesome feature.
Regards,
Dave
imickey503
2008-05-16, 22:19
I asked this question to my local XBMC modder guy here in Portland Oregon and was unable to really figure this one out I am sure there are ways to do this but I think it involves transferring certian files to the different networked xbox's on the network.
Please bear with me.
1. Here is my file located on my NAS/OSX/WINXP-SAMBA share.
And Stuff on my Win2003SServer:
http://wiki.hak5.org/w/images/3/3e/Evilserver-3d.jpg
2. here are my XBMC xbox's located around the house and one at via VPN of site
http://www.tweakers.net/ext/i.dsp/1100173219.jpg
3. here is the over 1 terabyte worth of Media I have inluding dvd's MOPEGS and divix files etc.
http://www.basoncomputer.com/specification/delpv224f-2.jpg
I want to have this TYPE MEDIA INFORMATION, NOT JUST PICTURES :rolleyes::
http://farm1.static.flickr.com/45/130155456_ee608f31c7.jpg?v=0
HOW CAN I GET THIS METADATA/SCRAPPER INFO TO DISPLAY FROM A REMOTE NAS/SAMBA/SHARE? Can I Keep it there instead on the xbox?
http://www.thecmsblog.com/why-blog.jpg
This gets real tedious when you have to update raid volumes switch drives do backups and other things with media From NAS storage devices or shares on the network.
So is there a way for XBMC to store local DATA from "Thumbs" and stuff" or XML database files to the remote NAS/Shares on the network while also being able to successfully attain the information from those remote shares at the same time.
I was kind of hopping for something like what you would get from a iTunes DAAP share. All that stuff you have on your computer as play lists and media TAG info and Metadata is passed on to the xbox's on the network. Even if you have like 10 of them!
The pictures make it allot easier to use for guys like me that don't want to wear glasses to watch tv.
And If you are local to Portland , Oregon 97211, beers /Soda to show me how to get this done if it involves editing XML/Database files from what I have been told.
Sometimes I wish there was like a store or something you can go to buy support on this stuff. Man That would be great!!!! To bad laws get a little sticky around that point. Probably why you do not see any classes greared to the ubject of media centers. If there were, What a Learning opportunity!
thanks
Mickey
TheBoxMan
2008-05-19, 17:54
But if you have more than 2 Xboxes it is "much" work :oo:
Many ppl have a NAS where they store their media (films, mp3s pics). Why not storing the userdata-folder there? If you log in the Xbox loads the userdata from the SMB-share (for from ftp) and copys it to the Xbox-HD.
If the SMB share is not reachable, there can be a fallback and XBMC loads the last userdata from the HD with a Popup: i.e.
That's on the money.
There is a robocopy type python script somewhere that was written 8 moths or so ago for copying userdata to a samba share and back, It checks modified date and file size rather than a checksum and just copies if there's changes.
Course it would be nice to have a feature exactly as you've described inbuilt in XBMC ;)
imickey503
2008-05-20, 06:19
http://xbmc.org/forum/showthread.php?t=28199
the link to the python script discussion. I can only hope that this will lead me to the right direction. So If any body wants to come to my house and do this, I AM NOT KIDDING ABOUT THE B E E R AND SODA, HELL PIZZA AND DOUGH NUTS IF THAT'S YOUR THING! :grin:
So is there like any XBMC ALL STARS that live in Portland Oregon? You know of all the final cut pro user groups out there, there is not one that i know of that is on XBMC.
I will keep looking on how to get this all working. Almost thinking of using somthing like carbon copy cloner to get all this working on the other xboxes in the house/ network.
Would this qualify under a feature request?
What I would like to be able to do is move the UserData folder to a NAS that was common to each xbox. Allowing me to press stop in one room, walk to the next and resume exactly where I left off.
I was looking to synchronize cache and resume timestamp data between multiple xboxs and came across
this thread. (http://xbmc.org/forum/showthread.php?t=24727)
I'm sure the "technical reasons" mentioned in the thread is simply the network adapter is not ready yet? or is unreliable during loading?
That could be overcome by loading the default profile, then switching to the network located profile. If reliability is an issue, I'm content booting the xbox multiple times to get it to load.
The thread got me to this on the wiki (http://xbmc.org/wiki/?title=Manually_Editing_Profiles).
Problem is any change I make to the <directory> tag in the profile.xml file is overridden back to default when loading the profile or restarting the xbox. I've tried moving it to E:\profile and a E:\dashboard\UserData\profiles\MasterCopy and they always get changed back to <directory>q:\UserData</directory>
For good measure, I also deleted the TDATA & UDATA 0faceXXX folders and copied the profile.xml to xbmc's root. Didn't help, tdata and udata were partially repopulated and the new profile.xml location was ignored.
The only way I can change the directory is using the xbmc gui to create a new profile, but all new profiles need directories relative to the UserData folder. Only the default profile's directory can be moved elsewhere, but is not editable from within xbmc's gui and can only be changed manually.
XBMC SVN 2008/05/18 rev13120
jmarshall
2008-07-07, 06:32
The userdata folder MUST be located on the xbox harddisk. Where it is you can specify via system/profiles.xml - I have no idea if this really works or not. This appears to be your only issue?
Yep, it is a great idea.
Any advice for a guy writing a python script that autoruns on boot and synchronizes / copies the UserData from a network location? Then after boot and the initial download, each time UserData has a file changed or created the script will upload that file to update that network location.
Make sure that you only use one "master" where changes are made. If you make changes on two xbox's, you won't be able to reconcile the database changes. (Well you could, but it's going to be alot more complicated. You'd need to script something to merge the database changes together on the NAS.)
And you can do some relatively simple checks to see if something has changed within Userdata. You can produce a hash value of the filenames, and or their content. I would suggest only doing it by filenames for everything except the actual databases. You can then hash the content of the database files as an extra check.
joe_user
2008-11-15, 11:24
Hey all,
Search for the master/slave solution on the forums. What is the current status using shared databases on a SMB share?
Regards,
joe
vskatusa
2009-01-01, 23:09
I have a NAS that houses my media sources.
What is the easiest way to share the SAME userdata across the network?
If I setup my xbmc in pc1, how do i seamlessly setup pc2 to use the SAME setup as PC1?
Gamester17
2009-01-02, 00:15
It is not currently possible, see => http://xbmc.org/forum/tags.php?tag=synchronize
I have a NAS that houses my media sources.
What is the easiest way to share the SAME userdata across the network?
If I setup my xbmc in pc1, how do i seamlessly setup pc2 to use the SAME setup as PC1?
For a one time thing, you can just copy the %appdata%\xbmc folder over. If you want to keep them in sync, a simple script around robocopy would do the trick. You could write a 3 line batch script to 1. robocopy a userdata folder on the NAS down to the PC (skiping unchancged files), 2. "start /wait xbmc" 3. copy userdata folder up to NAS (again skiping unchanged files). Example is for Windows, but the same basic thing would work in any OS.
That way you copy down the latest version at startup, keep it locally for fast access, then send it back to the server with updates when you're done. You also avoid two instances of xbmc stomping on each other (or being slow to access a remote db).
Hello all,
I would like know if is possible to store the XBMC database on another PC.
The idea is to install XBMC on a HTPC and store the database on a NAS which is daily backuped.
So in case there is a problem with my HTPC like a crash disk, I have the database yet.
ccMatrix
2009-06-02, 23:52
If you use the portable mode you could have the entire install on share on your NAS. But the downside to all that is speed (LAN vs. HDD).
If you just worry about losing your XBMC setup when the disk crashes you could run a backup script that keeps a copy of your profile in a NAS share. I use the free Microsoft SyncToy (http://www.microsoft.com/downloads/details.aspx?familyid=C26EFA36-98E0-4EE9-A7C5-98D0592D8C52&displaylang=en) on one machine. It is pretty simple and can do that easily. Just create a folder pair and setup a task which runs every week or day.