пятница, 12 апреля 2013 г.

Уведомление о прочтении письма для Gmail

Отправляя почту со своего аккаунта Gmail я часто сталкиваюсь с ситуацией когда мне необходимо знать прочитал ли получатель отправленное ему письмо, и если да, то когда и где именно? Штатными средствами Gmail этого сделать нельзя, хотя такая возможность существует для аккаунтов бизнес-уровня. В моем случае я нашел выход с помощью интернет сервиса  SpyPig. Сервис англоязычный, но пользоваться им совершенно не составляет никакого труда.

На главной странице имеется форма 'Spy Pig Factory' в которой надо указать:
  1. Your email address -- адрес электронной почты на который будут приходить уведомления о прочтении;
  2. Your message title -- текст уникальным образом связанный с контролируемым письмом;
  3. Select your SpyPig tracking image -- картинка, которую необходимо выбрать и затем скопировать в тело отправляемого письма за промежуток времени 60 сек, отсчитываемый  от момента нажатия на кнопку [Click to Create My SpyPig].
P.S. Сервис несомненно интересный, но не всегда срабатывающий, например в случае когда на стороне получателя есть ограничения на загрузку картинок из сети. Факт прочтения отслеживается через призму загрузки внедренного в письмо изображения.

пятница, 5 апреля 2013 г.

Знакомимся с DD

Есть жесткий диск объемом 1Т с бед блоками на поверхности и важными данными. Этот диск мы будем называть исходным. Есть второй диск равный по объему исходному и подготовленный в соответствии с его разметкой. Дадим ему название целевой диск. Задача заключается в создании полной копии исходного диска утилитой dd. Операция переноса данных выполняется в однопользовательском режиме FreeBSD. Для этого можно использовать например LiveCD дистрибутив Frenzy. Определившись с дисками запускаем процесс копирования следующей командой
dd if=/dev/{устройство исходного диска} of=/dev/{устройство целевого диска} bs=64K conv=noerror
Так как копируемый диск содержит сбойные сектора опция noerror позволяет пропустить такие блоки и выполнить проверку. Для ускорения работы dd, которая к слову сказать не отличается быстротой, можно использовать параметр bs задающий размер копируемого блока.

Запустив процесс копирования остается набраться терпения. Как я уже сказал, dd очень медленно выполняет свою работу. Например на диске в 1Т утилита работала почти 6 часов! Более того утилита никаким образом не информирует пользователя о ходе выполнения своей работы, и блокирует терминал, так как выполняется в синхронном режиме. И все же, чтобы оценить объем проделанной работы можно послать процессу dd сигнал SIGINFO. Для этого надо запустить второй терминал (Alt+F2) и выполнить
killall -SIGINFO dd
Выдав статистику работы dd продолжит выполнение дальше. Если послать сигнал SIGINT dd после выдачи статистики завершит свою работу.

P.S. В Linux для получения статистики работы dd используется сигнал USR1. Если такой сигнал послать dd выполняющейся на платформе FreeBSD, dd завершит свою работу без выдачи какого-нибудь результата. Имейте это в виду, так как dd никогда не использует результаты своей предыдущей работы, а начинает цикл копирования заново. Утилита dd полностью повторяет копируемый диск. Если на нем были сбойные сектора они будут и на целевом. К тому же dd будет копировать не только занятую область, но и свободную, т.е. диск в диск. Другие примеры использования утилиты dd несложно найти в интернете.