2024-09-07, 12:35 PM
Please I need some more help. I decided to install it as normal with the .exe in W11 and since then I've been trying to migrate my Synology installation data. I've almost succeded but then I found a problem and I don't know how to fix it.
I'll explain what I've done so far. This had way too much more steps as I tried things and undid them and tried another ones, but I'll summary:
First I needed to access the hidden Synology folders with my JF information, so on the NAS I created a new shared folder, connected from the MiniPc with telnet and did:
- rm -R /volume1/newfolder
- ln -s /volume1 /volume1/newfolder
Now I mapped that folder as a drive in w11.
This gave me access to the root hidden synology folders where I found the Jellyfin one inside @appdata.
I installed Jellyfin as normal (not service) with the .exe file.
I then went to the cache, config and so on folders in the programdata/jellyfin folder.
I compared this folder with the NAS folder and found out that:
- Cache folder was almost the same, so I overwrote it.
- Same with config folder.
- Data folder got complicated, as in the nas it has another data folder inside while in the PC it didn't.
I replaced the PC folder with the child NAS folder inside the parent data folder.
- I ignored the log folder.
- Next folder was metadata, which in the NAS is inside the data folder. I overwrote it.
This took a really really long time and gave me some errors so I had to restart the process a few times.
- Next one was plugins. This was also inside the NAS data folder. I overwrote it.
- Finally, the root folder. I could see all my library information inside this folder so I overwrote it as well.
- Another folder was the transcode folder that was empty.
I then went to every library folder inside the "root" folder (not the root one, the one called that).
I opened every options.xml file with notepad and replaced the \volume1\xxx path with the letter I assigned my NAS (N:\xxx)
Then I did the same with the mblink files.
Then I updated all paths in the config folder files system.xml and encoding.xml.
Now, the worse part of the process because it took me too long to figure out how modify databases.
I opened the library.db with "db browser for sqlite" and replaced the paths with:
UPDATE TypedBaseItems SET Path = replace(Path, '/volume1/@appdata', 'C:\\ProgramData') WHERE Path LIKE '/volume1/@appdata%';
UPDATE TypedBaseItems SET Path = replace(Path, '/volume1', 'N:') WHERE Path LIKE '/volume1%';
UPDATE TypedBaseItems SET Images = replace(Images, '/volume1/@appdata', 'C:\\ProgramData') WHERE Images LIKE '/volume1/@appdata%';
UPDATE TypedBaseItems SET Data = replace(Data, '/volume1/@appdata', 'C:\\ProgramData') WHERE Data LIKE '%/volume1/@appdata%';
UPDATE TypedBaseItems SET Data = replace(Data, '/volume1', 'N:') WHERE Data LIKE '%/volume1%';
UPDATE mediastreams SET Path = replace(Path, '/volume1', 'N:') WHERE Path LIKE '/volume1%';
Once this was done I chose a god to pray to while I started the server and went to http://localhost:8096
All my libraries appeared, with all my stats (viewed, favorited and so on).
I tried watching a video and it worked great.
Now, what's the problem?
I added a new file to one of my libraries and when I clicked "scan for new files" it overwrote the metadata for every file in that library. I tried with a couple more and it happened too. So I lost all my custom metadata, images and everything.
I restored the database from the NAS folder and did the update path queries and everything is perfect again, but I can't add new files because it will remove my custom metadata again.
The files are in the same folders as always and in the database I can see their added and edit dates and they're months old.
Maybe I've overlooked an xml file?
I've looked everywhere and tried everything. I think I'm going crazy, I've been doing this for 5 days.
I'll end up doing a clean install and manually adding all the metadata, views and so on. It would've been faster but at this point I would like to successfuly migrate it.
Any ideas?
I'll explain what I've done so far. This had way too much more steps as I tried things and undid them and tried another ones, but I'll summary:
First I needed to access the hidden Synology folders with my JF information, so on the NAS I created a new shared folder, connected from the MiniPc with telnet and did:
- rm -R /volume1/newfolder
- ln -s /volume1 /volume1/newfolder
Now I mapped that folder as a drive in w11.
This gave me access to the root hidden synology folders where I found the Jellyfin one inside @appdata.
I installed Jellyfin as normal (not service) with the .exe file.
I then went to the cache, config and so on folders in the programdata/jellyfin folder.
I compared this folder with the NAS folder and found out that:
- Cache folder was almost the same, so I overwrote it.
- Same with config folder.
- Data folder got complicated, as in the nas it has another data folder inside while in the PC it didn't.
I replaced the PC folder with the child NAS folder inside the parent data folder.
- I ignored the log folder.
- Next folder was metadata, which in the NAS is inside the data folder. I overwrote it.
This took a really really long time and gave me some errors so I had to restart the process a few times.
- Next one was plugins. This was also inside the NAS data folder. I overwrote it.
- Finally, the root folder. I could see all my library information inside this folder so I overwrote it as well.
- Another folder was the transcode folder that was empty.
I then went to every library folder inside the "root" folder (not the root one, the one called that).
I opened every options.xml file with notepad and replaced the \volume1\xxx path with the letter I assigned my NAS (N:\xxx)
Then I did the same with the mblink files.
Then I updated all paths in the config folder files system.xml and encoding.xml.
Now, the worse part of the process because it took me too long to figure out how modify databases.
I opened the library.db with "db browser for sqlite" and replaced the paths with:
UPDATE TypedBaseItems SET Path = replace(Path, '/volume1/@appdata', 'C:\\ProgramData') WHERE Path LIKE '/volume1/@appdata%';
UPDATE TypedBaseItems SET Path = replace(Path, '/volume1', 'N:') WHERE Path LIKE '/volume1%';
UPDATE TypedBaseItems SET Images = replace(Images, '/volume1/@appdata', 'C:\\ProgramData') WHERE Images LIKE '/volume1/@appdata%';
UPDATE TypedBaseItems SET Data = replace(Data, '/volume1/@appdata', 'C:\\ProgramData') WHERE Data LIKE '%/volume1/@appdata%';
UPDATE TypedBaseItems SET Data = replace(Data, '/volume1', 'N:') WHERE Data LIKE '%/volume1%';
UPDATE mediastreams SET Path = replace(Path, '/volume1', 'N:') WHERE Path LIKE '/volume1%';
Once this was done I chose a god to pray to while I started the server and went to http://localhost:8096
All my libraries appeared, with all my stats (viewed, favorited and so on).
I tried watching a video and it worked great.
Now, what's the problem?
I added a new file to one of my libraries and when I clicked "scan for new files" it overwrote the metadata for every file in that library. I tried with a couple more and it happened too. So I lost all my custom metadata, images and everything.
I restored the database from the NAS folder and did the update path queries and everything is perfect again, but I can't add new files because it will remove my custom metadata again.
The files are in the same folders as always and in the database I can see their added and edit dates and they're months old.
Maybe I've overlooked an xml file?
I've looked everywhere and tried everything. I think I'm going crazy, I've been doing this for 5 days.
I'll end up doing a clean install and manually adding all the metadata, views and so on. It would've been faster but at this point I would like to successfuly migrate it.
Any ideas?