Pull to refresh
12
0
Сергей Власов @svlasov

Пользователь

Send message

Настройка UEFI-загрузчика. Самое краткое руководство в мире

Reading time6 min
Views551K

Как устроена загрузка современных ОС? Как при установке системы настроить загрузку посредством UEFI, не утонув в руководствах и ничего не сломав?


Я обещал "самое краткое руководство". Вот оно:


  1. Создаём на диске таблицу разделов GPT
  2. Создаём FAT32-раздел на пару сотен мегабайт
  3. Скачиваем из интернета любой UEFI-загрузчик
    (нам нужен сам загрузчик, это один бинарный файл!)
  4. Переименовываем и кладем этот файл на созданный раздел по адресу /EFI/Boot/bootx64.efi
  5. Создаём текстовый конфиг, кладем его там, где загрузчик ожидает его увидеть
    (настройка и местоположение конфига зависят от конкретной реализации загрузчика, эта информация доступна в интернете)
  6. После перезагрузки видим меню загрузчика
    (Если на диске установлена Windows 8 или 10 — с большой вероятностью это руководство сокращается до пунктов 3 — 5.)

TL;DR не надо прописывать путь к загрузчику в новых загрузочных записях UEFI — надо файл загрузчика расположить по стандартному "пути по-умолчанию", где UEFI его найдет, и вместо загрузочного меню UEFI пользоваться меню загрузчика, которое гораздо проще и безопаснее настраивается

Читать дальше →
Total votes 52: ↑46 and ↓6+40
Comments99

Удаленная переустановка Linux по ssh без доступа к консоли

Reading time8 min
Views60K
Понадобилось мне переустановить сервер, который как бы хостился у знакомых знакомых. Там был сильно устаревший Debian, а, самое главное, система стояла на обычных разделах без lvm и пространство было распределено очень не оптимально. Физический доступ получить к нему было практически нереально, местного админа попросить что-то сделать было можно, но занять это могло неделю. Виртуальный KVM у сервера был, но извне на него попасть было нельзя; у как бы хостера не было лишних IP-адресов, а внутрь его сети попасть было невозможно. Надо было переустановить сервер из-под работающей системы по ssh. Ага, давайте поменяем ротор у турбины не выключая, потом её перезапустим и будет она с новым ротором работать!
Читать дальше →
Total votes 111: ↑110 and ↓1+109
Comments70

Простой вариант системы видеонаблюдения в помещении с использованием датчика движения и Python на платформе Raspberry

Reading time3 min
Views27K
Доброго времени суток, хабровчане! После нескольких экспериментов с разработкой системы видеонаблюдения, которые я отразил в предыдущей публикации, решил поделиться итоговым решением.


Читать дальше →
Total votes 36: ↑35 and ↓1+34
Comments31

Ищем и скачиваем непопулярные и старые файлы в интернете

Reading time14 min
Views203K
Преимущественно медиафайлы. На полном серьезе, без шуток.

Введение

Бывает, случается так, что вы хотите скачать альбом 2007 года исполнителя, который кроме вас известен 3.5 людям, какой-нибудь испанский ска-панк или малопопулярный спидкор европейского происхождения. Находите BitTorrent-раздачу, ставите на закачку, быстро скачиваете 14.7%, и… все. Проходит день, неделя, месяц, а процент скачанного не увеличивается. Вы ищете этот альбом в поисковике, натыкаетесь на форумы, показывающие ссылки только после регистрации и 5 написанных сообщений, регистрируетесь, флудите в мертвых темах, вам открываются ссылки на файлообменники вроде rapidshare и megaupload, которые уже сто лет как умерли.

Попытка скачать хотя бы один файл
Увы, частая ситуация в попытке хоть что-то скачать

Такое случается. В последнее время, к сожалению, случается чаще: правообладатели и правоохранительные органы всерьез взялись за файлообмен; в прошлом году закрылись или были закрыты KickassTorrents, BlackCat Games, what.cd, btdigg, torrentz.eu, EX.ua, fs.to, torrents.net.ua, и еще куча других сайтов. И если поиск свежих рипов фильмов, сериалов, музыки, мультиков все еще не представляет большой проблемы, несмотря на многократно участившееся удаления со стороны правообладателей контента из поисковых систем, торрент-трекеров и файлообменников, то поиск и скачивание оригинала (DVD или Blu-Ray) фильмов и сериалов или просто ТВ-рипов 7-летней давности на не-английском и не-русском языке — не такая уж простая задача.
Читать дальше →
Total votes 215: ↑213 and ↓2+211
Comments74

Программирование&Музыка: понимаем и пишем VSTi синтезатор на C# WPF. Часть 1

Reading time26 min
Views50K

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


Я планирую несколько статей, в которых будет пошагово рассказано, как написать свой VST плагин/инструмент: программирование осциллятора, частотного фильтра, различных эффектов и модуляции параметров. Упор будет сделан на практику, объяснение программисту простым языком, как же все это работает. Теорию (суровые выводы и доказательства) обойдем стороной (естественно, будут ссылки на статьи и книги).


Обычно плагины пишутся на C++ (кроссплатформенность, возможность эффективно реализовать алгоритмы), но я решил выбрать более подходящий для меня язык — C#; сфокусироваться на изучении самого синтезатора, алгоритмов, а не технических деталей программирования. Для создания красивого интерфейса я использовал WPF. Возможность использования архитектуры .NET дала возможность библиотека-обертка VST. NET.


Ниже представлен обзорный ролик моего простого синтезатора, полученных интересных звучаний.



Предстоит нелегкий путь, если вы готовы — добро пожаловать под кат.


Total votes 55: ↑54 and ↓1+53
Comments20

Серия интерфейсных (не)обновлений — «Хабрахабр joins darkside»

Reading time3 min
Views14K
Сегодня я представляю свою продуктовую фантазию интерфейсного обновления “Хабрахабра”. Я решил “вывернуть наизнанку” Хабр и предложить программистам, которых тут большинство, оставаться в своей рабочей цветовой гамме. Отныне читайте Ваш любимый ресурс, концептуально перешедший на тёмную сторону. Подробнее, как я до этого докатился, Вы сможете прочитать под катом.


Читать дальше →
Total votes 70: ↑67 and ↓3+64
Comments71

Как бесплатно обновить Windows 7 и 8.1 до Windows 10 после 29.07.2016

Reading time4 min
Views890K
Как известно, в Microsoft изначально заявляли, что Windows 10, вышедшая 29.07.2015, будет бесплатным обновлением для розничных и OEM инсталляций Windows 7 и Windows 8.1 в течении одного года – до 29.07.2016. А после 29.07.2016 обновление через Windows Update предлагаться не будет, и его придётся покупать. Windows Update на Windows 7 и Windows 8.1 регулярно предлагал выполнить обновление до Windows 10.


В действительности, с 19.07.2016 на всех активированных системах с установленными розничными изданиями Windows 7/8.1 на которые пользователи регулярно устанавливали рекомендованные обновления Microsoft, включился счётчик с обратным отсчётом оставшегося для бесплатного обновления времени. Безусловно, это подстегнуло многих, отложивших обновление на последние дни. И, как и обещали, с 29.07.2016 предложения бесплатно обновить ОС через Windows Update исчезли. Неужели те, кто не успели обновить остались без возможности получить новую ОС бесплатно? К счастью, нет! Возможность бесплатного обновления ОС осталась. Давайте разберемся, как теперь можно обновить свои Windows 7 и Windows 8.1 до Windows 10.
Читать дальше →
Total votes 48: ↑40 and ↓8+32
Comments199

Перевод статьи «Pimp my Pimpl», часть 2

Reading time10 min
Views6.5K
В первой части статьи, переведенной уважаемым skb7, было рассмотрено идиому Pimpl (pointer to implementation, указатель на реализацию), ее назначение и преимущества. Во второй части будет рассмотрено проблемы, возникающие при использовании этой идиомы, а также предложены некоторые варианты их решения.
Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments28

Mini-Desktop своими руками. 3.0

Reading time4 min
Views52K
image

Прошло чуть больше года с момента публикации моей второй статьи о дизайне корпуса персонального компьютера в форм-факторе UCFF PC. За это время мне удалось запустить первую партию в производство и начать онлайн продажи не только корпусов, но и конфигураций на его основе. Особенно радостно, что проект по большей части состоялся благодаря поддержке и интересу со стороны читателей Хабрахабр сообщества.
Читать дальше →
Total votes 52: ↑51 and ↓1+50
Comments145

Изучаем Bootmgr. Часть 1 — инструментарий и основные принципы отладки начальных этапов загрузки ОС Windows

Reading time12 min
Views49K

Введение


Возможно некоторые читатели помнят мою самую первую статью на ресурсе, посвященную загрузке Windows с VHD-образа. Возможно я бы и не вернулся к этой теме, если бы не нашлись люди, попытавшиеся повторить данную технологию на своих домашних машинах. Естественно, с реализацией этого решения возникли проблемы, касающиеся в основном тех ошибок, которые выплевывает bootmgr в тех случаях, когда ему что либо не нравится. Попытки интерпретации ошибок загрузки вроде 0xc03a0003 путем гугления к особо ценным результатам не приводят, а документация Microsoft на этот счет хранит многозначительное молчание. Возникла идея изучить процесс обработки VHD-образов, получив информацию из первых рук, то есть от самого загрузчика.


Если обратится к уже имеющейся в сети информации, то существует замечательный блог "Записки эникейщика о Windows" на страницах которого (раз, два и три) размещены, на мой взгляд, самые ценные сведения, по вопросам устройства bootmgr. Автор подробно рассмотрел процесс загрузки, включая исследования кода MBR и PBR, остановившись на структуре bootmbr, кратко описав происходящие при его работе процессы.


Мы же пойдем дальше — опишем инструментарий, который можно использовать для изучения устройства загрузчика и попытаемся разобраться с некоторыми, интересующими нас алгоритмами. Если такое предложение показалось кому-то интересным, милости прошу под кат

Читать дальше →
Total votes 44: ↑39 and ↓5+34
Comments10

Настройка UEFI Dual Boot системы, приправленной rEFInd

Reading time12 min
Views228K

КДПВ. Бут-менеджер rEFInd с темой оформления Regular.

На сегодняшний день практически все уже слышали про технологию UEFI. Говорить о том, что это такое и зачем оно нужно, я не собираюсь. Сегодня я бы хотел описать простейший сценарий установки Dual Boot системы с полной поддержкой UEFI, а также рассмотреть отдельно установку и настройку бут-менеджера rEFInd. Возможно вы уже видели подобные мануалы и гайды, но я постараюсь донести весьма доходчиво суть того, что мы будем делать и зачем. В других мануалах вы лишь смотрите за «магией» картежника и пытаетесь её повторить, делая, зачастую, элементарные ошибки. Кому эта тема интересна — прошу под кат.
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments64

Что нового в Vim 8

Reading time2 min
Views23K
В репозитории Vim на Github появился первый черновик документации для версии Vim 8.0. В нём указано, что исправлено большое количество багов и добавлено несколько новых фич.

Асинхронный ввод/вывод, каналы


Vim теперь умеет обмениваться сообщениями с другим процессом в фоне (например, с сервером Python). Сообщения принимаются и обрабатываются, когда Vim ожидает ввода символа.

С каналами связана широкая поддержка JSON, его легко использовать для коммуникации между процессами, что позволяет написать сервер на любом языке. Используются функции |json_encode()| и |json_decode()|.
Читать дальше →
Total votes 21: ↑17 and ↓4+13
Comments26

Что там в Git 2.8? Push, grep, rebase, config и прочие штуки

Reading time3 min
Views26K

Вышел новый Git 2.8.0! В течение пары последних недель, когда релиз был в стадии кандидата, я прошёлся по списку коммитов и заметок к нему, пробуя новые вещи и отмечая интересные моменты. Чтобы сохранить ваше время, предлагаю субъективную выборку фич, которые стоит попробовать. Пользуйтесь!


Краткий вариант push -d, синоним push --delete


Это отличное дополнение как для полноты множества опций, так и для скорости набора команд. Возможно, вы уже используете git branch -d, чтобы удалять локальную ветку, а теперь можно так же сократить команду удаления remote-ветки до git push -d.


git branch -d my-branch       # удаляет локальную ветку, если она уже слита
git push -d origin my-branch  # удаляет remote-ветку в origin-репозитории
Что ещё?
Total votes 37: ↑36 and ↓1+35
Comments9

Какие фильмы запомнились нам своей музыкой

Reading time5 min
Views32K


Фото Simon Bonaventure CC BY-SA

Музыка должна делать фильм запоминающимся, придавать ему пикантности, душевности, то есть выделять в фильме самые главные моменты, впечатления от которых остаются с вами надолго.
Читать дальше →
Total votes 29: ↑22 and ↓7+15
Comments144

PINE64 — довольно мощный мини-ПК всего за $15

Reading time1 min
Views28K


Если бы несколько лет назад кто-то сказал, что за $35 можно получить функциональный персональный компьютер, над ним бы просто посмеялись бы. Тем не менее, уже сейчас мини-ПК продаются по цене в $5 или $9 — вспомним Raspberry Pi Zero and CHIP. Правда, эти системы никак нельзя назвать мощными.

Нельзя назвать мощным и новый миниатюрный ПК PINE64. Но его характеристики существенно лучше, чем у аналогов, которые продаются дешевле $20. Разработчики PINE64 оснастили свой девайс четырехъядерным процессором Allwinner 1.2 GHz 64-bit ARM Cortex-A53, 1 ГБ ОЗУ и прочими плюшками. Все это предлагается по цене в $15 за младшую модель или $19 за старшую. Вскоре кампанию по сбору средств на этот миниатюрный компьютер планируется запустить на Kickstarter.
Читать дальше →
Total votes 8: ↑7 and ↓1+6
Comments51

Советы о том, как писать на С в 2016 году

Reading time20 min
Views90K

Если бы язык С был оружием

От автора: Наброски для этой статьи появились еще в начале 2015 года, правда, до публикации материалов дело так и не дошло. Наконец, решив, что в ящике моего письменного стола от вышеупомянутого «черновика» не будет никакой пользы, представляю его вашему вниманию в исходном виде. Единственное, что изменилось в тексте – год, с 2015 на 2016.

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

Итак, статья ...


Первое правило программирования на С – не используйте его, если можно обойтись другими инструментами.

Когда найти альтернативный метод не удается, самое время вспомнить о современных заповедях программиста.
Читать дальше →
Total votes 92: ↑84 and ↓8+76
Comments80

Проброс USB в виртуалку по сети средствами UsbRedir и QEMU

Reading time6 min
Views47K


На сегодняшний день существет довольно много способов пробросить USB-устройство на другой компьютер или виртуалку по сети.
Из наиболее популярных — железячные такие как AnywhereUSB и чисто програмные продукты, из тех что я попробовал сам: USB Redirector и USB/IP.
Я бы хотел рассказать вам еще об одном интересном способе, который работает непосредственно с эмулятором QEMU.
Он так же является частью проекта spice, официально поддерживаемым RedHat.

UsbRedir, это открытый протокол для проброса usb-устройств по tcp на удаленный виртуальный сервер, разработанный при поддержке RedHat в рамках проекта spice. Но как оказалось им можно вполне успешно пользоваться и без spice. В роли сервера выступает usbredirserver, который шарит usb-устройство на определенный порт, а в качестве клиента сам QEMU, который эмулирует подключение экспортированного usb-устройства в определенный usb-контроллер вашей виртуальной машины. Благодаря такому подходу в качестве гостевой системы может использоваться абсолютно любая ОС, так как она даже не знает, что устройство является проброшенным удаленно, а вся логика ложится на QEMU.
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments22

Пишем свой упрощенный OpenGL на Rust — часть 3 (растеризатор)

Reading time13 min
Views14K
Продолжаю свой цикл статей про упрощенный аналог OpenGL на Rust, в котором уже вышло 2 статьи:
  1. Пишем свой упрощенный OpenGL на Rust — часть 1 (рисуем линию)
  2. Пишем свой упрощенный OpenGL на Rust — часть 2 (проволочный рендер)

Напоминаю, что основой моего цикла статей является «Краткий курс компьютерной графики» от haqreu. В предыдущих статьях я шел не очень быстро. Фактически на одну статью курса у меня получилось 2 статьи. Это связанно с тем, что в своих статьях я сосредоточиваюсь главным образом на нюансах работы с Rust, а когда только изучаешь новый язык, сталкиваешься с большим количеством новых для тебя нюансов, нежели чем когда программируешь на нем уже некоторое время. Думаю дальше Rust будет подбрасывать меньше граблей, и я выровняю соотношение своих статей к статьям оригинального курса.

Пока же традиционно предостерегаю, что поскольку я не являюсь профессионалом ни в Rust ни в 3D-графике, а изучаю эти вещи прямо по ходу написания статьи, то в ней может быть немало глупостей. Если замечаете такое, пишите комментарий — я поправлю ошибку. Ну и конечно в статье будет немало личных впечатлений, с которыми вы можете оказаться несогласными. Конструктивная критика приветствуется.


То, что мы получим по итогам данной статьи
Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments18
1

Information

Rating
Does not participate
Registered
Activity