Сообщения

Простой скрипт проверки доступности хоста

Изображение
Всем привет ! Предлагаю вашему вниманию скрипт проверки доступности хоста.  Скрипт можно запускать из консоли или используя Cron. При запуске, скрипт сначала проверяет доступен ли Интернет, используя при этом команду DIG, если интернет доступен (а если нет - появится  всплывающее сообщение) - запускается команда PING, которая и проверяет доступность хоста. По результату вы получите соответствующее  сообщение. Каждое сообщение снабжено визуально понятной иконкой. А вот и собственно код самого скрипта: #!/bin/bash #Функция посылает ping запрос к хосту указанному в переменной mhost function loadres(){ #Необходимый адрес хоста можно указать прямо в командной строке в качестве аргумента в виде: myscript myhost.com if [ -n "$1" ] then mhost=$1 else #Вместо "mysite.com" укажите адрес необходимого хоста mhost="mysite.com" fi if ping -c1 "$mhost" &> /dev/null then #Вместо "$HOME/*/live-host/" укажите свой (прави...

Полезные команды одной строкой (short-list for Linux)

У каждого уверенного пользователя Линукса, при условии его дружбы с терминалом :), есть некоторый набор команд, в которых время от времени возникает необходимость. И хорошо если ты их помнишь наизусть, да и ещё со всеми параметрами, или они сохранились в истории терминала. А если нет ? Или после переустановки системы, или при работе на чужой машине... Что тогда делать ? Терять время и искать их в сети ? Да и не всегда это быстрый процесс, ведь некоторые параметры команды ещё нужно подогнать под свои условия. Поэтому я решил сделать небольшой список часто используемых мною команд, для своего удобства. Список планирую регулярно пополнять. Если эти команды пригодятся кому то ещё - буду очень рад ! Обрезание изображения с помощью Imagick (convert) Предположим, у вас есть энное количество изображений в одной папке, из которых вам нужно вырезать из правого нижнего угла подпись автора или название сайта разместившего изображение.  Высота нежелательной надписи при этом составляет 10%...

Генератор русских имён и фамилий на Python

Изображение
Написал простейший генератор на Питоне русских имен и фамилий. Описывать его работу нет необходимости, всё предельно просто: при запуске программы в качестве аргумента устанавливается -m (мужские) или -f (женские), случайным образом, из списков выбирается пара имя:фамилия. Вот пример запуска программы в консоли: python3 imena.py -m Я специально оставил некоторое количество "нерусских" имен и фамилий в списках - так будет достовернее, особенно в наше время. В планах на дальнейшее - добавить возможность генерации украинских имен и фамилий. Так же прикрутить возможность экспорта данных в json и xml. Есть так же мысли добавить модуль генерации псевдофотографии. Программа есть на Гитхабе, кому нужно - пользуйтесь на здоровье. Вот ссылка:  https://github.com/linuxforse/random_russian_and_ukraine_name_surname Благодарю за просмотр и всем Удачи !

Программа-пятиминутка или качаем видео из консоли

Изображение
  Есть такие простейшие программы, как я их называю - "пятиминутки". Которые можно написать за пять минут, а пользуешься их услугами впоследствии  годами. Чаще всего это скрипты, основой для которого служит некая библиотека/ки, в которых под себя расширяешь и/или добавляешь некий функционал. Одной из таких "пятиминуток" стал скрипт - Yоdo. Его основная задача - это скачивание видео в разрешении 640*360 с youtube. Основой для этой программы служит библиотека youtube-dl. Скрипт написан на Bash-е, он настолько простой, что его работу нет необходимости объяснить. После скачивания видео появляется всплывающее окошко (notify-send) оповещающее пользователя о завершении процеса закачки.  Возможно я со временем добавлю ещё некоторую функциональность. Назвал я скрипт "Yodo", поместил  его в /bin/, дал нужные права и пользуюсь) Код скрипта представлен ниже: #!/bin/bash youload() { echo "Если хочешь скачать ещё видео - вставь ссылку, если нет - нажми...

Шифруем любые данные с помощью ENCFS

Изображение
Если у вас есть необходимос ть зашифровать большое количество файлов, к которым вам нужно будет в любое время обратиться, добавить новые файлы в эту коллекцию, удалить или отредактировать - тогда очень советую использовать программу Encfs. Если не вдаваться в технические детали, то Encfs - это свободная криптографическая файловая система, прозрачно шифрующая файлы, используя произвольную директорию в качестве места для хранения зашифрованных файлов. Распространяется под лицензией GPL Работает очень шустро даже на слабых компах. Установка на Ubuntu предельно проста: sudo apt-get install encfs   Предположим у вас есть папка с файлами, которые вы хотите зашифровать по имени secret, также отдельно создайте любую пустую папку, назовём её crypt , в неё будет монтироваться наш зашифрованный том с уже расшифрованными файлами.  Теперь в терминале вбиваем такую команду: encfs /home/user/secret /home/user/crypt user -  ваш домашний каталог. Путь к файла...

Букмарклет для удаления спама с сайта на основе регулярных выражений

Изображение
Некоторое время назад, я зависал на одном форуме. Все бы ничего, но там присутствовал один очень неадекватный персонаж, который своим бредом просто заспамливал весь форум. Жалобы в администрацию  ничего не давали, а форумом пользоваться хотелось. Тогда я написал простейший букмарклет, который используя регулярные выражения просто находил по специфичным и постоянно используемым этим психом словам сообщения. Слова, по которым осуществляется поиск, я нашёл заранее. Найденные сообщения удалялись и страница форума становилась пригодной к просмотру :) Исходный код букмарклета есть на Github , так же можете посмотреть на него ниже, конечно для вашей ситуации его нужно будет отредактировать под себя: < html xmlns = " http://www.w3.org/1999/xhtml " xml:lang = " en " lang = " en " > < head > < title >Bookmarklet. Delete spam on forum</ title...

Вставка символов Юникода в GIMP-е.

Изображение
Предположим, у вас возникла необходимость нанести на изображение текст нестандартными символами, например, вы выставляете в интернет фотографию любимого ёжика и боитесь, что его могут сглазить нехорошие люди, которые увидят его :) В этом случае вы можете нанести на изображение обережный став (рунескрипт). А выглядеть это может так: А если серьёзно - то необходимость в добавление нестандартных символов из набора Юникода может возникнуть в любой момент. Это могут быть символы копирайта, копилефта, символы из других языков и т.д. Можно конечно эти символы нарисовать, но если вы не художник или просто нет желания - тогда смотрим как сделать это стандартными инструментами Gimp-а. Открываем таблицу Юникода, например по этому адресу и находим нужный символ. Запоминаем его шестнадцатеричный код, без приставки U. Например 2620 . Открываем нужное изображение в  GIMP-е, открываем диалог ввода текста и нажимаем клавиатурную комбинацию: CTRL+SHIFT+U. В поле ввода текста появляется ...

Букмарклет для скачивания видео с SaveFrom

Изображение
Есть такой сервис,  SaveFrom , позволяющий скачивать видео с Youtube, Facebook, Вконтакте и прочих. У этого сервиса есть очень удобные расширения для почти всех существующих браузеров. Так же можно получить ссылку для скачивания видео вставив на странице SaveFrom ссылку на страницу видео: Вставка ссылки для получения файла Также можно достичь этого же результата подставив в начале адреса страницы youtube две буквы ss. Нпример - адрес страницы  https://www.youtube.com/watch?v=y9o8n-SfJac , а подставив ss youtube.com/watch?v=y9o8n-SfJac мы перейдем на страницу скачивания, как было показано на скриншоте выше. У меня появилась необходимость вставки адреса видео на SaveFrom непосредственно со страницы Youtube в автоматическом режиме. По некоторым причинам расширение мне не подходило. Для решения этой задачи я написал простейший букмарклет: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd...

Кластериризация данных и Unicode в Python

И снова книга Тоби Сегарана "Программируем коллективный разум"... Ну нравится она мне :) Возникло желание разобраться с кластеризацией данных. Вроде все просто. Скопировал из книги код, вставил и запустил. И тут начались пляски с бубном. Как "неожиданно оказалось" код (а он написан на Python-е) изначально предполагал работу только с латиницей, а кириллицу  автор книги в расчёт не принимал. По некоторым причинам я работаю с Python версии 2.7 а версию 3.* (где использование кириллицы не вызывает проблем ) использовать не могу. После долгого гугления решение было найдено. Код нормально работает с кириллическими символами., по крайне мере в Python 2.7. Пытался ещё улучшить результат работы скрипта удалением из текста предлогов и стоп-слов, но увы, это слабо помогло и этот фрагмент кода был удалён. # -*- coding: utf-8 -*- import sys import feedparser import re     def setup_console ( sys_enc = "utf-8" ) : reload ( sys ) try : # ...

Косяк с архивом и его решение

Изображение
Скачал я сегодня с сайта  Linux-User  архив с  книгой   "Команды для терминала Linux" Но Менеджер Архивов раз за разом выдавал ошибку - "skipping: книга команды для терминала Linux.pdf need PK compat. v5.1 (can do v4.6)" Через Терминал - тоже не получалось. Решение нашлось довольно быстро: В Терминалы набираем: sudo apt-get install p7zip-full После установки, архив открывается без проблем. Хоть через Менеджер Архивов, хоть через терминал. Все манипуляции проводились в Ubuntu 12.04 Буду рад, если кому то мой опыт пригодится. Всем Удачи !

Восстановление удалённых файлов с флешки в Ubuntu

Изображение
Рядом с работай есть маленький, стихийный базарчик-железка, на котором можно купить и старую чугунную сковородку времён молодости Брежнева и куллера и только что сворованный телефон. Одним словом - полезный базарчик. Купил я там на днях флешку Transcend  на 4 гига, за смешные 40 гривен ($2,5). На ней в избытке была солянка из порядка 300 песен, которые мне нафиг не нужны. Решил прогнать флешку через восстановление удалённых файлов, а вдруг что интересное выплывет. Для восстановления использую Foremost с написанным для неё GUI - FOREG. Скачать её можно  здесь Запускаем... И идём пока и занимаемся своими делами... Результат не просто удивил он шокировал. Почти ТРИ тысячи файлов ! И почти все из них не повреждены и прекрасно читаются.Но ещё больший шок меня ждал когда я начал просматривать что собственно Foreg мне восстановил. Две трети из всего этого, это сканы и документы по сделкам с недвижимостью в центре Одессы, документы по кредитам на сотни тысяч долларов, судеб...

Изображение-матрёшка. Прячем одно изображение в другом

Изображение
                Прячем секретную информацию в изображении Предположим, у нас есть некое изображение ну очень секретного характера. И мы хотим  спрятать его от чужих глаз.  Можно конечно  сохранить его в запароленном архиве Zip или, для лучшей сохраности, зашифровать в TrueCrypt. И радоваться, что теперь уж никто не узнает ваш секрет. Оно то так, но иногда сам факт того, что у вас на компе есть зашифрованный файл вызывает подозрение и может привести к тому, что на вас могут оказывать давление (хоть на психику, хоть паяльником) для получения пароля к зашифрованному файлу. Поэтому мы поступим хитрее, мы спрячем секретное изображение в другом, не вызывающем подозрения изображении. Для выполнения задуманного на понадобится HEX-редактор и любое изображение формата JPG (фотка с секретом так же должна быть формата JPG ). Для прикрытия берём вот такую невинную фотку киски: Именно в неё мы будем прятать другую "киску" :). Открыва...

Новый способ сокрытия секретной информации в изображениях

Изображение
Концепт: Есть идея, как спрятать произвольный текст (преимущественно латиницей) в комментариях изображения. Будем использовать JPEG. Открываем в hex редакторе (например в Ghex) любое изображение в формате JPEG. Например эту симпатичную розу: [FF D8] — маркер начала. Он всегда находится в начале всех jpg-файлов.  Следом идут байты [FF FE]. Это маркер, означающий начало секции с комментарием. Следующие 2 байта [00 04] — длина секции (включая эти 2 байта). Значит в следующих  [00 NN] и находятся комментарии. В длине секции [00 NN] будет скрыт один символ из таблицы ASCII. Пример: [00 2B] - будет означать символ +, а [00 3F] - символ ?. Если не поняли - вот таблица ASCII: Соответственно текст самого комментария не важен, хотя и должен выглядеть естественным, дабы не вызывать подозрений, но он должен быть такой длины, которая нам нужна для нужного числа в секции длины. С одной стороны не очень практичный способ хранить информацию, можно сохранить только по одному сим...