Jak již víte, příkazy, které spustíte na vašem shellu, se uloží do .bash_history soubor a můžete je kdykoli zobrazit pomocí historie příkaz nebo pomocí kláves se šipkami NAHORU/DOLŮ nebo zpětného vyhledávání pomocí CTRL+R kombinace kláves z terminálu. Můžete je však prohlížet, přistupovat a znovu je spouštět pouze ze stejného počítače. Co když chcete přistupovat k historii terminálu z jiného systému v síti? Žádný problém! Zde je "Bashhub" utilita přichází na pomoc. Jedná se o webovou službu, do které můžete ukládat všechny příkazy a přistupovat k nim odkudkoli. Bashhub ukládá všechny zadané příkazy ve všech relacích a systémech, takže k nim můžete přistupovat odkudkoli. Zjednodušeně řečeno, celá vaše historie BASH bude k dispozici v cloudu a celá historie bash je indexována a lze v ní vyhledávat! Bashhub je zcela zdarma a s otevřeným zdrojovým kódem.
Všechny příkazy budou uloženy v databázi Bashhub, která je šifrována pomocí šifrování na úrovni úložiště prostřednictvím LUKS . Bashhub vygeneruje každému uživateli jedinečný identifikační token. Tento token je povinný pro provádění jakýchkoli akcí jménem uživatele pro příkazové rozhraní API. Příkazy zaznamenané jménem uživatele jsou přístupné pouze pomocí ověřovacího tokenu daného uživatele. V současné době neexistuje způsob, jak tyto příkazy sdílet a nejsou veřejně přístupné. Bashhub vám také umožňuje ignorovat některé příkazy, které obsahují citlivé informace, jako je uživatelské heslo. Takové příkazy můžete bezpečně ignorovat, aby je nenahrával Bashhub, a nahrávání tak kdykoli úplně vypnout.
Instalace Bashhub
Ujistěte se, že jste nainstalovali Python 2.7 na vašem systému. Python 2.7 je k dispozici ve výchozích úložištích většiny distribucí Linuxu, takže jej můžete nainstalovat pomocí správce balíčků vaší distribuce. Například spusťte následující příkaz pro instalaci pythonu 2.7 na Debian a jeho varianty.
$ sudo apt-get install python2.7
Po instalaci Pythonu 2.7 spusťte některý z níže uvedených příkazů v závislosti na používaném prostředí SHELL.
Pokud je váš shell BASH , zadejte následující příkaz:
$ curl -OL https://bashhub.com/setup && bash setup
Pro Zsh :
$ curl -OL https://bashhub.com/setup && zsh setup
Po několika minutách budete požádáni o vytvoření nového účtu, pokud jej ještě nemáte. Zadejte platné e-mailové ID, uživatelské jméno a heslo a název vašeho systému.
What's your email? [email protected] What username would you like? sk What password? Email: [email protected] Username: sk Are these correct? [Y/n] y Registered new user sk What do you want to call this system? For example Home, File Server, ect. [ubuntuserver]: Registered a new system ubuntuserver Should be good to go! Please close and restart your terminal session.
Hotovo! Váš účet byl vytvořen na Bashhub. Ke svému profilu můžete přistupovat na https://bashhub.com/
Pokud jste stávající uživatel, zadejte „n“, když se zobrazí dotaz „Jste nový uživatel?“ a zadejte svůj registrovaný e-mail a heslo.
Zavřete a restartujte svůj terminál, abyste mohli začít zaznamenávat historii terminálu.
Přístup k historii terminálu odkudkoli pomocí Bashhub
Nyní spusťte libovolné náhodné příkazy, abyste ověřili, zda to opravdu funguje.
Spustil jsem následující příkazy:
clear pwd uname -a ls -l touch test.txt
Nyní je čas zkontrolovat, jaké příkazy jsem zadal.
Chcete-li to provést, spusťte:
$ bh
Ukázkový výstup:
Bashhub v akci
Tento příkaz zobrazí ve výchozím nastavení posledních 100 příkazů . Výchozí limit můžete přepsat pomocí parametru "-n".
Chcete-li zobrazit pouze posledních 10 příkazů, spusťte:
$ bh -n 10
Zobrazení příkazů pomocí konkrétního výrazu
Můžete také zobrazit konkrétní příkaz pomocí konkrétního výrazu, například "ls".
$ bh -n 10 "ls"
Pokud chcete vyhledat konkrétní příkaz s hledaným výrazem a zároveň jej spustit, použijte "-i" příznak, jak je znázorněno níže.
$ bh -i "ls"
Pokud jste příkaz spustili více než jednou, vyberte ze seznamu příkaz, který chcete spustit, a stiskněte Enter.
Jak vidíte výše, spustil jsem příkaz "ls" třikrát.
Zobrazení seznamu provedených příkazů v adresáři
Chcete-li zobrazit seznam posledních příkazů, které jste provedli v aktuálním pracovním adresáři, použijte příznak "-d".
$ bh -d
Bashhub zobrazí naposledy použité příkazy.
Interaktivní vyhledávání
Další pozoruhodnou funkcí Bashhub je interaktivní vyhledávání. Je to podobné jako u zpětného vyhledávání, můžete ho vyvolat buď stisknutím bh -i nebo ctrl + b klíče.
Pojďme provést interaktivní vyhledávání.
$ bh -i (bashhub-i-search): uname
Výše uvedený příkaz bude hledat příkaz, který má řetězec "uname". Interaktivní vyhledávání v aktuálním pracovním adresáři můžete provést pomocí příznaku "-d", jak je znázorněno níže.
$ bh -i -d (bashhub-i-search): ls
Zobrazení podrobností o příkazu
Z interaktivního vyhledávání můžete také zobrazit podrobné informace o příkazu.
Nejprve spusťte interaktivní vyhledávání:
$ bh -i
Poté vyberte příkaz ze seznamu a stisknutím kláves „i“ nebo „mezerník“ zobrazte podrobnosti vybraného příkazu.
Smazat příkazy
Bashhub vám umožňuje kdykoli odstranit konkrétní příkaz(y) z databáze Bashub. Chcete-li tak učinit, spusťte interaktivní vyhledávání:
$ bh -i "ls"
Vyberte příkaz, který chcete odstranit, a stiskněte klávesy „Backspace“ nebo „Delete“ na klávesnici.
Ignorovat konkrétní příkazy z nahrávání
Toto je další užitečná funkce nástroje Bashhub. Můžete zabránit tomu, aby bashhub zaznamenal konkrétní příkaz, který obsahuje citlivé informace, jako je uživatelské jméno nebo heslo.
Chcete-li tak učinit, stačí přidat #ignore na konci příkazu.
Příklad:
$ uname -r #ignore
Výše uvedený příkaz "uname -r" nebude zaznamenán. Upozorňujeme, že pokud jste již nakonfigurovali svou historii tak, aby ignorovala prostor , Bash neuloží příkazy, pokud je spustí s mezerou na začátku těchto příkazů. V takovém případě nemusíte používat "#ignore".
Zakázat příkazy nahrávání
Pokud chcete, aby Bashhub zaznamenával příkazy, můžete to změnit spuštěním následujícího příkazu:
$ bashhub off
Příkazy se nebudou nahrávat, dokud jej nezapnete.
Pamatujte, že to ve výchozím nastavení ovlivňuje pouze aktuální relaci shellu. Chcete-li globálně zakázat nahrávání všech relací, spusťte následující příkaz:
$ bashhub off --global
Opětovné zapnutí nahrávání Bashhub. spustit:
$ bashhub on
Aktualizovat Bashhub
Stačí znovu spustit instalační příkaz a aktualizovat Bashhub. Případně spusťte příkaz "bashhub update" pro aktualizaci.
Přístup k Bashhubu z jiného systému
Upozorňujeme, že nemusíte spouštět "bh" ve stejném systému samotném. Vzhledem k tomu, že všechny příkazy jsou uloženy v databázi Bashhub, můžete si zobrazit celou historii svého terminálu z jakéhokoli systému. Ujistěte se, že jste do systému nainstalovali klienta Bashhub a přihlaste se pomocí registrovaného e-mailového ID a hesla.
Are you a new user? [Y/n] n Please enter your bashhub credentials Username: sk Password:
Zkontrolujte statistiky uživatelů
$ bashhub status
Ukázkový výstup:
=== Bashhub Status https://bashhub.com/sk Total Commands: 21 Total Sessions: 1 Total Systems: 1 === Session PID 1154 Started 2 hours ago Commands In Session: 21 Commands Today: 21
Odinstalujte Bashhub
Pokud vás znepokojují důsledky pro soukromí a bezpečnost, Bashhub není pro vás. Můžete jej odinstalovat odstraněním následujícího adresáře ze systému.
$ rm -r ~/.bashhub
Další podrobnosti naleznete v části nápovědy:
$ bashhub Usage: bashhub [OPTIONS] COMMAND [ARGS]... Bashhub command line client Options: -V, --version Display version -h, --help Show this message and exit. Commands: filter Check if a command is filtered from bashhub. help Show this message and exit off Turn off saving commands to Bashhub. on Turn on saving commands to Bashhub. save Save a command to Bashhub setup Run Bashhub user and system setup status Stats for this session and user update Update your Bashhub installation util Misc utils used by Bashhub version Display version