gladilov.org.ru 

Позднее Ctrl + ↑

Новая виртуальная ОСь — 28.02.2018

 ArchLabs 2018.02

Дистрибутив Linux’а от дистроделов из  Новой Зеландии —  ArchLabs Linux 2018.02, основанный на минимальной сборке  Arch Linux с оконным менеджером Openbox.

В начале 2000-х годов Филипп ’corenominal’ Ньюборо поставил цель создать простой но мощный Linux-дистрибутив, жрущий мало ресурсов и подходящий для работы на слабых компьютерах. Он создал  CrunchBang Linux, достаточно легковесный, использующий оконный менеджер  Openbox. После завершения разработки и поддержки проекта в начале 2015 года ряд пользователей Crunchbang довольно быстро «запилили» несколько проектов, среди которых были, например —  BunsenLabs Linux и #!++ CrunchbangPlusPlus. Ещё одна группа неустановленных лиц (последовалелей Crunchbang — разработчиков) вместо использования продолжительного цикла  Debian взяли за основу менее тухлые более современные пакеты Arch Linux. Так появился ArchLabs — сборка для тех, кто не осилил Арч пример, как можно настроить минимальное ДЕ из г0вна и палок. В начале команда ArchLabs подражала внешнему виду BunsenLabs, но затем дистрибутив сумел развить своё собственные оформление и стиль.

 ArchLabs

Упругость




Слизал с сайта блога Ильи Бирмана прикольный эффект и выложил у себя на мини-сайте. Вот код HTML-страницы:

Показать

<!DOCTYPE html>
<html>
  <head>
    <title>Soul</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
    <meta charset="utf-8"/>
    <style type="text/css">
        html,body{height:100%;padding:0;margin:0}
        #lh{display:table;height:100%;overflow:hidden;width:100%}
        #lh2{display:table-cell;vertical-align:middle;width:100%}
        #lh3{height:150px;width:150px;margin:auto;position:relative}
        #lg{display:block;margin:auto;top:0;left:0}
        #lg2{position:absolute}
        .animated {-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-fill-mode: both;animation-fill-mode: both;-webkit-animation-timing-function: ease-in;animation-timing-function: ease-in;}
        @-webkit-keyframes bounceIn {
            0% {opacity: 0;-webkit-transform: scale(.3);}
            50% {opacity: 1;-webkit-transform: scale(1.05);}
            70% {-webkit-transform: scale(.9);}
            100% {-webkit-transform: scale(1);}}
        @keyframes bounceIn {
            0% {opacity: 0;transform: scale(.3);}
            50% {opacity: 1;transform: scale(1.05);}
            70% {transform: scale(.9);}
            100% {transform: scale(1);}}
        .bounceIn {-webkit-animation-name: bounceIn;animation-name: bounceIn;}
    </style>
  </head>
  <body>
  <table><tbody><tr><td>
    <div id="lh" class="animated bounceIn"><div id="lh2"><div id="lh3">
      <img src="/img/special/soul.png" id="lg2" width="150" height="150" style="box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15); -moz-border-radius: 75px; -webkit-border-radius: 75px; -o-border-radius: 75px; border-radius: 75px; vertical-align: bottom;" />
    </div></div></div>
  </td></tr></tbody></table>
  </body>
</html>

Запись и воспроизведение команд в консоли

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

Однако существует интересный способ, как делать «видеозапись команд» в консоли без лишних телодвижений (я не говорю обо всяких доставляемых ttyrec, termrec & ipbt). Выполните в терминале, к примеру, следующие команды:

Показать

script -t 2> timing -a ttyoutput
pwd
cd /
pwd
cd -
pwd
exit

После команды exit запись с терминала прервётся и с помощью команды

scriptreplay timing ttyoutput

можно воспроизвести записанные действия и ответы системы. Для выхода можно использовать комбинацию клавиш Ctrl + D в обычном шеле или набрать exit или logout в csh (если переменная ignoreeof не задана — то Ctrl + D тоже сработает).

Для вывода списка вводимых команд без проигрывания всех действий с установленными временными интервалами достаточно ввести команду

awk '/@/' ttyoutput

А чтобы получить полный список вводимых команд и ответы интерпретатора:

awk '/./' ttyoutput

Можно даже интерактивно передавать вводмые команды, например — с помощью ключа

‒f (‒‒flush)

один пользователь вводит команды в терминал

mkfifo ttyoutput2; script -f ttyoutput2

другой — наблюдает за операциями в реальном времени с помощью

cat ttyoutput2

Сетевой обмен между удалёнными машинами можно организовать с помощью утилиты netcat.

P. S. Команды script и scriptreplay входят в пакет util-linux, поставляемый вместе с операционной системой (по крайней мере в Linux, хотя впервые утилита script появилась в системе 3.0BSD), поэтому они доступны сразу после установки системы.

P. P. S. Альтернативы — уже упоминавшиеся termrec, ipbt, ttyrec/ttyplay — имеет сходный функционал, есть утилита ttycast, осуществляющая широковещательную передачу команд терминального сеанса в реальном времени.
Также существуют такие утилиты:
TermRecord@github — пишет в html и воспроизводит в браузере.

pip install TermRecord
TermRecord -o /path/to/output_html


asciinema.org — свбодная утилита с открытым исходным кодом для записи сеансовых команд и выкладывания их в сеть.

curl -sL https://asciinema.org/install | sh
asciinema rec


showterm.io — похож на asciinema, но оперирует только с текстом.

gem install showterm
showterm
# or if you have not installed showterm, you can run the standalone
bash <(curl record.showterm.io)


monitor — утилита, перехватывающая ввод/вывод терминала и отправляющая на сайт commands.com.

curl commands.io/install-monitor-(ubuntu|macosx|redhat)
monitor -u myusername

Новая виртуальная ОСь — 26.02.2018-2

 CyanogenMod 13.0 RC1

Cвободная операционная система для мобильных устройств —  CyanogenMod 13.0 RC1. Сначала операционку (или прошивку), предназначенную для замены проприетарных предустановленных версий  Android, пилила команда Cyanogen Team, затем разработку коммерциализировали, создав контору Cyanogen Inc., закрывшуюся 31 декабря 2016 года (вероятно — поглощённую конкурентом-гигантом). Но разрабы продолжили развивать проект под новым именем  LineageOS.

 CyanogenMod

Новая виртуальная ОСь — 26.02.2018

 LineageOS 13.0

Основаная на  CyanogenMod ось для смартфонов и планшетов —  LineageOS 13.0 (на базе CyanogenMod 13, основанного на  ведроиде 6.0.1 Marshmallow). LineageOS Android Distribution разрабатывается после форка от CyanogenMod на основе его исходного кода.

 LineageOS

Ситуация...

Только что полез на сайт 4pda.ru, срочно нужно было посмотреть характеристики моего рутера (DIR-300A/C1), хочу узнать, есть ли у него возможность настроить мультиван.
Захожу на первую выданную гугелем страницу, открываю спойлер «Общие инструкции, Полезное, Разное», кликаю в «Характеристики аппаратных ревизий DIR-300» и... вижу страницу своего  сайта про роутеры, который я активно вёл на предыдущей работе, у городского интернет-провайдера.... Оппа, вот это поворот 4PDA — приятно, что сайтик полезен!

P. S. Как ни печально, на моём сайте нет необходимой мне информации, придётся ждать ответа от спецов из D-Link’а, тем более, что у меня установлена древняя прошивка с пометкой в описании «Тестовая версия. Не для распространения. Без поддержки конечных пользователей.»

P. P. S. Ради интереса — поискал упоминание о роутерном сайте в гугле — нашёл только у iXBT, хотя дальше четвёртой страницы гугла не листал. Ну и в СевенДэйз в старой резюмехе моей есть.

Сервер и клиент Debian для тестов


Для тестовых задач создал две виртуалки в  Виртуалбоксе — сервер и клиент. Обе виртуалки ставил с образа диска Debian 9.3.0 Netinst CD с архитектурой amd64). Виртуальная машина ’server’ выступает в роли DHCP-, DNS- и прокси-сервера, а также шлюза для машины ’client’. Выкладываю тут последовательность действий, чтобы потом не забыть и использовать в дальнейшем. Действия рутинные, доступны в любом мануале, но для быстроты воспроизведения собрал их здесь вместе.

Показать

Оглавление

Сервер
Софт
Автовход
Сетевые интерфейсы
Узлы
Запрет IPv6 и форвард
DHCP-сервер
DNS-сервер
Маскарадинг
Сквид

Клиент
Софт
Автовход
Сетевые интерфейсы
Узлы



Сервер. Имеет 2 сетевых интерфейса — enp0s3 (WAN — <DHCP>, сетевой мост во внешнюю сеть) и enp0s8 (LAN — 192.168.17.1/24, внутренняя сеть).

Ставлю нужный софт:

apt-get install aptitude isc-dhcp-server squid3 bind9 dnsutils sudo most fping nmap net-tools mc ccze

Перейти к оглавлению


Делаю автовход в любой консоли, для этого в файле /lib/systemd/system/getty@.service прописываю юзера для автологина

ExecStart=-/sbin/agetty --noclear -a <юзер> %I $TERM

Перейти к оглавлению


Настраиваю сетевые интерфейсы в /etc/network/interfaces

auto lo enp0s3 enp0s8

iface lo inet loopback

iface enp0s3 inet dhcp
up iptables -A INPUT -p icmp -m icmp --icmp-type 3 -j DROP

iface enp0s8 inet static
ipaddr 192.168.17.1
netmask 255.255.255.0
broadcast 192.168.17.255

Перейти к оглавлению


Добавляю узлы в /etc/hosts:

127.0.1.1 server
192.168.17.10 client

Перейти к оглавлению


Запрещаю IPv6 в /etc/sysctl.conf

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1


Разрешаю форвард там же

net.ipv4.ip_forward = 1

Перейти к оглавлению


Настраиваю DHCP-сервер: в файле /etc/default/isc-dhcp-server указываю

DHCPDv4_CONF=/etc/dhcp/dhcpd.conf
DHCPDv4_PID=/var/run/dhcpd.pid
INTERFACESv4="enp9s8"

В файле /etc/dhcp/dhcpd.conf

option domain-name "<домен>";
option domain-name-servers 192.168.17.1, 4.2.2.2;
subnet 192.168.17.0 netmask 255.255.255.0 {
  range 192.168.17.10 192.168.17.50;
  option routers 192.168.17.1;
}

и перезагружаю сервис

systemctl restart isc-dhcp-server.service

Перейти к оглавлению


Настройка DNS-сервера — в работе
Перейти к оглавлению


Настраиваю маскарадинг:

iptables -A FORWARD -i enp0s8 -o enp0s3 -j ACCEPT
iptables -t nat -A POSTROUTING -o enp0s3 -s 192.168.17.0/24 -j MASQUERADE
iptables -A FORWARD -i enp0s3 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i enp0s3 -o enp0s8 -j REJECT

Перейти к оглавлению


Делаю бэкап /etc/squid/squid.conf в /etc/squid/backup-squid.conf, затем прописываю настройки сквида:

acl SSL_ports port 443
acl Safe_ports port 80
acl Safe_ports port 443
acl CONNECT method CONNECT
acl MyNet src 192.168.17.0/24
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow localhost
http_access allow MyNet
http_access deny all
http_port 192.168.17.1:3128 transparent
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
cache_mem 512 MB
maximum_object_size_in_memory 512 KB
cache_dir ufs /var/squid_cache 1024 16 256
maximum_object_size 2 MB
https_port 192.168.17.1:3128 transparent ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/root/keys/squid.pem key=/root/keys/squid.key
sslproxy_flags DONT_VERIFY_PEER
sslproxy_cert_error allow all
always_direct allow all

coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320

создаю директорию для кэша сквида и дэ-начу весь траф с внутренней сети на прокси:

mkdir -p /var/squid_cache
chmod o+w /var/squid_cache
iptables -t nat -A PREROUTING -i enp0s8 ! -d 192.168.17.0/24 -p tcp -m multiport --dport 80,443 -j DNAT --to 192.168.17.1:3128

Перейти к оглавлению


Клиент. Имеет 1 сетевую — enp0s3 (LAN — <DHCP>, внутренняя сеть).

Ставлю софт:

apt-get install aptitude dnsutils sudo most fping nmap net-tools mc ccze

Перейти к оглавлению


Делаю автовход в любой консоли (по аналогии с сервером), для этого прописываю автологинящегося пользователя в файле /lib/systemd/system/getty@.service:

ExecStart=-/sbin/agetty --noclear -a <юзер> %I $TERM

Перейти к оглавлению


Настраиваю сетевой интерфейс в /etc/network/interfaces

auto lo enp0s3 enp0s3

iface enp0s3 inet dhcp
up iptables -A INPUT -p icmp -m icmp --icmp-type 3 -j DROP

Перейти к оглавлению


Добавляю узлы в /etc/hosts:

127.0.1.1 client
192.168.17.1 server

Перейти к оглавлению


Человек, спасший Крым одной правой

Год назад, 20 феврала 2017 года, ушёл из жизни Виталий Иванович Чуркин, долгое время занимавший пост постпреда России при ООН и Совете Безопасности ООН. Мне, как крымчанину, он запомнился человеком, от имени России проголосовавший против проекта резолюции о нелегитимности референдума в Крыму.

Виталий Чуркин считается одним из наиболее заметных отечественных дипломатов. Учитывая напряженность, которая сохраняется в последние годы в отношениях многих держав, Чуркин твердо отстаивал интересы российского государства. На своём посту Виталий Иванович блестяще раскрыл свой профессионализм. В непростых условиях последнего времени он продолжал гордо и уверенно защищать интересы своего государства, демонстрируя сдержанность и умение выстраивать диалог. Несмотря на достаточно жесткие выступления, которые приходилось делать Чуркину в связи с различными проблемами мировой политики, и крайне негативную реакцию со стороны международных партнеров, дипломат неизменно старался сохранять со своими оппонентами дружественные отношения.

Виталий Иванович Чуркин скоропостижно скончался 20 февраля 2017 года в Нью-Йорке, в своем кабинете в здании представительства Российской Федерации при ООН на Манхэттене. Причиной смерти дипломата назвали приступ сердечной недостаточности. 22 февраля в постоянном представительстве России при ООН в Нью-Йорке прошло прощание с Чуркиным, после чего гроб с его телом был отправлен в Россию. С воинскими почестями под звуки российского гимна и оружейного салюта он был похоронен на Троекуровском кладбище в Москве.

Четыре полярника и собака

Дрейфующая станция «Северный полюс» («Северный полюс-1», «СП», «СП-1») начала работу 21 мая 1937 года. Пять самолетов полярной воздушной экспедиции Академии наук СССР доставили ученых на льдину. Официальное открытие «СП-1» состоялось 6 июня 1937 года. Над Северным полюсом был поднят флаг СССР.

Сотрудники — гидролог Петр Петрович Ширшов, геофизик-астроном Евгений Константинович Федоров и радист Эрнст Теодорович Кренкель, во главе с Иваном Дмитриевичем Папаниным — жили и работали в палатке, изучая Северный полюс. Размер льдины, на которой располагалась станция, был 3x5 км, толщина 3 м. Каждый месяц в Москву отправлялись отчёты о проделанной научной работе. Каждый день был полон новых открытий. Дрейф льдины давал возможность странствовать в районе Северного полюса. Созданная в районе Северного полюса, станция «СП» через 9 месяцев дрейфа на юг была вынесена в Гренландское море. Льдина проплыла более 2000 км.

Через 274 дня от льдины остался обломок шириной около 30 метров. Экспедицию было решено эвакуировать.

19 февраля 1938 года отважных исследователей сняли с льдины ледокольные пароходы «Таймыр» и «Мурман». В марте полярники представили Общему собранию Академии наук СССР в Ленинграде результаты научных исследований, которые были высоко оценены научным сообществом. Научному составу экспедиции были присвоены учёные степени. Иван Дмитриевич Папанин и Эрнест Теодорович Кренкель получили звания докторов географических наук.

Ранее Ctrl + ↓
Наверх