Zobrazujú sa príspevky s označením rm. Zobraziť všetky príspevky
Zobrazujú sa príspevky s označením rm. Zobraziť všetky príspevky

utorok 21. januára 2020

Keď yum nereaguje, tz. je hangnutý

Je noc, 3 hodiny ráno a potrebujete spraviť update serveru. Máte na to len 2 hodiny so všetkými možnými chybami. Napíšete yum update a nič sa nedeje. Proste akoby sa príkaz yum zasekol a nedá sa ani prerušiť. Čo robiť?


nedeľa 15. decembra 2019

sudo rm -rf /

Dosť často sa stretnete s vtipom sudo rm -rf /

Čo to vlastne je? Pokúsme sa to rozanalyzovať:

rm je príkaz na mazanie súborov:

máme tu súbor Zaira.txt

martin@guliverkel:~$ ls -lh Zaira.txt 
-rw-r--r-- 1 martin martin 1.9K Dec 15 20:42 Zaira.txt

Vymazali sme súbor Zaira.txt

martin@guliverkel:~$ rm Zaira.txt 
martin@guliverkel:~$ ls -lh Zaira.txt 
ls: cannot access 'Zaira.txt': No such file or directory

rm má prepínač -i ako interactive: bude sa vás pýtať: ako vidíte tu:

martin@guliverkel:~$ rm -i Diego_kokain.txt 
rm: remove regular file 'Diego_kokain.txt'? y  
martin@guliverkel:~$ ls -lh Diego_kokain.txt 
ls: cannot access 'Diego_kokain.txt': No such file or directory


(Na RHEL distribúciach RHEL, CentOS, Fedora, Oracle Linux je rovno v aliasoch zabudované to, aby sa vás pýtalo, či chcete skutočne zmazať. Veď dajte na tých distribúciach príkaz alias)

potom tu máme prepínač rm -r 

Ako teda mažeme adresáre? (na prázdne adresáre používame príkaz rmdir) Príklad:

martin@guliverkel:~$ mkdir sexi_kocky
martin@guliverkel:~$ rmdir sexi_kocky/


Vytvorme si ale adresár a dajme tam súbory: (a pozrime sa na príkaz rmdir teraz)

martin@guliverkel:~$ mkdir sexi_divoke_kocky
martin@guliverkel:~$ touch sexi_divoke_kocky/Diego_Kokain.drg
martin@guliverkel:~$ touch sexi_divoke_kocky/Zaira.txt
martin@guliverkel:~$ touch sexi_divoke_kocky/RobertF.avi
martin@guliverkel:~$ touch sexi_divoke_kocky/xxx_VladkoM_rozdelenieRepubliky.fin
martin@guliverkel:~$ rmdir sexi_divoke_kocky/
rmdir: failed to remove 'sexi_divoke_kocky/': Directory not empty

V takom prípade vyskúšam príkaz rm -r s tým, že -r znemaná rekurzívne. (Zmaže všetko, čo sa nachádza, teda, adresár, ba aj súbory v ňom. Aj Diegovu kokainovu minulosť. Na tomto systéme.) Pozrime sa na to:

martin@guliverkel:~$ rm -r sexi_divoke_kocky/
martin@guliverkel:~$ ls -lh sexi_kocky/
ls: cannot access 'sexi_kocky/': No such file or directory


rm -rf spraví to, že zmaže všetko rekurzívne (r). prepínač f znamená force, tj. nepýta sa a spraví to. Pozrime sa:

martin@guliverkel:~$ mkdir futbalisti
martin@guliverkel:~$ touch futbalisti/crespo
martin@guliverkel:~$ touch futbalisti/sevcenko
martin@guliverkel:~$ touch futbalisti/Pali
martin@guliverkel:~$ touch futbalisti/Mudra
martin@guliverkel:~$ rm -rf futbalisti/
martin@guliverkel:~$ ls -lh futb*
ls: cannot access 'futb*': No such file or directory


V linuxe sa koreňové adresáre určujú týmto znakom /

To je najvyššia možná úroveň. Pokiaľ by sme ako obyčajný užívateľ dali rm -rf /, zmažeme svoj domáci adresár. (Vyššie nemáme práva zápisu.)

Pokiaľ ako root (alebo s pomocou sudo ako bežný užívateľ) vykonáme túto činnosť, zmažeme si celý systém.

Preto pre lásku Božiu, nikdy nepíšte sudo rm -rf / - zmažete si celý koreňový adresár.

PS: Zbytok článku som dopísal z telefónu, pretože som vykonal tento príkaz a čaká ma tak inštalácia Linuxu. (Veď si všimnite lokalitu, kde som to písal.)


Drobný test

Niečo sme sa naučili, poďme si vypracovať nejaké úlohy. (Dnes zadám len úlohy, neskôr poskytnem ich riešenie.)

1. prihláste sa na užívateľa root a prejdite do jeho domovského adresáru

2. Pozrite sa, či sa v /etc/ nachádza súbor fstab

3. Spravte rm -rf / ako root a ďalej už nemusíte pokračovať. (Popíšte, čo vám ten príkaz urobí)

4. Napíšte skript, ktorý vám skontroluje

A) informácie o tom, aký je to operačný systém
B) ako dlho beží operačný systém
C) koľko je hodín?
D) pochválite sa, akí ste skvelí, jedineční
E) názov hostname

5. Skopírujte súbor /etc/resolv.conf do adresára /media/test_data (Vytvorte aj zálohu /media/test_data/resolv.conf.bak (Ďalej .bak)

6. Pomocou editoru vi pridajte do .bak súboru toto : "Skúsime fungovať bez DNS"

7. Skontolujte, či súbor .bak má práva zápisu pre skupinu. Ak nemá, vytvorte ich

8. Vytvorte užívateľa tester, skupinu test_produkcia. Potom do vytvorenej skupiny pridajte užívateľa tester

9. Skontrolujte, či na systéme beží proces "Lovec-bitkoin" a zabite ho. (Pokiaľ nebeží, popíšte ako človek, nie cez príkazy, čo by ste robili.) Napríklad: rozbitie monitoru a nalievanie kyseliny do disketovej mechaniky by pomohlo

10. Akú IP adresu a netmasku má Váš operačný systém; Čo je MAC adresa?