Q: Что-то с огромным аппетитом стало жрать процессор. После недолгих разбирательств виновный обнаружился: демон gvfsd-metadata — он один съедает до 100% ресурсов. Что с ним делать?
A: В качестве временного workaround могу предложить следующее:
rm -r ~/.local/share/gvfs-metadata/*
pkill gvfsd-metadata
Тем самым мы очищаем каталог ~/.local/share/gvfs-metadata/ и убиваем демон gvfsd-metadata. В более правильном исполнении данной задачи следует разрешить запись core-dump’ов и только после этого уже делать перечисленное. Дамп, в свою очередь, отправлять девелоперам и ждать исправления.
Q: Один из ноутбуков, что раньше был в домене, нужно из него вывести и сделать автологон пользователя. Все бы ничего, действия элементарные, да вот в учетных записях пользователей нет такого пункта, как «Требовать ввод имени пользователя и пароль». Как же быть (переустанавливать ось жутко не хочется)?
A: О да, это фишка винды. Стоит только присоединить машину к доменной сети, Windows сразу же удаляет значение AutoAdminLogon из следующего ключа реестра: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon. Это-то и приводит к скрытию флажка «Требовать ввод имени пользователя и пароля» в показанном выше окне настроек. Вернуть все поможет, как ты уже догадался, правка реестра. Но сделать это я предлагаю через консоль. Так что открывай cmd и вводи команду:
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d "1" /f
После выполнения данная команда восстановит отсутствующий ключ реестра и сделает возможным настройку автоматического входа в систему, что нам и требовалось.
Q: Слышал, что через берп можно брутфорсить пароли HTTP Basic Authentication. Так ли это на самом деле и если да, то как?
A: Да, ты совершенно прав, можно! Для этого нужно отправить запрос аутентификации в Intruder, где уже с ним работать. Можно подбирать по словарям, так и полным брутфорсом. Так же брутить можно не только basic authentication, но и многое другое. Рекомендую ознакомиться с интересным мануалом по теме здесь.
Q: Обновил себе ноутбук, все отлично, да вот раньше на веб-камере у меня шторка была, а сейчас ее нет. Может, конечно, у меня паранойя, но я хочу понимать, когда камера включена, скажем для скайпа, а когда выключена. Как ее отключать или точно знать, не включена ли она в данный момент?
A: Параноики живут дольше! Так что приступим. Снобы скажут, мол, при включении камеры загорается светодиод возле нее, что показывает, что вебка активна, также на некоторых системах в трее появляется значок камеры, что тоже извещает о ее работоспособности в данный момент. Но мы не из числа тех, кто верит. Так что я предлагаю использовать два маленьких скрипта, но давай по порядку. Итак, для просмотра модулей ядра, которые в данный момент используются, выполним команду
lsmod | grep uvcvideo
Она даст нам вывод модулей веб-камеры. Теперь отключим их:
sudo modprobe -r uvcvideo
И снова попробуем просмотреть модули веб-камеры первой командой. Как ты сможешь увидеть, они отключены. Камера не работает. Если включить тот же скайп, то программа скажет, что ни о какой камере она даже не слышала. Как раз то, что нам нужно! Думаю, ты уже сам понял, что нужно делать, то есть написать небольшой скрипт, который при загрузке системы будет гасить камеру. Но вот что делать, когда она понадобится? Здесь тоже все просто, нужно ее включить командой
sudo modprobe uvcvideo
Это тоже решаемо через небольшой скрипт или даже комбинацию клавиш, что еще круче. Линукс — это поистине безграничные возможности для творчества. Удачи!
Q: Живу, увы, в условиях весьма плохого интернета и поэтому хочу локальную копию репозитория. Лучше скачать через друзей сразу много, чем бегать каждый день. Кстати, сколько он весит? И самое главное, как бы мне запилить свой собственный локальный репозиторий для убунты?
A: Предлагаю реализовать это через apt-mirror, ставится командой
aptitude install apt-mirror
После чего создаем папку для нашего репозитория, хранить лучше на отдельном диске:
mkdir -p /mnt/repo/debian/{mirror,var,skel}
Теперь правим наш конфиг /etc/apt/mirror.list:
set base_path /mnt/repo/debian
set run_postmirror 0
set nthreads 20
set _tilde 0
deb-i386 http://ftp.fi.debian.org/debian squeeze main contrib non-free
deb-src http://ftp.fi.debian.org/debian squeeze main contrib non-free
deb-i386 http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free
deb-i386 http://ftp.fi.debian.org/debian squeeze main/debian-installer
clean http://ftp.fi.debian.org/debian
clean http://security.debian.org
skip-clean http://ftp.fi.debian.org/debian/dists/squeeze/main/installer-i386/
Остается только запустить процесс командой
apt-mirror
Учти, что полный объем равен примерно 36,2 Гб.
Q: Перешел на линукс, и оказалось, что моего любимого markdownPad нет под убунту. Какую замену можно подыскать?
A: Ну, на самом деле не все так плохо, как кажется на первый взгляд. Редакторов очень много, с различным функционалом и возможностями. Можно использовать обычный gedit с поддержкой синтаксиса Markdown или, к примеру, что-то более громоздкое по типу komodo, о котором уже не раз писали на страницах ][. Хоть это и выстрел из пушки по комарам, кому-то нравится. Я лично для Markdown использую ReText, мне он симпатичен своей лайтовостью и превью разметки. Также рекомендую обратиться к очень крутой статье 78 Tools for Writing and Previewing Markdown, в ней ты найдешь целых 78 тулз для работы с Markdown. Есть как онлайн-редакторы, так и офлайн, думаю, это поможет окончательно определиться с выбором.
Q: Как можно добавить новый PPA для убунты? Что-то никак не могу понять, как это делается.
A: Здесь все довольно просто. Можно это сделать через консоль либо через гуи. Предлагаю рассмотреть оба варианта. Начнем с того, что через консоль. Предположим, что мы хотим добавить вот такой PPA ppa:deluge-team/ppa. Для этого выполним в консоли:
sudo add-apt-repository ppa:deluge-team/ppa && sudo apt-get update
Как видишь, все не так сложно, добавляем репозитории и обновляем список пакетов. В графическом режиме делаем практически то же самое. Открываем центр приложений Ubuntu. Там открываем пункт меню «Правка → Источники приложений». Переходим на вкладку «Другое ПО» и нажимаем «Добавить», куда вставляем наш репозиторий ppa:deluge-team. Теперь так же обновляем пакеты. Готово!
Q: Как провериться на наличие уязвимости Shellshock и защититься от нее обычному пользователю?
A: Я рекомендую обратиться к ресурсу shellshocker.net. Он позволяет обнаружить наличие уязвимостей и скачать нужные заплатки, чтобы их закрыть. Для начала выполним:
curl https://shellshocker.net/fixbash | sh
Результатом будет вердикт, уязвима наша версия баша или нет. Если да, то смело вбивай следующую команду:
curl https://shellshocker.net/shellshock_test.sh | bash
Будут скачаны нужные файлы и установлены, после чего можно будет еще раз провериться на наличие уязвимостей. Если же ты не доверяешь данному ресурсу и хочешь понимать, как осуществляется проверка, то тогда, думаю, тебе поможет этот скрипт: bashcheck.
Q: Столкнулся с непонятным. После включения компьютера кулеры гудят на полную, но биос не издает никаких звуков, даже на экране ничего не отображается. Что это и как локализовать виновника?
A: Ох, тут нужно двигаться постепенно, от железки к железке. Для начала в подобных случаях нужно отключить все ненужное для старта. Оставляй только мать, процессор, кулер и пробуй включаться. Если запищит, то по одному вставляй убранные железки. Сначала память, потом винт, ну а потом то, что осталось. Только так можно найти плату, которая вышла из строя. Другой вопрос, что глюк может быть плавающий, и тут уже нужно затратить много больше времени на диагностику. Из общих советов могу порекомендовать прогнать каждую плашку памяти на сбойные секторы, тем же Memtest86+, чем больше часов тест, тем выше уверенность в том, что память живая. Также стоит прогнать тесты процессора и просмотреть S.M.A.R.T. жестких дисков. Для винчестера мне нравится Victoria, а для процессора можно воспользоваться AIDA64 или, запустившись с лайфсиди, запустить на линуксе CPUburn. Для его установки нужна команда
sudo apt-get install cpuburn
Запускается из расчета, сколько ядер у процессора, столько и версий утилиты:
burnP6
грузит ядро на 100%; обычно при полной нагрузке достаточно одного часа, чтобы всплыли основные косяки, после двух уже заметно меньший процент сбоев. Также не стоит забывать про друзей и про свое собственное старое, но вполне рабочее железо, на котором можно перетестить подозрительные железки. Попеременно меняя процессор, мать и блок питания, можно весьма быстро определить виновника непонятных глюков.
Q: Как можно проанализировать вайфай-соединение, выбрать наиболее удачный канал и просмотреть различные характеристики с андроид-девайса?
A: Для этого отлично подойдет программка с нетривиальным названием Wifi Analyzer. С ее помощью можно легко не только определить свободные каналы, но и проверить качество приема Wi-Fi в различных местах квартиры или кафе или просмотреть изменения сигнала во времени. После запуска в главном окне программы будет виден график, на котором будут отображены видимые беспроводные сети, уровень приема и каналы, на которых они работают. В случае их пересечения на графике это будет наглядно отображено. Также можно посмотреть «рейтинг» каналов, по типу любых звездных рейтингов, в котором наглядно показано, насколько в данный момент целесообразен выбор того или иного из них. Еще одна фишка приложения — анализ силы сигнала Wi-Fi. Для начала потребуется выбрать, для какой беспроводной сети производится проверка, после чего смотреть уровень приема, при этом ничто не мешает перемещаться по местности или же проверять изменение качества приема в зависимости от местоположения роутера.
Q: Как бы мне обезопасить свой веб-серфинг от разных баннеров, рекламы, кликджекинга, CSRF и прочей нечисти? Пользуюсь огнелисом.
A: Для firefox’a огромное количество плагинов, которые не только упрощают жизнь, но еще и делают ее заметно безопасней и удобней. Думаю, об Adblock Plus не слышал только ленивый, это дельная баннерорезка, которую ставить нужно однозначно. В качестве защиты от clickjacking’a можно поставить Ghostery. Отслеживает «невидимую» сторону интернета, где работают шпионы, сетевые жучки, пиксели и маяки, размещенные на сайтах рекламными сетями, поставщиками поведенческой информации, владельцами сайтов и различными компаниями, которые следят за активностью в интернете. Ghostery распознает веб-жучки более чем 500 подобных компаний, в числе которых Facebook и Google. После анализа сайта показывает все, что заблокировал, можно настроить вайтлисты. По CSRF — RequestPolicy, вот что пишет о нем сам разработчик: «Осуществляет контроль разрешенных межсайтовых запросов. Повышает конфиденциальность веб-серфинга. Защищает вас от подделки межсайтовых запросов (CSRF) и других атак». Более сложный в настройке, но от этого не менее интересный NoScript разрешает запуск активного содержимого только с сайтов, которым ты полностью доверяешь, а все остальное, как ты уже и сам догадался, блокирует. С учетом того, что у многих список сайтов для ежедневного посещения укладывается в десятку, настройка и подгонка под себя любимого не займет так много времени, как кажется. Ну и в завершение — HTTP UserAgent cleaner. От его возможностей аж дух захватывает:
«Управление заголовком DNT.
Очистка или случайное заполнение заголовка User-agent и полей JavaScript объекта navigator (в том числе по выбранным доменам).
Очистка массива плагинов для невозможности узнать, какие плагины у вас установлены с помощью JavaScript, что повысит вашу приватность. Функцию можно отключить на тех доменах, которым вы доверяете».
И еще куча всего интересного. Более подробно советую посмотреть на fxprivacy.8vs.ru, также обращаю внимание, что по дефолту расширение выключено и устанавливает настройку расширения NoScript "noscript.doNotTrack.enabled" в false, так как эта настройка вступает в конфликт.
Q: Задумался о сохранении своих данных из блога. Встал вопрос, как сделать бэкап blogger’a от гугла, не самого шаблона, а именно моих статей?
A: Для этого нужно перейти в настройки своего блога, там выбрать «Другое» и «Инструменты блога -> Экспорт блога». После этого выбираем, куда хотим сохранить наши данные, и скачиваем.
Q: Недавно наткнулся на тулзу dnsdict6. Как я понял, она может показать субдомены. А можешь привести примеры использования и различные ключи тулзы?
A: Да, все верно. Утилита весьма мощная и показывает многое скрытое от обычных глаз. Выдает записи вида: субдомен — его IP-адрес. Пример использования:
dnsdict6 -d4 -t 32 -x -S google.com
Теперь давай расскажу про ключи:
- d используется для отображения информации о NS- и MX-записях;
- 4 используется для вывода IPv4-адресов;
- t используется для указания потоков (по умолчанию 8, максимум 32);
- D используется для просмотра слов в листе по дефолту;
- S — для поиска SRV-записей по домену.
Также есть четыре типа словаря, которые уже встроены в этот инструмент: -s (маленький = 50), -m (средний = 796, стоит по умолчанию), -l (большой = 1416) или -х (экстремальный = 3211).
Q: После очередной подлянки от хостера решили поднять дублирующий сервер. Чтобы в случае отказа одного другой работал и отдавал контент пользователям. Встал вопрос — как это сделать?
A: Тут я рекомендую обратиться к технологии под названием load balancer. Общую суть можно почерпнуть из картинки во врезке, а более подробная и тонкая настройка, увы, выходит за пределы данной рубрики. Поэтому я настоятельно рекомендую обратиться к фундаментальным мануалам по данной теме и изучить вопрос. В двух словах технология представляет собой следующее: есть сервер, который как раз является LD, скажем с установленным на нем апачем. Когда пользователь на него заходит, LD перенаправляет его запрос на один из доступных ему серверов. Данные, в свою очередь, зеркалируются, что позволяет держать сайты практически без даунтайма. Также это позволяет распределить общую нагрузку по всем компонентам системы и сократить время возврата информации при выполнении сервером внутренних процедур обработки клиентских запросов. В качестве затравки предлагаю лайтовый [мануал по настройке load balancer’a на apache](goo.gl/UqQIyp). Как видишь, подобную схему легко можно поднять даже на виртуалке, чтобы наиграться вволю, освоить новую технологию и оптимизировать процесс перехода.
Q: Понадобилось реализовать софт RAID 1 под убунту, но вот незадача, никогда не работал с рейдами. Тем более «под линукс». Так что даже ума не приложу, с какой стороны начать. Подскажешь?
1. Для начала давай определимся с конфигурацией. Поиграть с рейдом без последствий для железа можно на том же VirtualBox. Пусть у нас будут три жестких диска, скажем по восемь гигов каждый. На двух из них мы поднимем рейд, а на третьем будет установлена система.
2. На втором шаге, после установки системы, нужно подготовить диски к созданию на них массива. Для этого нужно обратиться к любой программе разметки диска. В качестве консольного решения могу предложить cfdisk. Примерный синтаксис будет такой:
cfdisk /dev/sda
При этом важно установить на диске тип Linux RAID, шестнадцатеричный код fd. После этого нужно обязательно записать сделанные изменения и выйти из утилиты.
3. Теперь необходимо выполнить точно такую же разбивку на другом диске. Эта операция без затруднений выполняется с помощью другой полезной утилиты, позволяющей управлять дисковыми разделами:
sfdisk -d /dev/sda | sfdisk /dev/sdb
Ключ -d используется для создания дампа всех разделов указанного устройства в формате, который может служить входным для той же команды sfdisk, что позволяет создавать дубликаты разделов с сохранением всех свойств и атрибутов.
В итоге будет получен диск с одинаковыми разделами и установленным типом Linux RAID. Теперь можно приступать непосредственно к созданию RAID-массива.
4. Для создания и управления рейдом служит утилита mdadm. В нашем примере синтаксис ее будет такой:
mdadm --create /dev/md1 --level=1 --raid-devices=2 \
/dev/sda1 /dev/sdb1
Первый ключ команды обязательно должен определять основной режим функционирования mdadm. В данном случае используется режим создания. После этого ключа указывается имя создаваемого RAID-устройства. Ключ --level=1 определяет уровень RAID-массива. Ключ --raid-devices=2 определяет количество устройств-компонентов в создаваемом RAID-массиве. Завершает командную строку список устройств, из которых будет сформирован RAID-массив.
5. После этого остается отформатировать и примонтировать вновь созданный массив. Текущее состояние RAID-массива проверяется по содержимому файла /proc/mdstat командой
cat /proc/mdstat,
которая в случае выхода из строя одного из жестких дисков сразу же об этом сообщит.
Q: Для работы и для дома использую один ноутбук. В двух местах стоят мониторы по 23 дюйма каждый, удобные мыши и клавы. Вывод картинки предпочитаю смотреть именно на мониторах, а не на самом ноутбуке, поэтому закрываю крышку и пользуюсь им как своего рода неттопом. Плохо ли от этого матрице и ноутбуку в целом?
A: Многие бизнес-ноутбуки оснащены даже специальными док-станциями, чтобы как раз работать в подобном режиме, с закрытой крышкой. Плюс — выключенная средствами ОС матрица никак не греется и, соответственно, перегреться не может. А если перегреется сам ноутбук, сработает защита и компьютер выключится.
Довольно часто встречается, что воздух для охлаждения ноутбука заходит сверху от крепления с крышкой или через кнопки клавиатуры, в таком случае повышается вероятность перегрева самого ноутбука. Также это тепло, естественно, будет передаваться матрице. Кстати, частенько режим защиты процессора при перегреве выключен по дефолту. Что, как сам понимаешь, может привести к тяжким последствиям.