jak používat příkaz fsck v Linuxu?
příkaz fsck
(kontrola konzistence souborového systému) je nástroj pro kontrolu a opravu souborového systému Linux. Moderní souborové systémy s žurnálováním jsou navrženy tak, aby nástroje jako fsck nebyly snadno vyžadovány. V několika případech však může být fsck jedinou možností, jak opravit “špatný” souborový systém.
fsck
lze spustit na oddílu, který byl poškozen nebo nekonzistentní se zbytkem souboru.
důvody, proč může být fsck vyžadována
- nečisté vypnutí-to je hlavní příčina korupce. Kvůli “nečistému vypnutí” může systém selhat při správném spuštění
- selhání nebo poškození jednotky
obsah
prostředí, kde byste neměli používat fsck
protože příkaz pracuje přímo se sektory souborového systému, je důležité zde přijmout nezbytná opatření.
manuálová stránka e2fsck říká:
Všimněte si, že obecně není bezpečné spouštět e2fsck na připojených souborových systémech. Jedinou výjimkou je, pokud je zadána volba-n A volby-c, – l nebo-L nejsou zadány. Nicméně, i když je to bezpečné, výsledky vytištěné e2fsck nejsou platné, pokud je připojen souborový systém. Pokud se e2fsck zeptá, zda byste měli zkontrolovat připojený souborový systém, jediná správná odpověď je “ne”.
https://www.man7.org/linux/man-pages/man8/e2fsck.8.html
takže musíte udělat fsck
na nepřipojeném oddílu. Pokud můžete oddíl odpojit pomocí umount
, dobře a dobře. Jinak musíte změnit své prostředí:
1. Režim obnovy
(pro Ubuntu-Hold SHIFT
při zavádění do grubu vyberte “Pokročilé možnosti pro Ubuntu”, poté vyberte možnost označenou “režim obnovy” a poté vyberte fsck). V režimu obnovení jsou oddíly namontovány.
2. Při použití parametru jádra init = /bin / bash
(přidržte SHIFT
při zavádění pro vstup do grubu, stiskněte e
pro úpravu parametrů jádra). Poskytuje Bash shell, odkud lze spustit fsck
, ale i zde jsou oddíly namontovány.
jak používat příkaz fsck?
s jasnými základy přejdeme ke krokům, jak byste měli používat příkaz fsck v Linuxu.
1. Základní použití
než začnete používat příkaz, ujistěte se, že pracujete na nepřipojeném oddílu. Chcete-li odpojit oddíl a spustit fsck na něm Typ :
$ sudo umount /dev/<partition_name>$ fsck /dev/<partition_name>
je pravděpodobné, že oddíl nelze odpojit. V takovém případě můžete zvolit jednu z následujících metod.
2. Spuštění fsck pomocí živého USB
to je pravděpodobně nejlepší způsob, jak spustit fsck
. Poskytuje bohatou sadu známých nástrojů, jako je fdisk
. Použijte tento tutoriál k vytvoření živého Ubuntu USB. Tato část předpokládá, že používáte Linux z živého USB.
Chcete-li zobrazit všechny oddíly ve vašem systému, můžete použít příkaz fdisk
.
$ sudo fdisk -l
Poznámka: Výše uvedené oddíly (pro 2 SSD, jeden NVMe a další SATA) se mohou lišit od toho, co máte v systému. fdisk také vytiskne další informace o oddílech. Pro účely tohoto článku však postačuje název oddílu.
Identifikujte oddíl, který způsobuje potíže, a pak jednoduše spusťte:
$ fsck /dev/<partition_name>
to by mělo problém vyřešit.
3. Použití initramfs
dalším způsobem použití příkazu fsck je v režimu intramfs. Dostat se do initramfs
- podržte klávesu
SHIFT
při zavádění, abyste se dostali do nabídky GRUB. - stisknutím
e
upravte spouštěcí položku - přidejte parametr jádra jako ‘
break
‘, jak je znázorněno na obrázku níže - stisknutím
Ctrl - X
uložte a ukončete
initramfs
poskytuje “méně lákavý” způsob řešení problémů.
oddíly nejsou připojeny v initramfs, takže provedení fsck
by bylo bezpečné. Také potřebujete název oddílu. Initramfs však poskytuje minimum nástrojů. Takže fdisk
nebude k dispozici. Oddíly můžete vypsat pomocí příkazu cat, jak je uvedeno níže:
$ cat /proc/partitions
Identifikujte oddíl a poté spusťte:
$ fsck /dev/<partition_name>
Poznámka: fsck pomocí Live USB nemusí být vždy k dispozici. V takovém případě použijte metodu initramfs.
jak zkontrolovat, zda je fsck naplánováno nebo ne
možná budete chtít vědět, kdy byl váš oddíl Naposledy zkontrolován nebo kdy bude v budoucnu. V takovém případě spusťte:
$ sudo tune2fs -l /dev/<partition_name> | egrep -i 'check|mount'
- maximální počet připojení je počet připojení, po kterém bude souborový systém automaticky zkontrolován fsck.
- kontrolní interval je čas mezi dvěma kontrolami souborového systému.
tyto dvě hodnoty stačí k identifikaci, kdy byl příkaz fsck naposledy spuštěn.
rozdíl mezi fsck a e2fsck
můžete najít různé odpovědi / články s žádostí o spuštění e2fsck nebo fsck.ext4 spíše než fsck. Jaký je rozdíl, pokud spustíte některý z těchto nástrojů místo fsck
?
fsck
je pouze frontend pro všechny příkazy fsck specifické pro souborový systém, jako jsou dva výše uvedené (obal, pokud byste mohli říci). Vyvolání fsck
automaticky vyvolá správný souborový systém specifický fsck
. Podívejme se, které všechny fsck
jsou v našem systému:
$ ls -l /sbin/fsck*
spuštění fsck
na oddílu ext2 / 3 / 4 spustí příslušný spustitelný soubor /sbin/fsck.ext*
. Tyto spustitelné soubory jsou zase tvrdé odkazy na spustitelný soubor e2fsck
. Takže i když spustíte fsck
na oddílu ext4, bude nakonec spuštěn e2fsck
.
závěr
v tomto tutoriálu jsme se zabývali fsck
což je užitečný nástroj pro obnovu souborových systémů. Chcete-li se dozvědět více o příkazu fsck
, podívejte se na jeho manuálovou stránku.
Leave a Reply