2018-04-28

Docker контейнер c GUI на удаленном компьютере

howto

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

Обнаружил замечательный docker образ, который позволяет запускать графическое окружение и обращаться к нему через брауезер или через VNC viewer. 

Запускаем на удаленном сервере:

> docker run -p 6080:80 -p 5900:5900 -e VNC_PASSWORD=mypassword dorowu/ubuntu-desktop-lxde-vnc

И заходим на ваш новый компьютер через браузер:

http://yourremoteserver:6080

Получается вполне сносный рабочий копьютер на котором нормально открываются google и amazon сервисы.

 

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

 
  2018-04-23

Зачем рeдактировать /etc/hosts для создания локального сайта?

программирование, howto

Добавил новую DNS запись вида *.local на домен maxistar.ru ссылающуюся на 127.0.0.1 - теперь для локальной разработки не обязателно добавлять имя локального сайта в /etc/hosts - просто создаем локальный виртуальный домен, например newproject.local.maxistar.ru - и вуаля - я могу видеть его по этому адресу!

Кстали, в сети полно таких DNS записей более короткого вида - например fuf.me ссылается на локалхост, можно, например, сделать newproject.fuf.me.

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

 

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

 
  2016-10-28

Как записать видео с экрана в linux

howto

Я как то писал, что чтобы записать видео с экрана, моожно воспользоваться VLC. Однако, такой способ имеет одну проблему - указатель мыши, почему-то, оказывается невидим на получающемся видео. Чтобы исправить ситуацию, некоторые пытаются накладывать поверх фальшивые курсоры, но я до сих пор не нашел способа который бы хорошо это делал.

Недавно, в попытках решить указанную проблему, установил программку которая называется vokoscreen, которая как оказалось, умеет записывать видео, и при этом корректно захватывает курсор мыши. Однако, при детальном рассмотрении оказалось, что это просто GUI для ffmpeg - а значит все тоже самое можно делать из коммндной строки.

Все просто, в моем случае это:

> ffmpeg -video_size 1366x767 -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i default output.mp4

Где 1366x767 - это разрешение экрана минус единица. При этом захват получается еще и со звуком!
 
Вот здесь можно найти примеры для других ОС: https://trac.ffmpeg.org/wiki/Capture/Desktop
 

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

 
  2016-08-29

Как открыть на docx на юбунту

howto

Одному человеку потреботвалось отредактировать несколько анкет в формате docx для одного банка. Про то что не у всех есть Microsoft Office в этом банке видимо не знали - поэтому анкеты в docx.

Сначала этот человек попытался открыть файлы в Open Office - так файлы оказались с поломанной разметкой, часть символов не отобразилась вообще, часть строчек съехали. В принципе можно было бы исправить кривую разметку, найти похожие символы и переформатировать текст, но овчинка выделки не стоила. Так что, решил этот человек искать другие варианты.

Загрузил это человек docx анкету в Google Drive и открыл фалики в Google Docs. Но видимо, толи Google Docs не совсем хорошо понимает формат docx, толи тексты были настолько кривыми, но они корректно в Google Docs тоже не открылись.

Решил тогда этот человек сконвертировать документы в pdf при помощи одного из многочисленных online конветеров. PDF вышел замечательный, разметка отобразилась как надо, вот только отредактировать его не получилось не одним из известных этому человеку способов.

В конце концов, когда все известные способы были перепробованы, этот человек зашёл на один популярный торрент трекер и скачал оттуда Microsoft Office 2007 да поставил его под Wine. Документы открылись в том виде, в каком они и должны были открыться.  

Вывод - самый простой способ отредактировать docx в ubuntu - поставить на Ubuntu Microsoft Office. Больше никак. И это, когда на дворе двадцать первый век, когда космические корабли бороздят просторы большого театра. Печаль...

 

Коментариев: 3

 
  2015-10-22

Резервная копия для Google Authenticator

howto

Двухфакторная аутентификация сейчас пользуется заслуженной популярностью. Аутентификация с использованием Google Authenticator - отличная альтернатива аутентификации на основе SMS cообщений. 

Но вот вопрос - что делать если устройство потеряется? А как просто будет перенести данные для авторизации если у вас новое устройство? 

Сейчас для того чтобы перенести авторизацию с одного устройства на другое нужно обнулить токены авторизации на одном устройсве и настроить их на другом. Хорошо если у вас только один аккаунт под управлением Google Authernticator - а если десять? У меня сейчас пять таких аккаунтов и их перенос для меня сильно проблематичен.

Не так давно я решил вопрос с потерей устройства регистрируя ключ на двух устройствах одновременно. Но вот у меня появлся новый телефон. Проблема встала с новой остротой.

Хочется иметь возможность в любое время развернуть токены с одного телефона на другом. Желательно также, чтобы в любое время я бы имел возможность снести Google Authenticator и заменить его на любой другой, например, на FreeOTP.

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

Оказалось, что задача резервного копирования решается не просто просто а очень просто! Значит, чтобы получить на двух телефонах одинаковые коды, нам всего лишь нужно знать этот "секретный" код. А ведь когда мы настраиваем аккаунт нам этот код показывают на экране! Дополнительно, его можно скопипастить в виде текста и сохранить в надежном месте! Далее, просто вводим этот код в ДРУГОЙ телефон и вуаля! Мы имеем ДВА телефона с однинаковыми кодами! Более того, теперь, в случае, если мы сбросили наш телефон до заводских настроек, мы всегда можем восстановить наш Google Authenticator как было!

Таким образом алгоритм подключения телефона дополняется дополнительным шагом - а именно - сохранением секретного ключа в секретном же месте. После чего, данный секретный ключ может быть введен на любом устройстве, в любое время! Кроме того, вы можете попробовать использовать любые другие OTP программы, например FreeOTP.  Который, в отличие от Google Authenticator - полностью открытый и не имеет разрешений ходить в интернет. Да я теперь даже смогу использовать Pebble для авторизации!

Конечно, такая практика несколько снижает криптостойкость всей схемы, ведь теперь секретный ключ хранится в нескольких местах, но тут уж каждый должен сам решать что ему важнее - надежность или проблемы в случае утери устройства.

 

Коментариев: 5

 
  2015-07-17

Запись видео с экрана при помощи VLC

howto, linux

Столкнулся с досадной проблемой - recordmydesktop на моем компьютере отвратительно записывает видео происходящего на дисплее. А очень нужно было записать несколько роликов. На помощь пришел VLC - оказывается он умеет создавать прекрасные ролики с экрана при минимуме настроек.

Вот подробное описание как это делается.

Но ручной способ мне показался черезчур сложным и я автоматизировал процесс - вот как это работает - создаем два шелл скрипта - первый запускает процесс захвата экрана, второй останавливает запись и кладет получившееся видео в DropBox а ссылку на видео кладет в буфер обмена. Получилось очень удобно. Ссылки на cкрипты я поместил на кнопочки в панель инструментов юбунту - вот так:

 

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

 
  2014-10-28

Использование Google Authenticator на двух устройствах

howto

Двухфакторная верификация набирает всё большую популярность, и самая, пожалуй популярная программа для дополнительной верификации - Google Authenticator. Работу с Google Authenticator поддерживает сама Google, Amazon и многие другие. Однако представим на минуту, что вы вдруг потеряли свой мобильник, или забыли дома, а на работе срочно нужно войти в аккаунт с двухфакторной авторизацией - всегда желательно иметь запасной вариант на всякий случай.

Как правило, у многих сейчас есть несколько Android устройств - например телефон и планшет. Было бы здорово настроить Google Authenticator на двух устройствах одновременно. Однако если вы регистрируете одно устройство - второе зарегистрированное ранее перестает работать. Как же сделать так чтобы иметь запасное устройство для авторизации?

Выход оказался прост - в момент регистрации устройства, когда на экране показан штрих-код, одновременно сканируем штрих-код двумя устройствами. Оба устройства будут зарегистрированы для двухфакторной авторизации и оба смогут быть использованы для входа. Задача решена!

 

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

 
  2014-03-02

Xubuntu

linux, howto

Решил переставить OS на рабочем ноутбуке. Пришло время снести установленный на соседнем разделе хакинтош - пользоваться которым було абсолютно нереально в силу тормозов. Во общем-то давно хотел попробовать вместо Ubuntu - которую я каждый раз затем несколькими телодвижениями превращаю, по сути в ту же xubuntu, так как ставлю xfce в качестве работчего стола, поставить сразу xubuntu из коробки.

Я надеялся что установка xubuntu позволит ибавиться от проблем с конфликтами с сервисами gnome - каждый раз приходится все подкручивать, подстраивать...

Результаты оказались неоднозначными.

В xubuntu меньше версий чем в Ubuntu - на ноутбуке стояла Ubuntu 12.10 - сейчас стоит Xubuntu 12.04,версии 12.10 Xubuntu в природе не существует а версия 13.04 работать на моём ноутбуке почему-то не захотела. Зато действительно из коробки заработал переключатель языков. Тема рабочего стола по умолчанию косит под макос, немного не так как я привык, но пока оставлю пока так, вполне удобно.

В целом эксперимент оказался вполне успешным. Хотя, конечно, проигрывает xubuntu по многим параметрам своей старшей сестре, зато ничего лишнего. Ну не идёт у меня юнити, ну не моё это.

 

Коментариев: 2

 
  2014-01-23

Кастомный php на сервере с Cpanel и WHM

howto

Потребовалось обновить PHP на сервере с Cpanel и WHM. Делается это просто, но вот незадача, один из сайтов на сервере закодирован ionCube и максимальная версия PHP а которой он может работать 5.2.

Но мне кровь из носа нужна была версия 5.3. Однако, оказалось, что решить проблему не так уж и сложно, достаточно скомпилировать собственный cgi модуль php.

Указанная техника подойдет для пользователей shared хостингов где есть доступ к компилятору но нет рутовых прав, например это "официальный" способ для клентов masterhost.

Алгоритм получился следующий:

1. закачиваем на сайт скрипт с phpinfo(); и смотрим "configure command" секцию - это нужно чтобы не придумывать опции компиляции вручную - это долго и муторно. В моем случае получилось следующее:

'./configure' '--disable-fileinfo' '--disable-phar' '--enable-bcmath' '--enable-calendar' '--enable-exif' '--enable-ftp' '--enable-gd-native-ttf' '--enable-libxml' '--enable-magic-quotes' '--enable-mbstring' '--enable-pdo=shared' '--enable-sockets' '--enable-zip' '--prefix=/usr/local' '--with-apxs2=/usr/local/apache/bin/apxs' '--with-bz2' '--with-curl=/opt/curlssl/' '--with-freetype-dir=/usr' '--with-gd' '--with-gettext' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/usr' '--with-jpeg-dir=/usr' '--with-kerberos' '--with-libdir=lib64' '--with-libxml-dir=/opt/xml2/' '--with-mcrypt=/opt/libmcrypt/' '--with-mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-mysqli=/usr/bin/mysql_config' '--with-openssl=/usr' '--with-openssl-dir=/usr' '--with-pcre-regex=/opt/pcre' '--with-pdo-mysql=shared' '--with-pdo-sqlite=shared' '--with-pic' '--with-png-dir=/usr' '--with-sqlite=shared' '--with-xpm-dir=/usr' '--with-xsl=/opt/xslt/' '--with-zlib' '--with-zlib-dir=/usr'

Выкусываем из этой строки '--with-apxs2=/usr/local/apache/bin/apxs' - это команда сборки php как модуля Apache - мы собираем CGI поэтому она нам не нужна.

заменяем '--prefix=/usr/local' на '--prefix=/home/username/php' - это путь по которому команда make install сложит готовые файлы, мы же не хотим устанавливать php глобально.

Возможно, вы захотите внести какие-либо еще изменения в команду конфигурации.

2. Скачиваем нужную версию php с http://www.php.net/downloads.php

3. Распаковывем и в папке с исходниками запускаем нашу команду конфигурации и сборки.

./configure ...[то что мы подготовили на шаге 1]

make

make install

4. Если все прошло успешно то в папке /home/username/php/bin появится файл php-cgi eго нужно скопировать в папку ~/public_html/cgi-bin/ с именем php: cp "~/php/bin/php-cgi ~/public-html/cgi-bin/php"

5. В .htaccess помещаем следуюшие строчки:

Action php-script /cgi-bin/php
AddHandler php-script .php

Вуаля, новая версия php установлена на сервер. Обратите внимание, все операции можно проделать без рутового доступа, что может пригодится пользователям shared хостингов которым не нравится невозможность вносить изменения в php.ini

php.ini я положил в /home/username/php/lib/php.ini, скопировал существующий из /usr/php/lib/php.ini и внес в него необходимые мне изменения.

Вобщем, все оказалось не так уж и страшно, спасибо masterhost за вот эту инструкцию.

 

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

 
  2013-11-30

Как подключить Андроид 4+ как USB накопитель в Ubuntu

Android, howto

Правильный ответ - никак. Вернее я пока не нашел способа как это сделать. Похоже в этим в четверке есть некоторые проблемы, так как флеш память в Android 4+ отформатирована не FAT32 а ext3.

Но мне всё же очень хочется увидеть файловую систему из файлового менеджера под Linux - на выручку нам приходит fuse (нашел здесь)

1. На компьютере с Юбунту ставим необходимые пакеты:

$ sudo add-apt-repository ppa:webupd8team/unstable
$ sudo apt-get update
$ sudo apt-get install -y go-mtpfs

2. Подключаем телефон в режим MTP

3. Монтируем устройство как папку:
$ go-mtpfs /media/MyAndroid &

Теперь файловая система на флешке доступна в папке /media/MyAndroid, что и требовалось.

 

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

разное (184)
howto (124)
программирование (108)
гад-же-ты (75)
мысли (42)
PHP (41)
JavaScript (39)
вебмастеринг (37)
linux (28)
гондураша (28)
юмор (25)
полезное (21)
движок (17)
Android (17)
софт (15)
деньги (14)
видео (13)
кино (13)
музыка (10)
беспредел (10)
путешествия (10)
интернет (9)
diy (9)
ztools (8)
книги (8)
умный дом (8)
занимательная физика (8)
языки (7)
хостинг (7)
Nokia 5800 (7)
lifehack (6)
css (6)
вебдизайн (6)
apple (5)
arduino (5)
связной (5)
прелоадер (5)
козлы (5)
oDesk (5)
занимательная юриспруденция (4)
кухня (4)
Python (4)
аниме (4)
svn (4)
software (3)
synphony (3)
рестораны (3)
энергия (3)
движек (3)
webmastering (2)
Java (2)
фото на документы (2)
Ruby on Rails (2)
спорт (2)
bash (2)
гитара (2)
дурдом (1)
C++ (1)
годнурас (1)
микросервисы (1)
SEO (1)
programming (1)
технологии (1)
наука (1)
сайты (1)
авторское право (1)
восстановить (1)
Поиск по блогу:

Valid XHTML 1.0 Strict