Если у вас проблема с ноутбуком

Если у вас есть ноутбук и возникли проблемы с железом (жестким диском, матрицей, клавиатурой), то ни в коем случае не несите свою собственность в руки вандалов, которые заявляют, что они все отремонтируют!

В декабре на свой старый ноутбук поставил 10-ку. Работает нормально, лучше чем все, что до этого делал Microsoft. Сам ноутбук 1 раз уже побывал в руках «официальных мастеров», меняли клавиатуру, содрали 3т.р. (было 4 года назад).
Заменил матрицу (начала полосить) и решил разобраться почему клавиатура «плавает» при нажатии на клавиши. Так вот, эти дебилойды!!! не поставили клавиатуру в фиксаторы, а приклеили двухсторонним скотчем в 4-х местах! Я как увидел — просто офигел.
Потратил около часа, чтобы снять это все говно с клавиатуры и вычистить остатки скотча с посадочного места. Поставил клавиатуру как положено и теперь ничего не плавает.

Если возвращаться к началу моего поста. Ради интереса позвонил в 2 официальных сервиса с «мастерами». Назвал модель ноута и описал проблему с матрицей и клавиатурой.

Замена матрицы — от 10 до 15 т.р.
Замена клавиатуры — от 5 до 7 т.р.

Мне матрица обошлась в 5900р., клавиатура стоит 1200р.
Все меняется за 5 минут. Единственный минус всего этого мероприятия — очень много винтиков надо выкрутить, а потом снова закрутить.

Вывод: если у Вас возникли проблемы с ноутбуком, то не торопитесь нестись в сервисный центр. Все можно сделать самому во много раз быстрее и дешевле.

Примеры или как работать с find

Это больше будет похоже на памятку, чтобы не ползать по манам, интернетам и искать нужный вариант команды find

1. Найти файл в текущем каталоге с учетом регистра и без учета:

find . -name search.file
find . -iname search.file
find . -type f -name search.file

Find понимает маски, так что не обязательно указывать точное имя файла.

2. Найти каталог с именем Directory:

find / -type d -name Directory

3. Найти файлы с/без прав доступа, к примеру 666:

find . -type f -perm 0666
find . -type f | -perm 0666

Комбинации команды find с другими программами.
4. Ищем каталог с правами доступа 777 и меняем права доступа на 755

find /tmp/www -type d -perm 777 -exec chmod 755 {} \;

5. Поиск или удаление старых файлов:

find /var/log/ -mtime +6 -name «*.log» -exec ls {} \;
find /var/log/ -mtime +6 -name «*.log» -exec rm -rf {} \;

6. Ищем слово во всех файлах в текущем каталоге:

find . -type f -name «*» -exec grep -l SearchString {} \;

Остальные комбинации не так часто используются в повседневной жизни, поэтому для таких команд можно «маны покурить»

P.S.Ахтунг: не забываем про «минусы» и кавычки

Скринкаст — это легко

Vokoscreen — приложение для записи видео с экрана. С помощью него можно записывать видео неограниченной длины. Приложение работает со всеми окружениями рабочего стола Linux. Настройки рассчитаны на простое использование программы. Не требует глубоких знаний Linux. Кликнул и записывай.

Из особенностей:
— выбор записи — экран, окно или область экрана.
— поддержка веб камер.
— запись со звуком или без и выбор устройства от куда брать звук.
— выбор кодеков и форматов для аудио и видео.

Входит практически во все топовые дистрибутивы Linux.

Перезагрузка USB порта без перезагрузки системы

У меня на ноутбуке периодически «отваливается» мышь. Не скажу, что это нормально, но и не сильно меня раздражает. Переключил в другой порт и работает дальше. Порты закончились — перегружаемся. Причем это началось еще на Fedora, на Ubuntu болезнь продолжается. Сегодня было несколько минут и решил их посвятить этой проблеме.
Есть два варианта решения проблемы. Первый быстрый и второй более интересный и информативный.

Первый вариант:
Отключаем и включаем используя modprobe

>modprobe -r usbhid
>modprobe usbhid

Внешние накопители (диски, флешки):

>modprobe -r usb-storage
>modprobe usb-storage

Второй вариант:
Смотрим общую информацию о том какое устройство к какому порту подключено (меня интересует мышь Razer):

>lsusb

Древовидный вид подключения. Здесь видно какой драйвер используется (на картинке подчеркнуто красным):

>lsusb -t

Определяем адрес устройства, где параметр -s содержит номер bus:device (на картинке подчеркнуто синим):

>lsusb -v -s 4:1 | grep iSerial

Terminal
Теперь у нас есть вся информация для отключения нужного нам USB устройства (на картинке подчеркнуто красным):

>echo -n «0000:00:1d.0» | tee /sys/bus/pci/drivers/ehci-pci/unbind

Подключаем USB устройство:

>echo -n «0000:00:1d.0» | tee /sys/bus/pci/drivers/ehci-pci/bind

После таких манипуляций мы перезагружаем конкретное USB устройство без необходимости перегружать компьютер целиком.

P.S.Ахтунг: не забываем про «минусы» и кавычки

Asterisk — начало

Предположим, что вы пришли в новую организацию с существующей рабочей Информационной системой. И в ваши новые обязанности входит поддержка IP телефонии на базе Asterisk. У вас возникнет масса вопросов и один из них: «с чего начать?».
Поделюсь своим опытом, с чего начал я.
Для начала надо посмотреть, что внутри конфигурационных файлов АТС, и конечно начать читать книгу издательства O’Reilly «Asterisk: The Future of Telephony» Jim Van Meggelen, Leif Madsen, and Jared Smith. На просторах интернет легко найти второе издание на русском языке.
Самый первый файл, который смотрит Asterisk при запуске — это asterisk.conf В нем хранится информация о том что и где находится в системе для работы АТС. Там не очень интересно. Далее смотрим конфигурацию диалпланов (плана набора) в файле: extensions.conf. В нем на много интереснее. В принципе, в настроенной системе для внесения незначительных изменений нам понадобиться править только этот файл, если не будет меняться конфигурация всей Информационной системы.
В этом конфигурационном файле есть два основных контекста — [general] и [globals]. Это в первом контексте записаны общие настройки диалплана, а во втором глобальные переменные. Эти два контекста, скорее всего вам никогда не понадобятся. Для того чтобы понять цепочку как все это работает, нужно обратить внимание на записи вот такого вида:

[DID_operator]
include = DID_operator_timeinterval_day,${timeinterval_day}
include = DID_operator_default

Здесь идет вставка контекста DID_operator_timeinterval_day, DID_operator_default в контекст DID_operator. Обратите внимание на ${timeinterval_day} — это как раз вызов переменной из глобального контекста.
Посмотрим на контексты DID_operator_timeinterval_day, DID_operator_default поближе и увидим, что там даются четкие инструкции «что делать».

[DID_operator_timeinterval_day]
exten = 4991234567,1,Goto(voicemenu-custom,s,1)
exten = s,1,Goto(voicemenu-custom,s,1)

Здесь идет обработка звонков. voicemenu-custom — это тоже контекст в моем конфигурационном файле. А вот параметр s заслуживает чуть больше внимания. Когда в контекст поступают вызовы, для которых не указан конкретный номер, они передаются на добавочный номер s. (s — сокращение от start)
Внимательный разбор этих цепочек позволить понять как работает система. Следующим шагом в изучении конфигурационных файлов Asterisk нам нужно будет посмотреть файл: sip.conf. В нем все построено аналогично файлу extensions.conf, все на уровне контекстов. Вот его мы точно будем трогать только в случае глобальных изменений системы.

В заключении: Поняв простые принципы построения конфигурационных файлов Asterisk и научившись их немного читать, система уже не кажется такой сложной и «страшной».

Как начать работать с GitHub

Все уже давно знают про проект GitHub. Кто не знает, тот может зайти в википедию и почитать об этом проекте. Я расскажу как быстро начать работать с ним и публиковать свои проекты. Оговорюсь, GitHub бесплатно можно использовать только в публичном варианте, т.е. все ваши проекты доступны всем.
Первым делом регистрируемся на сайте. Регистрация занимает несколько минут, ничего сложного. После вы создаете там свой первый репозитарий. На этом работа с сайтом, можно сказать закончена.
Переходим в нашу любимую консоль. Для начала устанавливаем пакет для работы с git. Далее выбираем у себя каталог и в нем выполним несколько команд. Я привык все свои проекты вести в каталоге workspace, поэтому в примерах он и будет фигурировать.
Настраиваем локальный git:

~/workspace/githib> git config —global user.email «user@email.com»
~/workspace/githib> git config —global user.name «user»

Инициируем у себя локальный проект:

~/workspace/githib> git init

Клонируем к себе, то что автоматом создалось на сервере GitHub:

~/workspace/githib> git clone git@github.com:user/themes.git

Или, на мой взгляд лучше, получить файлы и каталоги вот такой командой:

~/workspace/githib> git pull git@github.com:user/themes.git master

Создаем в каталоге или копируем в него файлы, которые будем закачивать на сервер GitHub
Добавляем все файлы в проект (точка — добавляет все новые файлы из каталога, здесь будьте внимательны):

~/workspace/githib> git add .

Смотрим статус репозитария:

~/workspace/githib> git status

Применяем все изменения и создаем точку отката, на всякий случай:

~/workspace/githib> git commit -m «Initial commit»

Смотрим лог, может что-то там будет интересное?:

~/workspace/githib> git log

Дальше можно пойти двумя путями. Добавить к себе репозитарий и потом с ним работать или указывать путь к своему внешнему репозитарию. Я предпочитаю второй вариант. Поэтому:

~/workspace/githib> git push —set-upstream git@github.com:user/themes.git master

Теперь ради интереса можем посмотреть наши файлы на сайте GitHub.

А собственно почему я решил использовать GitHub? Здесь несколько причин.
1. Есть некоторое количество исходников и я готов ими поделиться. Причем в первых постах этого блога эти программы упоминаются.
2. Где-то год назад я поставил себе тему Numix. И немного начал ее переделывать «под себя». На сегодняшний день, на мой взгляд получилась неплохая тема. Если кто ее себе поставит, а потом найдет «баг», то я буду только рад сторонней помощи.
3. Есть некоторые задумки и поэтому решил использовать платформу для совместной работы над программным кодом.

Ссылка на мой репозитарий с темами: almightydrews/themes. В нем лежат две темы для окон и одна тема курсоров. Тема DNA-Windows — очень сырая, возможно когда надоест темный десктоп я начну ее использовать и «пилить» дальше.

P.S.Ахтунг: не забываем про «минусы» и кавычки

Настраиваем скорость загрузки Linux

Сколько у вас загружается Linux? Выполним несколько команд в терминале.
1. Сколько времени затрачено на загрузку ядра и ваших сервисов:
> systemd-analyze
2. Посмотрим сколько времени и какой сервис запускался:
> systemd-analyze blame
3. Смотрим критические моменты в цепочке зависимостей во время старта сервиса:
> systemd-analyze critical-chain <service>

С помощью следующей команды вы можете посмотреть как был загружен сервис, к примеру gdm:
> systemctl status gdm
Если вам нужно остановить какой-либо сервис выполняем:
> systemctl stop <service>
или отключить, чтобы он не загружался во время рестарта системы:
> systemctl disble <service>

А что дальше? А дальше на ваше усмотрение. Включайте, выключайте то, что считаете нужным. Только перед принятием решения отключения сервиса поищите ответ на вопрос: «что это за сервис и на что он влияет?»

Будь бдителен

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

Другой распространенный способ вымогательства — это рассылка писем с архивированными скриптами. Суть атаки: по почте в архиве приходит Java скрипт. Антивирусная система его пропускает, т.к. он не содержит вредоносного кода. Пользователь его открывает и удивляется, что все его документы зашифрованы. Шифрование документов происходит на основе открытого ключа. Шифруются документы с помощью gnupgp. Закрытый ключ для расшифровки документов находится у злоумышленников. Оперативно расшифровать зашифрованные файлы без этого ключа нельзя. В появившемся файлике инструкция как оплатить расшифровку документов. Если готовы рискнуть, то можете заплатить, но лучше проведите инструктаж пользователей по информационной безопасности и делайте чаще архивы ключевых файловых ресурсов.

123

Утилиты из Kali Linux в Ubuntu

11 августа вышел новый дистрибутив Kali Linux 2. Дистрибутив содержит массу различных утилит для тестирования безопасности. В основных репозитариях Ubuntu большинства утилит нет. Можно все пакеты поставить отдельно и потратить много времени. Я решил пойти более простым путем. Учитывая, что Kali и Ubuntu базируются на основе Debian, значит репозитарии Ubuntu и Kali должны подходить.
Первым делом идем по ссылке и смотрим актуальные ссылки на основные репо Kali http://docs.kali.org/general-use/kali-linux-sources-list-repositories
Создаем файл в каталоге /etc/apt/sources.list.d/kali.org.list
Добавляем в этот файл четыре строчки (хотя для нормальной работы хватит и двух):

deb http://http.kali.org/kali sana main non-free contrib
# deb-src http://http.kali.org/kali sana main non-free contrib
deb http://security.kali.org/kali-security sana/updates main contrib non-free
# deb-src http://security.kali.org/kali-security sana/updates main contrib non-free

Если сделать apt-get update — вылетит ошибка о сертификате. Добавляем сертификат:

>apt-get install kali-archive-keyring

Если возникает ошибка, то выполняем четыре команды:

>rm -rf /var/lib/apt/lists
>apt-get update
>apt-get install kali-archive-keyring
>apt-get update

Дальше ищем нужный пакет, устанавливаем его и работаем с ним.
Есть один нюанс. Не делайте upgrade, иначе большинство программ будут установлены из дистрибутива Kali. Поэтому редактируем созданный нами файл и комментируем строчки репозитариев Kali, чтобы нам не ошибиться и не установить при обновлении пакетов Ubuntu и пакеты из дистрибутива Kali.

Браузер по умолчанию

Недели 2 назад надоела мне Fedora и я решил вернуться в лоно убунтоводов. Все было связано с моей ленью ставить один пакет из исходников, а такого RPM пакета не было, хотя в репозитарии убунты он есть. За последние года Ubuntu сильно похорошела, но навязывание Unity — это минус. Мне нравятся всякие красивости, но Compiz много кушает ресурсов. В общем, снес Unity, установил Gnome, XFCE и никакой визуальной разницы с Fedora. Поработав некоторое время обратил внимание, что иногда кликая по ссылкам открывается Chrome, а не FireFox. В настройках XFCE мозила стоит как браузер по умолчанию.

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

>sudo update-alternatives —config x-www-browser

выбираем что будем использовать по дефолту, но это еще не все, выполняем следующую команду:

>sudo update-alternatives —config gnome-www-browser

а вот теперь все. теперь Firefox у меня везде установлен браузером по умолчанию.
И в заключении, выполняем команду:

>sudo  update-alternatives —all

и изменяем все настройки так как нам нужно.

P.S.Ахтунг: не забываем про «минусы»