Arch ve btrfs ile snapshots nasıl alınır

archinstall ile sistemimi kurmuştum ve dosya sistemimde btrfs. kök dizinimde .snapshots klasörü var fakat içerisi boş. bu şekilde olmasına rağmen btop’a baktığım zaman %27lik bir kullanım görüyorum nedenini bilmiyorum.
image
gizli klasörde yok içerisinde tamamen boş bir klasör. hyprlandda sorun yaşamıştım bir aralar downgrade ederek sorun çözülene kadar sorunu göz ardı edebildim fakat ciddi bir sorun olursa bu kadar kolay çözebileceğimi zannetmiyorum o yüzden belirli aralıklarla snapshots alma kararı aldım. şuanda sistemim stabil snapshots almaya uygun durumda. belirli aralıklarla otomatik de alabilirim 2 hafta gibi veya büyük güncellemelerden öncede snapshots alabilirim emin değilim. snapshots almaya çalışırken hata alıyorum. sudo btrfs subvolume list / yazdığım zaman aşağıdaki çıktıyı alıyorum;

ID 256 gen 20755 top level 5 path @
ID 257 gen 20756 top level 5 path @home
ID 258 gen 20756 top level 5 path @log
ID 259 gen 20745 top level 5 path @pkg
ID 260 gen 20636 top level 5 path @.snapshots
ID 261 gen 1671 top level 256 path var/lib/portables
ID 262 gen 1671 top level 256 path var/lib/machines

bunlar şuan nereye kayıtlı vs hiçbir fikrim yok dediğim gibi .snapshotsun içi boş. snapper ile snapshots (sudo snapper create) almayı denediğim zaman bahsettiğim hatayı alıyorum;

The config 'root' does not exist. Likely snapper is not configured.
See 'man snapper' for further instructions.

internetten baktığım zaman snapper kullanarak alıyorlardı fakat snapper yapılandırması istiyor. .snapshots dışında bir yapılandırma oluşturmam gerekiyordu bende bu şekilde yapmak istemedim zaten halihazırda .snapshots olduğu için. btrfs’in kendi varsayılan sistemi ile nasıl snapshots alabilirim? hangi dosyaları snapshots almam gerekir hangilerini almamam gerekir ondanda emin değilim ilk defa snapshots almayı deniyorum.

Özet olarak arch sistemimde btrfs ile nasıl snapshots alabilirim? ekstra programlara gerek olmadan varsayılan yapılandırmaları kullanmayı tercih ederim

1 Like

https://wiki.archlinux.org/title/snapper#Creating_a_new_configuration

BTRFS ayarn eksik. Yukarıdan terminal ile yapabilirsin. Grafik arayüzünden yapmak istiyorsan btrfs-assistant indirmelisin.

subvolume’ler var zaten hali hazırda yukarıdaki gösterdiğim koddaki gibi ama snapshots içinde snapler yok

Dostum subvolume’un yok demiyorum zaten. Snapper ayar dosyan eksik. Snapper ile snapshot alabilmek için aşağıdaki gibi bir ayar dosyan olması gerekli:


# subvolume to snapshot
SUBVOLUME="/"

# filesystem type
FSTYPE="btrfs"


# btrfs qgroup for space aware cleanup algorithms
QGROUP=""


# fraction or absolute size of the filesystems space the snapshots may use
SPACE_LIMIT="0.5"

# fraction or absolute size of the filesystems space that should be free
FREE_LIMIT="0.2"


# users and groups allowed to work with config
ALLOW_USERS=""
ALLOW_GROUPS=""

# sync users and groups from ALLOW_USERS and ALLOW_GROUPS to .snapshots
# directory
SYNC_ACL="no"


# start comparing pre- and post-snapshot in background after creating
# post-snapshot
BACKGROUND_COMPARISON="yes"


# run daily number cleanup
NUMBER_CLEANUP="yes"

# limit for number cleanup
NUMBER_MIN_AGE="1800"
NUMBER_LIMIT="20"
NUMBER_LIMIT_IMPORTANT="10"


# create hourly snapshots
TIMELINE_CREATE="yes"

# cleanup hourly snapshots after some time
TIMELINE_CLEANUP="yes"

# limits for timeline cleanup
TIMELINE_MIN_AGE="1800"
TIMELINE_LIMIT_HOURLY="10"
TIMELINE_LIMIT_DAILY="5"
TIMELINE_LIMIT_WEEKLY="0"
TIMELINE_LIMIT_MONTHLY="0"
TIMELINE_LIMIT_YEARLY="0"


# cleanup empty pre-post-pairs
EMPTY_PRE_POST_CLEANUP="yes"

# limits for empty pre-post-pair cleanup
EMPTY_PRE_POST_MIN_AGE="1800"

Bu benim ayar dosyam /etc/snapper/configs/root içerisinde. Bunu istersen elle oluşturabilirsin. Sana yukarıdaki attığım bağlantıyı okuman lazımdı bunun için veya grafik arayüzüyle oluşturmak istiyorsan btrfs-assitant yazılımını kullanabilirsin.

Verdiğin hatayı çeviri aracına atarsan zaten sana bahsettiğim konu hakkında uyarı yaptığını anlayacaksın.

bende buna benzer bir dosya vardı ama bu yolda değildi (/etc/conf.d/snapper/ içindeydi) yolunu dediğiniz gibi yaptım. SNAPPER_CONFIGS=“root” satırı ekledim (işlevli olup olmadığından emin değilim) ve ardından sudo snapper -c root create --description "My snapshot" yazdım ve snapshots almış oldum. bu snapshotları sadece sistem çökerse belki diye kullanacağım, boot ve dev klasörlerini de eklemeye gerek var mı sizce bunun için?

Hayır gerek yok. / klasörünüzü almanız yeterli.

1 Like