8,595
edits
(Updating to match new version of source page) |
(Updating to match new version of source page) Tags: Mobile web edit Mobile edit |
||
Line 175: | Line 175: | ||
При удалении снимка не удаляются файлы, фактически используемые другими снимками или подтомом, из которого они были взяты. Чтобы освободить место, Btrfs проверяет каждый файл в снапшоте, используется ли он или нет. Если нет, то место для этого файла/версии станет свободным. (Это значительно упрощено) Поэтому удаление моментальных снимков является '''дорогостоящим'''. И Btrfs будет делать эту работу в фоновом режиме. Вы можете заметить это, потому что при удалении снимка не будет '''немедленного выигрыша в свободном пространстве'''. Через некоторое время вы заметите, что часть пространства освободилось. | При удалении снимка не удаляются файлы, фактически используемые другими снимками или подтомом, из которого они были взяты. Чтобы освободить место, Btrfs проверяет каждый файл в снапшоте, используется ли он или нет. Если нет, то место для этого файла/версии станет свободным. (Это значительно упрощено) Поэтому удаление моментальных снимков является '''дорогостоящим'''. И Btrfs будет делать эту работу в фоновом режиме. Вы можете заметить это, потому что при удалении снимка не будет '''немедленного выигрыша в свободном пространстве'''. Через некоторое время вы заметите, что часть пространства освободилось. | ||
<div class="mw-translate-fuzzy"> | |||
Не забывайте удалять моментальные снимки, иначе скоро у вас возникнут '''проблемы - "нехватка места"'''. Btrfs необходимо некоторое свободное пространство для управления своей работой. Если ваш том заполнен более чем на 80%, то нужно быстро сообразить, что делать. | Не забывайте удалять моментальные снимки, иначе скоро у вас возникнут '''проблемы - "нехватка места"'''. Btrfs необходимо некоторое свободное пространство для управления своей работой. Если ваш том заполнен более чем на 80%, то нужно быстро сообразить, что делать. | ||
* ++++ '''Добавить''' какой-нибудь раздел/устройство на том. | * ++++ '''Добавить''' какой-нибудь раздел/устройство на том. | ||
* +++ '''Удалить''' ненужные снимки | * +++ '''Удалить''' ненужные снимки | ||
* + '''Удалить''' некоторые файлы (это поможет только в том случае, если они не являются частью какого-либо моментального снимка) | * + '''Удалить''' некоторые файлы (это поможет только в том случае, если они не являются частью какого-либо моментального снимка) | ||
</div> | |||
=== Откат к снапшоту === | === Откат к снапшоту === | ||
Line 192: | Line 194: | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
Please also have a look at [https://github.com/jrabinow/snapper-rollback snapper-rollback@github] and at [https://wiki.archlinux.org/title/Snapper#Suggested_filesystem_layout snapshot-layout@wiki.archlinux] for the suggested flat layout and the reasoning. ([https://forum.manjaro.org/t/how-to-manual-rollback-with-btrfs/80230 Rollback example ]) | Please also have a look at [https://github.com/jrabinow/snapper-rollback snapper-rollback@github] and at [https://wiki.archlinux.org/title/Snapper#Suggested_filesystem_layout snapshot-layout@wiki.archlinux] for the suggested flat layout and the reasoning. ([https://forum.manjaro.org/t/how-to-manual-rollback-with-btrfs/80230 Rollback example ]) | ||
{{BoxWarning|Don't forget to remove snapshots before you run out of space|Every time you take a snapshot you only use the "rest of the volume" for storing everything you change from this time on. At some point in time you have to release the snapshot. Don´t use your space up. Btrfs needs '''space to breath.''' Don't use more then | {{BoxWarning|Don't forget to remove snapshots before you run out of space|Every time you take a snapshot you only use the "rest of the volume" for storing everything you change from this time on. At some point in time you have to release the snapshot. Don´t use your space up. Btrfs needs '''space to breath.''' Don't use more then '''90%''' or you will get into trouble."}} | ||
{{BoxDanger|NO Snapshots together with quotas|There are reports about massive problems when using '''quotas''' together with snapshots (snapper, timeshift). Please have a look at: [https://btrfs.wiki.kernel.org/index.php/Quota_support#Known_issues Known_issues@btrfs.kernel.org]}} | {{BoxDanger|NO Snapshots together with quotas|There are reports about massive problems when using '''quotas''' together with snapshots (snapper, timeshift). Please have a look at: [https://btrfs.wiki.kernel.org/index.php/Quota_support#Known_issues Known_issues@btrfs.kernel.org]}} | ||
</div> | </div> | ||
Line 261: | Line 263: | ||
Because a complete balance may take '''a long time''', there is the possibility of filters in balance. When using a filter only those chunks will be balanced, that are named by the filter. | Because a complete balance may take '''a long time''', there is the possibility of filters in balance. When using a filter only those chunks will be balanced, that are named by the filter. | ||
* '''balance''' all chunks that are less than 50% full. This '''will''' take some time ! | * '''balance''' all chunks that are less than 50% full. This '''will''' take some time ! | ||
{{RootCmd|command=btrfs balance start | {{RootCmd|command=btrfs balance start -dusage=50 /}} | ||
* '''balance''' all chunks that are less than 90% full. This '''will''' take some time ! | * '''balance''' all chunks that are less than 90% full. This '''will''' take some time ! | ||
{{RootCmd|command=btrfs balance start | {{RootCmd|command=btrfs balance start -dusage=90 /}} | ||
{{BoxWarning|Don't use filters higher than 90%|This is unnecessary on an SSD drive. On a hard drive, this will put a lot of strain on the disk. Even with today's hard drives (>2TB), it may take a very long time. (e.g. 24 hours or more)}} | {{BoxWarning|Don't use filters higher than 90%|This is unnecessary on an SSD drive. On a hard drive, this will put a lot of strain on the disk. Even with today's hard drives (>2TB), it may take a very long time. (e.g. 24 hours or more)}} | ||
</div> | </div> | ||
Line 343: | Line 345: | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
* '''balance''' your volume with a filter(50%) This '''will''' take some time ! | * '''balance''' your volume with a filter(50%) This '''will''' take some time ! | ||
{{RootCmd|command=btrfs balance start | {{RootCmd|command=btrfs balance start -dusage=50 /}} | ||
{{BoxSuccess|Tip: Want to watch the volume clean up ?| | {{BoxSuccess|Tip: Want to watch the volume clean up ?| | ||
{{UserCmd|command=pamac install procps-ng}}}} | {{UserCmd|command=pamac install procps-ng}}}} | ||
Line 349: | Line 351: | ||
{{RootCmd|command=watch -n 60 btrfs filesystem usage -h / }}}} | {{RootCmd|command=watch -n 60 btrfs filesystem usage -h / }}}} | ||
* '''balance''' your volume with a filter(95%) This '''will''' take some more time ! | * '''balance''' your volume with a filter(95%) This '''will''' take some more time ! | ||
{{RootCmd|command=btrfs balance start | {{RootCmd|command=btrfs balance start -dusage=95 /}} | ||
</div> | </div> | ||
Line 358: | Line 360: | ||
</div> | </div> | ||
<div class="mw-translate-fuzzy"> | |||
=== Не попасть в беду === | === Не попасть в беду === | ||
* Подумайте, как расширить том btrfs до '''двойного размера''' | * Подумайте, как расширить том btrfs до '''двойного размера''' | ||
Line 363: | Line 366: | ||
* ищите моментальные снимки! | * ищите моментальные снимки! | ||
* не забудьте удалить старые снимки (лучше всего это делать автоматически) | * не забудьте удалить старые снимки (лучше всего это делать автоматически) | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
Line 451: | Line 455: | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
== Compression [https://btrfs.readthedocs.io/en/latest/Compression.html ⇒] == | == Compression [https://btrfs.readthedocs.io/en/latest/Compression.html ⇒] == | ||
You can turn on compression at any time by changing the mount options in the fstab. After the next reboot, all newly written data from then on will be automatically compressed. Compression factors of 2:1 on average are not uncommon. | |||
[[Btrfs#Mount_options|@see mount-options]] | |||
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / btrfs rw,noatime,compress=zstd,subvol=@ 0 0 | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
{| class="wikitable" | |||
|+ Which compression suits me best? | |||
|- | |||
! CPU !! rotating disk !! SSD | |||
|- | |||
| slow || zstd:1 ... 4 || zstd:1 ... 3 | |||
|- | |||
| medium || zstd:4 ... 7 || zstd:3 ... 5 | |||
|- | |||
| fast || zstd:7 ... 10 || zstd:5 ... 10 | |||
|} | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Compression can only be set '''per volume'''. So if you set different "levels" of compression for different mounts in the fstab, only the first "level" will be applied. [https://btrfs.readthedocs.io/en/latest/Compression.html#how-to-enable-compression see@btrfs.readthedocs.io] | Compression can only be set '''per volume'''. So if you set different "levels" of compression for different mounts in the fstab, only the first "level" will be applied. [https://btrfs.readthedocs.io/en/latest/Compression.html#how-to-enable-compression see@btrfs.readthedocs.io] | ||
{{BoxWarning|Grub needs to load the kernel and initrd|When you use compression on kernel, initrd, or grub config files, '''grub''' needs to decompress these files. Otherwise you will '''not be able to boot'''. GRUB introduced '''zstd''' support in '''2.04.''' Maybe you need to update grub '''and''' reinstall it}} | {{BoxWarning|Grub needs to load the kernel and initrd|When you use compression on kernel, initrd, or grub config files, '''grub''' needs to decompress these files. Otherwise you will '''not be able to boot'''. GRUB introduced '''zstd''' support in '''2.04.''' Maybe you need to update grub '''and''' reinstall it}} |