I want to put the snapshots stored by Btrfs Assistant in the location I specify？
If you are talking about the Snapper snapshots, Snapper determines where those snapshots go. It puts them in
.snapshots inside the subvolume you are taking snapshots of.
That being said, why would you want to change that? What advantage would it have to put them somewhere else?
I have a hard drive ready and I want to store them on this drive separately, I don't want to put snapshots on the drive where the system is. But I can't find a place to store snapshots in Btrfs Assistant
I'm sure my snapshot is snapper, but there is no option in Btrfs Assistant to store the snapshot in another place.
What do I need to do to get a snapshot placed where I specify? Can I do this from within Btrfs Assistant?
That isn't possible. Snapshots are part of the filesystem. They aren't full copies of the data. You can't take snapshots across filesystems. The snapshot must be stored in the same filesystem.
However, you can replicate snapshots from one disk to another using btrfs send/btrfs receive.
This is not too much trouble, and does not have automation, I remember timeshift has rsync function, I do not know Btrfs Assistant has this function? Also I want to do snapshot, I also want to do full backup of linux, is there any good solution?
I highly recommend vorta at least for user data. I use it for a full system backup as well using the following blacklist (required) but restoring was a little tricky to figure out (use "vorta-root" mount to folder then cp). I use vorta both for local HDD backups as well as daily backups to my server via SSH.
*/.snapshots/ */.caches/ */.local/share/baloo */*cache*/ */*Cache*/ */tmp/ /.snapshots/ /crypto_keyfile.bin /home/.snapshots/ /proc/ /run/media/
The thing with snapshots is they aren't a real copy of your system like they seem to be. You are basically telling Btrfs to remember a particular state, and then it will keep track of any changes that happen so it can "undo" on demand.
That's why snapshots take up so little space; aside from files Btrfs has to hold onto from configs or libraries or other packages that have been added or removed or changed, it doesn't have to actually maintain a full copy of the data. That whole process only works when the snapshot is in the filesystem with all the changes it is tracking.
Btrfs send/receive lets you store snapshots on another filesystem, as dalto mentioned. It's pretty easy to learn the basics, but if you want front end to manage the nitty-gritty for you then check out
Vorta was a very good recommendation as well, if you are interested in a solution that does not use Btrfs snapshots at all. Vorta makes Borg way more approachable, and it has a good reputation in the community for being effective and reliable.
I use brog+borgmatic to backup my home folder, but I never thought of using brog to backup my system, because I read many articles that brog is not suitable to backup my system. I'm using Btrfs Assistant to backup my system, but so far I haven't had any system crashes, so I've never used Btrfs Assistant to restore my system. I would like to have a backup or snapshot to restore my crashed system.
I'm happy to learn the basics of what I think this must be done to use linux, but I still wish there was an easier way to handle this. On mac I use Time Machine and on win I use Macrium Reflect, both of which play a key role when I need to recover my system. On linux it seems to get a little more complicated, maybe because I haven't learned the ropes yet.
If you are looking for a commercial solution, it might be worthwhile investigating Acronis: Best Server Backup for Windows and Linux