Ford Prefect Posted May 24, 2010 Share Posted May 24, 2010 Hi folks, I have now build my first unRAID box (on a plus lic.) and ran into an issue when trying to migrate my data. I have an openfiler NAS running which I want to retire as soon as the data has been migrated onto unRAID. Now I learned the hard way, that unRAID does not support symlinks Is there a recommended way to either - overcome the problem (i.e. while migrating - by automagically doubling the files instead of creating symlinks) - or to enable a symlink feature TIA, fred Link to comment
WeeboTech Posted May 24, 2010 Share Posted May 24, 2010 unraid supports symlinks on the disk shares. If the links are created on the disk shares, they will be readable and accessible on the user shares. creating links on the user shares is not supported at this time. root@Atlas /mnt/disk1/boot #touch source root@Atlas /mnt/disk1/boot #ln -s source dest root@Atlas /mnt/disk1/boot #ls -l source dest lrwxrwxrwx 1 root root 6 May 24 05:03 dest -> source -rw-r--r-- 1 root root 0 May 24 05:03 source root@Atlas /mnt/disk1/boot #cd /mnt/user/boot root@Atlas /mnt/user/boot #ls -l source dest lrwxrwxrwx 1 root root 6 May 24 05:03 dest -> source -rw-r--r-- 1 root root 0 May 24 05:03 source root@Atlas /mnt/user/boot #echo testing >> dest root@Atlas /mnt/user/boot #ls -l source dest lrwxrwxrwx 1 root root 6 May 24 05:03 dest -> source -rw-r--r-- 1 root root 8 May 24 05:04 source root@Atlas /mnt/user/boot #more source dest :::::::::::::: source :::::::::::::: testing :::::::::::::: dest root@Atlas /mnt/user/boot #rm dest root@Atlas /mnt/user/boot #ln -s source dest ln: creating symbolic link `dest': No such file or directory Link to comment
WeeboTech Posted May 24, 2010 Share Posted May 24, 2010 Interesting situation. I could not get user shares to work correctly. Reset my security model to user. Restarted the array. Now symlinks work on the user shares. root@unraid /mnt/user/test #echo testing > source root@unraid /mnt/user/test #ln -s source dest root@unraid /mnt/user/test #ls -l total 4 lrwxrwxrwx 1 root root 6 May 24 05:22 dest -> source -rw-r--r-- 1 root root 8 May 24 05:22 source root@unraid /mnt/disk2/test #find /mnt -name source -ls 11 4 -rw-r--r-- 1 root root 8 May 24 05:22 /mnt/user/test/source 5 4 -rw-r--r-- 1 root root 8 May 24 05:22 /mnt/disk2/test/source root@unraid /mnt/disk2/test #cd /mnt/disk2/test root@unraid /mnt/disk2/test #ls -l total 4 lrwxrwxrwx 1 root root 6 May 24 05:22 dest -> source -rw-r--r-- 1 root root 8 May 24 05:22 source root@unraid /mnt/disk2/test # So it looks like it is supported. Link to comment
Ford Prefect Posted May 24, 2010 Author Share Posted May 24, 2010 Interesting situation. I could not get user shares to work correctly. Reset my security model to user. Restarted the array. Now symlinks work on the user shares. root@unraid /mnt/user/test #echo testing > source root@unraid /mnt/user/test #ln -s source dest root@unraid /mnt/user/test #ls -l total 4 lrwxrwxrwx 1 root root 6 May 24 05:22 dest -> source -rw-r--r-- 1 root root 8 May 24 05:22 source root@unraid /mnt/disk2/test #find /mnt -name source -ls 11 4 -rw-r--r-- 1 root root 8 May 24 05:22 /mnt/user/test/source 5 4 -rw-r--r-- 1 root root 8 May 24 05:22 /mnt/disk2/test/source root@unraid /mnt/disk2/test #cd /mnt/disk2/test root@unraid /mnt/disk2/test #ls -l total 4 lrwxrwxrwx 1 root root 6 May 24 05:22 dest -> source -rw-r--r-- 1 root root 8 May 24 05:22 source root@unraid /mnt/disk2/test # So it looks like it is supported. Thanks for the fast reply WeeboTech! Sorry for not being specific enough in the first place. When I mount the share via smb/cifs from a Gnome client and then try to copy over some directories from my openfiler, via that client I get the response "symlinks not supported by backend" for each symbolic link in the source-Dirwhen copying reaches the file. ...I can replay what you did, locally on my unRaid box though. So I would be happy to declare that symlinks are supported, if only I knew how to achieve the above from a client (linux-based) PC. Link to comment
WeeboTech Posted May 24, 2010 Share Posted May 24, 2010 When I mount the share via smb/cifs from a Gnome client I don't know that symlinks are supported via smb/cifs. I'm sure symlinks are supported via NFS and I'm sure that it would work with disk shares. Link to comment
Joe L. Posted May 24, 2010 Share Posted May 24, 2010 See this post. you might need to enable the following of symbolic links in the samba configuration on the server you are copying from: https://bugs.launchpad.net/ubuntu/+source/samba/+bug/134716 Samba does not follow symbolic links by default. It does support them if enabled. Link to comment
starcat Posted May 24, 2010 Share Posted May 24, 2010 Is there any specific reason why you mount shares from a Linux box (unRaid) on another Linux/Gnome box via Samba? Just wondering why don't you use NFS and then rsync or tar? Link to comment
Ford Prefect Posted May 24, 2010 Author Share Posted May 24, 2010 Is there any specific reason why you mount shares from a Linux box (unRaid) on another Linux/Gnome box via Samba? Just wondering why don't you use NFS and then rsync or tar? You have a good point there, starcat. The linux/gnome box in question is a laptop and I am connected via WiFi, which in turn is controlled by the NetworkManager. The reason is, upon shutdown, gnome/X11 gets shutdown first and with it the NetworkManager and with it the WiFi link...letting nfs mounts hang in the air, which in turn prevents the box from a proper and fast shutdown. With nfs I tried to change boot- and stop-orders and automounts but to no permanent success. smb/cifs mounts are accessible from the Gnome panel and they seem to be unmounted prior to shutdown as well. ...at least they are not giving any problems. And symlinks with my openfiler NAS worked without issues (the DIR in question is a slackware-13.0 mirror, made with a linux mirror script and which obviously contains links). I actually never suffered from the mounts being smb/cifs and performance with nfs was just 10percent higher, so I was happy with that solution and was trying to keep it that way when moving over to unRAID. Link to comment
Ford Prefect Posted May 24, 2010 Author Share Posted May 24, 2010 See this post. you might need to enable the following of symbolic links in the samba configuration on the server you are copying from: https://bugs.launchpad.net/ubuntu/+source/samba/+bug/134716 Samba does not follow symbolic links by default. It does support them if enabled. Thanks for the hint Joe L. My Source-Server seems to be fine (it is an up2date openfiler NAS). The DIR in question has been created with a linux client, mounting the OF-NAS via cifs, by running a slackware mirror script with the mountpoint being the target of that script. Link to comment
Ford Prefect Posted May 24, 2010 Author Share Posted May 24, 2010 When I mount the share via smb/cifs from a Gnome client I don't know that symlinks are supported via smb/cifs. I'm sure symlinks are supported via NFS and I'm sure that it would work with disk shares. OK, than my strategy would be to migrate locally - possibly using mc - on unRAID to a disk share and fix/rollut nfs mounts for my linux-clients instead of smb/cifs. Link to comment
WeeboTech Posted May 24, 2010 Share Posted May 24, 2010 You can use rsync over ssh or rsync to an rsync server. it would mean configuring an rsyncd.conf file on the machine to be the server and using syntax as in on unraid server if rsync --server is running on openfiler rsync -avx rsync://remotersynchost/rsyncshare/path /mnt/disk?/sharename or the otherway around if logged into openfile and rsync --server running on unraid. rsync -avx localpath/ rsync://remotersynchost/rsyncshare/path if you have ssh on unRAID or vica versa, you can do it that way too. rsync preserves the timestamps and symlinks. There's also ways of tar'ing over ssh and piping the output back to tar for extracting. I prefer rsync as it will only copy missing or newer files. Link to comment
Ford Prefect Posted June 1, 2010 Author Share Posted June 1, 2010 You can use rsync over ssh or rsync to an rsync server. it would mean configuring an rsyncd.conf file on the machine to be the server and using syntax as in on unraid server if rsync --server is running on openfiler rsync -avx rsync://remotersynchost/rsyncshare/path /mnt/disk?/sharename or the otherway around if logged into openfile and rsync --server running on unraid. rsync -avx localpath/ rsync://remotersynchost/rsyncshare/path if you have ssh on unRAID or vica versa, you can do it that way too. rsync preserves the timestamps and symlinks. There's also ways of tar'ing over ssh and piping the output back to tar for extracting. I prefer rsync as it will only copy missing or newer files. Thanks WeeboTech, this worked flawlessly! Sorry for the late response...had to change & setup my full slackware build, first Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.