mirror of
https://github.com/Antynea/grub-btrfs.git
synced 2026-03-04 21:15:02 +08:00
Compare commits
1 Commits
feature/ub
...
improve-ve
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
593770030a |
@@ -569,7 +569,7 @@ rm -f "$grub_btrfs_directory/grub-btrfs.new"
|
||||
> "$grub_btrfs_directory/grub-btrfs.new" # Create a "grub-btrfs.new" file in "grub_btrfs_directory"
|
||||
# Create mount point then mounting
|
||||
[[ ! -d $grub_btrfs_mount_point ]] && mkdir -p "$grub_btrfs_mount_point"
|
||||
mount -o ro,subvolid=5 /dev/disk/by-uuid/"$root_uuid" "$grub_btrfs_mount_point/" > /dev/null
|
||||
mount -o ro,subvolid=5 /dev/disk/by-uuid/"$root_uuid" "$grub_btrfs_mount_point/"
|
||||
trap "unmount_grub_btrfs_mount_point" EXIT # unmounting mount point on EXIT signal
|
||||
count_warning_menuentries=0 # Count menuentries
|
||||
count_limit_snap=0 # Count snapshots
|
||||
|
||||
28
Makefile
28
Makefile
@@ -2,7 +2,6 @@ PKGNAME ?= grub-btrfs
|
||||
PREFIX ?= /usr
|
||||
|
||||
INITCPIO ?= false
|
||||
MKINITRAMFS ?= false
|
||||
SYSTEMD ?= true
|
||||
OPENRC ?= false
|
||||
|
||||
@@ -60,11 +59,6 @@ install:
|
||||
install -Dm644 "initramfs/Arch Linux/overlay_snap_ro-install" "$(LIB_DIR)/initcpio/install/grub-btrfs-overlayfs"; \
|
||||
install -Dm644 "initramfs/Arch Linux/overlay_snap_ro-hook" "$(LIB_DIR)/initcpio/hooks/grub-btrfs-overlayfs"; \
|
||||
fi
|
||||
@# Ubuntu like distros only :
|
||||
@if test "$(MKINITRAMFS)" = true; then \
|
||||
echo "Installing mkinitramfs hook"; \
|
||||
initramfs/ubuntu/setup install; \
|
||||
fi
|
||||
@install -Dm644 -t "$(SHARE_DIR)/licenses/$(PKGNAME)/" LICENSE
|
||||
@install -Dm644 -t "$(SHARE_DIR)/doc/$(PKGNAME)/" README.md
|
||||
@install -Dm644 "initramfs/readme.md" "$(SHARE_DIR)/doc/$(PKGNAME)/initramfs-overlayfs.md"
|
||||
@@ -86,7 +80,6 @@ uninstall:
|
||||
@rm -f "$(DESTDIR)/etc/conf.d/grub-btrfsd;"
|
||||
@rm -f "$(LIB_DIR)/initcpio/install/grub-btrfs-overlayfs"
|
||||
@rm -f "$(LIB_DIR)/initcpio/hooks/grub-btrfs-overlayfs"
|
||||
@initramfs/ubuntu/setup uninstall || true
|
||||
@rm -f "$(MAN_DIR)/man8/grub-btrfs.8.bz2"
|
||||
@rm -f "$(MAN_DIR)/man8/grub-btrfsd.8.bz2"
|
||||
@# Arch Linux UNlike distros only :
|
||||
@@ -115,15 +108,14 @@ help:
|
||||
@echo " uninstall"
|
||||
@echo " help"
|
||||
@echo
|
||||
@echo " parameter | type | description | defaults"
|
||||
@echo " ------------+------+--------------------------------+----------------------------"
|
||||
@echo " DESTDIR | path | install destination | <unset>"
|
||||
@echo " PREFIX | path | system tree prefix | '/usr'"
|
||||
@echo " SHARE_DIR | path | shared data location | '\$$(DESTDIR)\$$(PREFIX)/share'"
|
||||
@echo " LIB_DIR | path | system libraries location | '\$$(DESTDIR)\$$(PREFIX)/lib'"
|
||||
@echo " PKGNAME | name | name of the ditributed package | 'grub-btrfs'"
|
||||
@echo " INITCPIO | bool | include mkinitcpio hook | false"
|
||||
@echo " MKINITRAMFS | bool | include mkinitramfs hook | false"
|
||||
@echo " SYSTEMD | bool | include unit files | true"
|
||||
@echo " OPENRC | bool | include OpenRc daemon | false"
|
||||
@echo " parameter | type | description | defaults"
|
||||
@echo " ----------+------+--------------------------------+----------------------------"
|
||||
@echo " DESTDIR | path | install destination | <unset>"
|
||||
@echo " PREFIX | path | system tree prefix | '/usr'"
|
||||
@echo " SHARE_DIR | path | shared data location | '\$$(DESTDIR)\$$(PREFIX)/share'"
|
||||
@echo " LIB_DIR | path | system libraries location | '\$$(DESTDIR)\$$(PREFIX)/lib'"
|
||||
@echo " PKGNAME | name | name of the ditributed package | 'grub-btrfs'"
|
||||
@echo " INITCPIO | bool | include mkinitcpio hook | false"
|
||||
@echo " SYSTEMD | bool | include unit files | true"
|
||||
@echo " OPENRC | bool | include OpenRc daemon | false"
|
||||
@echo
|
||||
|
||||
19
README.md
19
README.md
@@ -104,8 +104,6 @@ Disable colors in output.
|
||||
* `-l / --log-file`
|
||||
This arguments specifies a file where grub-btrfsd should write log messages.
|
||||
* `-s / --syslog`
|
||||
* `-o / --timeshift-old`
|
||||
Look for snapshots in `/run/timeshift/backup/timeshift-btrfs` instead of `/run/timeshift/$PID/backup/timeshift-btrfs.` This is to be used for Timeshift versions <22.06.
|
||||
* `-t / --timeshift-auto`
|
||||
This is a flag to activate the auto detection of the path where Timeshift stores snapshots. Newer versions (>=22.06) of Timeshift mount their snapshots to `/run/timeshift/$PID/backup/timeshift-btrfs`. Where `$PID` is the process ID of the currently running Timeshift session. The PID is changing every time Timeshift is opened. grub-btrfsd can automatically take care of the detection of the correct PID and directory if this flag is set. In this case the argument `SNAPSHOTS_DIR` has no effect.
|
||||
* `-v / --verbose`
|
||||
@@ -162,6 +160,8 @@ sudo systemctl enable grub-btrfsd
|
||||
```
|
||||
|
||||
##### 💼 Snapshots not in `/.snapshots`
|
||||
NOTE: This works also for Timeshift versions < 22.06, the path to watch would be `/run/timeshift/backup/timeshift-btrfs/snapshots`.
|
||||
|
||||
By default the daemon is watching the directory `/.snapshots`. If the daemon should watch a different directory, it can be edited with
|
||||
```bash
|
||||
sudo systemctl edit --full grub-btrfsd
|
||||
@@ -184,11 +184,10 @@ EnvironmentFile=/etc/default/grub-btrfs/config
|
||||
# SNAPSHOTS_DIR Snapshot directory to watch, without effect when --timeshift-auto
|
||||
# Optional arguments:
|
||||
# -t, --timeshift-auto Automatically detect Timeshifts snapshot directory
|
||||
# -o, --timeshift-old Activate for timeshift versions <22.06
|
||||
# -l, --log-file Specify a logfile to write to
|
||||
# -v, --verbose Let the log of the daemon be more verbose
|
||||
# -s, --syslog Write to syslog
|
||||
ExecStart=/usr/bin/grub-btrfsd --syslog /.snapshots
|
||||
ExecStart=/usr/bin/grub-btrfsd --syslog /path/to/your/snapshot/directory
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -283,19 +282,21 @@ After editing, the file should look like this:
|
||||
# Distributed under the terms of the GNU General Public License v3
|
||||
|
||||
## Where to locate the root snapshots
|
||||
snapshots="/.snapshots" # Snapper in the root directory
|
||||
#snapshots="/.snapshots" # Snapper in the root directory
|
||||
#snapshots="/run/timeshift/backup/timeshift-btrfs/snapshots" # Timeshift < v22.06
|
||||
snapshots="/path/to/your/snapshot/directory"
|
||||
|
||||
## Optional arguments to run with the daemon
|
||||
# Append options to this like this:
|
||||
# optional_args="--syslog --timeshift-auto --verbose"
|
||||
# Possible options are:
|
||||
# -t, --timeshift-auto Automatically detect Timeshifts snapshot directory for timeshift >= 22.06
|
||||
# -o, --timeshift-old Look for snapshots in directory of Timeshift <v22.06 (requires --timeshift-auto)
|
||||
# -l, --log-file Specify a logfile to write to
|
||||
# -v, --verbose Let the log of the daemon be more verbose
|
||||
# -s, --syslog Write to syslog
|
||||
optional_args="--syslog"
|
||||
# Uncomment the line to activate the option
|
||||
optional_args+="--syslog " # write to syslog by default
|
||||
#optional_args+="--timeshift-auto "
|
||||
#optional_args+="--log-file /var/log/grub-btrfsd.log "
|
||||
#optional_args+="--verbose "
|
||||
```
|
||||
|
||||
After that, the daemon should be restarted with
|
||||
|
||||
2
config
2
config
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
GRUB_BTRFS_VERSION=4.12-master-2022-12-10T21:20:15+00:00
|
||||
GRUB_BTRFS_VERSION=4.12-improve-version-generation-2022-11-26T14:03:10+00:00
|
||||
|
||||
# Disable grub-btrfs.
|
||||
# Default: "false"
|
||||
|
||||
35
grub-btrfsd
35
grub-btrfsd
@@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/sh
|
||||
# Copyright 2022 Pascal Jaeger
|
||||
# Distributed under the terms of the GNU General Public License v3
|
||||
# Update GRUB when new BTRFS snapshots are created.
|
||||
@@ -9,7 +9,6 @@ watchtime=0
|
||||
logfile=0
|
||||
snapshots=-1
|
||||
timeshift_auto=false
|
||||
timeshift_old=false
|
||||
verbose=false
|
||||
syslog=false
|
||||
|
||||
@@ -32,8 +31,8 @@ setcolors true # normally we want colors
|
||||
sysconfdir="/etc"
|
||||
grub_btrfs_config="${sysconfdir}/default/grub-btrfs/config"
|
||||
# source config file
|
||||
[ -f "$grub_btrfs_config" ] && . "$grub_btrfs_config"
|
||||
[ -f "${sysconfdir}/default/grub" ] && . "${sysconfdir}/default/grub"
|
||||
[[ -f "$grub_btrfs_config" ]] && . "$grub_btrfs_config"
|
||||
[[ -f "${sysconfdir}/default/grub" ]] && . "${sysconfdir}/default/grub"
|
||||
|
||||
print_help() {
|
||||
echo "${CYAN}[?] Usage:"
|
||||
@@ -45,7 +44,6 @@ print_help() {
|
||||
echo "-c, --no-color Disable colors in output"
|
||||
echo "-l, --log-file Specify a logfile to write to"
|
||||
echo "-s, --syslog Write to syslog"
|
||||
echo "-o, --timeshift-old Look for snapshots in directory of Timeshift <v22.06 (requires --timeshift-auto)"
|
||||
echo "-t, --timeshift-auto Automatically detect Timeshifts snapshot directory"
|
||||
echo "-v, --verbose Let the log of the daemon be more verbose"
|
||||
echo "-h, --help Display this message"
|
||||
@@ -99,9 +97,6 @@ while getopts :l:ctvsh-: opt; do
|
||||
timeshift-auto)
|
||||
timeshift_auto=true
|
||||
;;
|
||||
timeshift-old)
|
||||
timeshift_old=true
|
||||
;;
|
||||
verbose)
|
||||
verbose=true
|
||||
;;
|
||||
@@ -130,9 +125,6 @@ while getopts :l:ctvsh-: opt; do
|
||||
t)
|
||||
timeshift_auto=true
|
||||
;;
|
||||
o)
|
||||
timeshift_old=true
|
||||
;;
|
||||
v)
|
||||
verbose=true
|
||||
;;
|
||||
@@ -158,7 +150,7 @@ shift $(( OPTIND - 1 ))
|
||||
snapshots="${1}"
|
||||
|
||||
# check if inotify exists, see issue #227
|
||||
if ! command -v inotifywait >/dev/null 2>&1; then
|
||||
if ! command -v inotifywait &> /dev/null; then
|
||||
err "[!] inotifywait was not found, exiting. Is inotify-tools installed?" "${RED}" >&2
|
||||
exit 1
|
||||
fi
|
||||
@@ -176,15 +168,9 @@ else
|
||||
inotify_qiet_flag=" -q -q "
|
||||
fi
|
||||
|
||||
if [ ${timeshift_auto} = false ] && [ ${timeshift_old} = true ]; then
|
||||
err "[!] Flag --timeshift-old requires flag --timeshift-auto" "${RED}" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
vlog "Arguments:"
|
||||
vlog "Snapshot directory: $snapshots"
|
||||
vlog "Timestift autodetection: $timeshift_auto"
|
||||
vlog "Timeshift old: $timeshift_old"
|
||||
vlog "Logfile: $logfile"
|
||||
|
||||
if ! [ -d "$snapshots" ] && ! [ ${timeshift_auto} = true ]; then
|
||||
@@ -218,15 +204,6 @@ create_grub_menu() {
|
||||
fi
|
||||
}
|
||||
|
||||
set_snapshot_dir() {
|
||||
# old timeshift has it's snapshot dir in a different location
|
||||
if [ "${timeshift_old}" = true ]; then
|
||||
snapshots="/run/timeshift/backup/timeshift-btrfs/snapshots"
|
||||
else
|
||||
snapshots="/run/timeshift/${timeshift_pid}/backup/timeshift-btrfs/snapshots"
|
||||
fi
|
||||
}
|
||||
|
||||
# start the actual daemon
|
||||
vlog "Snapshot dir watchtimeout: $watchtime"
|
||||
vlog "Entering infinite while" "${GREEN}"
|
||||
@@ -240,7 +217,7 @@ while true; do
|
||||
fi
|
||||
timeshift_pid=$(ps ax | awk '{sub(/.*\//, "", $5)} $5 ~ /timeshift/ {print $1}')
|
||||
if [ "${#timeshift_pid}" -gt 0 ]; then
|
||||
set_snapshot_dir
|
||||
snapshots="/run/timeshift/${timeshift_pid}/backup/timeshift-btrfs/snapshots"
|
||||
log "detected running Timeshift at daemon startup, PID is: $timeshift_pid"
|
||||
vlog "new snapshots directory is $snapshots"
|
||||
else
|
||||
@@ -248,7 +225,7 @@ while true; do
|
||||
inotifywait ${inotify_qiet_flag} -e create -e delete /run/timeshift && {
|
||||
sleep 1
|
||||
timeshift_pid=$(ps ax | awk '{sub(/.*\//, "", $5)} $5 ~ /timeshift/ {print $1}')
|
||||
set_snapshot_dir
|
||||
snapshots="/run/timeshift/${timeshift_pid}/backup/timeshift-btrfs/snapshots"
|
||||
log "detected Timeshift startup, PID is: $timeshift_pid" "${CYAN}"
|
||||
vlog "new snapshots directory is $snapshots" "${CYAN}"
|
||||
(create_grub_menu) # create the grub menu once immidiatly in a forking process. Snapshots from commandline using timeshift --create need this
|
||||
|
||||
@@ -6,12 +6,13 @@ snapshots="/.snapshots" # Snapper in the root directory
|
||||
#snapshots="/run/timeshift/backup/timeshift-btrfs/snapshots" # Timeshift < v22.06
|
||||
|
||||
## Optional arguments to run with the daemon
|
||||
# Append options to this like this:
|
||||
# optional_args="--syslog --timeshift-auto --verbose"
|
||||
# Possible options are:
|
||||
# -t, --timeshift-auto Automatically detect Timeshifts snapshot directory for timeshift >= 22.06
|
||||
# -o, --timeshift-old Look for snapshots in directory of Timeshift <v22.06 (requires --timeshift-auto)
|
||||
# -l, --log-file Specify a logfile to write to
|
||||
# -v, --verbose Let the log of the daemon be more verbose
|
||||
# -s, --syslog Write to syslog
|
||||
optional_args="--syslog"
|
||||
# Uncomment the line to activate the option
|
||||
optional_args+="--syslog " # write to syslog by default
|
||||
#optional_args+="--timeshift-auto "
|
||||
#optional_args+="--log-file /var/log/grub-btrfsd.log "
|
||||
#optional_args+="--verbose "
|
||||
|
||||
@@ -13,7 +13,6 @@ EnvironmentFile=/etc/default/grub-btrfs/config
|
||||
# SNAPSHOTS_DIR Snapshot directory to watch, without effect when --timeshift-auto
|
||||
# Optional arguments:
|
||||
# -t, --timeshift-auto Automatically detect Timeshifts snapshot directory
|
||||
# -o, --timeshift-old Activate for timeshift versions <22.06
|
||||
# -l, --log-file Specify a logfile to write to
|
||||
# -v, --verbose Let the log of the daemon be more verbose
|
||||
# -s, --syslog Write to syslog
|
||||
|
||||
@@ -39,13 +39,6 @@ You notice that the name of the `hook` must match the name of the 2 installed fi
|
||||
Re-generate your initramfs
|
||||
`mkinitcpio -P` (option -P means, all preset present in `/etc/mkinitcpio.d`)
|
||||
|
||||
#### Ubuntu
|
||||
Install initramfs scripts & re-generate initramfs.
|
||||
|
||||
``` shell
|
||||
sudo initramfs/ubuntu/setup install
|
||||
```
|
||||
|
||||
#### Other distribution
|
||||
Refer to your distribution's documentation
|
||||
or contribute to this project to add a paragraph.
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
PREREQ=
|
||||
prereqs() {
|
||||
echo "$PREREQ"
|
||||
}
|
||||
case "$1" in
|
||||
prereqs)
|
||||
prereqs
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
. /usr/share/initramfs-tools/hook-functions
|
||||
manual_add_modules overlay
|
||||
copy_exec /usr/bin/findmnt /usr/bin
|
||||
@@ -1,32 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
PREREQ=
|
||||
prereqs() {
|
||||
echo "$PREREQ"
|
||||
}
|
||||
case $1 in
|
||||
prereqs)
|
||||
prereqs
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
. /scripts/functions
|
||||
on_err() {
|
||||
log_failure_msg 'error setting up overlay'
|
||||
}
|
||||
trap on_err ERR
|
||||
if [ -x /usr/bin/btrfs -a -x /usr/bin/findmnt ] &&
|
||||
[ "$(findmnt -no FSTYPE -M "$rootmnt")" = btrfs ] &&
|
||||
[ "$(btrfs property get $rootmnt ro)" != ro=false ]
|
||||
then
|
||||
log_begin_msg 'remount read-only subvolume as read-only layer in non-persistent, writable overlay'
|
||||
trap log_end_msg EXIT
|
||||
lower_dir="$(mktemp -dp /)"
|
||||
ram_dir="$(mktemp -dp /)"
|
||||
upper_dir="$ram_dir"/upper
|
||||
work_dir="$ram_dir"/work
|
||||
mount --move "$rootmnt" "$lower_dir"
|
||||
mount -t tmpfs cowspace "$ram_dir"
|
||||
mkdir -p "$upper_dir" "$work_dir"
|
||||
mount -t overlay -o lowerdir="$lower_dir",upperdir="$upper_dir",workdir="$work_dir" rootfs "$rootmnt"
|
||||
fi
|
||||
@@ -1,70 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
log() {
|
||||
local CODE=$?
|
||||
echo >&2 "$*"
|
||||
return $CODE
|
||||
}
|
||||
print-help() {
|
||||
log "\
|
||||
usage: ${0##*/} [-h] [--] (install|uninstall)
|
||||
Install initramfs scripts for Ubuntu.
|
||||
|
||||
# Options
|
||||
-h display this help & exit
|
||||
|
||||
# Subcommands
|
||||
install install initramfs scripts
|
||||
uninstall remove initramfs scripts"
|
||||
}
|
||||
usage-error() {
|
||||
print-help
|
||||
exit 2
|
||||
}
|
||||
action-install() {
|
||||
local SCRIPT_DIR="$(cd -P -- "$(dirname -- "$BASH_SOURCE")" && pwd)"
|
||||
install {"$SCRIPT_DIR",/etc/initramfs-tools}/hooks/grub-btrfs-overlay
|
||||
install {"$SCRIPT_DIR",/etc/initramfs-tools}/scripts/local-bottom/grub-btrfs-overlay
|
||||
}
|
||||
action-uninstall() {
|
||||
rm -f /etc/initramfs-tools/{hooks,scripts/local-bottom}/grub-btrfs-overlay
|
||||
}
|
||||
set -e
|
||||
while getopts h OPT
|
||||
do case "$OPT" in
|
||||
h)
|
||||
print-help
|
||||
exit
|
||||
;;
|
||||
*)
|
||||
usage-error
|
||||
esac done
|
||||
shift $(( OPTIND - 1 ))
|
||||
OPTIND=1
|
||||
ACTION=
|
||||
case "$#" in
|
||||
0)
|
||||
log event: a subcommand is required
|
||||
usage-error
|
||||
;;
|
||||
1)
|
||||
case "$1" in
|
||||
install|uninstall)
|
||||
ACTION="action-$1"
|
||||
;;
|
||||
*)
|
||||
log "\
|
||||
event: unknown subcommand
|
||||
subcommand: $1"
|
||||
usage-error
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
log "\
|
||||
event: too many arguments
|
||||
arguments: $*"
|
||||
usage-error
|
||||
esac
|
||||
"$ACTION" || log "\
|
||||
event: execution failure
|
||||
suggestion: rerun with sudo"
|
||||
exec update-initramfs -u
|
||||
@@ -9,7 +9,7 @@ when a new btrfs snapshot is created.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.PP
|
||||
\fCgrub\-btrfsd [\-h, \-\-help] [\-c, \-\-no\-color] [\-l, \-\-log\-file LOG_FILE] [\-s, \-\-syslog] [\-t, \-\-timeshift\-auto] [\-o, \-\-timeshift\-old] [\-v, \-\-verbose] SNAPSHOTS_DIR\fP
|
||||
\fCgrub\-btrfsd [\-h, \-\-help] [\-c, \-\-no\-color] [\-l, \-\-log\-file LOG_FILE] [\-s, \-\-syslog] [\-t, \-\-timeshift\-auto] [\-v, \-\-verbose] SNAPSHOTS_DIR\fP
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
@@ -38,10 +38,6 @@ Write to syslog
|
||||
.PP
|
||||
This is a flag to activate the auto detection of the path where Timeshift stores snapshots. Newer versions (>=22.06) of Timeshift mount their snapshots to \fC/run/timeshift/$PID/backup/timeshift\-btrfs\fP. Where \fC$PID\fP is the process ID of the currently running Timeshift session. The PID is changing every time Timeshift is opened. grub-btrfsd can automatically take care of the detection of the correct PID and directory if this flag is set. In this case the argument \fCSNAPSHOTS_DIR\fP has no effect.
|
||||
|
||||
.SS "\fC\-o / \-\-timeshift\-old\fP"
|
||||
.PP
|
||||
Look for snapshots in \fC/run/timeshift/backup/timeshift\-btrfs\fP instead of \fC/run/timeshift/$PID/backup/timeshift\-btrfs\fP. This is to be used for Timeshift versions <22.06.
|
||||
|
||||
.SS "\fC\-v / \-\-verbose\fP"
|
||||
.PP
|
||||
Let the log of the daemon be more verbose
|
||||
|
||||
@@ -10,7 +10,7 @@ grub-btrfsd - An OpenRC daemon to automatically update the grub menu with
|
||||
when a new btrfs snapshot is created.
|
||||
|
||||
* SYNOPSIS
|
||||
~grub-btrfsd [-h, --help] [-c, --no-color] [-l, --log-file LOG_FILE] [-s, --syslog] [-t, --timeshift-auto] [-o, --timeshift-old] [-v, --verbose] SNAPSHOTS_DIR~
|
||||
~grub-btrfsd [-h, --help] [-c, --no-color] [-l, --log-file LOG_FILE] [-s, --syslog] [-t, --timeshift-auto] [-v, --verbose] SNAPSHOTS_DIR~
|
||||
|
||||
* DESCRIPTION
|
||||
Grub-btrfsd is a shell script which is meant to be run as a daemon.
|
||||
@@ -33,9 +33,6 @@ Write to syslog
|
||||
** ~-t / --timeshift-auto~
|
||||
This is a flag to activate the auto detection of the path where Timeshift stores snapshots. Newer versions (>=22.06) of Timeshift mount their snapshots to ~/run/timeshift/$PID/backup/timeshift-btrfs~. Where ~$PID~ is the process ID of the currently running Timeshift session. The PID is changing every time Timeshift is opened. grub-btrfsd can automatically take care of the detection of the correct PID and directory if this flag is set. In this case the argument ~SNAPSHOTS_DIR~ has no effect.
|
||||
|
||||
** ~-o / --timeshift-old~
|
||||
Look for snapshots in ~/run/timeshift/backup/timeshift-btrfs~ instead of ~/run/timeshift/$PID/backup/timeshift-btrfs~. This is to be used for Timeshift versions <22.06.
|
||||
|
||||
** ~-v / --verbose~
|
||||
Let the log of the daemon be more verbose
|
||||
|
||||
|
||||
Reference in New Issue
Block a user