Archives

Bash-it – un framework cu ajutorul căruia îți poti controla aliasurile și scripturile

Bash-it este un pachet de scripturi și comenzi pentru versiuni ale Bash mai noi de 3.2, pachet făcut de comunitatea Bash și care aduce funcții modificate, teme, aliasuri, auto-completarea comenzilor și multe alte lucruri interesante. De asemenea aduce o serie de unelte pentru dezvoltatori, integrări ale unor comenzi pentru git și multe alte scripturi cu ajutorul cărora îți ușurează munca zilnică.

Cum se instalează Bash-it în sistemele de operare GNU/Linux

Pentru a instala Bash-it se clonează în primul rând repo-ul într-o destinație la alegerea utilizatorului:

$ git clone --depth=1 https://github.com/Bash-it/bash-it.git ~/.bash_it

Odată clonarea încheiată se rulează următoarea comandă pentru instalare (fișierele ~/.bash_profile sau ~/.bashrc – în funcție de sistemul de operare folosit vor fi salvate automat)

$ ~/.bash_it/install.sh

Veți fi întrebat “Would you like to keep your .bashrc and append bash-it templates at the end? [y/N]”, răspundeți după preferință.

Odată instalarea terminată aceasta poate fi verificată cu ajutorul comenzii ls. Fișisrele și directoarele ar trebui să fie afișate.

Cum poate fi modificat Bash-it în Linux

Bash-it poate fi modificat oricând editând fișierul ~/.bashrc.
Pentru a vedea lista aliasurilor, completărilor și modulelor suplimentare instalate și/sau disponibile se pot rula următoarele comenzi (care de asemenea vor indica cum se pot activa și dezactiva):

$ bash-it show aliases
$ bash-it show completions
$ bash-it show plugins

Pentru a vedea ce aliasuri sunt active se folosește următoarea comandă:

$ alias

Toate aliasurile pot fi găsite în directorul aflat aici: $HOME/.bash_it/aliases/ .
De exemplu, să activăm aliasurile pentru apt:

$ bash-it enable alias apt

Reîncărcam apoi Bash-it pentru a vedea rezultatul:

$ bash-it reload
$ alias

Din ce putem vedea, aliasurile pentru apt au fost activate

Mișcarea inversă se face astfel:

$ bash-it disable alias apt
$ bash-it reload

Căile generale sunt următoarele:

Completările pot fi găsite aici – $HOME/.bash_it/completion/
Modulele suplimentare – $HOME/..bash_it/plugins/
Toate elementele activate pot fi găsite în directorul $HOME/.bash_it/enabled .

Cum spuneam la început, Bash-it are oferă și mai mult de 50 de teme, cea implicită fiind bobby. Tema activă poate fi aflată afișând valoarea variabilei env BASH_IT_THEME

echo $BASH_IT_THEME

Temele pot fi găsite în directorul $BASH_IT/themes .

$ ls $BASH_IT/themes

Aceste teme pot fi previzualizate înainte de a fi folosite cu comanda:

$ BASH_PREVIEW=true bash-it reload

Iar aplicarea uneia dintre ele se poate face editând fișierul .bashrc și adăugând următoarea linie (cu numele temei alese):

$ export BASH_IT_THEME='essential'

Salvați apoi fișierul și reîncărcați-l

$ source $HOME/.bashrc

Căutarea de noi plugin-uri, completări sau aliasuri specifice diferitelor limbaje de programare sau medii de dezvoltare poate fi făcută ușor astfel (de exemplu căutăm ceva legat de comenzile pe care le utilizăm frecvent):

$ bash-it search python pip pip3 pipenv
$ bash-it search git

Iar dacă aveți nevoie de ajutor puteți rula comenzile:

$ bash-it help aliases
$ bash-it help completions
$ bash-it help plugins

Orice scripturi, aliasuri etc. adiacente pot fi adăugate în directoarele respective:

aliases/custom.aliases.bash
completion/custom.completion.bash
lib/custom.bash
plugins/custom.plugins.bash
custom/themes//.theme.bash

Pentru a avea întotdeauna cea mai recentă versiune a Bash-it rulați:

$ bash-it update

Iar dacă la un moment dat nu vreți să mai folosiți Bash-it acesta se dezinstalează astfel:

$ cd $BASH_IT
$ ./uninstall.sh

Scriptul uninstall.sh va restaura fișierele de pornire folosite anterior instalării. Odată procesul încheiat directoarele Bash-it pot fi șterse manual.

$ rm -rf $BASH_IT

Mai multe detalii despre cum poate fi folosit Bash-it puteți afla rulând comanda:

$ bash-it help

Pentru mai multe informații puteți accesa pagina de Github https://github.com/Bash-it/bash-it.

Mici probleme cu Munin 1.2.5 după un upgrade hardware

Se întâmplă că unul dintre clienți și-a upgradat serverele…. Toate bune și frumoase, performanțele sunt vizibile… însă apar și bubele.

Munin-ul de acolo a fost instalat în mezoliticul timpuriu și a rămas neactualizat atunci când acest lucru s-ar fi putut face fără pierderea graficelor și a datelor istorice.

Astfel că acum după ce au apărut mai multe procesoare decât se aștepta să vadă Munin acolo iar conexiunea la rețea este de asemenea mult mai rapidă… s-a întâmplat că datele din grafice nu mai prezintă realitatea.

Dacă pentru problema traficului pe plăcile de rețea am putut înlocui plugin-ul if_ cu ip_, pentru procesor am avut de săpat.

Până la urmă, afișarea poate fi “reparată” prin modificarea unei linii în plugin-ul cpu.
La linia 72 (presupun că numărul liniei poate varia) se află:

 NCPU=`expr \`grep '^cpu. ' /proc/stat | wc -l\` - 1` 

Pentru a afișa din nou corect graficul cpu când serverul are mai mult de 8 procesoare, linia trebuie modificată încât să arate astfel:

 NCPU=`expr \`grep '^cpu.\{1,2\} ' /proc/stat | wc -l\` - 1` 

În următoarele minute de după restartarea munin-node graficul cpu ar trebui să arate valori corecte care să fie reprezentative pentru toate procesoarele din sistem.

Pentru a activa pluginul ip_ in locul if_ sunt necesari următorii pași:

1 – În fișierul de configurare munin-node (de obicei în calea etc/munin/plugin-conf.d/munin-node) se adaugă:

[ip_*]
user root 

2 – Se creează o regulă în iptables pentru a colecta datele pe un ip specific:

 iptables -A INPUT -d <ip>;iptables -A OUTPUT -s <ip> 

3 – Se instalează plugin-ul pentru ip-ul specificat la pasul anterior:

  ln -s /usr/share/munin/plugins/ip_ /etc/munin/plugins/ip_<ip> 

4 – Se restartează munin-node.

Pașii 2 și 3 se repetă pentru fiecare ip pe care vrem să-l vedem în graficele Munin.

© 2009-2019 Alex. Burlacu
%d bloggers like this: