DN42 е един прекрасен проект който ви дава възможност да развивате вашите BGP умения без да чупите продуктова среда, без да ви се налага да имате скъпи устройства с които да си правите лаборатория да си правите симулации с GNS3. Същевременно да не е чисто лабораторна среда при която няма проблеми от реалният свят. Участвам с 1 node в проекта от около година. Един от проблемите в проекта е 1:1 с реалният святкогато някой ти обяви префикси които не трябва да обявява. Понеже съм мързелив и не ми се пише на ръка филтри все път, реших проблема с елементарен 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.

Mozilla Thunderbird

Идеята е идентична както в поста ми Firefox डेटाबेस वैक्यूम और पुनर्अनुक्रमणिका. От известно време 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.

आपके ब्राउज़र firefox के sqlite डेटा की तरह की गति में सुधार करने के लिए एक चालाक छल आधार vakumirate. वैक्यूम प्रक्रिया rebuilds डेटाबेस इस प्रकार यह डीफ़्रेग्मेंट करें, घटी हुई आकार और यह बनाता है तेजी से खोज, अधिक कुशल डिस्क उपयोग और मेरे क्षेत्रों के अनुक्रम में पढ़ने के रूप में आपकी डिस्क पर संभवतः कम भार. सामान्य में यह स्वचालित वैक्यूम/डीफ़्रैग करने के लिए अपने आप को प्रदर्शन नहीं करता है जो प्रत्येक डेटाबेस के लिए लागू होता है.

फ़ायरफ़ॉक्स के डेटाबेस डीफ़्रेग्मेंट कर रहा है की मात्र प्रक्रिया बहुत छोटी है – हम प्रदर्शन sqlite3 db फ़ाइल वैक्यूम फ़ायरफ़ॉक्स के प्रोफ़ाइल निर्देशिका में. लिनक्स में पथ आम तौर पर ~/.mozilla/firefox/random-name.default है. सामान्य में, आप केवल होना चाहिए 1 dirketoriâ में मोज़िला फ़ायरफ़ॉक्स. यदि आप और अधिक आप जाँच कर सकते हैं ~/.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

में प्रमाणन ipv6.he.net दैनिक परीक्षण है कि अधिक देना है 1 आप सभी प्रमुख परीक्षण अनुभव किया है के बाद अतिरिक्त आइटम. बनाने के लिए आपको 100 इस तरह के लिए अधिकतम परिणाम 😐 परीक्षण . परीक्षण खुद को पूरी तरह से तुच्छ हैं

  • Traceroute
  • AAAA खुदाई
  • PTR खुदाई
  • पिंग
  • Whois

नकारात्मक पक्ष यह है कि परीक्षण अद्वितीय होना चाहिए कि आप एक डोमेन का उपयोग नहीं किया जा सकता है अन्य बातों के अलावा दो बार 🙂 हैं थोड़ा परेशान 🙄 – कोई चुनौती नहीं बस फड़फड़ा 5 cli और कॉपी/पेस्ट अपनी वेबसाइट में परिणाम में आदेश.

रूप में आलसी और व्यवस्थापक जो करने के लिए आसान बनाता है जीवन एक त्वरित सरल मार खरोंच करने के लिए-जो मेरे लिए गंदा काम करता है

#!/bin/bash

hr() {
  local start=$'\e(0' end=$'\e(B' line='qqqqqqqqqqqqqqqq'
  local cols=${COLUMNS:-$(tput cols)}
  while ((${#line} < cols)); do line+="$line"; done
  printf '%s%s%s\n' "$start" "${line:0:cols}" "$end"
}

if [ -z $1 ]
then
  echo "Append domain afert the script name!!!"
  exit
fi

IP=$(dig $1 AAAA +short)

if [ -z ${IP} ]
then
  echo "$1 dont have valid IPv6 record"
else
  reset
  traceroute6 $1
  hr
  dig $1 AAAA
  hr
  dig -x ${IP}
  hr
  ping6 -c3 ${IP}
  hr 
  whois ${IP}
fi

जैसा कि आप देख सकते हैं स्क्रिप्ट insanely सरल है. डोमेन पास और उसके बाद यह मान्य हैं यदि IPv6 प्रविष्टि और वहाँ बाहर दैनिक परीक्षण के लिए यह किया जाता है तो. अच्छी बात यह – समारोह मानव संसाधन जो स्क्रीन की चौड़ाई में एक लाइन प्रिंट से लिया जाता है पार्टी की योजना बनाई-हैकर.

चीजें हैं जो मुझे सबसे अधिक परेशान में से एक है जब मैं कॉपी/बड़े cli direktorâ करने में मुझे पता नहीं है पूरे का क्या प्रतिशत राशि मैं pret″rkalâl कदम. दुर्भाग्य से cp/mv है कोई ऐसी शक्तियों और होने के लिए वैकल्पिक विकल्पों का सहारा. वहाँ काफी कुछ विकल्प हैं, लेकिन मैं व्यक्तिगत रूप से pc/एमवी के बजाय rsync के प्रयोग की तरह. यह सब कुछ है एकीकृत है – फ़ाइलें और निर्देशिका के अधिकार रखते हुए, प्रगति पट्टी और प्रतिलिपि बनाई गई फ़ाइलों को हटाने के लिए अवसर.

मूल रूप से मैंने 2 अन्य नाम- और कौन से अधिक आश्चर्य करते हैं:

alias cpi='rsync -a --info=progress2'
alias mvi='rsync -a --info=progress2 --remove-source-files'