Загрузка системы, восстановление при загрузке: BIOS & UEFI, GRUB, initrd/initramfs, systemd/sysvinit/upstart, runlevel/target

  • Трек на suno по загрузке Linux 🙂
  • (ubuntu/debian, OS loading) В ubuntu есть lifepatching, который позволяет обновить ядро и systemd без перезагрузки как системы, так и сервисов!
  • BIOS – Basic Input/Output System
  • UEFI – Unified Extensible Firmware Interface
  • Общий процесс загрузки Linux, подробнее отдельно ниже

Аналитики компании Binarly обнаружили 23 критические уязвимости в UEFI от InsydeH2O, которая используется многими крупными вендорами, включая HP, Lenovo, Fujitsu, Microsoft, Intel, Dell, Bull (Atos) и Siemens.


Читать дальше

Установка и использование Dante в качестве сервера Socks5 на Ubuntu 16

Множество вариантов проще описанного ниже – деплой своего прокси/VPN сервера это вариант не для простых пользователей.

В свете огромной вероятности блокировки telegram в ближайшее время возник вопрос в установке и использовании Dante в качестве сервера Socks5 на Ubuntu 16.

Большая часть инфы нагло взята из офф.

Читать дальше

Основы тестирования (Quality Assurance)

Tests can make good code great!
  • Статья о IXIA
  • Бажат все, даже такие ведущие вендоры как Cisco (особенно Firepower :D). Важно насколько сырой продукт в текущем состоянии и как быстро исправляют проблемы.
из чатика:
на 65 залипает или вообще не работает вплс, на а1к перестают анонситься маршруты, нцс просто тупо сырые.


Читать дальше

Linux Certifications

Тут описаны основные, сохраню только список:

  • Linux Foundation LFCS
  • CompTIA Linux+
  • RHEL
    • RHCSA
    • RHCE
  • Linux Professional Institute – я для себя выбрал эти, хотя и многие говорят, что они менее практичны в сравнении с Red Hat и Linux Foundation
    • LPIC-1
    • LPIC-2
    • LPIC-3
  • SUSE
    • SCA
    • SCE
  • Oracle Linux

 

Читать дальше

PHP: полезные функции

http://www.w3schools.com/  – очень хороший сайт по WEB-программированию. Охватывает огромное количество языков и технологий – HTML, CSS, JS, SQL, PHP, JSON, AJAX, etc

REGEXP
preg_grep – для поиска в array по regexp
preg_match – для поиска в string по regexp
$matches = preg_grep (“/Комментарий/”, $comments) – Поиск по regexp в array и вывод value.


Читать дальше

ApacheBench

В состав apache входит benchmark – называется ab (apachebench). Им можно тестировать не только сайт на apache, но и любой другой web-ресурс.

Опциями можно указать общее количество запросов (1000) и сколько будет запрашиваться одновременно (50):

ab -c 50 -n 1000 http://weril.me/

Читать дальше

Ruby: вызов внешних команд

Дока

Правило: в общем случае лучше не использовать вызов внешних команд, а попробовать положиться на standart libraries/gem/modules native ruby.

Недостаток в подходе вызова внешних команд очевиден – мы полагаемся на внешние пути, переменные в ОС и скрипты, будь то системные или написанные на других языках, а ошибки из-за этих проблем зачастую сложно обнаружить.

Читать дальше

Ruby: работа с ФС (файлами и папками)

ФАЙЛЫ

дока

Прежде всего нужно обозначить, что закрытие файла крайне необходимый процесс:
1) открытый файл может быть заблокирован файловой системой для других скриптов
2) при открытии создается file descriptor, их количество ограничено файловой системой, хотя и обычно значение ограничения довольно большое
3) могут произойти race conditions, когда несколько процессов пытаются прочитать/записать один и тот же ресурс (в данном случае файл) в один момент времени

Чтение и вывод

# вывод контента (первой строки)
File.open("test.txt")


Читать дальше

Oracle DB: разное

Установка сервера на Windows

Oracle Database 11g Express Edition – с сервером идет сразу WEB интерфейс встроенный для управления БД. Качнуть можно бесплатно с сайта Oracle.

Файлы/папки

C:\oraclexe\app\oracle\product\11.2.0\server – основная папка сервера

C:\oraclexe\app\oracle\product\11.2.0\server\bin – тут утилиты oracle, например:

  • sqlplus.exe – Sql plus CLI, по умолчанию через ярлык запускается с опцией /nolog (sqlplus.exe


Читать дальше

Ruby: работа с датой и временем

TIME

Класс Time

Получить hours:minutes (h:m) из Time.now можно по разному

1) лучший и самый универсальный способ через strftime

h_m = Time.now.strftime("%H:%M") # можно выцепить все что угодно, не только h:m, формат %d/%m/%Y %H:%M

2) хуже

h_m = "#{Time.now.hour}:#{Time.now.min}"

3) плохой

time_and_date = "#{Time.now}".split("


Читать дальше