Comments (11)
I solved the problem. The original problem is caused by SSHFS not supporting hardlinks although available documentation says it does. I moved the mount from SSHFS to NFS and hardlinks are no longer a problem.
from dcs-tools.
OK, here we go:
First of all, you loose most benefits of rsync
when you mount remote filesystem here and perform a backup, because rsync
determines all changes locally, which causes all IO operations take place over the wire. I suggest using backup tool remotely, in NAS.
But anyway, your setup should work as you expected. Would you try creating hard/soft links like so:
cd /mnt/nas
touch test.txt
ln -s test.txt 111.txt
cp -al test.txt 222.txt
echo "heyy" > 222.txt
cat test.txt
from dcs-tools.
Two answers: first the output of your commands:
pi@araminta:~/scripts $ cd /mnt/nas
pi@araminta:/mnt/nas $ touch test.txt
pi@araminta:/mnt/nas $ ln -s test.txt 111.txt
pi@araminta:/mnt/nas $ cp -al test.txt 222.txt
pi@araminta:/mnt/nas $ echo "heyy" > 222.txt
pi@araminta:/mnt/nas $ cat test.txt
heyy
Secondly: I want to run the backup from the RPI as it's linux environment is more standard compared to the NAS. Please correct me if this is either impossible or undesirable. I'n now accessing the backup volume via SSHFS but perhaps ther's another way.
from dcs-tools.
You are right about the standart Linux environment comparison, and I would prefer as you did in your circumstances.
OK, let's move on. Did you properly setup aktos-dcs-tools, since it doesn't seem to be? Can you post the following commands output:
cd /mnt/nas
git clone https://github.com/aktos-io/aktos-dcs-tools
./aktos-dcs-tools/configure
ls -la
make set-local-session
ls -la
make init
ls -la
make backup-root
from dcs-tools.
Done; I stopped at a certain point due to errors:
pi@araminta:/mnt/nas $ git clone https://github.com/aktos-io/aktos-dcs-tools
Cloning into 'aktos-dcs-tools'...
remote: Counting objects: 177, done.
remote: Total 177 (delta 0), reused 0 (delta 0), pack-reused 177
Receiving objects: 100% (177/177), 24.98 KiB | 0 bytes/s, done.
Resolving deltas: 100% (113/113), done.
Checking connectivity... done.
pi@araminta:/mnt/nas $ ./aktos-dcs-tools/configure
pi@araminta:/mnt/nas $ ls -la
ls: cannot read symbolic link Makefile: No such file or directory
ls: cannot read symbolic link 111.txt: No such file or directory
total 24
drwxrwxrwx 1 pi pi 4096 Oct 23 19:39 .
drwxr-xr-x 3 root root 4096 Oct 20 14:05 ..
lrwxrwxrwx 1 pi pi 8 Oct 23 18:54 111.txt
-rw-rw-rw- 1 pi pi 5 Oct 23 18:54 222.txt
drwxrwxrwx 1 pi pi 4096 Oct 23 19:39 aktos-dcs-tools
lrwxrwxrwx 1 pi pi 33 Oct 23 19:39 Makefile
pi@araminta:/mnt/nas $ make set-local-session
make: Makefile: No such file or directory
make: *** No rule to make target 'Makefile'. Stop.
from dcs-tools.
I can't get it, since sshfs was seem to be comfortable with links, but now I'm sure that this error is absolutely related with hard links.
Would you try mounting remote filesystem via sshfs
with -o transform_symlinks
option?
Edit
Which sshfs
version are you using?
from dcs-tools.
I tried it:
sudo sshfs admin@diskstation:/RPI/rpi-full-backups /mnt/nas -o IdentityFile=~/.ssh/id_rsa,idmap=user,reconnect,uid=1000,gid=1000,allow_other,transform_symlinks
No difference:
pi@araminta:/mnt/nas $ ls -als
ls: cannot read symbolic link Makefile: No such file or directory
ls: cannot read symbolic link 111.txt: No such file or directory
total 24
4 drwxrwxrwx 1 pi pi 4096 Oct 23 20:30 .
4 drwxr-xr-x 3 root root 4096 Oct 20 14:05 ..
4 lrwxrwxrwx 1 pi pi 8 Oct 23 18:54 111.txt
4 -rw-rw-rw- 1 pi pi 5 Oct 23 18:54 222.txt
4 drwxrwxrwx 1 pi pi 4096 Oct 23 20:30 aktos-dcs-tools
4 lrwxrwxrwx 1 pi pi 21 Oct 23 20:30 Makefile
You can already see from the output of ls -als that the link is not recognized.
from dcs-tools.
...and the sshfs version you are using?
from dcs-tools.
pi@araminta:/mnt/nas $ sshfs -V SSHFS version 2.5 FUSE library version: 2.9.3 fusermount version: 2.9.3 using FUSE kernel interface version 7.19
pi@araminta:/mnt/nas $ uname -a Linux araminta 4.1.19+ #858 Tue Mar 15 15:52:03 GMT 2016 armv6l GNU/Linux
from dcs-tools.
A-ha! Congratulations! 👍
Well, I will keep this issue open in order to add such a check. Maybe a make test
would suffice?
from dcs-tools.
That would be an excellent idea.
from dcs-tools.
Related Issues (20)
- Novice needing clarification on ./setup HOT 5
- Clarification needed on target-settings HOT 10
- please specify current directory for execution of commands HOT 6
- dcs-tools use of sym links seems to mean it can't work on windows HOT 5
- fuse: unknown option `HashKnownHosts=no'
- trouble making bootable backup from sync-root HOT 6
- trouble with backups HOT 7
- Provide a simpler backup target
- Produce-bootable-disk producing errors HOT 1
- Hostname should be a required parameter
- Error is thrown if btrfs-utils are not installed on the host
- Connection drops while transferring large files HOT 1
- Use multiplexed connection for sshfs
- Change SSHD keys when converting to fresh install HOT 1
- give-new-id additional cleanups
- method-btrfs should use cp with reflinks, not btrfs snapshots
- give-new-id should preserve ownership for newly created files
- give-new-id should reset chromium profile HOT 1
- Make system more responsive during backup HOT 1
- LXCFS permission denied error HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dcs-tools.