DN42 unu mirinda projekto kiu donas vin la ŝanco evoluigi iliajn kapablojn sen BGP chupete linio medio, sen la bezono havi multekostaj aparatoj, kiuj povas fari laboratorio por fari la simulado kun GNS3. En la sama tempo ne estas pure laboratorio medio en kiu tie estos problemoj de la reala mondo. Okupita kun 1 nodo en la projekto por pri jaro. Unu el la problemoj en la projekto 1:1 kun la reala mondo – kiam iu vi vokis eskapo sekvencoj kiuj ne havas deklari. Ĉar mi estas maldiligenta kaj mi ne skribas permane ĉiuj la filtriloj denove, реших проблема с елементарен bash скрипт които ми генерира prefix-list с име dn42 и в него наливам валидните префикси.

#!/bin/bash</pre>
vtysh -c 'conf t' -c "no ip prefix-list dn42"; #drop old prefix list

while read pl
do
vtysh -c 'conf t' -c "$pl"; #insert prefix list row by row
done < <(curl -s https://ca.dn42.us/reg/filter.txt | grep -e ^[0-9] | awk '{ print "ip prefix-list dn42 seq " $1 " " $2 " " $3 " ge " $4 " le " $5}' | sed "s_/\([0-9]\+\) ge \1_/\1_g;s_/\([0-9]\+\) le \1_/\1_g");
vtysh -c 'wr' #write new prefix list

Списъка с валидните предикси се взема https://ca.dn42.us/reg/filter.txt от където и основният конвейр + малко модификации от моя страна за да може да се генерира префикс листа. Командите се изпълняват през vtysh.

Por la kvara sinsekva jaro okazos la konferenco sur libera programaro kaj aparataro TuxCon. Persone por mi tio estas la plej forta Plovdiv konferenco okazis, kiel ĝi ne estas direktita nur al programistoj, sed la celgrupo estas tre granda kaj la spektantaro estas tre bunta. Se memoro servas ne kredas, Mi maltrafis ĝis nun Eldono. La ĉi-jara eldono estas speciala por mi, kiam mi prezento. Mi parolos pri dnsdist kaj ĉu ĝi estas utila por via infrastrukturo. La temo de kiuj parolos ŝia elektita sole. Почувствах нужда да я покажа на света, тъй като е относително млада, а до момента почти не съм намерил нещо в нея която да не ми харесва. Не помня кога беше последният път когато ме впечатли толкова много нещо ново и същевременно да работи изключително добре.

Kiel vi scias CentOS 5 EOL estas (Fino-De-Vivo) de marto 31 2017. Kondukanta al la sekva tre interesa problemo:

# yum update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
&nbsp;Eg. Invalid release/
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
&nbsp;Eg. Invalid release/
removing mirrorlist with no valid mirrors: /var/cache/yum/extras/mirrorlist.txt
Error: Cannot find a valid baseurl for repo: extras

 

La problemo estas ke mallongajn listojn de CentOS speguloj 5 Jam piedbatanta en kaj provi rekte akiri enhavo akirita post rifuzo:

# curl 'http://mirrorlist.centos.org/?release=5&arch=i386&repo=os'
Invalid release

 

Ĝenerale entute la plej prudenta ideo reinstali la stano kun normala distribuo kiu subtenas laborante distribueca ĝisdatigo. Bedaŭrinde la mia ne estas la kazo kaj ĝi ne staras kiel eblo en la tablo. Do ni devis ludi iom cigano skemo – komencas uzi volbo spegulo. Nuntempe tute klara estaĵo kaj prudento scias, Mi ne ricevis neniun ĝisdatigoj kiuj ne estas la celo de la ekzerco, kaj nur volas havi labori kun yum por instali pakaĵon ke mi devas. Tiucele komentis ĉiujn mirrorlist variabloj kaj aldonu baseurl en /etc/yum.repos.d/CentOS-Base.repo. Fine ni atingos yum repo de la tipo de

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://vault.centos.org/5.11/os/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://vault.centos.org/5.11/updates/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://vault.centos.org/5.11/extras/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

Fine ludi yum pura ĉiuj && yum ĝisdatigo. Ако всичко завърши без да получим грешка значи сме завършили успешно схемата и можем спокойно да си инсталираме остарелите пакети.

 

Mozilla Thunderbird

Идеята е идентична както в поста ми Firefox datumbazoj VAKUO kaj REINDEX. От известно време Debian разкараха ребрадинраните версии на Mozilla продуктите. При миграцията от Icedowe към Thunderbird се замислих, че не съм си дефрагментирал базата, а досега през email клиента ми са изтекли сериозно количество писма, email акаунти и сървъри, потребители и пароли. Скрипта е идентичен с този от предишният ми пост само с лека модификация за къде да търси файловете 🙂

Linux версията

for db in $(find ~/.thunderbird/$(grep Path ~/.thunderbird/profiles.ini | cut -d'=' -f2) -maxdepth 1 -name "*.sqlite" -type f)
do
echo "VACUUM ${db}"
sqlite3 ${db} VACUUM
sqlite3 ${db} REINDEX
done

Mac os версията

for db in $(find ~/Library/Thunderbird/$(grep Path ~/Library/Thunderbird/profiles.ini | cut -d'=' -f2)  -maxdepth 1  -name "*.sqlite" -type f)
do
echo "VACUUM && REINDEX ${db}"
sqlite3 "${db}" VACUUM;
sqlite3 "${db}" REINDEX;
done

За разлика от профилната папката на Firefox тази на Thunderbird е с доста по правилен път (без space) и не се налага да се прави промяна на delimiter.

Ekde google ekamis https lokoj, pli necesa deplojo de SSL-kaj kie vi. Entute pli ol persekutadas por serviloj kaj havas degradación en rapido. La bona novaĵo estas, ke HTTP2 normo por pli ol jaro kaj duono estas integrita en ĉiuj grandaj http serviloj kaj retumiloj kaj subtenante stabila sufiĉa. Bedaŭrinde debian stabila neniu pakoj subteni HTTP2 en la ĉefa http serviloj. Versioj kiujn ni bezonas labori HTTP2 estas jenaj:

Por mi mishmash estas granda kaj laŭ dependas ĝuas apache aŭ nginx. Mi ankoraŭ ne ludis al ilia kuro de apache http2 de debian 8 ĉar ne havis sed backports repo havas tiel, Ĝi ne estos granda problemo. Por nginx jam ludis plurajn fojojn. Ĝenerale la ŝtupoj estas malmultaj kaj relative simpla:

  1. Aldoni nginx oficiala repo – la debian eldono, bonvolu 1.6.h estas 🙄
  2. Instali vian openssl de backports Nuntempe 1.0.2k – ke ni bezonas ALPN bontenado ordo por ĉiu labori kaj estas barzichko
  3. instali vian devscripts – Nun estas la tempo por dividi kiu bildnem nian pakaĵon pro la oficiala kompilis kun OpenSSL 1.0.1t kiu ne funkcias ALPN kaj retumiloj ne respondis bone kaj laboras http2 nur se ĝi devigis
  4. incremented versio ne metu ciganoj kun pakoj kaj kiel nova versio nur fonto por sinkenm

Komencu paŝo post paŝo

Aldoni nginx repo

deb http://nginx.org/packages/debian/ codename nginx
deb-src http://nginx.org/packages/debian/ codename nginx

Aldoni openssl 1.0.2k kaj dev biblioteko alie ni bildnem denove kun 1.0.1t ne nia celo

echo 'deb http://ftp.debian.org/debian jessie-backports main' | tee /etc/apt/sources.list.d/backports.list

apt update && apt install libssl-dev -t jessie-backports

 

Nun forlasis aldoni bibliotekojn necesa por kompilo de nginx

apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

Se vi laboras ĝuste vi devas havi strukturon kiel

~/nginx-build # ll
total 1004
drwxr-xr-x 10 root root   4096 Feb 21 18:37 nginx-1.10.3
-rw-r--r--  1 root root 103508 Jan 31 17:59 nginx_1.10.3-1~jessie.debian.tar.xz
-rw-r--r--  1 root root   1495 Jan 31 17:59 nginx_1.10.3-1~jessie.dsc
-rw-r--r--  1 root root 911509 Jan 31 17:59 nginx_1.10.3.orig.tar.gz

Влизате в папта в която е разархивиран сорса на nginx в моят случай е и nginx-1.10.3 изпълнявате команда с която инкрементирате версията, Mi persone preferas aldoni 1 konstrui ĉi

debchange --newversion 1.10.3-1

Unufoje vi aldonas changelog-kaj laŭvole procedi al la fakta kompilo

debuild -us -uc -i -I -b -j6

Iom klarigon sur agordo komando:

-ni -uc diru la skripto ne “subskribita” .DSC kaj .changes dosierojn. -i kaj -mi kaŭzi la skripto ignori dosierojn de versitena. -B generi nur binaran pakaĵon. -j kiel en kiel fari paralelan procezon kompili 🙂

 

Post la supre procezo instali nian novan pakoj. Se vi jam instalis nginx estas bona malinstali

apt remove nginx nginx-*

Също не лоша идея е да си направите бекъп на nginx папката в /etc. По принцип при ъпгрейд от 1.6.5 al 1.10.3 нямах драми но никога не се знае. Новите пактеи се намират в папката от по горно ниво и следва да се инсталират с команда от рода на:

dpkg -i ../*.deb

Ако всичко е минало гладко ви остава само да си пуснете nginx процеса и да си се конфигурира http2 което вече не е цел на тази статия.