Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
Asi systém přeinstaluji s ext4 které mě nikdy nezklamaloKdyby tu byl BTRFS guru Andrej, tak by ti napsal, že je lepší když ti BTRFS zahlásí ztrátu dat, což se ti možná stalo, než když přijdeš o data tiše s ext4. A měl by pravdu.
Tam jsem zjistil že oproti funkčnímu systému není žádná změna.Skutečně jsi zkontroloval celý disk bit po bitu? Jak ti psali ostatní, chtělo by to logy.
Je opravdu tak těžké pochopit, že čekáme až sem dá nějaký screenshot, nebo něco podobného, na základě čeho by se dalo říct kde je problém? Kdyby použil tag pre, taky by ho neubylo. U té Clonezilly taky není jasné jestli to obnovil komplet, nebo jenom nějakou patition. Spousta lidí se domnívá, že hovoří jasně, ale není tomu tak. Pro někoho je totiž "celý disk", jenom partition s linuxem a pro jiného zas celé blokové zařízení.
Jestliže se mu to normálně namountuje, bude nejspíš problém zcela banální. Nenapsal ani co používá za distribuci. Bohatě by stačilo, kdyby sem nakopíroval co mu vypíše ~$ sudo btrfs subvolume list /
. Hned bychom byli doma.
Osobně se domnívám, že žádné subvolume @home
co se snaží namountovat vytvořeno nemá. Proto mu to zahlásí chybu a data se zapisují do normálního adresáře /home
kořenového subvolume, kde má nainstalovaný celý systém. To je celé.
ID 256 gen 4279 top level 5 path @ ID 257 gen 4280 top level 5 path @home ID 258 gen 4251 top level 5 path @cache ID 259 gen 4280 top level 5 path @log ID 260 gen 24 top level 256 path var/lib/portables ID 261 gen 25 top level 256 path var/lib/machines
Ok. Díky. Vidím že subvolume vytvořeno máš. Víš co by ještě mohlo poskytnout víc informací? Zapnutí kvót. Zjistíš kolik dat každé volume obsahuje. Nejdřív ale na to vypusť scrub. Až dojede a zjistíš kolik máš v každém subvolume dat, můžeš ty kvóty klidně vypnout. Tady máš pro ilustraci jak to vypadá u mne. Jen pro info. Zabráno mám 86%, je to Btrfs v raid1, celkový objem dat 1,53TiB takže než dojede scrub, tak to chvíli bude trvat. Už to nechám dojet, není to na škodu ale kdybys to chtěl stopnout máš uvedeno jak. Doporučuji během toho co jede scrub sledovat dmesg. Pokud se během toho než to dojede objeví nějaké chyby, tak je uvidíš.
~$ sudo btrfs quota enable / ~$ sudo btrfs scrub start / ~$ sudo btrfs scrub status / ~$ sudo btrfs scrub status / UUID: 8d567f20-2ab3-436e-a52f-c7ed7e1c8879 Scrub started: Sat Dec 23 14:20:17 2023 Status: running Duration: 0:08:20 Time left: 2:37:04 ETA: Sat Dec 23 17:05:42 2023 Total to scrub: 1.53TiB Bytes scrubbed: 79.05GiB (5.04%) Rate: 161.90MiB/s Error summary: no errors found ~$ sudo btrfs fi df / Data, RAID1: total=836.00GiB, used=780.71GiB System, RAID1: total=32.00MiB, used=132.00KiB Metadata, RAID1: total=7.00GiB, used=3.86GiB GlobalReserve, single: total=512.00MiB, used=0.0 ~$ sudo btrfs device usage / /dev/sda1, ID: 10 Device size: 915.75GiB Device slack: 0.00B Data,RAID1: 836.00GiB Metadata,RAID1: 7.00GiB System,RAID1: 32.00MiB Unallocated: 72.72GiB /dev/sdb1, ID: 11 Device size: 915.75GiB Device slack: 0.00B Data,RAID1: 836.00GiB Metadata,RAID1: 7.00GiB System,RAID1: 32.00MiB Unallocated: 72.72GiB ~$ sudo dmesg -we ... ~$ sudo btrfs qgroup show / WARNING: rescan is running, qgroup data may be incorrect Qgroupid Referenced Exclusive Path -------- ---------- --------- ---- 0/5 0.00B 0.00B <toplevel> 0/256 129.54GiB 129.54GiB btrfs-root 0/585 7.86GiB 7.86GiB btrfs-root/home/user/.PlayOnLinux 0/586 0.00B 0.00B btrfs-root/var/lib/machines 0/1532 0.00B 0.00B btrfs-root/var/lib/portables ~$ sudo btrfs scrub cancel / ~$ sudo btrfs quota disable /
Jen na vysvětlenou. Ten údaj o tom množství dat v subvolume se ti bude postupně měnit, dokud nedojede ten scrub do konce. Tohle je kupř. můj aktuální stav:
~$ sudo btrfs scrub status / UUID: 8d567f20-2ab3-436e-a52f-c7ed7e1c8879 Scrub started: Sat Dec 23 14:20:17 2023 Status: running Duration: 0:55:34 Time left: 1:21:33 ETA: Sat Dec 23 16:37:27 2023 Total to scrub: 1.53TiB Bytes scrubbed: 635.84GiB (40.52%) Rate: 195.29MiB/s Error summary: no errors found ~$ sudo btrfs qgroup show / WARNING: rescan is running, qgroup data may be incorrect Qgroupid Referenced Exclusive Path -------- ---------- --------- ---- 0/5 4.00KiB 4.00KiB <toplevel> 0/256 168.63GiB 168.63GiB btrfs-root 0/585 18.07GiB 18.07GiB btrfs-root/home/user/.PlayOnLinux 0/586 4.00KiB 4.00KiB btrfs-root/var/lib/machines 0/1532 4.00KiB 4.00KiB btrfs-root/var/lib/portables
Jo a zapnuté kvóty mají něco do sebe. Umožňují předcházet situaci, kdy si zaplácneš celý disk. Btrfs sice má vždy skulinu kterou lze takovou situaci řešit, ale ten kdo to nezná z toho může být dost vydivočený.
Když máš totiž zaplácnutý disk, neuvolníš místo tím že něco smažeš. Je to COW systém, tzn. že i smazání souboru vyžaduje nějaké volné místo. Jednou možností je odpojení a nové přimountování, jelikož si Btrfs vždy nechává nějakou volnou rezervu, umožní ti pak něco menšího smazat. V případě velkých souborů to ale nemusí stačit a když zaplácneš subvolume, tak to snad ani nelze. A v takovém případě ti může vytrhnout paty příkaz truncate
. Smrskneš soubor na 1 bajt a pak už smazat půjde.
Je opravdu tak těžké pochopit, že čekáme až sem dá nějaký screenshot, nebo něco podobného, na základě čeho by se dalo říct kde je problém?Není to těžké pochopit. Všichni to chápeme. Právě proto jsem se mu snažil naznačit, že by bylo chybou kdyby místo detailnějšího popisu problému BTRFS utekl k ext4.
Jinak k tomu pojmenování tvých subvolume. Použití zavináče je zastaralá věc, kterou se svého času někteří snažili aplikovat jako konvenci k odlišení subvolumes od normálních adresářů, než se ukázalo, že je to spíš komplikace než přínos. Je totiž mnohem efektivnější použít btrfs subvolume show nějaká_cesta
a odchytit chybu, než parsovat cestu a spoléhat na to, že někdo dodržel tuhle pseudokonvenci.
Což mne přivedlo na pravděpodobnou chybu kterou máš v tom svém /etc/fstab
a dost mne překvapuje, že by ti ten mount vůbec někdy fungoval, protože název toho subvolume je @home
a ne /@home
.
Jo, a ještě mě napadla jedna věc, která by mohla dělat problém. Mountuješ to přes UUID. Mezi námi, mountovat přes LABEL je mnohem jednodušší a nemusíš v případě potřeby hledat nějaké UUID.
Což mne přivedlo na pravděpodobnou chybu kterou máš v tom svémV tomhle chyba není./etc/fstab
a dost mne překvapuje, že by ti ten mount vůbec někdy fungoval, protože název toho subvolume je@home
a ne/@home
.
@home
je vytvořený v nejvyšší btrfs úrovni. Když ho mountneš na /home
a dáš mount, tak se subvol takhle (/@home
) vypisuje.
# btrfs subvolume list / | grep @home ID 746 gen 1364277 top level 5 path @home # cat /etc/fstab | grep @home UUID=6ed846b8-423b-40e8-beef-74f5e6181c2b /home btrfs defaults,noatime,compress=lzo,subvol=@home 0 0 # mount -t btrfs | grep @home /dev/mapper/sda2_crypt on /home type btrfs (rw,noatime,compress=lzo,ssd,discard=async,space_cache=v2,subvolid=746,subvol=/@home)
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a device; this may # be used with UUID= as a more robust way to name devices that works even if # disks are added and removed. See fstab(5). # UUID=B3E0-51AD /efi vfat defaults,noatime 0 2 UUID=d9b300b2-3c17-42dc-8db7-aa9cc3125caa / btrfs subvol=/@,defaults,noatime,compress=zstd 0 0 UUID=d9b300b2-3c17-42dc-8db7-aa9cc3125caa /home btrfs subvol=/@home,defaults,noatime,compress=zstd 0 0 UUID=d9b300b2-3c17-42dc-8db7-aa9cc3125caa /var/cache btrfs subvol=/@cache,defaults,noatime,compress=zstd 0 0 UUID=d9b300b2-3c17-42dc-8db7-aa9cc3125caa /var/log btrfs subvol=/@log,defaults,noatime,compress=zstd 0 0 tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
cat /proc/mounts
?
/dev/sda2 / btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=256,subvol=/@ 0 0 devtmpfs /dev devtmpfs rw,nosuid,size=4096k,nr_inodes=4081492,mode=755,inode64 0 0 tmpfs /dev/shm tmpfs rw,nosuid,nodev,inode64 0 0 devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0 cgroup2 /sys/fs/cgroup cgroup2 rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot 0 0 pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime 0 0 efivarfs /sys/firmware/efi/efivars efivarfs rw,nosuid,nodev,noexec,relatime 0 0 bpf /sys/fs/bpf bpf rw,nosuid,nodev,noexec,relatime,mode=700 0 0 configfs /sys/kernel/config configfs rw,nosuid,nodev,noexec,relatime 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 tmpfs /run tmpfs rw,nosuid,nodev,size=6536804k,nr_inodes=819200,mode=755,inode64 0 0 systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=36,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=6279 0 0 hugetlbfs /dev/hugepages hugetlbfs rw,nosuid,nodev,relatime,pagesize=2M 0 0 mqueue /dev/mqueue mqueue rw,nosuid,nodev,noexec,relatime 0 0 debugfs /sys/kernel/debug debugfs rw,nosuid,nodev,noexec,relatime 0 0 tracefs /sys/kernel/tracing tracefs rw,nosuid,nodev,noexec,relatime 0 0 fusectl /sys/fs/fuse/connections fusectl rw,nosuid,nodev,noexec,relatime 0 0 /dev/sda2 /home btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=257,subvol=/@home 0 0 tmpfs /tmp tmpfs rw,noatime,inode64 0 0 /dev/sda2 /var/cache btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=258,subvol=/@cache 0 0 /dev/sda2 /var/log btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=259,subvol=/@log 0 0 /dev/sda3 /mnt/statwine btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=5,subvol=/ 0 0 /dev/sda1 /efi vfat rw,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0 /dev/sdb1 /mnt/sdb1 btrfs rw,noatime,compress=zstd:3,space_cache=v2,subvolid=5,subvol=/ 0 0 binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,nosuid,nodev,noexec,relatime 0 0 tmpfs /run/user/1000 tmpfs rw,nosuid,nodev,relatime,size=3268400k,nr_inodes=817100,mode=700,uid=1000,gid=1001,inode64 0 0
No výborně. /home je namontovaný. Takže je buď všechno v pořádku nebo se musíš soustředit na to, co se píše v logu. Něco jako/dev/sda2 /home btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=257,subvol=/@home 0 0
journalctl -b -p3Kromě toho si dostal radu, abys udělal scrub, což se při problémech jaksi hodí. Takže tím můžeš pokračovat.
Tiskni
Sdílej: