
Давайте ценить человека, пока он с нами, и пожелаем отметить еще не один такой день!
в этом блоге я буду делиться самым интересным из найденной мной информации, надеюсь, вам будет интересно


sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.3
Вдохновившись статьей о поиске следов взлома, решил написать статью о предупреждении взлома и базовых шагах для сведения возможности взлома сервера к минимуму. find /path/to/dir -type f -exec chmod 644 {} \; $ apg -t -q -n 2
dickluer (dick-luer)
JicNeut3 (Jic-Neut-THREE)
$ apg -t -q -m 12 -a 1 -n 2
@%p-a^b`kI>R
dKYeK{7)E`Es



.bin (название может быть любым, какое больше нравится). Именно там будут лежать пользовательские скрипты. Каталог скрытый - чтоб не мешался.~/.bashrc (или другой, специфичный для используемой оболочки) нужно встравить строку:export PATH="${PATH}:/home/UserName/.bin", где UserName - имя пользователя.#!/bin/bash
#Имя таба и название бинарника
NAME="${1}"
EXEC="${2}"
if [[ "x${NAME}" == "x" || "x${EXEC}" == "x" ]]; then
echo "Usage: yakurun <tabname> <appname>"
exit
fi
#Получаем список открытых сессий (фактически - табов)
SESSIONS=`qdbus org.kde.yakuake /yakuake/sessions sessionIdList`
#Заменяем запятые на пробелы
SESSIONS="${SESSIONS//,/ }"
#Считаем, что еще не открыто таба с указанным в переменной NAME именем.
TAB_EXISTS=0
#Перебираем все открытые табы в поисках таба с именем NAME
for SESSION in ${SESSIONS}; do
SNAME=`qdbus org.kde.yakuake /yakuake/tabs tabTitle ${SESSION}`
if [ "x${SNAME}" == "x${NAME}" ]; then
#Таб найден
TAB_EXISTS=1
#Получаем идентификатор сессии для найденного таба
TERMINAL=`qdbus org.kde.yakuake /yakuake/sessions terminalIdsForSessionId ${SESSION}`
#Проверяем, есть ли запущенные текущим пользователем процессы с именем EXEC
APP=`ps u | awk '{ print $11; }' | grep "${EXEC}"`
if [ "x${APP}" != "x${EXEC}" ]; then
#Если ничего не найдено, запускаем в этом табе приложение EXEC
qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal ${TERMINAL} "${EXEC}"
fi
#Делаем таб активным
qdbus org.kde.yakuake /yakuake/sessions raiseSession ${SESSION}
break
fi
done
#Если еще не было открыто таба с именем NAME
if [ ${TAB_EXISTS} = 0 ]; then
#Открываем новый таб
qdbus org.kde.yakuake /yakuake/sessions addSession
SESSION=`qdbus org.kde.yakuake /yakuake/sessions activeSessionId`
TERMINAL=`qdbus org.kde.yakuake /yakuake/sessions terminalIdsForSessionId ${SESSION}`
#Переименовываем его
qdbus org.kde.yakuake /yakuake/tabs setTabTitle ${SESSION} "${NAME}"
#Запускаем в нем приложение EXEC
qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal ${TERMINAL} "${EXEC}"
fi
#Проверяем, открыто ли окно Yakuake
ACTIVE=`qdbus org.kde.yakuake /yakuake/MainWindow_1 com.trolltech.Qt.QWidget.isActiveWindow`
if [ ${ACTIVE} == 'false' ]; then
#Если нет - делаем его видимым
qdbus org.kde.yakuake /yakuake/window toggleWindowState
fiТеперь, в качестве примера, настроим сочетания клавиш для запуска/открытия weechat (Meta + c) и MOC (Meta + m) в Yakuake:~/.xbindkeysrc следующего содержания:#Запуск/открытие weechat в yakuake
"/home/UserName/.bin/yakurun WeeChat weechat-curses"
Mod2+Mod4 + c
#Запуск/открытие MOC в yakuake
"/home/UserName/.bin/yakurun MOCP mocp"
Mod2+Mod4 + mНе забудьте заменить UserName на имя пользователя.