суббота, 15 августа 2015 г.

[Solved] dconf: invalid gvdb problem (mate)

Вступление

Сегодня я наконец-то решил одну противную проблему, с которой начал регулярно сталкиваться после замены "второгнома" на mate.

Описание проблемы

Компьютер у меня старенький, медленный, а я наоборот, молодой и горячий нетерпеливый. Эти два фактора регулярно приводят к тому, что у меня некоторые приложения "задымываются" и подвешивают "столешницу" (mate у меня).

Результат - грязная перезагрузка, после которой у меня и слетает стол. Выглядит это как прыгающие значки на фоне по умолчанию и дергающаяся верхняя панель при отсутствии нижней. При этом, пользоваться ничем практически невозможно: тормозит как электричка с включенным стоп-краном, а индикатор активности жестких дисков горит непрерывно. При этом marco и mate-panel сваливаются в корки. При этом, однако, с горем пополам, мне удалось создать на рабочем столе кнопку запуска xterm и, с помощью нее, запустить эмулятор терминала.

Симптоматика

Прежде чем пытаться "лечить" свой компьютер моим методом, убедитесь, что у Вас реально такая же проблема, как у меня. Если визуально все выглядит примерно как я описал, это еще ничего не значит. Убедиться, что у вас проблема та же можно, как минимум, двумя способами.

Первый способ проверки

Запустите эмулятор терминала (обязательно) из "раздолбанной" сессии mate (как я умудрился это сделать написано в описании проблемы). В эмуляторе терминала выполните следующую команду.
% mate-panel --reset
Если ничего не произойдет, а в эмулятор вывалятся предупреждения о том, что-де invalid gvdb header, можете приступать к "лечению".

Второй способ проверки

Посмотрите не пуст ли файл ~/.config/dconf/user, используя следующую команду.
% $PAGER ~/.config/dconf/user
Если файл окажется пустым или не бинарным, можете закрывать свой pager и приступать к "лечению".
В принципе, вы можете применять мой способ восстановления базы данных даже если ни первый, ни второй "анализы" не были положительными. В любом случае, Вы действуете на свой страх и риск.

Третий способ проверки

Если следующая команда не выведет ничего, это тоже значит что база ваших конфигурационных данных, как минимум пуста, что необычно и заставляет подозревать ее в том, что она повреждена.
% dconf list /

Исправление

Итак, слёт настроек после грязной перезагрузки вызывается повреждением файла базой конфигурационной данных. К счастью, создаются регулярные копии этой базы. Мой способ исправления заключается в банальном восстановлении предыдущей (неповрежденной) версии файла базы. Итак, три волшебные команды.
% cd ~/.config/dconf
% mv user user.old
% mv user.8CWQ2X user
Файл user.8CWQ2X является файлом резервной копии базы данных, которую надо восстановить. Понятное дело, что буквы и цифры после точки в имени бэкапа у Вас будут совершенно другими. Также, вполне вероятно, что у Вас будет несколько таких файлов. Вам, понятное дело, следует использовать самый "свежий" из них.

Результат

В результате выполнения данной операции, ваша конфигурационная база данных будет восстановлена. Разумеется, существует вероятность, что изменения конфигурации, сделанные после создания использованного бэкапа пропадут. Но, согласитесь, это лучше чем конфигурировать всю систему заново, не правда ли?

четверг, 6 августа 2015 г.

Заметки про git

Установка

# pkg install git
Проверка установки
% git
Выведет список наиболее востребованных команд. Git с уважением относится к настройкам локали: у меня вывел этот список на русском.

Глобальные настройки

% git config --global user.name "Vasily"
% git config --global user.email "vasily.blinkov@gmail.com"

Создание репозитория

Не знаю как Вам, а мне больше нравится называть это "хранилищами". Долой англицизмы! Перевод должен быть точным.
Клонируем репозиторий в локальный каталог (цветом выделено то, что вводил я, все остальное - вывод git). Предварительно перейти в ту директорию, в которую хочется... поместить клон репозитория.
% git clone git@gitlab.com:vasilyb/braint.git
Клонирование в «braint»…
The authenticity of host 'gitlab.com (54.93.71.23)' can't be established.
ECDSA key fingerprint is f1:d0:fb:46:73:7a:70:92:5a:ab:5d:ef:43:e2:1c:35.
No matching host key fingerprint found in DNS.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'gitlab.com' (ECDSA) to the list of known hosts.
Enter passphrase for key '/home/vblinkov/.ssh/id_rsa':
warning: Похоже, что вы клонировали пустой репозиторий.
Проверка соединения… готово.
/data/braint (1015) %
Обратите внимание на строку, выделенную курсивом (бирюзовая такая). Там нужно ввести парольную фразу SSH-ключа (если сервер обеспечивает возможность установки безопасного подключения и вы указали парольную фразу при генерации своего ключа; о генерации SSH-ключей можете почитать, например, здесь: SSH keys | GitLab; вкратце: нужно проверить наличие уже существующего ключа в ~/.ssh/, если нет или нужен новый, использовать команду ssh-keygen -t rsa -C "vasily.blinkov@gmail.com" - она интерактивная)

Смотрим, что получилось (должна была появиться директория с именем проекта, в моем случае - braint): ls. Я ее переименую в src: mv braint src.

Заполняем репозиторий

У меня уже были кой-какие "наброски", помещу их в индекс, запишу в репозиторий и обновлю внешние ссылки и связанные объекты. Сначала перейду в скачанную директорию только...
% cd src/
% touch README.md
% mv ../data/index.html .
% rmdir ../data/
% git add *
% git status

% git commit -m "add README and index"
% git push -u origin master
Как я понимаю, origin - это наименование удаленного репозитория, которое можно получить, используя команду git remote. В то же время, master - это ветка локального репозитория.

git status - просмотр состояния репозитория: измененные, добавленные и удаленные файлы, нерешенные конфликты...

История изменений файла:  git log -p index.html | $PAGER


Перемещение файлов, добавленных в индекс

Добавил я, допустим, jquery в проект: добавился файл jquery-2.1.4.min.js и изменился index.html. Сделал
% git add index.html
% git add jquery-2.1.4.min.js
Потом добавил underscore-min.js (git add underscore-min.js) и решил, что неплохо было бы переместить все скрипты в отдельную директорию.
% mkdir scripts
% git add scripts/
Терь перемещаю скрипты, добавленные в индекс
% git mv *.js scripts/
Все, можно записывать и проталкивать изменения
% git commit -m "Add jquery and underscore"
% git push -u origin master







среда, 5 августа 2015 г.

Самометки об apache

Самометки, самозаметки - заметки самому себе

Что нужно, чтобы это работало?

Автоматический подъем при запуске системы

# cp /etc/rc.conf /etc/rc.conf.orig
# echo 'apache24_enable="YES"' >> /etc/rc.conf

Конфигурация

В файле /usr/local/etc/apache24/httpd.conf раскомментировать директиву ServerName и установить ей значение, равное регистрационному наименованию машины в системе доменных имен (DNS) или, если такового не имеется, 127.0.0.1.

Запуск

Если автоподъем включен

Сервер будет запускаться после загрузки системы или это можно сделать вручную
# service apache24 start

Если не включен

# service apache24 onestart

Как проверить?

Зайти на http://localhost/. Если увидите следующее - значит, работает.


Если сервер не найдется - значит не работает.

Настройка

Захостить свою директорию

Найти в /usr/local/etc/apache24/httpd.conf секцию <Directory /> и заменить в ней директиву Require all denied на Require all granted (источники: Тостер, SlLite).
Дальше: директиве DocumentRoot установить значение, равное адресу директории с файлами сайта. Например, DocumentRoot "/data/braint/data" вместо DocumentRoot "/usr/local/www/apache24/data".
Не забыть service apache24 restart.

PHP

Установка

Во-первых, нужно установить модуль.
# pkg install mod_php5
При установке модуля вносятся изменения в файл httpd.conf, так что, наверное, лучше закрыть все vi httpd.conf (или что Вы там используете?) перед установкой.
Во-вторых, нужно добавить следующие строки в httpd.conf.
<IfModule php5_module>
  DirectoryIndex index.php index.html
  <FilesMatch "\.php$">
    SetHandler application/x-httpd-php
  </FilesMatch>
  <FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
  </FilesMatch>

</IfModule>
На этом все, можно перезапускать сервер (service apache24 restart) и проверять PHP.

вторник, 4 августа 2015 г.

Запись CD/DVD в FreeBSD (или других *nix системах)

Введение

Много я использовал всяких «писалок», но больше всего понравилась growisofs, входящая в состав мира, наверное, любой *nix-подобной «оси». О том, как ей пользоваться - это сообщение.

Спустя некоторое время, пришлось (ради экономии) записать небольшой образ на CD. Для этой цели я избрал cdrecord. О ней - в разделе Пишем CD.

Пишем DVD

Здесь описан далеко не единственный вариант использования growisofs. Зато самый простой.

1. Создайте новую директорию.

2. Накидайте туда примерно 4 гигабайта файлов. Проверить какое пространство на диске занимает директория со всеми имеющимися в ней файлами, вы можете с помощью следующей команды (если вы находитесь в этой директории; если нет - используйте вместо точки (.) путь к директории, размер которой определяете).
du -sh .

3. Используя оболочку (в терминале или эмуляторе) перейдите в созданную на первом шаге директорию (команда вида cd local/dvd, где local/dvd - это директория, в которую нужно перейти, то есть та, в которой «лежат» файлы для записи на DVD, см. пр. 1).

4. Выполните команду
growisofs -dvd-compat -Z /dev/cd0 -J -R .
Теперь остается только подождать минут пять, пока программа запишет данные на DVD, и переподключит его, уже готовый к использованию.

4.1. Примечание 1

При использовании no-name болванок, запись может прерываться до завершения. Чтобы не портить болванки, ограничьте скорость прожига, добавив ключ -speed=12.
growisofs -dvd-compat -Z /dev/cd0 -J -R -speed=13 .

4.2. Примечание 2

При прерывании процесса записи, его повторный запуск позволит продолжить операцию с того же места (что касается первого примечания - может и не помочь).

Упрощения

1. Для оболочки (псевдоним=alias)

Если Вам, как и мне не доставляет ввод команды вручную, вы можете создать в своей оболочке псевдоним для записи текущей директории на DVD. Я, может быть, опишу как это сделать тут. Когда-нибудь.

2. Для рабочего стола (скрипт dvdrec)

Я, для стран третьего мира, так сказать, написал простенький front-end. Даже фронтендик. Представляет из себя простейший скрипт. Его надо скачать, поместить в /usr/local/sbin. Запуск - элементарен.
dvdrec
Вы можете прописать этот вызов к кнопке запуска или присвоить для него клавиатурную комбинацию.

Вывод

Программа growisofs имеет ряд преимуществ перед всеми остальными, внештатными средствами записи DVD.

Во-первых, она очень проста в использовании (ведь это же обычная команда операционной системы), хорошо документированная и полностью понятная (позволяет использовать ее даже при минимальном наборе знаний и, постепенно, усложнять варианты применения при «росте» пользователя и усложнении его требований).

Во-вторых, у нее нет «глючащего» и, как это обычно бывает, странно-непонятного графического интерфейса, что делает growisofs довольно скоростной утилитой, снижает вероятность зависания программы (CLI при кажущейся убогости выводит всю необходимую информацию о процессе записи, причем в объеме, большем, чем выводят некоторые «гуевые» программы записи оптических дисков). Таким образом, при выполнении записи дисков можно свободно пользоваться системой, не боясь зависания записи от нехватки ресурсов компьютера. При желании можно и подождать, так как процесс, как мне кажется, идет очень быстро: всего 5 минут на все про все с моим рекордером.

В-третьих, эту утилиту, в силу, опять же, ее "командности" можно использовать и в неграфическом режиме. Например, если после обновления пакетов слетели «иксы». А при использовании графического, на большинстве «столешниц» можно самостоятельно создать писалку, например, создав неудаляемую папку (отобрав у себя права на запись в соответствующей директории) и ярлык на нее на панели, а затем, кнопку запуска команды (вместо точки в команде нужно будет указать путь к созданной папке). В итоге получится, что Вы просто, щелчком по кнопке на пенели (того же Mate, например) открываете папку, копируете или перемещаете в нее файлы для записи, а потом просто щелкаете по второй кнопке. Вжик - и всё!

Дополнительно

Ниже приведена дополнительная информация. Ее изучение не является необходимым. Если интересно - там показано как выглядит growisofs в работе и приведены примеры некоторых шагов алгоритма, если они требуют дополнительных разъяснений.

Рисунок 1.

Так выглядит growisofs в процессе записи DVD. Как только запись будет окончена, утилита снова передаст управление Вам.
Листинг 1. Полный вывод утилиты growisofs при записи DVD
~/local/dvd (1002) % growisofs -dvd-compat -Z /dev/cd0 -J -R .
Executing 'mkisofs -J -R . | builtin_dd of=/dev/pass0 obs=32k seek=0'
Setting input-charset to 'UTF-8' from locale.
Using LS_04000.NEF;1 for  ./sources/D7000 040 Sasovka/ls_040_010.NEF (ls_040_020.NEF)
Using YELLO000.JPG;1 for  ./fin_vers/yellow_flowers.jpg (yellow_flower.jpg)
Using DSC_3000.JPG;1 for  ./fin_vers/dsc_3566-2.1_-_at385km.jpg (DSC_3566-1.jpg)
  0.27% done, estimate finish Mon Aug  3 21:59:41 2015
  0.55% done, estimate finish Mon Aug  3 21:59:41 2015
  0.82% done, estimate finish Mon Aug  3 21:59:41 2015
/dev/pass0: "Current Write Speed" is 16.4x1352KBps.
  1.09% done, estimate finish Mon Aug  3 22:18:00 2015
  1.36% done, estimate finish Mon Aug  3 22:16:47 2015
  1.64% done, estimate finish Mon Aug  3 22:14:57 2015
  1.91% done, estimate finish Mon Aug  3 22:13:38 2015
  2.18% done, estimate finish Mon Aug  3 22:12:39 2015
  2.46% done, estimate finish Mon Aug  3 22:11:53 2015
  2.73% done, estimate finish Mon Aug  3 22:11:17 2015
  3.00% done, estimate finish Mon Aug  3 22:10:47 2015
  3.27% done, estimate finish Mon Aug  3 22:10:22 2015
  3.55% done, estimate finish Mon Aug  3 22:10:01 2015
  3.82% done, estimate finish Mon Aug  3 22:09:43 2015
  4.09% done, estimate finish Mon Aug  3 22:09:27 2015
  4.37% done, estimate finish Mon Aug  3 22:09:13 2015
  4.64% done, estimate finish Mon Aug  3 22:09:01 2015
  4.91% done, estimate finish Mon Aug  3 22:08:50 2015
  5.18% done, estimate finish Mon Aug  3 22:08:41 2015
  5.46% done, estimate finish Mon Aug  3 22:08:32 2015
  5.73% done, estimate finish Mon Aug  3 22:08:24 2015
  6.00% done, estimate finish Mon Aug  3 22:08:17 2015
  6.28% done, estimate finish Mon Aug  3 22:08:10 2015
  6.55% done, estimate finish Mon Aug  3 22:08:04 2015
  6.82% done, estimate finish Mon Aug  3 22:07:59 2015
  7.09% done, estimate finish Mon Aug  3 22:07:54 2015
  7.37% done, estimate finish Mon Aug  3 22:07:49 2015
  7.64% done, estimate finish Mon Aug  3 22:07:45 2015
  7.91% done, estimate finish Mon Aug  3 22:07:41 2015
  8.18% done, estimate finish Mon Aug  3 22:07:37 2015
  8.46% done, estimate finish Mon Aug  3 22:07:33 2015
  8.73% done, estimate finish Mon Aug  3 22:07:30 2015
  9.00% done, estimate finish Mon Aug  3 22:07:27 2015
  9.28% done, estimate finish Mon Aug  3 22:07:24 2015
  9.55% done, estimate finish Mon Aug  3 22:07:21 2015
  9.82% done, estimate finish Mon Aug  3 22:07:19 2015
 10.09% done, estimate finish Mon Aug  3 22:07:06 2015
 10.37% done, estimate finish Mon Aug  3 22:07:04 2015
 10.64% done, estimate finish Mon Aug  3 22:07:02 2015
 10.91% done, estimate finish Mon Aug  3 22:07:00 2015
 11.19% done, estimate finish Mon Aug  3 22:06:59 2015
 11.46% done, estimate finish Mon Aug  3 22:06:57 2015
 11.73% done, estimate finish Mon Aug  3 22:06:55 2015
 12.00% done, estimate finish Mon Aug  3 22:06:54 2015
 12.28% done, estimate finish Mon Aug  3 22:06:52 2015
 12.55% done, estimate finish Mon Aug  3 22:06:51 2015
 12.82% done, estimate finish Mon Aug  3 22:06:49 2015
 13.09% done, estimate finish Mon Aug  3 22:06:48 2015
 13.37% done, estimate finish Mon Aug  3 22:07:02 2015
 13.64% done, estimate finish Mon Aug  3 22:07:00 2015
 13.91% done, estimate finish Mon Aug  3 22:06:52 2015
 14.19% done, estimate finish Mon Aug  3 22:06:50 2015
 14.46% done, estimate finish Mon Aug  3 22:06:49 2015
 14.73% done, estimate finish Mon Aug  3 22:06:48 2015
 15.00% done, estimate finish Mon Aug  3 22:06:47 2015
 15.28% done, estimate finish Mon Aug  3 22:06:46 2015
 15.55% done, estimate finish Mon Aug  3 22:06:45 2015
 15.82% done, estimate finish Mon Aug  3 22:06:44 2015
 16.10% done, estimate finish Mon Aug  3 22:06:37 2015
 16.37% done, estimate finish Mon Aug  3 22:06:36 2015
 16.64% done, estimate finish Mon Aug  3 22:06:35 2015
 16.91% done, estimate finish Mon Aug  3 22:06:34 2015
 17.19% done, estimate finish Mon Aug  3 22:06:34 2015
 17.46% done, estimate finish Mon Aug  3 22:06:33 2015
 17.73% done, estimate finish Mon Aug  3 22:06:32 2015
 18.01% done, estimate finish Mon Aug  3 22:06:26 2015
 18.28% done, estimate finish Mon Aug  3 22:06:25 2015
 18.55% done, estimate finish Mon Aug  3 22:06:25 2015
 18.82% done, estimate finish Mon Aug  3 22:06:24 2015
 19.10% done, estimate finish Mon Aug  3 22:06:24 2015
 19.37% done, estimate finish Mon Aug  3 22:06:23 2015
 19.64% done, estimate finish Mon Aug  3 22:06:18 2015
 19.92% done, estimate finish Mon Aug  3 22:06:17 2015
 20.19% done, estimate finish Mon Aug  3 22:06:17 2015
 20.46% done, estimate finish Mon Aug  3 22:06:16 2015
 20.73% done, estimate finish Mon Aug  3 22:06:16 2015
 21.01% done, estimate finish Mon Aug  3 22:06:16 2015
 21.28% done, estimate finish Mon Aug  3 22:06:11 2015
 21.55% done, estimate finish Mon Aug  3 22:06:10 2015
 21.82% done, estimate finish Mon Aug  3 22:06:10 2015
 22.10% done, estimate finish Mon Aug  3 22:06:10 2015
 22.37% done, estimate finish Mon Aug  3 22:06:09 2015
 22.64% done, estimate finish Mon Aug  3 22:06:05 2015
 22.92% done, estimate finish Mon Aug  3 22:06:04 2015
 23.19% done, estimate finish Mon Aug  3 22:06:04 2015
 23.46% done, estimate finish Mon Aug  3 22:06:08 2015
 23.73% done, estimate finish Mon Aug  3 22:06:08 2015
 24.01% done, estimate finish Mon Aug  3 22:06:04 2015
 24.28% done, estimate finish Mon Aug  3 22:06:04 2015
 24.55% done, estimate finish Mon Aug  3 22:06:03 2015
 24.83% done, estimate finish Mon Aug  3 22:06:03 2015
 25.10% done, estimate finish Mon Aug  3 22:06:03 2015
 25.37% done, estimate finish Mon Aug  3 22:05:59 2015
 25.64% done, estimate finish Mon Aug  3 22:05:59 2015
 25.92% done, estimate finish Mon Aug  3 22:05:59 2015
 26.19% done, estimate finish Mon Aug  3 22:05:59 2015
 26.46% done, estimate finish Mon Aug  3 22:05:55 2015
 26.74% done, estimate finish Mon Aug  3 22:05:55 2015
 27.01% done, estimate finish Mon Aug  3 22:05:54 2015
 27.28% done, estimate finish Mon Aug  3 22:05:54 2015
 27.55% done, estimate finish Mon Aug  3 22:05:54 2015
 27.83% done, estimate finish Mon Aug  3 22:05:51 2015
 28.10% done, estimate finish Mon Aug  3 22:05:51 2015
 28.37% done, estimate finish Mon Aug  3 22:05:51 2015
 28.65% done, estimate finish Mon Aug  3 22:05:51 2015
 28.92% done, estimate finish Mon Aug  3 22:05:47 2015
 29.19% done, estimate finish Mon Aug  3 22:05:47 2015
 29.46% done, estimate finish Mon Aug  3 22:05:47 2015
 29.74% done, estimate finish Mon Aug  3 22:05:47 2015
 30.01% done, estimate finish Mon Aug  3 22:05:44 2015
 30.28% done, estimate finish Mon Aug  3 22:05:44 2015
 30.55% done, estimate finish Mon Aug  3 22:05:44 2015
 30.83% done, estimate finish Mon Aug  3 22:05:44 2015
 31.10% done, estimate finish Mon Aug  3 22:05:41 2015
 31.37% done, estimate finish Mon Aug  3 22:05:41 2015
 31.65% done, estimate finish Mon Aug  3 22:05:41 2015
 31.92% done, estimate finish Mon Aug  3 22:05:41 2015
 32.19% done, estimate finish Mon Aug  3 22:05:38 2015
 32.46% done, estimate finish Mon Aug  3 22:05:38 2015
 32.74% done, estimate finish Mon Aug  3 22:05:38 2015
 33.01% done, estimate finish Mon Aug  3 22:05:35 2015
 33.28% done, estimate finish Mon Aug  3 22:05:35 2015
 33.56% done, estimate finish Mon Aug  3 22:05:35 2015
 33.83% done, estimate finish Mon Aug  3 22:05:35 2015
 34.10% done, estimate finish Mon Aug  3 22:05:32 2015
 34.37% done, estimate finish Mon Aug  3 22:05:33 2015
 34.65% done, estimate finish Mon Aug  3 22:05:36 2015
 34.92% done, estimate finish Mon Aug  3 22:05:33 2015
 35.19% done, estimate finish Mon Aug  3 22:05:33 2015
 35.47% done, estimate finish Mon Aug  3 22:05:33 2015
 35.74% done, estimate finish Mon Aug  3 22:05:33 2015
 36.01% done, estimate finish Mon Aug  3 22:05:30 2015
 36.28% done, estimate finish Mon Aug  3 22:05:31 2015
 36.56% done, estimate finish Mon Aug  3 22:05:31 2015
 36.83% done, estimate finish Mon Aug  3 22:05:28 2015
 37.10% done, estimate finish Mon Aug  3 22:05:28 2015
 37.38% done, estimate finish Mon Aug  3 22:05:28 2015
 37.65% done, estimate finish Mon Aug  3 22:05:28 2015
 37.92% done, estimate finish Mon Aug  3 22:05:26 2015
 38.19% done, estimate finish Mon Aug  3 22:05:26 2015
 38.47% done, estimate finish Mon Aug  3 22:05:26 2015
 38.74% done, estimate finish Mon Aug  3 22:05:24 2015
 39.01% done, estimate finish Mon Aug  3 22:05:24 2015
 39.29% done, estimate finish Mon Aug  3 22:05:24 2015
 39.56% done, estimate finish Mon Aug  3 22:05:22 2015
 39.83% done, estimate finish Mon Aug  3 22:05:22 2015
 40.10% done, estimate finish Mon Aug  3 22:05:22 2015
 40.38% done, estimate finish Mon Aug  3 22:05:20 2015
 40.65% done, estimate finish Mon Aug  3 22:05:20 2015
 40.92% done, estimate finish Mon Aug  3 22:05:20 2015
 41.19% done, estimate finish Mon Aug  3 22:05:20 2015
 41.47% done, estimate finish Mon Aug  3 22:05:18 2015
 41.74% done, estimate finish Mon Aug  3 22:05:18 2015
 42.01% done, estimate finish Mon Aug  3 22:05:18 2015
 42.29% done, estimate finish Mon Aug  3 22:05:16 2015
 42.56% done, estimate finish Mon Aug  3 22:05:17 2015
 42.83% done, estimate finish Mon Aug  3 22:05:17 2015
 43.10% done, estimate finish Mon Aug  3 22:05:15 2015
 43.38% done, estimate finish Mon Aug  3 22:05:15 2015
 43.65% done, estimate finish Mon Aug  3 22:05:15 2015
 43.92% done, estimate finish Mon Aug  3 22:05:13 2015
 44.20% done, estimate finish Mon Aug  3 22:05:13 2015
 44.47% done, estimate finish Mon Aug  3 22:05:13 2015
 44.74% done, estimate finish Mon Aug  3 22:05:11 2015
 45.01% done, estimate finish Mon Aug  3 22:05:12 2015
 45.29% done, estimate finish Mon Aug  3 22:05:12 2015
 45.56% done, estimate finish Mon Aug  3 22:05:10 2015
 45.83% done, estimate finish Mon Aug  3 22:05:10 2015
 46.11% done, estimate finish Mon Aug  3 22:05:10 2015
 46.38% done, estimate finish Mon Aug  3 22:05:08 2015
 46.65% done, estimate finish Mon Aug  3 22:05:08 2015
 46.92% done, estimate finish Mon Aug  3 22:05:09 2015
 47.20% done, estimate finish Mon Aug  3 22:05:09 2015
 47.47% done, estimate finish Mon Aug  3 22:05:09 2015
 47.74% done, estimate finish Mon Aug  3 22:05:07 2015
 48.01% done, estimate finish Mon Aug  3 22:05:07 2015
 48.29% done, estimate finish Mon Aug  3 22:05:08 2015
 48.56% done, estimate finish Mon Aug  3 22:05:06 2015
 48.83% done, estimate finish Mon Aug  3 22:05:06 2015
 49.11% done, estimate finish Mon Aug  3 22:05:06 2015
 49.38% done, estimate finish Mon Aug  3 22:05:05 2015
 49.65% done, estimate finish Mon Aug  3 22:05:05 2015
 49.92% done, estimate finish Mon Aug  3 22:05:05 2015
 50.20% done, estimate finish Mon Aug  3 22:05:03 2015
 50.47% done, estimate finish Mon Aug  3 22:05:03 2015
 50.74% done, estimate finish Mon Aug  3 22:05:02 2015
 51.02% done, estimate finish Mon Aug  3 22:05:02 2015
 51.29% done, estimate finish Mon Aug  3 22:05:02 2015
 51.56% done, estimate finish Mon Aug  3 22:05:01 2015
 51.83% done, estimate finish Mon Aug  3 22:05:01 2015
 52.11% done, estimate finish Mon Aug  3 22:05:01 2015
 52.38% done, estimate finish Mon Aug  3 22:04:59 2015
 52.65% done, estimate finish Mon Aug  3 22:05:00 2015
 52.93% done, estimate finish Mon Aug  3 22:05:00 2015
 53.20% done, estimate finish Mon Aug  3 22:04:58 2015
 53.47% done, estimate finish Mon Aug  3 22:04:58 2015
 53.74% done, estimate finish Mon Aug  3 22:04:57 2015
 54.02% done, estimate finish Mon Aug  3 22:04:57 2015
 54.29% done, estimate finish Mon Aug  3 22:04:57 2015
 54.56% done, estimate finish Mon Aug  3 22:04:56 2015
 54.84% done, estimate finish Mon Aug  3 22:04:56 2015
 55.11% done, estimate finish Mon Aug  3 22:04:56 2015
 55.38% done, estimate finish Mon Aug  3 22:04:55 2015
 55.65% done, estimate finish Mon Aug  3 22:04:55 2015
 55.93% done, estimate finish Mon Aug  3 22:04:53 2015
 56.20% done, estimate finish Mon Aug  3 22:04:54 2015
 56.47% done, estimate finish Mon Aug  3 22:04:54 2015
 56.75% done, estimate finish Mon Aug  3 22:04:52 2015
 57.02% done, estimate finish Mon Aug  3 22:04:53 2015
 57.29% done, estimate finish Mon Aug  3 22:04:51 2015
 57.56% done, estimate finish Mon Aug  3 22:04:51 2015
 57.84% done, estimate finish Mon Aug  3 22:04:52 2015
 58.11% done, estimate finish Mon Aug  3 22:04:50 2015
 58.38% done, estimate finish Mon Aug  3 22:04:51 2015
 58.65% done, estimate finish Mon Aug  3 22:04:49 2015
 58.93% done, estimate finish Mon Aug  3 22:04:49 2015
 59.20% done, estimate finish Mon Aug  3 22:04:50 2015
 59.47% done, estimate finish Mon Aug  3 22:04:48 2015
 59.75% done, estimate finish Mon Aug  3 22:04:48 2015
 60.02% done, estimate finish Mon Aug  3 22:04:49 2015
 60.29% done, estimate finish Mon Aug  3 22:04:47 2015
 60.56% done, estimate finish Mon Aug  3 22:04:49 2015
 60.84% done, estimate finish Mon Aug  3 22:04:48 2015
 61.11% done, estimate finish Mon Aug  3 22:04:48 2015
 61.38% done, estimate finish Mon Aug  3 22:04:47 2015
 61.66% done, estimate finish Mon Aug  3 22:04:47 2015
 61.93% done, estimate finish Mon Aug  3 22:04:47 2015
 62.20% done, estimate finish Mon Aug  3 22:04:46 2015
 62.47% done, estimate finish Mon Aug  3 22:04:46 2015
 62.75% done, estimate finish Mon Aug  3 22:04:45 2015
 63.02% done, estimate finish Mon Aug  3 22:04:45 2015
 63.29% done, estimate finish Mon Aug  3 22:04:44 2015
 63.57% done, estimate finish Mon Aug  3 22:04:44 2015
 63.84% done, estimate finish Mon Aug  3 22:04:44 2015
 64.11% done, estimate finish Mon Aug  3 22:04:43 2015
 64.38% done, estimate finish Mon Aug  3 22:04:43 2015
 64.66% done, estimate finish Mon Aug  3 22:04:42 2015
 64.93% done, estimate finish Mon Aug  3 22:04:42 2015
 65.20% done, estimate finish Mon Aug  3 22:04:43 2015
 65.48% done, estimate finish Mon Aug  3 22:04:41 2015
 65.75% done, estimate finish Mon Aug  3 22:04:42 2015
 66.02% done, estimate finish Mon Aug  3 22:04:40 2015
 66.29% done, estimate finish Mon Aug  3 22:04:41 2015
 66.57% done, estimate finish Mon Aug  3 22:04:39 2015
 66.84% done, estimate finish Mon Aug  3 22:04:40 2015
 67.11% done, estimate finish Mon Aug  3 22:04:40 2015
 67.39% done, estimate finish Mon Aug  3 22:04:39 2015
 67.66% done, estimate finish Mon Aug  3 22:04:39 2015
 67.93% done, estimate finish Mon Aug  3 22:04:38 2015
 68.20% done, estimate finish Mon Aug  3 22:04:38 2015
 68.48% done, estimate finish Mon Aug  3 22:04:38 2015
 68.75% done, estimate finish Mon Aug  3 22:04:37 2015
 69.02% done, estimate finish Mon Aug  3 22:04:38 2015
 69.29% done, estimate finish Mon Aug  3 22:04:36 2015
 69.57% done, estimate finish Mon Aug  3 22:04:37 2015
 69.84% done, estimate finish Mon Aug  3 22:04:35 2015
 70.11% done, estimate finish Mon Aug  3 22:04:36 2015
 70.39% done, estimate finish Mon Aug  3 22:04:36 2015
 70.66% done, estimate finish Mon Aug  3 22:04:35 2015
 70.93% done, estimate finish Mon Aug  3 22:04:35 2015
 71.20% done, estimate finish Mon Aug  3 22:04:34 2015
 71.48% done, estimate finish Mon Aug  3 22:04:34 2015
 71.75% done, estimate finish Mon Aug  3 22:04:33 2015
 72.02% done, estimate finish Mon Aug  3 22:04:33 2015
 72.30% done, estimate finish Mon Aug  3 22:04:32 2015
 72.57% done, estimate finish Mon Aug  3 22:04:34 2015
 72.84% done, estimate finish Mon Aug  3 22:04:33 2015
 73.11% done, estimate finish Mon Aug  3 22:04:33 2015
 73.39% done, estimate finish Mon Aug  3 22:04:33 2015
 73.66% done, estimate finish Mon Aug  3 22:04:32 2015
 73.93% done, estimate finish Mon Aug  3 22:04:33 2015
 74.21% done, estimate finish Mon Aug  3 22:04:32 2015
 74.48% done, estimate finish Mon Aug  3 22:04:32 2015
 74.75% done, estimate finish Mon Aug  3 22:04:31 2015
 75.02% done, estimate finish Mon Aug  3 22:04:31 2015
 75.30% done, estimate finish Mon Aug  3 22:04:30 2015
 75.57% done, estimate finish Mon Aug  3 22:04:32 2015
 75.84% done, estimate finish Mon Aug  3 22:04:31 2015
 76.12% done, estimate finish Mon Aug  3 22:04:31 2015
 76.39% done, estimate finish Mon Aug  3 22:04:30 2015
 76.66% done, estimate finish Mon Aug  3 22:04:30 2015
 76.93% done, estimate finish Mon Aug  3 22:04:29 2015
 77.21% done, estimate finish Mon Aug  3 22:04:29 2015
 77.48% done, estimate finish Mon Aug  3 22:04:30 2015
 77.75% done, estimate finish Mon Aug  3 22:04:29 2015
 78.02% done, estimate finish Mon Aug  3 22:04:29 2015
 78.30% done, estimate finish Mon Aug  3 22:04:28 2015
 78.57% done, estimate finish Mon Aug  3 22:04:28 2015
 78.84% done, estimate finish Mon Aug  3 22:04:27 2015
 79.12% done, estimate finish Mon Aug  3 22:04:27 2015
 79.39% done, estimate finish Mon Aug  3 22:04:26 2015
 79.66% done, estimate finish Mon Aug  3 22:04:27 2015
 79.93% done, estimate finish Mon Aug  3 22:04:26 2015
 80.21% done, estimate finish Mon Aug  3 22:04:26 2015
 80.48% done, estimate finish Mon Aug  3 22:04:26 2015
 80.75% done, estimate finish Mon Aug  3 22:04:25 2015
 81.03% done, estimate finish Mon Aug  3 22:04:26 2015
 81.30% done, estimate finish Mon Aug  3 22:04:25 2015
 81.57% done, estimate finish Mon Aug  3 22:04:25 2015
 81.84% done, estimate finish Mon Aug  3 22:04:24 2015
 82.12% done, estimate finish Mon Aug  3 22:04:24 2015
 82.39% done, estimate finish Mon Aug  3 22:04:23 2015
 82.66% done, estimate finish Mon Aug  3 22:04:24 2015
 82.93% done, estimate finish Mon Aug  3 22:04:23 2015
 83.21% done, estimate finish Mon Aug  3 22:04:23 2015
 83.48% done, estimate finish Mon Aug  3 22:04:22 2015
 83.75% done, estimate finish Mon Aug  3 22:04:22 2015
 84.03% done, estimate finish Mon Aug  3 22:04:23 2015
 84.30% done, estimate finish Mon Aug  3 22:04:22 2015
 84.57% done, estimate finish Mon Aug  3 22:04:22 2015
 84.84% done, estimate finish Mon Aug  3 22:04:21 2015
 85.12% done, estimate finish Mon Aug  3 22:04:21 2015
 85.39% done, estimate finish Mon Aug  3 22:04:20 2015
 85.66% done, estimate finish Mon Aug  3 22:04:21 2015
 85.94% done, estimate finish Mon Aug  3 22:04:20 2015
 86.21% done, estimate finish Mon Aug  3 22:04:20 2015
 86.48% done, estimate finish Mon Aug  3 22:04:19 2015
 86.75% done, estimate finish Mon Aug  3 22:04:19 2015
 87.03% done, estimate finish Mon Aug  3 22:04:19 2015
 87.30% done, estimate finish Mon Aug  3 22:04:19 2015
 87.57% done, estimate finish Mon Aug  3 22:04:18 2015
 87.85% done, estimate finish Mon Aug  3 22:04:18 2015
 88.12% done, estimate finish Mon Aug  3 22:04:17 2015
 88.39% done, estimate finish Mon Aug  3 22:04:18 2015
 88.66% done, estimate finish Mon Aug  3 22:04:17 2015
 88.94% done, estimate finish Mon Aug  3 22:04:17 2015
 89.21% done, estimate finish Mon Aug  3 22:04:17 2015
 89.48% done, estimate finish Mon Aug  3 22:04:17 2015
 89.76% done, estimate finish Mon Aug  3 22:04:17 2015
 90.03% done, estimate finish Mon Aug  3 22:04:17 2015
 90.30% done, estimate finish Mon Aug  3 22:04:16 2015
 90.57% done, estimate finish Mon Aug  3 22:04:17 2015
 90.85% done, estimate finish Mon Aug  3 22:04:16 2015
 91.12% done, estimate finish Mon Aug  3 22:04:16 2015
 91.39% done, estimate finish Mon Aug  3 22:04:16 2015
 91.67% done, estimate finish Mon Aug  3 22:04:17 2015
 91.94% done, estimate finish Mon Aug  3 22:04:16 2015
 92.21% done, estimate finish Mon Aug  3 22:04:16 2015
 92.48% done, estimate finish Mon Aug  3 22:04:15 2015
 92.76% done, estimate finish Mon Aug  3 22:04:15 2015
 93.03% done, estimate finish Mon Aug  3 22:04:15 2015
 93.30% done, estimate finish Mon Aug  3 22:04:15 2015
 93.57% done, estimate finish Mon Aug  3 22:04:14 2015
 93.85% done, estimate finish Mon Aug  3 22:04:14 2015
 94.12% done, estimate finish Mon Aug  3 22:04:14 2015
 94.39% done, estimate finish Mon Aug  3 22:04:14 2015
 94.67% done, estimate finish Mon Aug  3 22:04:13 2015
 94.94% done, estimate finish Mon Aug  3 22:04:13 2015
 95.21% done, estimate finish Mon Aug  3 22:04:13 2015
 95.48% done, estimate finish Mon Aug  3 22:04:13 2015
 95.76% done, estimate finish Mon Aug  3 22:04:12 2015
 96.03% done, estimate finish Mon Aug  3 22:04:12 2015
 96.30% done, estimate finish Mon Aug  3 22:04:12 2015
 96.58% done, estimate finish Mon Aug  3 22:04:12 2015
 96.85% done, estimate finish Mon Aug  3 22:04:11 2015
 97.12% done, estimate finish Mon Aug  3 22:04:11 2015
 97.39% done, estimate finish Mon Aug  3 22:04:11 2015
 97.67% done, estimate finish Mon Aug  3 22:04:11 2015
 97.94% done, estimate finish Mon Aug  3 22:04:10 2015
 98.21% done, estimate finish Mon Aug  3 22:04:10 2015
 98.49% done, estimate finish Mon Aug  3 22:04:10 2015
 98.76% done, estimate finish Mon Aug  3 22:04:10 2015
 99.03% done, estimate finish Mon Aug  3 22:04:09 2015
 99.30% done, estimate finish Mon Aug  3 22:04:09 2015
 99.58% done, estimate finish Mon Aug  3 22:04:09 2015
 99.85% done, estimate finish Mon Aug  3 22:04:09 2015
Total translation table size: 0
Total rockridge attributes bytes: 22002
Total directory bytes: 49152
Path table size(bytes): 248
Max brk space used 0
1832770 extents written (3579 MB)
builtin_dd: 1832784*2KB out @ average 10.2x1352KBps
/dev/pass0: flushing cache
/dev/pass0: updating RMA
/dev/pass0: closing disc
~/local/dvd (1003) %
Легенда: синий - приглашение оболочки, оранжевый - пользовательский ввод, остальное - вывод команд.

Пример 1. Переход, с использованием команды cd оболочки (TENEX C Shell) в эмуляторе терминала (mate-terminal), в директорию, созданную в caja (Mate)
Рассмотрим ситуацию, когда директория, в которую помещены файлы и вложенные директории, предназначенные для записи на DVD создана, подготовлена, наполнена необходимым объемом данных и открыта в caja.
Переключите представление адреса из кнопочного в текстовое, щелкнув кнопку, расположенную справа от адреса.

Панель адреса сменит свой внешний вид на такой вот:
Если она уже имеет такой вид, ничего щелкать не надо. Если текст не выделен, его надо выделить. Для этого нужно подвести указатель мыши перед первым символом адреса, но обязательно в пределах рамочки текстового поля, нажать левую кнопку мыши, и, не отпуская, потянуть вниз пикселов на 30-40.
Затем нужно нащелкать  Правка > Копировать, после чего открыть эмулятор терминала. Например, нажав на клавиатуре клавишу Alt и, удерживая ее, F2 (окно появится - Alt отпускаем) и ввести в появившееся окно mate-terminal. Ввели (обратите внимание, что окно, открытое по Alt-F2 само помогает вводить названия программ) - щелкаем Запустить.
В появившемся окне терминала ввести две буквы: cd и, после них - пробел. Затем, в меню терминала нащелкать команду Правка > Вставить. Таким образом, адрес директории, в которой находятся файлы для записи, будет вставлен в команду.
Осталось только подтвердить выполнение: [C-j] (нажмите и удерживайте клавишу Ctrl, затем нажмите и отпустите клавишу j, после чего отпустите и Ctrl).
Все, теперь «вы» в той директории, в которой нужно запускать на выполнение запись DVD!

Приложение 1. Запись готового образа
Если у Вас уже имеется готовый ISO-образ DVD, вы можете записать его на болванку, используя следующую команду.
growisofs -dvd-compat -Z /dev/cd0=imagefile.iso
где imagefile.iso - это путь к файлу образа.
Как создать образ я описывал здесь.

Пишем CD

Запись на компакт-диск готового образа

От имени root (стоит настроить sudo), запустите следующую команду.
cdrecord -v -dao speed=4 path/to.iso
path/to.iso здесь -  абсолютный или относительный путь к файлу образа.

Источники
1. Эксплуатационная инструкция FreeBSD, гл.18 §6 «Подготовка и использование носителей типа DVD» (англ.)
2. man growisofs
3. man mkisofs
4. Burning CD and DVD ISO images with cdrecord (англ., естественно).





воскресенье, 26 июля 2015 г.

Слушаем радио в DeaDBeeF

Вступление

Недавно установил проигрыватели DeaDBeeF (чтобы слушать музыку и радио) и MPlayer (для просмотра видео), на замену надоевшего xine (все в нем надоело: шрифт для русской локали отсутствует, full HD видео тормозит, громоздкое окно для работы с плейлистами... последней каплей стали вылеты при попытке воспроизведения некоторых файлов MP3).

Зачем? Почему?

Что зачем? Если вы не сомневаететь, что слушать радио проигрывателем лучше, пропускайте эту главу.

В этом посте расскажу как слушать радио с помощью DeaDBeeF. Почему этот способ предпочтительнее использования онлайн радио в браузере? Есть несколько адекватных аргументов.
  1. не требуется Adobe Flash Player, в котором, последнее время много дырок,
  2. браузеры жрут намного больше памяти (посмотрел сейчас в MATE System Monitor: проигрыватель использует в 10 раз меньше памяти), поэтому использовать проигрыватель сподручнее: вы работаете, проигрыватель работает, а браузер запускать и не нужно; если же вы хотите послушать радио, используя браузер, то все-равно лучше запустить проигрыватель, так как при открытии новой вкладки, браузер занимает еще, навскидку, 50 метров (проигрыватель жрет меньше + будет меньше тормозов на другие вкладки, если мало RAM'ы [да, у тебя ее мало!]); кроме того, при зависании или сваливании браузера в корку, радио, играющее в проигрывателе не "оборвется";
  3. использовать программу для воспроизведения звука лучше чтобы воспроизводить звук лучше, чем использоваьт программу, для просмотра web страниц для целей зауковоспроизведения, так как в проигрыватете есть фичи, которые позволяют работать именно со звуком, например: эквалайзер, фильтры звукообработки, запись радио, конвертеры... есьт ли это на онлайн радио страничках?
  4. Можно создать отдельный плейлист со списком радиостанций; это можно сделать и в браузере: отдельная папка закладок или карман (Pocket или его аналоги), но плейлист проще передать другому человеку (а другому человеку, в свою очередь проще его использовать), кроме того, плейлист можно залить на Git, SVN или облако, тогда можно его просто-порсто обновлять (команда в автозапуск или cron или, установить пакет для прозрачной работы с облаком, который будет сам отслеживать и скачивать последние изменения плейлиста); само собой, используя SVN/Git или облако можно обеспечить возможность совместного редактирования списка возпроизведения: удобно - несколько человек добавляют в плейлист радиостанции, остальные пользуются, причем у всех всегда самая последняя версия... Что-то, это, кажется я задумался, но идея неплохая, ИМХО. Надо такое поискать и, если нет, сделать.

Настраиваем радио в DeaDBeeF

 Текст можно не читать, я сделал понятные картинки.

1. Открываем проигрыватель DeaDBeeF

Я использую столешницу MATE и у меня ярлык на верхней панели. Для меня, запуск проигрывателя - дело одного клика :) А Вы как хотите, можете использовать следующую команду из xterm:
% deadbeef &

2. Создаем список радиостанций

Файл > Новый плейлист


Появится новый список воспроизведения.

Последний штрих - меняем название. Правый щелчок по ярлычку списка (текст 'Новый плейлист', выделенный оранжевым на предыдущем рисунке). В появившемся контекстном меню щелкнуть пункт Переименовать плейлист.

Появится окошко с текстовым полем. Вводим туда текст Radio (ибо это логично).

Щелкаем OK и обращаем внимание на то, что список воспроизведения переименовался.

3. Поиск радиостанци

Существует множество сайтов со списком онлайн радиостанций. Используя поисковый запрос радио онлайн список можно найти многие такие сайты.

Существует, однако, проблемка: меньшая половина сайтов отдает потоки на прослушку с помощью проигрывателей. Некоторые из них явно пишут, что у них свой проигрыватель и работает он только на их сайте. Понятное дело, что делается это в рекламных целях (проигрыватели типа Winamp, AIMP, xine, DeaDBeeF и другие рекламу же не показывают, следовательно, оплачивается только реклама из аудиотрансляции, а сайту, от этого, понятное дело, прибыли никакой, только радиостанции).

Еще одна проблема: если не работает Adobe Flash Player, то я не знаю как отследить адрес потока: Flash не работает, следовательно запрос не идет. Если же Flash Player работает, то я все равно не знаю как найти URL потока. Но есть предположение, что можно отследить запрос на панели Network инструментов разработчика. Хотя я не уверен, что этот адрес понравится "настольному" проигрывателю...

К счастью, есть и сайты, на которых таки можно легко найти адрес потока. Например, список на Beste-case.htmlRadio.com. Ищем, что хотим послушать: поиском или же по каталогу. В любом случае, надо перейти на страницу станции. К примеру: радио Романтика (не надо начинать удивляться, что я слушаю такую жесткую попсу, это просто первое попавшееся :-) ).

Теперь смотрите на картинку. На странице радиостанции есть проигрыватель (на снимке окна обведен оранжевым; спасибо разработчикам, что не Flash!). Выполните по нему правый щелчок и, в появившемся меню, щелчок по пункту Copy Audio Location.

4. Добавление радиостанции

В проигрывателе DeaDBeeF, когда открыт созданный ранее список воспроизведения Radio. Открываем Файл > Добавить расположение.

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

Скопированный в браузере адрес расположения онлайнового радио потока будет вставлен. Щелкайте OK.

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

На этом все. Наслаждаемся!

Примеры

Хотите больше сайтов, потоков или же готовый плейлист? Пишите в комментарии.

Сайты

  • Вот на этом Guzei.com сайте можно получить адреса радио потоков многих станций.

Радиостанции

Список взял отсюда: Рейтинг радиостанций России (BestRadio.FM).

Кстати, установка проигрывателя!

У Вас не установлен этот замечательный проигрыватель отечественного производства? Ставьте скорее! У меня FreeBSD 9.3 и я ставлю так:
# pkg install deadbeef ; pkg clean


Делимся списком с другими

1. Сохраняем в файл

Файл > Сохранить плейлист

Сохраняем как обычный файл с помощью самого обычного диалога сохранения файла.

2. Делимся

Существует множество способов обмена файлами. Например, можно отправить файл посредством протокола XMPP (Jabber). Еще один способ, посредством облачного хранилища, я описывал в предыдущей статье. Могу описать больше или подробнее: используйте комментарии для запросов.

Заключение

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

Хотите, чтобы здесь появилось описание как сделать то же самое в проигрывателе, который используете Вы (в каком-нибудь MPayer, AIMP, Winamp или xine) - пишите в комментарии или в жабу: vasily.blinkov@xmpp.ru.

понедельник, 20 июля 2015 г.

Use case. Обмен файлами посредством облачных хранилищ, расположенных в глобальной сети

Аннотация

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

Введение

Здесь будет продемонстрировано использование облачного хранилища от Google (Google Drive). Несмотря на наличие аналогов, будет рассмотрен именно пример с Google Drive. Автор в курсе, что можно использовать публичный FTP сервер, но Диск Google кажется ему приватнее. Кроме того, автор знает о том, что, наверняка, существуют пакеты для того чтобы сделать работу с облачным хранилищем прозрачнее (чтобы все выглядело как копирование файлов из директории в директорию), но ему тупо лень, поэтому будет использоваться браузер. К тому же у читателя sudo не настроен... :-D

Инструменты

  • Браузер: firefox
  • Сервис: Диск Google
  • Столешница: mate
  • Файлер: caja
Хотите как-то по другому или нужно подробнее? Комментарии открыты.
Например можно изпользовать другой архиватор (compress и т.п.), другой сервис (OneDrive, Dropbox...), оконный (twm и др.) или файловый (mc, команды оболочки о_О, и все что угодно) менеджеры и т.д.

Алгоритм

1. Открываем Америку Google Drive

Перейдя по следующей ссылке можно залезть в свой диск: https://drive.google.com/drive/my-drive. При первом использовании, возможно, потребуется как-то подтвердить создание диска, так как по умолчанию, облака, вроде бы нет, но я не помню как это сделать. А оно и не важно, там пара кликов.


Следующее действие выполняется локально, то есть "на компьютере", а не в браузере!

2. Готовим нужные файлы

Заходим в любую локальную директорию, для которой имеются права на запись, например, в домашнюю директорию.
Внутри создаем папку: Файл > Создать папку. Указываем для нее какое-нибудь имя, например, for_cloud. Заходим в эту созданную папку, накидываем туда все файлы, которые нужно передать другому чуваку на другой компьютер. Получилась директория с файлами, предназначенными для передачи.

3. Сжимаем, сжимаем, сжимаем...

В полученной директории: Правка > Выделить все.
А потом: Правка > Сжать...
Появится вот это вот
Щелкаем Создать.

4. Погодите! Я параноик

Ах, да. Справа от имени файла есть НЕЧТО (на самом деле оно называется "выбор"). Чтобы его открыть, нужно щелкнуть по стрелочкам (справа). Появится список, нужно выбрать в нем .zip.
Кстати, если навести мышку на этот выбор и покрутить колесом мышки, тоже можно выбрать нужный нам .zip.
Раскрываем другие параметры (щелкнуть по треугольнику). Вводим пароль.
Щелкаем Создать.

5. Отправляем в облако.

Браузер. С открытой вкладкой Гугл Диска. Там есть большая красная кнопка создать. Щелк по ней, Загрузить файлы, находим, открыть. Или проще: перетащить созданный архив из окна директории на вкладку браузера с Диском. Вот так

В любом случае, результат должен быть каким-то эдаким

6. Помещенный в облако архив доступен только Вам

Чтобы сделать его доступным кому надо, надо щелкнуть "по нему" (ну в браузере) правой кнопкой мыши. Появится контекстное меню, в котором надо еще раз щелкнуть, но уже по пункту Совместный доступ.
Появится замечательное "окно" Совместный доступ.
 Можно включить доступ по ссылке. На экране появится ссылка.
Ссылку надо скопировать и передать человеку, которому нужен архив.
Вообще там куча вариантов, например, позволить получателю не только просматривать, но и редактировать файл или только комментировать или же сделать файл доступным вообще на весь Интернет (для настройки: щелкнуть над ссылкой). Еще хороший способ: доступ по приглашению: тогда не страшна даже "утечка" ссылки. Однако, что я тут расписываю, все описано в справочной системе в следующих главах:
Справка по "Диску": Cправка - Диск
Хотя, конечно, я ее не читал, ибо все понятно и без нее. 

Заключение

Это далеко не единственный способ обмена файлами по сети, но один из
безопасных и простых. А главное, он экономит нервы получателя файлов. Без этих пересылок сотен мибибайт по почте или жаберу :)