Nástroje pro práci s diskem

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Další kontroly: Oprava vzhledu)
m (Rozdělení disku: Doplnění: rozdělování disků je třeba spouštět jako admin.)
 
(Není zobrazeno 27 mezilehlých verzí od 1 uživatele.)
Řádka 1: Řádka 1:
[[Category:VSE]][[Category:Informatika]][[Category:OSY]]
+
[[Category:VSE]][[Category:Informatika]][[Category:OSY]][[Category:Ukládání dat]]
== Údržba disku ==
+
 
*Kontrola disku
+
 
**Linux: fsck (FileSystem ChecK)
+
== Zjištění informací a stavu disku ==
**Windows: chkdsk (CHecKDiSK)
+
* Většina dnešních disků umí poskytnout informace o stavu HW pomocí diagnostiky S.M.A.R.T
***raději přes grafické rozhraní
+
; Windows
 +
* <code>wmic diskdrive get status</code>
 +
** Pouze vrací stručný výsledek diagnostiky: <code>OK</code> | <code>unknown</code> | <code>Caution</code> | <code>Bad</code>
 +
* <code>wmic diskdrive get /?</code>
 +
** Přehled dalších informací, které lze zjistit.
 +
* <code>Get-Disk | Get-StorageReliabilityCounter | Select *</code>
 +
** Ve Windows Powershellu. (Je třeba spustit jako správce!)
 +
; Linux
 +
* <code>smartctl --all /dev/''soubor''</code>
 +
** Přečte informace o&nbsp;stavu pevného disku, počet vadných sektorů, teplotu atd.
 +
* <code>smartctl -t short /dev/''soubor''</code>
 +
** Spuštění rychlé diagnostiky disku.
 +
* Název virtuálního souboru najdete například pomocí: <code>sudo fdisk -l</code>, které vám zobrazí seznam disků.
 +
; Další nástroje
 +
* Existují samozřejmě nástroje třetích stran, často nabízející i&nbsp;grafické rozhraní.
 +
* Příkladem může být HDDScan: [https://hddscan.com/ https://hddscan.com/]
 +
* Výrobci disků občas nabízí vlastní SW, který umí kromě běžných atributů S.M.A.R.T číst i&nbsp;specifické údaje daného výrobce disků.
 +
 
 +
== Kontrola souborového systému ==
 +
* Může provádět i kontrolu povrchu pevného disku.
 +
; Linux &mdash; <code>fsck</code> (FileSystem ChecK)
 +
* Musí provádět správce (root).
 +
* Pokud chceme kontrolovat systémový svazek, musíme vynutit kontrolu po restartu (svazek musí být odpojen). Vytvoříme soubor <code>/forcefsck</code> a restartujeme systém:
 +
touch /forcefsck
 +
shutdown -r now
 +
<div class="Poznamka">V Debianu 8 je ve standardním nastavení kontrola systémového disku při startu zapnutá trvale.</div>
 +
; Windows &mdash; <code>chkdsk</code> (CHecKDiSK)
 +
* Nebo přes grafické rozhraní: ''pravé tlačítko na ikonu disku &rarr; Vlastnosti &rarr; Nástroje &rarr; Zkontrolovat...''
 +
* Kontrola systémového disku: <code>chkdsk -f c:</code> ... provede se až po restartu, aby bylo možné dělat opravy.
 +
 
  
 
== Defragmentace ==
 
== Defragmentace ==
*Je výhodné, když je soubor v po sobě se vyskytujících sektorech.
+
* Vysvětlení pojmu „defragmentace“ viz [[Souborové systémy#Defragmentace|Souborové systémy &rarr; Defragmentace]].
*Po sobě následující sektory bývají ukládány
+
; Windows:
**na stejnou stopu
+
* pravé tlačítko na ikonu diskového oddílu-> Vlastnosti-> Nástroje
**nevlezou-li, pak na stejný cylindr
+
* příkazový řádek: <code>defrag</code>
**nevlezou-li, pak na vedle sebe následující cylindry.
+
* Od Windows Vista se pouští automaticky jednou za týden.
*ext3: pyfragtools: defrag, shake
+
; GNU/Linux
 +
* Obvykle se nástroje nepoužívají souborový systém ext2/ext3 nemá s fragmentací problémy.
 +
*ext3: balík <code>pyfragtools</code>: <code>defrag</code>, <code>shake</code>
 
**není klasická defragmentace, obvykle není potřeba
 
**není klasická defragmentace, obvykle není potřeba
 
**nástroje jsou založeny na přečtení a novém zapsání souborů, spoléhají na to, že ext3 uloží data rozumně
 
**nástroje jsou založeny na přečtení a novém zapsání souborů, spoléhají na to, že ext3 uloží data rozumně
*ext2: e2defrag
+
*ext2: <code>e2defrag</code>
 
**lze použít i pro ext3, ale může dojít k problémům, soubory jsou převáděny do ext2
 
**lze použít i pro ext3, ale může dojít k problémům, soubory jsou převáděny do ext2
*Windows: pravé tlačítko na ikonu diskového oddílu-> Vlastnosti-> Nástroje
+
 
  
 
== Zjištění kapacity disku ==
 
== Zjištění kapacity disku ==
*du (DiskUsage)
+
; Windows
**Jak využívají disk jednotlivé adresáře: kolik místa zabírají
+
* GUI: <code>pravé tlačítko na složku&rarr; Vlastnosti</code>
**Bez výpisu velikost vnořených adresářů: du -S
+
* Příkazový řádek:
**Úkol: Zjistěte, kdo má na domovském disku moc dat.
+
** <code>dir /s</code> (poslední tři řádky, ale jinak vypisuje všechny složky a&nbsp;jejich obsah)
*df (DiskFree)
+
** <code>du</code> (Disk Usage) v&nbsp;rámci knihovny Sysinternals [https://docs.microsoft.com/en-us/sysinternals/downloads/du Microsoft.com &rarr; Sysinternals &rarr; du]
**Kolik je na diskových oddílech volného místa.
+
** Lze zapsat v [[Powershell|Powershellu]]: <code>Get-ChildItem -Recurse | Measure-Object -Sum Length</code> (ale ignoruje skryté soubory)
**Informace o obsazených a volných i-nodech: df -i
+
; GNU/Linux
**Informace o obsazeném místě na disku, kde je umístěn soubor: df nazevsouboru
+
<code>du</code> (DiskUsage)
**Vypisuje i jména virtuálních souborů.
+
*Jak využívají disk jednotlivé adresáře: kolik místa zabírají
**Úkol: Je některý diskový oddíl příliš zaplněný?
+
* <code>-s</code> &hellip; pouze velikost podadresářů tohoto adresáře (bez výpisu vnořených podadresářů): <code>du -s *</code>
 +
* <code>-h</code> &hellip; použije násobné jednotky (KB, MB, GB, TB) pro lepší čitelnost (''human readable'')
 +
* Pro řazení lze použít v&nbsp;kombinaci se <code>sort -h</code>:
 +
du -sh * | sort -h
 +
<div class="Priklad">Úkoly:
 +
# Vypište velikosti domovských složek všech uživatelů.
 +
# Vypište pět domovských složek uživatelů s&nbsp;největším množstvím dat.
 +
# Vypište deset největších podadresářů aktuálního adresáře.
 +
</div>
 +
<code>df</code> (DiskFree)
 +
*Zobrazí, kolik je na diskových oddílech volného místa.
 +
* (Zároveň zobrazí připojené diskové oddíly a názvy virtuálních souborů.)
 +
*Informace o obsazených a volných i-nodech: <code>df -i</code>
 +
*Informace o obsazeném místě na disku, kde je umístěn soubor:  
 +
df nazevsouboru
 +
*Vypisuje i jména virtuálních souborů.
 +
<div class="Priklad">Úkoly:
 +
# Vypište zaplnění jednotlivých diskových oddílů.
 +
</div>
 +
; Řešení (označte pro zobrazení):
 +
# <code style="color: white; background-color: white;">du -sh /home/*</code>
 +
# <code style="color: white; background-color: white;">du -sh /home/* | sort -hr | head -5</code>
 +
# <code style="color: white; background-color: white;">du -sh * | sort -hr | head</code>
 +
# <code style="color: white; background-color: white;">df</code>
  
 
== Zjištění informací z inode ==
 
== Zjištění informací z inode ==
*stat /etc/passwd
+
stat /etc/passwd
**STATistics
+
* STATus
*ls -i /etc/passwd
+
* Vypíše informace z&nbsp;i-node souboru.
**zjistí číslo i-node
+
* Lze pomocí přepínačů nastavit, které informace chceme vypsat.
 +
ls -i ''/etc/passwd''
 +
*zjistí číslo i-node pro zadaný soubor zadaného souboru
 +
 
  
 
== Hledání souborů ==
 
== Hledání souborů ==
*which název
+
; <code>which ''název''</code>
**Odkud by  se spustil daný příkaz, kdybych ho spustil?
+
*Odkud by  se spustil daný příkaz, kdybych ho spustil?
**prochází adresáře, uvedené v proměnné PATH
+
*prochází adresáře, uvedené v proměnné PATH
**which cp
+
which cp
**cd `which novell`
+
cd `which novell`
*find adresář -name název
+
; <code>find ''adresář'' -name ''název''</code>
**Hledá soubor s názvem NÁZEV v podadresářích adresáře ADRESÁŘ
+
*Hledá soubor s názvem <tt>NÁZEV</tt> v podadresářích adresáře <tt>ADRESÁŘ</tt>
**find / -name s*.jpg 2&gt;/dev/null
+
find / -name s*.jpg 2&gt; /dev/null
*locate
+
; <code>locate</code>
**potřebuje databázi, která se průběžně aktualizuje
+
* Potřebuje databázi, která se průběžně aktualizuje (příkaz <code>updatedb</code>)
***updatedb
+
 
  
 
== Rozdělení disku ==
 
== Rozdělení disku ==
*Rozdělení disku na diskové oddíly.
+
Více o pricipech rozdělování disků viz [[Rozdělení disku]].
*gparted
+
**grafické rozhraní, pohodlné
+
**Neumí zajistit montování disků
+
*fdisk
+
**textové rozhraní
+
*partman
+
  
== Další kontroly ==
 
Převzato z: [http://tcs-security-blanket.blogspot.com/2010/04/keeping-linux-file-systems-clean.html tcs-security-blanket.blogspot.com > 2010 > 04 > Keeping-linux-file-systems-clean]
 
*unowned files
 
**pokud má soubor vlastníka a následně daný uživatelský účet zrušíme
 
**riziko:
 
***pokud vytvoříme nový účet s daným UID, bude účet vlastnit tento soubor!
 
**hledání:
 
***sudo find / \( -nouser -o -nogroup \) -print
 
*uneven permissions
 
**má-li skupina více práv než vlastník nebo všichni více práv než skupina
 
  
 +
; Windows &mdash; GUI
 +
* <code>Ovládací panely &rarr; ... &rarr; Správa počítače &rarr; Správa disků</code>
 +
* Konzole <code>mmc</code> &rarr; Správa disků
 +
* Obojí je třeba spouštět s&nbsp;oprávněními administrátora.
 +
 +
 +
; Windows &mdash; příkazový řádek
 +
 +
; <code>diskpart</code>
 +
* Příklady příkazů:
 +
* Vyber disk VHD
 +
select vdisk file=''cesta-k-souboru.vhd''
 +
attach vdisk
 +
* Vyber oblast fyzického disku
 +
select disk ''číslo-disku''
 +
select partition ''číslo-oblasti''
 +
* Výpis dostupných objektů
 +
list volume
 +
list disk
 +
list partition
 +
* Vyber oddíl
 +
select volume ''číslo-oddílu''
 +
* Přiřazení písmene
 +
assign letter=''písmeno''
 +
* Nápověda
 +
help
 +
* Ukončení práce
 +
exit
 +
 +
* I zde je třeba spustit příkazový řádek s&nbsp;oprávněními administrátora.
 +
 +
<div class="Poznamka">
 +
Ve starších verzích Windows byl starší nástroj <code>fdisk</code>.
 +
</div>
 +
 +
 +
; GNU/Linux
 +
Pro zjištění seznamu diskových oddílů:
 +
lsblk
 +
 +
Rozdělení_disku:
 +
; <code>gparted</code>
 +
* Grafické rozhraní, pohodlné.
 +
* Neumí zajistit montování disků.
 +
* V&nbsp;jednotlivých GUI hledejte třeba pojem „Disky“.
 +
; <code>fdisk</code>
 +
* Je třeba spouštět jako správce (<code>sudo</code>).
 +
* Textové rozhraní.
 +
* Příkad: Otevření tabulky rozdělení disku:
 +
fdisk /dev/sdb
 +
* Příkad: Výpis dostupných diskových oddílů:
 +
fdisk -l
 +
; <code>partman</code>
 +
 +
== Formátování diskového oddílu ==
 +
Vytvořený diskový oddíl je potřeba naformátovat &mdash; připravit prostor pro metadata.
 +
 +
; Windows &mdash; GUI
 +
* <code>Průzkumník &rarr; Tento počítač &rarr; Disk &rarr; ''pravé tlačítko myši'' &rarr; Formátovat</code>
 +
* <code>Ovládací panely &rarr; ... &rarr; Správa počítače &rarr; Správa disků</code>
 +
* Konzole <code>mmc</code> &rarr; Správa disků
 +
 +
; Windows &mdash; příkazový řádek
 +
* <code>format</code>
 +
 +
; GNU/Linux
 +
mkfs -t ''fs'' /dev/''oddíl''
 +
* M''a''K''e ''F''ile''S''ystem
 +
* Naformátuje zadaný oddíl na daný souborový systém.
 +
* Například: <code>mkfs -t vfat /dev/sdb1</code>
 +
 +
 +
 +
== Připojování diskových oddílů ==
 +
; GNU/Linux
 +
* V GNU/Linuxu jsou všechny diskové oddíly zařazeny do jednoho stromu s kořenem ve společné složce (root directory, <tt>/</tt>).
 +
* <tt>/etc/fstab</tt>
 +
** Soubor s tabulkou oddílů, které se po spuštění počítače připojují.
 +
* <code>mount -t ''typ'' ''oddíl'' ''složka_do_které_připojit''</code>
 +
** Pokud neuvedeme typ, pokusí se odvodit.
 +
* <code>umount ''složka''</code> nebo <code>umount ''oddíl''</code>
 +
** Odpojí připojený diskový oddíl.
 +
* <code>umount -a</code>
 +
** Projde znovu <tt>/etc/fstab</tt> a připojí všechny oddíly.
 +
** Používá se při změně <tt>/etc/fstab</tt>.
 +
<div class="Priklad">
 +
Připojení disku s Windows z živého CD Debianu (Wheezy):
 +
$ su -i
 +
$ fdisk -l
 +
/dev/sda0 ...
 +
$ mkdir win
 +
$ mount /dev/sda0 win
 +
...
 +
$ umount /dev/sda0
 +
</div>
 +
; Windows
 +
* Na Windows má každý diskový oddíl své písmenko (<tt>c:\</tt> apod.).
 +
* Přidělovat písmena můžeme ve <tt>Správci disků</tt>.
 +
<code>compmgmt.msc</code>&rarr; Úložiště&rarr; Správa disků.
 +
* Můžete také stejný ovládací modul spustit pomocí [[Konzole MMC|konzole <code>mmc</code>]].
 +
 +
 +
== Úkoly ==
 
<div class="Priklad">
 
<div class="Priklad">
 
; Úkol &mdash; Přimontujte k virtuálnímu stroji další disk
 
; Úkol &mdash; Přimontujte k virtuálnímu stroji další disk
*Připojte ,,fyzický" disk
+
*Připojte k&nbsp;virtuálnímu stroji nový disk (v nastavení virtuálního stroje).
*Rozdělte a naformátujte pomocí gparted
+
*Rozdělte a naformátujte pomocí <tt>gparted</tt> nebo <tt>fdisk</tt>.
*Nastavte automatické montování do /mnt/data
+
*Nastavte v&nbsp;<tt>/etc/fstab</tt> automatické montování do <tt>/mnt/data</tt> (přidejte položku):
**/etc/fstab: /dev/sdb5*  /mnt/data  ext3  relatime  0  2
+
** (Místo <tt>/dev/sdb5</tt> doplňte správné zařízení připojeného disku.)
*Vytvořte složku /mnt/data/backup a sym. link /var/backup
+
''/dev/sdb5''*  /mnt/data  ext3  relatime  0  2
 +
*Vytvořte složku <tt>/mnt/data/backup</tt> a sym. link <tt>/var/backup</tt>
 
</div>
 
</div>
  
Řádka 93: Řádka 238:
 
*V uvedeném příkladu je připojen vzdálený adresář /var/www/html do /mnt/web. Každý si to samozřejmě nahradí podle svých potřeb.
 
*V uvedeném příkladu je připojen vzdálený adresář /var/www/html do /mnt/web. Každý si to samozřejmě nahradí podle svých potřeb.
 
-->
 
-->
 +
 +
 +
== Související stránky ==
 +
* [[Další nástroje pro práci s diskem]]
 +
  
 
== Zdroje: ==
 
== Zdroje: ==
 
* [http://cs.wikibooks.org/wiki/Linux:df#df cs.wikibooks.org > Linux:df]
 
* [http://cs.wikibooks.org/wiki/Linux:df#df cs.wikibooks.org > Linux:df]
 
* [http://www.root.cz/clanky/defragmentace-disku-v-linuxu/ root.cz > Defragmentace disku v Linuxu]
 
* [http://www.root.cz/clanky/defragmentace-disku-v-linuxu/ root.cz > Defragmentace disku v Linuxu]

Aktuální verze z 23. 4. 2024, 07:20


Obsah

Zjištění informací a stavu disku

Windows
Linux
Další nástroje

Kontrola souborového systému

Linux — fsck (FileSystem ChecK)
touch /forcefsck
shutdown -r now
V Debianu 8 je ve standardním nastavení kontrola systémového disku při startu zapnutá trvale.
Windows — chkdsk (CHecKDiSK)


Defragmentace

Windows
GNU/Linux


Zjištění kapacity disku

Windows
GNU/Linux

du (DiskUsage)

du -sh * | sort -h
Úkoly:
  1. Vypište velikosti domovských složek všech uživatelů.
  2. Vypište pět domovských složek uživatelů s největším množstvím dat.
  3. Vypište deset největších podadresářů aktuálního adresáře.

df (DiskFree)

df nazevsouboru
Úkoly:
  1. Vypište zaplnění jednotlivých diskových oddílů.
Řešení (označte pro zobrazení)
  1. du -sh /home/*
  2. du -sh /home/* | sort -hr | head -5
  3. du -sh * | sort -hr | head
  4. df

Zjištění informací z inode

stat /etc/passwd
ls -i /etc/passwd


Hledání souborů

which název
which cp
cd `which novell`
find adresář -name název
find / -name s*.jpg 2> /dev/null
locate


Rozdělení disku

Více o pricipech rozdělování disků viz Rozdělení disku.


Windows — GUI


Windows — příkazový řádek
diskpart
select vdisk file=cesta-k-souboru.vhd
attach vdisk
select disk číslo-disku
select partition číslo-oblasti
list volume
list disk
list partition
select volume číslo-oddílu
assign letter=písmeno
help
exit

Ve starších verzích Windows byl starší nástroj fdisk.


GNU/Linux

Pro zjištění seznamu diskových oddílů:

lsblk

Rozdělení_disku:

gparted
fdisk
fdisk /dev/sdb
fdisk -l
partman

Formátování diskového oddílu

Vytvořený diskový oddíl je potřeba naformátovat — připravit prostor pro metadata.

Windows — GUI
Windows — příkazový řádek
GNU/Linux
mkfs -t fs /dev/oddíl


Připojování diskových oddílů

GNU/Linux

Připojení disku s Windows z živého CD Debianu (Wheezy):

$ su -i
$ fdisk -l
/dev/sda0 ...
$ mkdir win
$ mount /dev/sda0 win
...
$ umount /dev/sda0
Windows
compmgmt.msc→ Úložiště→ Správa disků.


Úkoly

Úkol — Přimontujte k virtuálnímu stroji další disk
  • Připojte k virtuálnímu stroji nový disk (v nastavení virtuálního stroje).
  • Rozdělte a naformátujte pomocí gparted nebo fdisk.
  • Nastavte v /etc/fstab automatické montování do /mnt/data (přidejte položku):
    • (Místo /dev/sdb5 doplňte správné zařízení připojeného disku.)
/dev/sdb5*   /mnt/data   ext3  relatime   0  2
  • Vytvořte složku /mnt/data/backup a sym. link /var/backup


Související stránky


Zdroje:

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje