User
Help, my database is corrupt. Now what?
В этой статье я объясню что нельзя делать с поврежденной базой данных и опишу кое-что из того, что должно быть сделано, некоторые виды повреждений и как их можно исправить.
Как обнаружить, что база данных повреждена
Обычно повреждения превосходно обнаруживаются при попытке доступа к поврежденной странице. Запросы, бэкапы или процедуры реиндексации завершаются ошибками с высокими уровнями серьезности.
Вот пара примеров системных сообщений при обнаружении повреждения БД:
SQL Server detected a logical consistency-based I/O error: incorrect checksum (expected: 0xfdff74c9; actual: 0xfdff74cb). It occurred during a read of page (1:69965) in database ID 13 at offset 0x0000002229a000 in file 'D:\Develop\Databases\Broken1.mdf'.
Attempt to fetch logical page 1:69965 in database 13 failed. It belongs to allocation unit 72057594049069056 not to 281474980642816.Основная проблема заключается в том, что если проверки целостности базы данных не производятся на постоянной основе, то повреждение может быть обнаружено спустя часы, дни и даже месяцы, после того, как оно образовалось, в тот момент, когда уже сложно будет что-то исправить.
MMO в реальном мире, или Инструкция по созданию живых игр, или Как сделать так, чтобы детям в лагере было интересно
Никогда мне не быть Milfgard'ом
Мои строки не так понятны
Но я тоже делаю игры
И это довольно приятно
К.В.Давыденко 2016 г.
Представьте, что вас заперли в комнате, как на картинке ниже, с горстью детей. И вы сделаны из леденцов. Да, вы сделаны из леденцов. В общем, вы обречены, если не придумаете, чем занять детей, чтобы отвлечь их от вашей леденцовой сущности. Что вы будете делать?
Как некоторые из хаброжителей знают, по предыдущей статье я в свободное время работаю в детских лагерях. Я занимаюсь в них много чем, но специализируюсь я (если это можно так сказать) на создании игр в реальном мире. Это не такая уж и простая задача. Перед создателем игры встаёт много трудностей. В этой статье я хочу рассказать о них на примере большой игры-симуляторе города, под названием Big City Jail Detective RPGame. Но прежде чем переходить к чему-то настолько глобальному, рассмотрим ситуацию выше.
Что же делать, если вы человек-леденец запертый с детьми?
Для начала, я вам посоветую не паниковать. Не вы первый, не вы последний человек из леденцов, оказавшийся в такой ситуации. Вам нужно чем-то занять этих детей. Может попробуете придумать для них игру?
Запуск отдельных приложений через OpenVPN без контейнеров и виртуализации
Колхозим мониторинг ИБП с протоколом Megatec в Zabbix
Естественно, задачу необходимо было решить 1) дешево 2) еще дешевле, поэтому вариант с SNMP модулями был отвергнут сразу. Было решено использовать соединение по serial портам, благо имелся опыт разработки к Ippon и APC. К слову сказать к APC на вторичном рынке есть SNMP модули по вменяемой цене, а вот к недорогим ИБП я смог найти только новые модули по цене 11-20 тыс. рублей.
В ходе работы были поставлены следующие дополнительные задачи:
- найти и проверить кабели для подключения каждого ИБП, ибо таковые в комплекте отсутствовали
- Реализовать некий модуль, который бы с одной стороны имел интерфейс RS-232 и понимал протокол обмена данными с каждым ИБП, а с другой — имел сетевой интерфейс и мог отправлять данные в виде zabbix_trapper.
- Протестировать модель сбора и передачи данных, части кода, а также формат данных.
В ходе реализации второго и третьего пункта хотелось собрать в одном месте все данные, которые бы в будущем позволили реализовать отдельное устройство на м/к.
Укрощаем USB/IP
Используем Secure Boot в Linux на всю катушку

Технология Secure Boot нацелена на предотвращение исполнения недоверенного кода при загрузке операционной системы, то есть защиту от буткитов и атак типа Evil Maid. Устройства с Secure Boot содержат в энергонезависимой памяти базу данных открытых ключей, которыми проверяются подписи загружаемых UEFI-приложений вроде загрузчиков ОС и драйверов. Приложения, подписанные доверенным ключом и с правильной контрольной суммой, допускаются к загрузке, остальные блокируются.
Более подробно о Secure Boot можно узнать из цикла статей от CodeRush.
Чтобы Secure Boot обеспечивал безопасность, подписываемые приложения должны соблюдать некоторый «кодекс чести»: не иметь в себе лазеек для неограниченного доступа к системе и параметрам Secure Boot, а также требовать того же от загружаемых ими приложений. Если подписанное приложение предоставляет возможность недобросовестного использования напрямую или путём загрузки других приложений, оно становится угрозой безопасности всех пользователей, доверяющих этому приложению. Такую угрозу представляют загрузчик shim, подписываемый Microsoft, и загружаемый им GRUB.
Чтобы от этого защититься, мы установим Ubuntu с шифрованием всего диска на базе LUKS и LVM, защитим initramfs от изменений, объединив его с ядром в одно UEFI-приложение, и подпишем его собственными ключами.
Debian Linux и Tor за безопасный deb

Основная цель этих нововведений — защита от утечки данных, как минимум — метаданных при загрузке deb пакетов.
Новая редакция популярного бесплатного учебника электроники, архитектуры компьютера и низкоуровневого программирования

Книжка содержит «введение во все», доступное способному школьнику или младшему студенту, который после ее прочтения может спроектировать, написать на SystemVerilog или VHDL и реализовать на ПЛИС несложный, но при этом совершенно настоящий конвейерный процессор. Книга написана живым языком и для введения концепций, например конечных автоматов, использует примеры типа:

Windows 10 исполнился ровно год
Сегодня истекает возможность бесплатного обновления до этой ОС для пользователей Windows 7 и Windows 8

Год назад корпорация Microsoft выпустила свою новую операционную систему — Windows 10. Эта платформа задумывалась как единая система для самых разных устройств, включая смартфоны, планшеты, десктопные компьютеры, игровые консоли и другие. У компании получилось реализовать задуманное, и пользователи получили унифицированную платформу с единым каталогом универсальных приложений.
Сразу после выхода операционной системы было заявлено, что обновление с Windows 7, Windows Phone 8 и Windows 8.1
Используем пакеты на основе OpenWRT в рутерах ZyXel Keenetic

Не так давно компания ZyXel с помощью модуля открытых пакетов поддержала OPKG — пакеты из популярной ОС OpenWRT, предназначенной для домашних маршрутизаторов. Это значит, что часть из них теперь можно ставить на ZyXel Keenetic. В этой статье я опишу процесс включения пакета, настройки репозитория Entware с тысячами пакетов, а также настройки рутера как OpenVPN клиента.
Как думать на SQL?
Надо “SELECT * WHERE a=b FROM c
” или “SELECT WHERE a=b FROM c ON *
” ?
Если вы похожи на меня, то согласитесь: SQL — это одна из тех штук, которые на первый взгляд кажутся легкими (читается как будто по-английски!), но почему-то приходится гуглить каждый простой запрос, чтобы найти правильный синтаксис.
А потом начинаются джойны, агрегирование, подзапросы, и получается совсем белиберда. Вроде такой:
SELECT members.firstname || ' ' || members.lastname
AS "Full Name"
FROM borrowings
INNER JOIN members
ON members.memberid=borrowings.memberid
INNER JOIN books
ON books.bookid=borrowings.bookid
WHERE borrowings.bookid IN (SELECT bookid
FROM books
WHERE stock>(SELECT avg(stock)
FROM books))
GROUP BY members.firstname, members.lastname;
Буэ! Такое спугнет любого новичка, или даже разработчика среднего уровня, если он видит SQL впервые. Но не все так плохо.
Легко запомнить то, что интуитивно понятно, и с помощью этого руководства я надеюсь снизить порог входа в SQL для новичков, а уже опытным предложить по-новому взглянуть на SQL.
Vulners — Гугл для хакера. Как устроен лучший поисковик по уязвимостям и как им пользоваться

Часто нужно узнать всю информацию о какой-нибудь уязвимости: насколько найденный баг критичен, есть ли готовые сплоиты, какие вендоры уже выпустили патчи, каким сканером проверить наличие бага в системе. Раньше приходилось искать вручную по десятку источников (CVEDetails, SecurityFocus, Rapid7 DB, Exploit-DB, базы уязвимостей CVE от MITRE/NIST, вендорские бюллетени) и анализировать собранные данные. Сегодня эту рутину можно (и нужно!) автоматизировать с помощью специализированных сервисов. Один из таких — Vulners, крутейший поисковик по багам, причем бесплатный и с открытым API. Посмотрим, чем он может быть нам полезен.
Ansible с чего начать

Пособие по Ansible
Это практическое пособие познакомит вас c Ansible. Вам понадобится виртуальная или реальная машина, которая будет выступать в роли узла для Ansible. Окружение для Vagrant идет в комплекте с этим пособием.
Ansible — это программное решение для удаленного управления конфигурациями. Оно позволяет настраивать удаленные машины. Главное его отличие от других подобных систем в том, что Ansible использует существующую инфраструктуру SSH, в то время как другие (chef, puppet, и пр.) требуют установки специального PKI-окружения.
Пособие покрывает такие темы:
- Установка Ansible и Vagrant
- Файл инвенторизации
- Модули shell, copy, сбор фактов, переменные
- Запуск на группу хостов
- Плейбуки
- Пример: поднимаем кластер, устанавливаем и настраиваем Apache и балансировщик нагрузок HAproxy
- Обработка ошибок, откат
- Шаблоны конфигурации
- Роли
Ansible использует так называемый push mode: конфигурация «проталкивается» (push) с главной машины. Другие CM-системы обычно поступают наоборот – узлы «тянут» (pull) конфигурацию с главной машины.
Этот режим интересен потому что вам не нужно иметь публично доступную главную машину для удаленной настройки узлов; это узлы должны быть доступны (позже мы увидим, что скрытые узлы также могут получать конфигурацию).
Как создать Телеграмм бота с помощью WCF сервиса
Прогресс автомобильных видеорегистраторов и сравнение их с action-камерами

Также на форумах в обсуждениях часто встречаются несколько популярных идей, типа:
— GoPro Hero снимет лучше, чем любой видеорегистратор;
— Обычная бытовая видеокамера (камкордер) снимет лучше чем любой регистратор;
Проверку этих теорий я тоже решил рассмотреть, добавив в обзор action-камеры и видеокамеру. Обзор не претендует на всестороннесть, я рассматривал те режимы, которые мне были интересны, у тех устройств, которые удалось найти.
Под катом больше 20 мегабайт фото и несколько видео. Предпологается просмотр на большом мониторе. Все видео специально без звука.
Исправляем ошибки установки обновлений Windows 7

Существует правило – если есть обновления, то есть и проблемы с их установкой. Давайте разберем, какие основные проблемы возникают при обновлении Windows 7 через Windows Server Update Services (WSUS) и как их исправить с наименьшими затратами.
Увеличиваем время работы ИБП. Выбор аккумуляторов

Корпоративный VPN c ACCEL-PPP+IPsec и авторизацией в Freeradius через AD

В этой заметке я хочу показать пример быстрой реализации корпоративного VPN сервера с поддержкой PPTP, L2TP (как с IPsec так и без), IPSec vpn с единой базой, который сможет работать с пулами адресов, разными группами пользователей, авторизировать пользователей как из LDAP, так и из локальной базы, опциональная настройка шейпирования как для групп, так и для отдельных пользователей с поддержкой windows, linux, osx, ios, android клиентов и все это на открытых решениях.
P.S. В данной заметке аспекты сетевой безопасности затронуты не будут, иначе она разрастется в огромный документ, с кучей нюансов в реализации, возможно о защите периметра и сетевой безопасности отдельно расскажу в следующий раз.
Кому интересно, добро пожаловать под кат.
Information
- Rating
- Does not participate
- Location
- Киров (Кировская обл.), Кировская обл., Россия
- Registered
- Activity