Блог Александра Башкирова

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

Linux

Решение проблем с WiFi в Linux на примере Intel Centrino Wireless N-100

Просмотров: 120Комментарии: 0
Linux

Стролкеулся на нескольких ноутбуках с тем, что стремно работает Wi-Fi под Linux.

Стремно - это значит, что соединение с сетью устанавливается, затем спустя некоторый промежуток времени (от 2..3 минут до 2..4 часов) падает. И не поднимается, пока не выполнишь операцию "выключить/включить WiFi". Терпел я это, терпел, после полез разбираться. В итоге получился следующий "универсальный" рецепт решения проблем с Wi-Fi в Linux. "Универсальный" (в кавычках) потому что на моих подопытных всё прошло на ура. Но не факт, что "взлетит" именно на вашей карте...

Итак, по шагам

Определяем тип адаптера

lspci

Там будет длинный вывод, нас интересует строка типа этой:

02:00.0 Network controller: Intel Corporation Centrino Wireless-N 1000 [Condor Peak]

То есть мы имеем дело с WiFi модулем Centrino Wireless-N 1000

Далее, идем на https://wireless.wiki.kernel.org/en/users/drivers там выбираем своего производителя и ищем драйвер.

В моем примере, производитель - Intel, драйвер - iwlwifi (точнее, семейство драйверов, потому что нас перекинут на страничку, где надо будет поискать драйвер для Intel Centrino, и уже среди них - для N-1000).

Обратите внимание - часть ссылок ведет на сайт Intel, нам они не нужны. Наш выбор - именно файл. После того, как файл скачае, разархивируем и его и копируем в /lib/firmware бинарники:

sudo cp ~/Загрузки/iwlwifi-1000-ucode-39.31.5.1/iwlwifi-1000-5.ucode /lib/firmware/iwlwifi-1000-5.ucode

(Для другого ноута файлов было два, соответственно, копировать надо два бинарника).

После чего перезагрузка... и профит: все работает "как надо".

ПС. Встречал в Интернете еще кучу рецептов, что мол надо отключить режим N на адаптере - не помогало. Зато с "дровами" уже около недели без перезагрузки - ни одного обрыва.

Свободные офисы под Linux

Просмотров: 82Комментарии: 0
Linux

Я тут исследовал какие есть офисы под Linux, по причине того, что LibreOffice мягко говоря недружественный к документам формата MS Office. Итак, десктопное:

  • LibreOffice. Ставится из репозитоиев. Свободный для коммерческого и некоммерческого использования. Совместимость с MS офисом - ну, так. На четыре с минусом. Сайт: http://www.libreoffice.org/
  • WPS Office. Скачивается с сайта. Версия для Linux свободна для персонального и коммерческого использования. Совместимость с MS Office - на 5- (не все условное форматирование в Excel переваривает). Сайт: http://www.wps.com
  • OnlyOffice. Скачивается с сайта. Версия для Linux свободна для персонального и коммерческого использования. Совместимость с MS Office - на 5. Сайт: https://www.onlyoffice.com/ru

Что удивительно - IBM Lotus Simfony из свободного доступа кажется убрали. А жаль, офис был приличный.

WPS Office - Linix, Android, Windows

Просмотров: 75Комментарии: 0
androidLinuxWindows

Порекламирую немного бесплатный офис - WPS Office (http://www.wps.com). Есть версии под Linix, Android, Windows. Отличается тем, что корректно отрабатывает файлы MS Office (в том числе те, в которых Libre Office форматирование гробит). И он бесплатен. В состав входит текстовый процессор, средство для работы с электронными таблицами и презентациями. Как бы ничего лишнего )

Это пожалуй, все, что надо знать об "этой штуке".

Из "зримых минусов" - закрытый исходный код. И отсутствие русской локализации в Linux версии. Но - кого это останавливает? Не меня точно. Секретов никакх нет, особых тайн не держу... Да и рутового доступа прога не требует =) Так что живем.

Коротко. Sip телефоны под Linux.

Просмотров: 80Комментарии: 0
Linux

Ставил на Linux SIP телефоны. Понравился линуксовый QuteCom (пакет qutecom есть в репозитории Убунты). Но остановился на неоригинальной связке wine + portgo - по банальнейшей причине - portgo корректно отрабатывает DTMF.

Хабр: Ubuntu для мобильных устройств: посмертный анализ

Просмотров: 211Комментарии: 0
Linux

Юольшая и хорошая статья на Хабре о том, почему не взлетел и в итоге умер проект Ubuntu Touch. Это была прекрасная попытка завести Linux на мобильных устройствах, тпа планшетов. Я вот - сознаюсь - все думал купить себе Intel Atom планшет и "запилить" туда Linux... Или дождаться стабильного Ubuntu Touch и купить устройство уже с предустановкой. Первый путь пока держу в голове - вот фиг знает, надо время ... второй отпал сам собой.

Вообще, если смотреть на написанное (а автор - один из разработчиков проекта), то становится понятно, что в проекте Ubuntu Touch были сделаны почти все возможные ошибки. Игнор пользователей, концентрация на ненужных никому технофишках... мне это было удивительно - так как (на мой взгляд) проект имел хороший потенциал роста. Но - "нет так нет", увы.

Ссылка.

Немного про mysql и совсем мало про postgre

Просмотров: 280Комментарии: 0
Linux

Писал я тут проект на mysql... Причем, не просто набор таблиц и связей - а "все по-взрослому", то есть: триггеры, хранимые, функции. То есть логика на стороне сервера.

Приступая к сему действу - тешил себя надеждой, что получится написать код, который может мигрировать на postgre вообще без правок. И - обломался. Нет такой радости. Более того, от версии к версии mysql в хранимых что-то добавляется (и, видимо, исчезет). А попытка перенести на postgre наталкивается на много ошибок, которые в основном относятся к специфике СУБД. Так что оставил эту идею и принялся ковырять mysql.

Из того, что заметил:

  • динамический SQL в триггерах mysql нельзя. Совсем никак. Даже если вызывать процедуру, в которой есть динамический SQL - будет ошибка. Версия mysql 5.5.
  • Если пишем триггер на таблицу в mysql, суть которого - изменение поля в той же таблице, на которой триггер, то синтаксис будет такой, например:
  • SET new.field = CONCAT (old.field, 'test')

    где new и old - старое и новое состояние полей соответственно

    А если так не написать - то ошибка вылезет.

  • вообще динамический SQL себя ведет странно. Его как бы можно, но через prepare - execute.
  • курсоры ведут себя странно. Есть таблица, из которой выбираю курсором, InnoDB. Пока она была предварительно заполнена - все хорошо. Как только начал в нее писать/удалять - так всё, ша. Задвоение данных. Об это плясал с бубном много... Но ничего лучше не придумал, как проверять в цикле на совпадение с предыдущим значением (костылииина, честно говоря). Но добиться от мускула адекватного поведения не смог. (Рестарт, сброс кешей, чистка кармы и прочее - не помогли).
  • версию mysql можно посмотреть через SQL запрос SHOW version();
Пока что полет продолжается... Ждем новых вестей с полей "разработки для души".