TurboShell
TurboShell: plnohodnotný příkazový řádek na vašem QNAP
Shelly, archivátory, editory a jazyky na jednu instalaci z App Center.
TurboShell přidává k přihlášení přes SSH na NASu nástroje příkazového řádku: zsh a fish, tmux, Midnight Commander, 7-Zip, Perl, Python, Free Pascal a další.
Každý program je zkompilovaný ze zdrojového kódu v Bucket & Code Server IDE. Nainstalujte balíček tak, jak je, nebo změňte jeho seznam receptů a sestavte si vlastní.
command -v rsync
/usr/app/TurboShell/first/rsync
rsync --version | head -1
rsync version 3.5.1 protocol version 33
tar --version | head -1
tar (GNU tar) 1.35
git --version
git version 2.55.0
python3 --version
Python 3.14.7
tmux -V
tmux 3.7c
Co je uvnitř
Seznam receptů uvádí tyto programy a sestavení doplní knihovny, které potřebují. Jen archivátory a kompresory tvoří 16 receptů.
Shelly
- bash
- GNU Bourne-Again Shell
- zsh
- shell Z se svými moduly
- fish
- friendly interactive shell
- mksh
- Kornův shell z MirBSD
- ksh
- ksh 93u+m, Kornův shell od AT&T
- bash-completion
- doplňování tabulátorem pro bash
Nástroje GNU
- coreutils
- ls, cp, sort, sha256sum a další
- binutils
- as, ld, objdump, readelf, nm, strip
- findutils
- find, xargs, locate
- diffutils
- diff, diff3, sdiff, cmp
- grep
- s -P pro vzory Perlu
- sed
- proudový editor
- gawk
- GNU awk
- bc
- bc a dc, kalkulačky s libovolnou přesností
- less
- stránkovač
- file
- určí typ souboru
- tree
- složky jako strom
- util-linux
- lsblk, lscpu, findmnt, blkid, column, flock, script, whereis, rev
- make
- GNU make
- patch
- GNU patch
- man
- mandoc: čte manuálové stránky balíčku
Archivátory a kompresory
- tar
- GNU tar
- gzip
- GNU gzip
- bzip2
- kompresor s blokovým řazením
- xz
- LZMA2, s xzcat a unxz
- zstd
- Zstandard
- lz4
- rychlá komprese LZ4
- lzip
- LZMA s formátem s kontrolou integrity
- lzop
- rychlá komprese LZO
- pigz
- gzip na všech jádrech procesoru
- brotli
- kompresor Brotli
- 7zz
- všechny formáty 7-Zip, také jako 7z a 7za
- bsdtar
- libarchive: tar, zip, 7z, rar, cab a iso, s bsdcpio a bsdunzip
- unrar-free
- RAR přes libarchive
- unrar
- UnRAR od RARLAB, všechny formáty RAR
- cpio
- GNU cpio
- cabextract
- soubory Microsoft .cab
Síť, vzdálená práce a správa verzí
- curl
- přenosy URL s TLS
- wget
- GNU wget
- rsync
- synchronizace souborů
- lftp
- klient FTP, FTPS, SFTP a HTTP se zrcadlením a frontami
- socat
- předává bajty mezi soubory, rourami, sokety a TLS
- whois
- zjišťuje údaje o doméně, IP adrese nebo čísle AS
- openssh
- ssh, scp, sftp, ssh-keygen, ssh-copy-id, ssh-agent
- sshpass
- zadává heslo do ssh pro skripty
- autossh
- restartuje ssh, když se spojení nebo tunel zastaví
- sshfs
- připojí složku jiného počítače přes SSH
- git
- správa verzí
Skripty a soubory
- jq
- zpracovává JSON v příkazovém řádku
- dos2unix
- převádí konce řádků a textové soubory UTF-16
- rename
- přejmenovává soubory výrazem v Perlu
- parallel
- GNU parallel: spouští úlohy shellu paralelně
- dialog
- textová dialogová okna pro skripty
- par2
- vytváří obnovovací soubory PAR2 a opravuje jimi data
- fzf
- interaktivní přibližné hledání souborů a historie
- rg
- ripgrep: hledá regulární výraz ve složkách
- fd
- hledá soubory podle názvu
- micro
- terminálový editor s obvyklými klávesami
- restic
- šifrované zálohy s deduplikací
Obnova a přehled hardwaru
- ddrescue
- kopíruje selhávající disk a mapuje vadné oblasti
- testdisk
- TestDisk a PhotoRec: hledají ztracené oddíly, obnovují smazané soubory
- inxi
- přehled hardwaru a systému jedním příkazem
Terminál, soubory a editory
- tmux
- panely a relace, které přežijí spojení
- screen
- GNU Screen
- mc
- Midnight Commander, s mcedit a mcview
- nano
- editor GNU
- vim
- s xxd pro hexadecimální výpisy
- hexedit
- hex a ASCII vedle sebe
- bvi
- binární úpravy příkazy vi, a bmore
- Nerd Font
- DejaVu Sans Mono s glyfy Powerline a ikon
Jazyky
- perl
- se základními moduly
- python3
- s pip a standardní knihovnou
- lua
- s kompilátorem luac
- fpc
- Free Pascal, s běhovou knihovnou a balíčky
- bwbasic
- Bywater BASIC
- yabasic
- yet another BASIC
Jak to vypadá
Skutečné obrazovky z NASu QNAP s balíčkem z App Center.
Komu to pomůže
Na NASu pracujete přes SSH
Zvolte si jako shell zsh nebo fish a dlouhé úlohy nechte běžet v tmux, kde pokračují i po výpadku spojení.
Soubory třídíte a rozbalujete ručně
Midnight Commander vám dá v terminálu dva panely. 7zz, unrar a bsdtar rozbalí soubory 7z, RAR, ISO a CAB.
Píšete malé skripty a programy
Perl, Python 3, Lua, Free Pascal a dva BASICy běží přímo na NASu, každý pod svým názvem.
Instalace
- Jednou přidejte repozitář tohoto webu do App Center: tři kroky.
- V seznamu repozitáře najděte (example) TurboShell a stiskněte Instalovat.
- Zapněte SSH v Ovládací panely › Síť & Služby souborů › Telnet / SSH.
Spuštění
TurboShell nemá vlastní okno: spouštíte ho z terminálu. Přihlaste se přes SSH jako admin a zavolejte program jeho názvem.
ssh admin@192.0.2.10 # adresa vašeho NASu mc # Midnight Commander tmux # relace, která přežije výpadek spojení
Dobré vědět
- V shellu, do kterého píšete, se rsync, bash, tar, jq, python3, vim, less, grep, find, sort, dd a diff z balíčku spouštějí před kopiemi QTS, které odmítají běžné volby jako
tar --zstd,sort -hagrep -P. - Ostatní názvy, které má QTS, zůstávají QTS, například sed, awk, curl, ssh a screen. Kopii z balíčku spustíte úplnou cestou:
/usr/app/TurboShell/bin/sed. - Skripty, cron a příkaz předaný přímo ssh používají příkazy QTS. Z jiného počítače určete program:
rsync --rsync-path=/usr/app/TurboShell/bin/rsync. - Na NASu QNAP je
ncnástroj Notification Center od QNAP. Použijtesocatneboncatze SysMon. - UnRAR je freeware, ne open source. Licence vám dovoluje ho používat a předávat dál, ale ne použít jeho kód k vytvoření archivátoru kompatibilního s RAR.
Změňte to a sestavte znovu, kdykoli budete chtít
TurboShell je příklad z Bucket & Code Server IDE, našeho bezplatného vývojového prostředí pro QNAP. Každý program zkompiluje ze zdrojového kódu přímo na vašem NASu a výsledek zabalí jako QPKG.
Z panelu
- V Bucket & Code otevřete Apps a potom kartu Examples. Pokud ještě nemáte prostředí pro sestavení, přidejte Ubuntu 24.04 builder (full).
- Stiskněte Use this example u TurboShell (geek set 1). Aplikace se objeví se svými recepty a zatím není nic sestaveno.
- Stiskněte Build a potom Activate. Export vytvoří QPKG, jakmile je nainstalovaný toolchain QDK.
Z terminálu
Projekt Editoru TurboShell má stejný seznam v souboru recipes.txt. Odeberte řádek nebo přidejte recept z knihovny a pak v terminálu Editoru spusťte:
make app # vytvoří aplikaci z recipes.txt make build # sestaví ji a sleduje úlohu make activate # /usr/app/TurboShell teď ukazuje na sestavení make qpkg # exportuje QPKG (vyžaduje toolchain QDK)
První sestavení zkompiluje každý recept s jeho knihovnami a chvíli trvá. Pozdější make build znovu sestaví jen recepty, jejichž zdroje nebo sestavovací skripty se změnily. Projekt má také stavový řádek tmux ve stylu Powerline: make dotfiles ho zkopíruje do vaší domovské složky a make font zkopíruje Nerd Font pro váš počítač.
Podívejte se, jak se to dělá v Bucket & Code
Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware)
8 min na YouTube

