Архив метки: linux

Подключаем несколько Яндекс.Диск в Linux — полет в облака халявы

монтирование нескольких яндекс.диск под linux Тема подключения Яндекс.Диска в Linux в общем-то не нова и не сказать, чтобы она была чем-то сложна. Диск как нормально подключался в период закрытого тестирования, так нормально подключается и сейчас. Вообще приятно, что Яндекс не стал изобретать велосипед и воспользовался поддерживаемым и распространённым протоколом WebDAV для предоставления доступа к Диску.

Я подключил сервис по инвайту и успешно им пользовался, а после открытия свободного доступа вдруг подумал — нельзя ли подключить несколько Дисков? Решил проверить эту возможность, а заодно и подключить Я.Диск как внешнесетевой обменник для всех мобильных устройств (файловый менеджер ES FileExplorer для Android поддерживает в том числе и работу с Диском) — чтобы в дороге скидывать фотки с планшета, записывать журналы и книги на телефон, да мало ли для чего ещё может пригодиться сетевая флешка.

Итак, ниже небольшая инструкция по подключению нескольких Я.Дисков в Linux. Кстати, если кто-то еще не знаком с Диском или не успел его завести — регистрация по приглашению выгодна приглашённому даже больше, чем пригласившему — приглашённый получает 1 Гб места (к уже имеющимся 10 Гб) против бонуса в 0,5 Гб для пригласившего. Самое время попробовать!
Читать далее Подключаем несколько Яндекс.Диск в Linux — полет в облака халявы

Памятки по работе в Linux. Выпуск второй

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

Моё знакомство с Conky и мой conkyrc

Аж на восьмой год знакомства с Linux наконец-то познакомился и с Коньками (Conky) — раньше всё лень было, да и не особо нужно как-то (как мне казалось). Всякие индикаторы были на панельках Gnome, по клику на них вызывались развёрнутые версии, а Коньки я кроме как индикатором никак иначе и не воспринимал. После перехода на Openbox наконец решился на них посмотреть, три месяца потихоньку читал инструкции на сайте и настраивал Коньки под себя.

По итогам этой вялопротекавшей настроечной эпопеи могу сказать, что Conky я совершенно точно недооценивал. И хотя расширение при помощи LUA мне пока не пригодилось (да и возможность вывода нескольких окон с применением разных настроечных файлов тоже пока не требовалась), уже понятно, что Conky — это некий Emacs в мире системных мониторов 🙂

Читать далее Моё знакомство с Conky и мой conkyrc

Автомонтирование удалённой ФС через ssh

В период активной настройки роутера (D-Link DIR-620 и dd-wrt – бюджетный NAS и торрентокачалка) нужно было часто различные изменения на него записывать. Для настройки ипользовал ssh, а потом решил попробовать примонтировать ФС роутера через sshfs. Чтобы не делать повторяющихся действий постоянно — перевёл автомонтирование на autofs. Ниже короткий рецепт, как это сделать.

Итак, предположим, что про генерацию ключей вы уже знаете и залогиниться на сервер через ssh по ключу умеете. Важно помнить — тут нужен ключ, не защищенный паролем (иначе автомонтирование не будет таковым), что является угрозой безопасности. Я после завершения основной настройки заменил ключ на закрытый по паролю.

Перейдём непосредственно к настройке autofs. Изменения будем вносить в /etc/auto.master, в него надо дописать:
/mnt/remotehost.sshfs /etc/auto.sshfs --timeout=30,--ghost, где /mnt/remotehost.sshfs — директория, в которую будет монтироваться удалённая файловая система.

Затем создаём /etc/auto.sshfs следующего содержания:

home -fstype=fuse,rw,nodev,nonempty,noatime,allow_other,max_read=65536,reconnect,uid=1000,gid=1000 :sshfs\#user@host\:/нужный/удалённый/каталог

Вот собственно и всё, теперь после перезагрузки демона autofs в локальный каталог /mnt/remotehost.sshfs будет автоматически монтироваться удалённый каталог user@host:/нужный/удалённый/каталог.

Dropbox не синхронизирует — решение проблемы

Многие наверное давно и успешно пользуются известнейшим сервисом «онлайн-флешки» — Dropbox — для резервного хранения или синхронизации своих данных между несколькими машинами. Сервис конечно не лишен своих недостатков, чем с успехом пользуются конкуренты типа SugarSync, который заявляет, что лишен минусов Dropbox. Так это или нет — мне проверить не удалось, у SugarSync до сих пор нет клиента под Linux (точнее есть неофициальный, написанный на php, но устанавливать ради него php я не стал).

Как бы то ни было, работа с Dropbox до недавних пор у меня никаких сложностей не вызывала. Невозможность указать разные «корневые» папки дляс синхронизации я обходил с помощью монтирования нужных директорий внутрь корневой директории Dropbox, дописав в fstab следующую строку: ~/Devel ~/Dropbox/Devel none bind,auto 0 0. Незащищенность передачи и отсутствие встроенного шифрования лего преодолеваются путем использования зашифрованной ФС в целом или внутри папки Dropbox. Плюсы у Dropbox тоже есть — сервис старый и обзавелся клиентами для всех популярных ОС и платформ (популярный под Android файловый менеджер ES File Explorer имеет встроенную поддержку Дропбокс например).

Но внезапно Dropbox перестал синхронизировать мои файлы на Linux-машине. Если остановить синхронизацию и снова включить — процесс проходит нормально, тот же эффект вызывается перезапуском клиента, а вот синхронизация «на лету» работать перестала. Лечится это довольно просто — нужно увеличить значение переменной max_user_watches, например выполнив из-под рута такую команду: echo 30000 > /proc/sys/fs/inotify/max_user_watches, после чего перезапустить клиент Dropbox. Если количество каталогов, принадлежащих пользователю, певысит это число и Dropbox снова перестанет синхронизироваться — достаточно увеличить еще раз.

Изменить имя сетевого интерфейса в Debian/Ubuntu Linux

Задался целью домашнюю wi-fi сеть перевести на современный протокол шифрования — wpa2. Вроде всё предельно просто должно быть даже в линуксе — ставишь wpa-supplicant, прописываешь имя точки, тип шифрования и ключ в /etc/network/interfaces — и всё работает. Но нет — бился часа четыре, пробовал по-разному — не подключается ноут мой к сети, хотя нетбук и смартфоны легко её подхватывают.

Оказалось, что wi-fi карточка в ThinkPad T40 не поддерживает wpa2 (и wpa тоже) на аппаратном уровне. Я думал, что это исключительно программные решения и даже не догадывался покопать в сторону аппаратной поддержки. В итоге пришлось карточку поменять, благо на e-bay их продаётся много.
Читать далее Изменить имя сетевого интерфейса в Debian/Ubuntu Linux

Mplayer — всеядный видеопроигрыватель

Кроссплатформенный видеоплеер Mplayer по праву может считаться одной из самых популярных программ современности, предназначенных для воспроизведения видео. Начало его разработки датируется 2000 годом, автором стал Апард Герёфии, к работе которого затем подключилось множество программистов со всего мира.

Плазменная резка труб
Плазменная резка трубы - пример видеоролика в mplayer

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

При желании Mplayer может быть дополнен графическим пользовательским интерфейсом, коих существует великое множество. Самые популярные — GnomeMplayer, KMPlayer, SMPlayer и UMPlayer. Последние две обладают наибольшем функционалом и большим набором скинов. Кроме того, существуют графические интерфейсы к MEncoder, разработанные для сред KDE и Gnome — это KMencoder и GMencoder.

Помимо того, что Mplayer достаточно экономно расходует системные ресурсы (а значит — отличается невысокими системными требованиями), поддерживает воспроизведение множества видео- и аудиоформатов, позволяет производить пакетную обработку медиафайлов и может проигрывать видеофайлы «на лету», после загрузки нескольких процентов, он также позволяет конвертировать видео и аудио при помощи встроенного кодировщика MEncoder. Кроме того, при помощи MPlayer можно проверить работоспособность веб-камеры в Linux и производить захват изображения с нее или слушать подкасты на лету, если встроенный в сайт плеер по какой-то причине не устраивает.

mplayer и проигрывание playlist

Естественно, mplayer имеет поддержку чтения плейлистов — достаточно вызвать его с соответствующей опцией: mplayer -playlist название_плейлиста.m3u. Сам плейлист можно легко сгенерировать при помощи find: find "$(pwd)" \( -name "*.mp3" -o -name "*.ogg" \) | sort > playlist.m3u — этак команда найдёт все файлы с расширением mp3 или ogg в текущей директории или поддиректориях и внесёт их в плейлист с названием playlist.m3u. Её удобно добавить в bashrc как alias, причём можно сразу с вызовом mplayer для проигрывания созданного плейлиста.

mplayer и проигрывание потокового аудио

Никаких особых секретов при воспроизведении аудиопотока в mplayer нет, достаточно указать адрес самого потока: mplayer http://audio_stream. В данном случае полезными могут оказаться две опции, отвечающие за кэширование потока: mplayer -cache 4456 -cahce-min 2 http://audio_stream — укажет использовать кэш размером 4456 килобайта и начинать проигрывание потока не раньше, чем будет заполнено 2% от размера кэша.

Настройки mplayer — ~/.mplayer/config

Настройки mplayer находятся в файле ~/.mplayer/config, который может состоять из нескольких секций с разными настройками для «чистого» mplayer и его графических оболочек (smplayer, gnome mplayer и т.п.). Одна из полезных опций — zoom = 1 — она заставляет mplayer автоматически масштабировать изображение до размеров окна при его растягивании/уменьшении — автоматический zoom видео в mplayer. Мои настройки приведены в качестве примера конфигурационного файла для mplayer:

Памятки по работе в Linux

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

Порядок вывода аргументов в xargs

Как-то раз столкнулся с проблемой порядка подстановки аргументов в xargs. И man вроде почитал, и погуглил, и встретил нужный ключ -I, но ни из мана, ни из гугля не понять было точно, что он делает именно то, что надо. Итак, ключ -I задаёт нужный порядок вывода аргумента в xargs, используя подстановку.
xargs -I arg_name command arg1 arg_name arg3 — аргументы при вызове команды command будут выведены именно в таком порядке, тогда как в обычном случае arg_name будет подставлен в конец строки вызова команды.

Чтение N строк из начала файла

Совместно с предыдущим решением удобно использовать чтение из файла неких строк, которые затем и преобразовывать в набор аргументов. Банальный cat известен думаю всем. Обратный порядок — tac. Прочитать N строк с конца: tail -n N. Аналогично, но с начала файла: head -n N (возм. head отсутствует в BSD-системах). И прочтитать строки с X по Y: awk 'NR >=X && NR < =Y'
Или при помощи sed: sed -n 'X,Yp'
Читать далее Памятки по работе в Linux

Низкоуровневое форматирование flash/SD/microSD под Linux

Несколько раз приходилось форматировать флешки (к которым относятся и различные SD и microSD карточки), а поскольку происходит это довольно редко — вынужден был лезть в гугл. Конспективная памятка по форматированию флешек под Linux:

Проверить подключение flash

fdisk -l
Выведет список подключенных дисков и их разделов. Обычно флешка — /dev/sdb, но нужно обязательно проверить, так ли это!

Проверить, примонтирована ли флешка

df -h
Если флешка примонтирована — покажет это и точку монтирования. Перед форматированием — отмонтировать: umount /dev/sdb.

Проверить защиту от записи и геометрию

При желании — можно проверить защиту от записи и геометрию (защита от записи в линуксе не важна):
hdparm /dev/sdb

Если нужно низкоуровневое форматирование — забить нулями

dd if=/dev/zero of=/dev/sdb
В выводе покажет объем флешки (должен соответствовать заявленному), скорость и время записи. Также покажет, сколько было записано байт на флешку, что полезно при проверке флешки на физические ошибки (см. ниже).

Проверить на физические ошибки

head -c N /dev/sdb | md5sum
head -c N /dev/zero | md5sum
где N равно числу байт, записанных на флешку при помощи dd. Если контрольные суммы не совпадают — флешка «битая» или были ошибки записи (в реальности сталкивался с форматированием microSD через плохой кард-ридер — даже когда не выскакивали ошибки ввода-вывода при операциях — контрольные суммы не совпадали, с заменой кард-ридера проблема ушла).
Пример:

dimio@ibm $ dd if=/dev/zero of=/dev/sdb
dd: запись в «/dev/sdb»: На устройстве кончилось место
3932161+0 записей считано
3932160+0 записей написано
скопировано 2013265920 байт (2,0 GB), 1010,99 c, 2,0 MB/c

dimio@ibm $ head -c 2013265920 /dev/zero | md5sum
5d0fd6273bed1c500c6fc22d86a59630  -

dimio@ibm $ head -c 2013265920 /dev/sdb | md5sum
5d0fd6273bed1c500c6fc22d86a59630  -

Ну и для полного счастья при желании:

dimio@ibm $ perl -we '
> print "OK" if q{5d0fd6273bed1c500c6fc22d86a59630}
> eq q{5d0fd6273bed1c500c6fc22d86a59630};'

OK

Разбиваем на разделы при помощи fdisk

fdisk /dev/sdb
Опции: m — справка, d — удалить раздел, p — просмотреть список разделов, n — создать раздел, t — поменять тип раздела, w — сохранить изменения.

Последний шаг — создать файловые системы на разделах флешки

mkfs.ext{2,3,4} /dev/sdbX
где X — порядковый номер раздела, на котором нужно создать файловую систему.

Также полезны

mkfs.msdos, mkfs.vfat (создаёт «стандартную» файловую систему флешек — vfat).

mkfs.ntfs — тут понятно, создаёт NTFS, не на всяком Андроид-устройстве может читаться потом.

mkfs.exfat — «расширенная fat», на старых устройствах не прочитается, зато файлы большого размера поддерживает, например (как и NTFS). В Убунте надо пакет exfatprogs поставить, чтобы создавать эту ФС.

Форматирование успешно окончено!

Если что-то осталось непонятным или есть дополнения и замечания — добро пожаловать в комментарии! 🙂

каталог интернет магазинов Москвы

Openbox+sbxkb: переключение раскладок клавиатуры

Openbox WM logo

Cлегка подустав от ставших довольно заметными тормозов Gnome с Metacity и Nautilus в компании (ноут у меня довольно старый по современным меркам — IBM ThinkPad T40 с Pentium M 1,5 ГГц и 1 Гб ОЗУ на борту), решил попробовать Openbox. Создал тестового пользователя, прописал ему Openbox в качестве WM, немного настроил, попользовался час и перевёл основную учётку на него.

Разница в скорости отклика по субъективным ощущениям (что впрочем и важно в данном случае) оказалась просто колоссальной — эмулятор терминала (rxvt) открывается в пределах секунды, против 7-10 сек. в гноме. Окна сворачиваются-разворачиваются также в пределах секунды, в гноме Firefox с десятком открытых вкладок мог разворачиваться из панели 3-5 секунд, при этом постоянно треща HDD, который у меня тоже не казённый. В Openbox же индикатор обращения к жесткому диску срабатывает довольно редко (вообще стало казаться, что гном с его «реестром» всё ближе к Windows — уже и тормоза накапливать за время эксплуатации научился).

Даже Google Chrome по ощущениям из-под Openbox заработал быстрее (и стал быстрее Firefox, чего не было под Gnome), хотя может это уже самообман на волне общей эйфории от легковесности и скорости WM.
Читать далее Openbox+sbxkb: переключение раскладок клавиатуры