Քանի որ դուք գիտեք, CentOS 5 ËoL է (End-of-Life) մարտի 31-ից 2017. Որը հանգեցնում է հետեւյալ շատ հետաքրքիր խնդիր:

# 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.
 Eg. Invalid release/
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
 Eg. Invalid release/
removing mirrorlist with no valid mirrors: /var/cache/yum/extras/mirrorlist.txt
Error: Cannot find a valid baseurl for repo: extras

 

Խնդիրն այն է, որ կարճ ցուցակները Centos հայելիներ 5 Արդեն նախագիծն ու փորձել անմիջականորեն ստանալ բովանդակության ձեռք բերել հրաժարվելուց հետո:

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

 

Ընդհանուր առմամբ, ընդհանուր առմամբ այդ ամենից խելամիտ գաղափար է reinstall թիթեղներն հետ նորմալ բաշխման, որ աջակցում է աշխատանքային բաշխիչ բարելավում. Ցավոք, իմը չէ, որ այդպես է, եւ դա չի դիմանում որպես տարբերակ սեղանի վրա. Այնպես որ, մենք պետք է խաղալ մի քիչ gypsy սխեմա – սկսում են օգտագործել կամար հայելի. Ներկայումս ամբողջությամբ պարզ էակ է եւ մեղսունակությունը գիտեմ,, Ես չեմ ստանա որեւէ թարմացումներ, որ դա ոչ թե նպատակը զորավարժություններին, եւ պարզապես ուզում ենք ունենալ աշխատում է Յամ է տեղադրել փաթեթը, որ ես պետք է. Այդ նպատակով մեկնաբանել են բոլոր mirrorlist փոփոխականները եւ ավելացնել baseurl է /etc/yum.repos.d/CentOS-Base.repo. Վերջապես մենք ստանում Յամ ռեպո տեսակից


[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

Վերջապես խաղալ Յամ մաքուր && ՅԱՄ թարմացման. Ако всичко завърши без да получим грешка значи сме завършили успешно схемата и можем спокойно да си инсталираме остарелите пакети.

 

Mozilla Thunderbird

Գաղափարն այն նույնական է թե իմ դիրքորոշման Firefox տվյալների բազաների վակուումում եւ reindex. Արդեն որոշ ժամանակ նախագիծն rebradinranite Debian տարբերակները Mozilla ի արտադրանքի. Upon միգրացիայի Icedowe մինչեւ Thunderbird մտածեցի,, Ես չեմ defragment ձեր տվյալների բազայում, եւ մինչ օրս փոստով հաճախորդի Ես անցել է լուրջ քանակությամբ տառերով, էլփոստով հաշիվներ եւ սերվերներ, Users եւ Գաղտնաբառերը. The script նույնական է, որ իմ նախորդ գրառման հետ միայն փոքր ձեւափոխման համար, որտեղ պետք է նայենք համար ֆայլերի 🙂

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.

Ինչպես է google-ը սկսել է սիրել https կայքեր, ավելին, զանգվածային տեղադրում SSL-եւ որտեղ կարող. Որպես կանոն, բացի այդ, ավելի ահաբեկելը սերվերների համար մենք ունենք եւ դեգրադացիայի արագությամբ. Լավ, որ HTTP2 ստանդարտ արդեն ավելի քան մեկուկես ինտեգրման բոլոր հիմնական http սերվերները և բրաուզերների, եւ դրա բովանդակությունը բավականին կայուն. Ցավոք, debian stable չի փաթեթներ, որոնք աջակցում են HTTP2 հիմնական http սերվերների. Տարբերակները, որոնք մեզ անհրաժեշտ են աշխատելու համար HTTP2 հետևյալ կերպ:

  • Apache > 2.4.17
  • Nginx > 1.9.5
  • մնացած անձամբ ինձ չի հարուցել (lighttpd կա, հնարավոր է, նախատեսվում է…..)

Ես мешаницата մեծ է եւ կախված է օգտվել apache կամ nginx. Ես դեռ չեմ խաղացել, որ մղել apache debian http2 8 քանի որ ես խաղացել, բայց backports репото նրա կան, որ ոչ մի մեծ խնդիր. Համար nginx դա արդեն մենք մի քանի անգամ խաղացել. Որպես կանոն, քայլերն ու մի քանի համեմատաբար պարզ:

  1. Ավելացնել nginx պաշտոնական ռեպո – "debian տարբերակը - 1.6.x 🙄
  2. Տեղադրել այն openssl են backports այս պահին 1.0.2 k – դա մեզ պետք է ALPN աջակցություն, որպեսզի կարողանա աշխատել և արագ
  3. տեղադրել այն devscripts – այստեղ ժամանակն է կիսել, որ билднем մեր փաթեթը, քանի որ պաշտոնյան եղել է скомпилирован հետ openssl 1.0.1 t որտեղ չի աշխատում ALPN եւ բրաուզերների չի արձագանքում և աշխատում է http2-ապա միայն այն դեպքում, եթե նրա форсираш
  4. инкрементираме տարբերակը, որ սպասում է անել циганията փաթեթների իսկ այնտեղ նոր տարբերակը, միայն синкенм сорсовете

Եկեք սկսենք քայլ առ քայլ

Ավելացնել nginx ретроград

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

Ավելացնել openssl 1.0.2 k և dev գրադարանի, հակառակ դեպքում կլինի այն билднем դեռ 1.0.1 t որ մեզ նպատակն է


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

 

Այժմ մնացել է ավելացնել գրադարանի համար անհրաժեշտ կազմելու nginx


apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

Եթե դուք աշխատում ճիշտ, դուք պետք է ունենալ կառույցի տեսակ


~/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 изпълнявате команда с която инкрементирате версията, ես անձամբ նախընտրում եմ ավելացնել, որ 1 ներկա բիլդ

debchange --newversion 1.10.3-1

Այն բանից հետո, երբ նրա ավելացնել changelog-իսկ ընտրություն, կարելի է անցնել իրական կազմելու

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

Մի քիչ բացատրությունը կազմաձեւման թիմ:

-ամն -uc ասում են script չի “ստորագրում” .dsc եւ .changes ֆայլեր. -i ու -I ստիպում են script, որ անտեսել ֆայլերը վերահսկողության համար տարբերակ. -B միայն առաջացնում երկուական փաթեթ. -j իսկ make է, քանի զուգահեռ հավաքագրման գործընթացի 🙂

 

Այն բանից հետո, երբ ավարտված է նախորդ գործընթացը պետք է իրեն տեղադրել մեր նոր փաթեթներ. Եթե դուք արդեն տեղադրվել են nginx-դա լավ է, դուք պետք է հեռացնել այն

apt remove nginx nginx-*

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

dpkg -i ../*.deb

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

Раздялата не е във думите,
раздялата е в премълчаното,
в страха, че нещо ще изгубиш,
в страха, че вече нищо нямаш.
Раздялата не е във времето,
в което тръгваш ти сама,
в което сбогом ти си вземаш,
раздялата е след това

Խորամանկ հնարք է բարձրացնել աշխատանքի արագության firefox բրաուզերի ձեզ, թե ինչպես вакумирате sqlite տվյալների բազայի. VACUUM գործընթացը преизгражда տվյալների բազայում, այդպիսով, նրա дефрагментира, նվազել է չափը, եւ ստիպում է դրա պահանջարկը ավելի արագ, սկավառակի օգտագործումը ավելի արդյունավետ է, հնարավոր է, նվազել է և բեռը սկավառակի ձեզ, քանի որ կարդալ հաջորդականությամբ սահմաններում ինձ. Ընդհանուր առմամբ, սա ճիշտ է ցանկացած բազա, որը չի կատարում ավտոմատ vacuum/defrag իրեն.

Գործընթացը defrag տվյալների բազայի Firefox բավականին չնչին է – կատարում ենք sqlite3 db-file VACUUM "профилната կատալոգը firefox. Linux ճանապարհը դրան, սովորաբար դա ~/.mozilla/firefox/random-name.default. Սկզբունքորեն, դուք պետք է միայն 1 диркетория .mozilla/firefox, եթե դուք ունեք ավելի մեծ է, դուք կարող եք ստուգել,~/.mozilla/firefox/profiles.ini համար կոռեկտ կատալոգ պրոֆիլում ձեր զննարկիչը. Քանի որ ես չեմ զբաղվում է կատարել գործընթացը ձեռքով разписах տարրական սցենար որը дефрагментирам տվյալների բազայի:

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

След изпълняване на скрипта търсенето в history-то и самото зареждане на лисика е чувствително по бързо. Скрипта предполагам че с малки модификации може да се ползва и в Mac OS.

p.s Ето варианта и за Mac OS Xтестван на Mac OS X Sierra. Налага се да форсираме делимитъра да е нов ред заради space в пътя до папката в която се съдържа профила на firefox

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