Package Details: anything-sync-daemon 5.85-1

Git Clone URL: https://aur.archlinux.org/anything-sync-daemon.git (read-only)
Package Base: anything-sync-daemon
Description: Offload anything to RAM (tmpfs) for speed and wear reduction.
Upstream URL: https://github.com/graysky2/anything-sync-daemon
Licenses: MIT
Conflicts: goanysync, goanysync-git, monitorix-sync-daemon, tmpfs-store, tmpfs-sync, user-profile-sync-daemon
Submitter: graysky
Maintainer: graysky
Last Packager: graysky
Votes: 135
Popularity: 0.523243
First Submitted: 2012-04-06 21:27
Last Updated: 2016-11-26 16:22

Latest Comments

timofonic commented on 2017-11-22 09:00

(Excuse me for AUR not parsing markdown. I miss that feature, (but I consider images should be mirrored in local db just for historic bug documentation reasons, image hosting services often remove images or have a time limit or whatever... I'm sure many people remembers that frog in old messages...)

Hello.

I have issues with ASD. I need to use environments like Eclipse and it worked a lot faster when putting both Eclipse, WorkSpace and such in RAM (any other suggestion? I was considering to put more things like the JVM too, but this error happened). But suddenly started to fail.

I also sent this message to [AUR](https://aur.archlinux.org/packages/anything-sync-daemon/), [ARCH BBS](https://bbs.archlinux.org/viewtopic.php?id=139141&p=5) and as an [issue](https://github.com/graysky2/anything-sync-daemon/issues/51) at the GitHub project. I finally edited it with BBCode and converted to Markdown, to avoid wasting more time. Sorry for the redundant links.

~~~

#
# /etc/asd.conf
#
# For documentation, refer to the asd man page

## WARNING Do NOT edit anything in this file while asd is running!
## To protect data from corruption, in the event that you do make an edit
## while asd is active, any changes made will be applied the next time
## you start-up asd.

# Define the target(s) directories in the WHATTOSYNC array.
# Do NOT define a file! These MUST be directories with an absolute path.
#
# Note that the target DIRECTORIES and all subdirs under them will be included.
# In other words, this is recursive.
#
# Below is an example to whet your appetite.
#WHATTOSYNC=('/srv/http' '/var/lib/monitorix' '/foo/bar')
WHATTOSYNC=('/usr/lib/eclipse' '/home/timofonic/Documents/Estudios/DAM/PRO/EclipseWorkspace/')

# Define where data will reside in tmpfs.
# This location must be mounted to tmpfs and MUST be writable and executable.
#
# If using bleachbit, do NOT invoke it with the '--clean system.tmp' switch or
# you will remove a key dot file (.foo) from /tmp that asd needs to keep track
# of sync status.
#
# Note that using a value of '/dev/shm' can cause problems with systemd's
# NAMESPACE spawning only when users enable the overlayfs option.
#
VOLATILE="/tmp"

# Uncomment and set to yes to use an overlayfs instead of a full copy to reduce
# the memory costs and to improve sync/unsync operations.
#
# You must modprobe either the 'overlayfs' or 'overlay' module prior to running asd if
# you enable this option. Distros running the linux kernel version >=3.18.0 are likely
# using the 'overlay' module while some distros shipping older kernels, notably Ubuntu
# provide the older version of this technology which is provided in the 'overlayfs'
# module not 'overlay' module.
USE_OVERLAYFS="yes"

# Uncomment and set to no to completely disable the crash recovery feature of asd.
#
# The default is to create crash recovery backups if the system is ungracefully
# powered-down due to a kernel panic, hitting the reset switch, battery going
# dead, etc. Some users keep very diligent backups and don't care to have this
# feature enabled.
USE_BACKUPS="yes"

# Uncomment and set to an integer that is the maximum number of crash recovery
# snapshots to keep (the oldest ones are delete first).
#
# The default is to save the most recent 5 crash recovery snapshots.
BACKUP_LIMIT=20

~~~



First error:

~~~

Nov 09 12:56:33 timolaptop systemd[1]: asd.service: Main process exited, code=exited, status=1/FAILURE
Nov 09 12:56:33 timolaptop systemd[1]: asd.service: Failed with result 'exit-code'.
Nov 09 12:56:33 timolaptop systemd[1]: Failed to start Anything-sync-daemon.
Nov 09 12:56:33 timolaptop systemd[1]: anbox-container-manager.service: Main process exited, code=exited, status=127
/n/a
Nov 09 12:56:33 timolaptop systemd[1]: asd-resync.service: Main process exited, code=exited, status=1/FAILURE
Nov 09 12:56:33 timolaptop systemd[1]: asd-resync.service: Failed with result 'exit-code'.
Nov 09 12:56:33 timolaptop systemd[1]: Failed to start Timed resync.
Nov 09 12:56:37 timolaptop systemd[1]: tmp.mount: Directory /tmp to mount over is not empty, mounting anyway.

~~~



Then some days later...

~~~

● asd.service - Anything-sync-daemon
Loaded: loaded (/usr/lib/systemd/system/asd.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Mon 2017-11-20 08:22:58 CET; 6min ago
Docs: man:asd(1)
man:anything-sync-daemon(1)
https://wiki.archlinux.org/index.php/Anything-sync-daemon
Process: 897 ExecStart=/usr/bin/anything-sync-daemon sync (code=exited, status=1/FAILURE)
Main PID: 897 (code=exited, status=1/FAILURE)
CPU: 11ms

Nov 20 08:22:56 timolaptop systemd[897]: asd.service: Executing: /usr/bin/anything-sync-daemon sync
Nov 20 08:22:57 timolaptop anything-sync-daemon[897]: /tmp is not tmpsfs so running asd is pointless. Aborting.
Nov 20 08:22:58 timolaptop systemd[1]: asd.service: Child 897 belongs to asd.service
Nov 20 08:22:58 timolaptop systemd[1]: asd.service: Main process exited, code=exited, status=1/FAILURE
Nov 20 08:22:58 timolaptop systemd[1]: asd.service: Failed with result 'exit-code'.
Nov 20 08:22:58 timolaptop systemd[1]: asd.service: Changed start -> failed
Nov 20 08:22:58 timolaptop systemd[1]: asd.service: Job asd.service/start finished, result=failed
Nov 20 08:22:58 timolaptop systemd[1]: Failed to start Anything-sync-daemon.
Nov 20 08:22:58 timolaptop systemd[1]: asd.service: Unit entered failed state.
Nov 20 08:22:58 timolaptop systemd[1]: asd.service: Consumed 11ms CPU time

~~~



Here is my entire mount output, tmp seems mounted as tmpfs...


~~~

mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,size=3780952k,nr_inodes=945238,mode=75
5)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relat
ime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmod
e=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (rw,mode=755)
cgroup on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,n
sdelegate)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xa
ttr,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,rela
time)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,re
latime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpu
set)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,de
vices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,fr
eezer)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatim
e,cpu,cpuacct)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime
,perf_event)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blki
o)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,mem
ory)
/dev/sdb7 on / type ext4 (rw,relatime,data=ordered)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=40,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
systemd-1 on /mnt/windoze type autofs (rw,relatime,fd=44,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
systemd-1 on /mnt/peque type autofs (rw,relatime,fd=46,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
systemd-1 on /home type autofs (rw,relatime,fd=47,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,relatime)
none on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
mqueue on /dev/mqueue type mqueue (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/sdb2 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
/dev/sdb8 on /home type ext4 (rw,relatime,data=ordered,x-systemd.automount)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=758232k,mode=700,uid=1000,gid=100)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=100)
/dev/sda1 on /mnt/peque type ext4 (rw,relatime,data=ordered,x-systemd.automount)

~~~


ASD uses two daemons, one to sync. I didn't remember it. Here's the output of "systemctl status asd-resync" status log.


~~~

● asd-resync.service - Timed resync
Loaded: loaded (/usr/lib/systemd/system/asd-resync.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Wed 2017-11-22 08:30:06 CET; 4min 7s ago
Docs: man:asd(1)
man:anything-sync-daemon(1)
https://wiki.archlinux.org/index.php/Anything-sync-daemon
Process: 7312 ExecStart=/usr/bin/anything-sync-daemon resync (code=exited, status=0/SUCCESS)
Main PID: 7312 (code=exited, status=0/SUCCESS)
CPU: 3.994s

Nov 22 08:30:00 timolaptop systemd[1]: Starting Timed resync...
Nov 22 08:30:00 timolaptop systemd[7312]: asd-resync.service: Executing: /usr/bin/anything-sync-daemon resync
Nov 22 08:30:06 timolaptop anything-sync-daemon[7312]: Sync successful
Nov 22 08:30:06 timolaptop systemd[1]: asd-resync.service: cgroup is empty
Nov 22 08:30:06 timolaptop systemd[1]: asd-resync.service: Child 7312 belongs to asd-resync.service
Nov 22 08:30:06 timolaptop systemd[1]: asd-resync.service: Main process exited, code=exited, status=0/SUCCESS
Nov 22 08:30:06 timolaptop systemd[1]: asd-resync.service: Changed start -> dead
Nov 22 08:30:06 timolaptop systemd[1]: asd-resync.service: Job asd-resync.service/start finished, result=done
Nov 22 08:30:06 timolaptop systemd[1]: Started Timed resync.
Nov 22 08:30:06 timolaptop systemd[1]: asd-resync.service: Consumed 3.994s CPU time

~~~


I used "systemctl status asd" again and this is the output:

~~~

asd.service - Anything-sync-daemon
Loaded: loaded (/usr/lib/systemd/system/asd.service; enabled; vendor preset: disabled)
Active: active (exited) since Wed 2017-11-22 08:30:00 CET; 14min ago
Docs: man:asd(1)
man:anything-sync-daemon(1)
https://wiki.archlinux.org/index.php/Anything-sync-daemon
Process: 894 ExecStart=/usr/bin/anything-sync-daemon sync (code=exited, status=0/SUCCESS)
Main PID: 894 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 4915)
Memory: 0B
CPU: 0
CGroup: /system.slice/asd.service

Nov 22 08:25:21 timolaptop systemd[894]: asd.service: Executing: /usr/bin/anything-sync-daemon sync
Nov 22 08:26:11 timolaptop anything-sync-daemon[894]: Ungraceful state detected for /usr/lib/eclipse so fixing
Nov 22 08:26:42 timolaptop anything-sync-daemon[894]: Ungraceful state detected for /home/timofonic/Documents/Estudios/DAM/PRO/EclipseWorkspace s
Nov 22 08:26:51 timolaptop anything-sync-daemon[894]: Sync successful
Nov 22 08:30:00 timolaptop systemd[1]: asd.service: cgroup is empty
Nov 22 08:30:00 timolaptop systemd[1]: asd.service: Child 894 belongs to asd.service
Nov 22 08:30:00 timolaptop systemd[1]: asd.service: Main process exited, code=exited, status=0/SUCCESS
Nov 22 08:30:00 timolaptop systemd[1]: asd.service: Changed start -> exited
Nov 22 08:30:00 timolaptop systemd[1]: asd.service: Job asd.service/start finished, result=done
Nov 22 08:30:00 timolaptop systemd[1]: Started Anything-sync-daemon.

~~~


Mysteriously, now ASD works! But Eclipse gave me this error message...
![](https://i.imgur.com/rZPICwh.png)

As you can see in the following screenshot, Eclipse is aware of symlinks used in the environment. Might that be part of the issue?

![](https://i.imgur.com/nofPB0d.png)

What about using directory binding or any other way? I found some ASD forks and attempted to merge them (I found their features quite interesting), but I have yet not tested the code and not time for it due to exams.

Whats happening? I have no idea. Can someone help me?

Thanks in advance! :)

PS: I did a [humble quick & dirty unfork](https://www.github.com/timofonic-linux/anything-sync-daemon) from others of your great project. I'm sure it's full of faults (I'm struggling to learn computer programming), but some implemented ideas were interesting. I have no time to test it, just played a bit with the code. I'm sorry for the aberrations (too stupid errors, etc) in the code.

graysky commented on 2017-11-09 23:18

@tim - Not out of date. Send a PR on github if you feel the code could be improved.

timofonic commented on 2017-11-09 12:37

This is very outdated. I made a quick unfork here. I'll try when available (currently at exam and a lot of stuff from study).

https://github.com/timofonic-linux/anything-sync-daemon/

graysky commented on 2016-11-26 08:06

Bump to v5.85-1

Changelog: Bail if $VOLATILE is not tmpfs, fixes #33
Commit: https://github.com/graysky2/anything-sync-daemon/compare/v5.84...v5.85

graysky commented on 2016-11-26 02:27

Bump to v5.84-1

Changelog: Limit number of crash recovery snapshots
Commit: https://github.com/graysky2/anything-sync-daemon/compare/v5.83...v5.84

graysky commented on 2016-09-21 16:05

Bump to v5.83-1

Changelog: Improvements in config file parsing
Commit: https://github.com/graysky2/anything-sync-daemon/compare/v5.81...v5.83

graysky commented on 2016-08-04 19:31

Bump to v5.81-1

Changelog: More flexibility allowed in /etc/asd.conf syntax
Commit: https://github.com/graysky2/anything-sync-daemon/compare/v5.70...v5.81

graysky commented on 2016-07-15 18:28

Bump to v5.80-1

Changelog: Fix #39.
Commit: https://github.com/graysky2/anything-sync-daemon/compare/v5.79...v5.80

graysky commented on 2016-07-07 01:00

Bump to v5.79-1

Changelog: Prevent rare race condition.
Commit: https://github.com/graysky2/anything-sync-daemon/compare/v5.78...v5.79

graysky commented on 2016-07-04 20:55

Bump to v5.78-1

Changelog: Better config check to avoid rare problems when config file is not properly formatted.
Commit: https://github.com/graysky2/anything-sync-daemon/compare/v5.77...v5.78

All comments