Інтерпретатор командного рядка

Див. також: Доступ до SSH для новачків

Інтерпретатор командного рядка — це програма, яка читає рядки тексту, введені користувачем, і інтерпретує їх у контексті операційної системи або мови програмування/скриптів. Взаємодія відбувається через інтерфейс командного рядка. Інші поширені (але технічно не зовсім точні) назви — консоль або шелл.

Стандартна оболонка unix shell в OpenWrt — це форк Busybox від реалізації Almquist shell з Debian (див. → https://www.in-ulm.de/~mascheck/various/ash/#busybox).

Після завершення завантаження запускається демон init — це може бути init, systemd, upstart, тощо. OpenWrt використовує procd. Далі виконуються скрипти завантаження з /etc/rc.d, після чого запускаються різні програми, включаючи вибрану оболонку. Вона реагує на натискання клавіш і виводить командний рядок на підключений дисплей.

Але більшість пристроїв з OpenWrt не мають клавіатури чи дисплея. Тому доступ здійснюється через послідовний порт (локально) або через Ethernet (мережею).

Для доступу до оболонки по мережі потрібні додаткові програми. Уся передача даних здійснюється через мережеві протоколи.

Переважно використовуються протоколи telnet і SSH. Вони працюють за схемою сервер ↔ клієнт. На пристрої з OpenWrt запускається telnetd для telnet і dropbear для SSH. Для Windows можна використати PuTTY або WinSCP. WinSCP не завжди працює коректно, але Konqueror з fish:// працює. Див. FISH.

(OpenWrt також має клієнти SSH ssh і telnet telnet для підключення до інших пристроїв.)

До логіна через веб інтерфейс активний тільки telnetd, а після — тільки dropbear.

Після успішного входу dropbear запускає вказану оболонку (можна встановити декілька одночасно) з правами відповідного користувача.

Доступ до SSH для новачків

У OpenWrt це здійснюється у файлі /etc/profile шляхом встановлення змінних середовища та псевдонімів. Все працює «з коробки», але можна:

В PuTTY виділіть текст мишею — він автоматично копіюється. Вставити можна [Ctrl]+[v]. Щоб вставити в PuTTY, скопіюйте звичайним способом ([Ctrl]+[c]) і натисніть праву кнопку миші у вікні PuTTY.

В PuTTY перейдіть у “Terminal” → “Features” і активуйте “Disable application keypad mode”.

Для ознайомлення з файловою системою див. flash.layout.

При вході ви знаходитесь у вашому $HOME, наприклад /root для користувача root.

Команда Пояснення
pwd поточний каталог
cd зміна каталогу, напр. cd .., cd /etc
ls список файлів каталогу
cat вивід вмісту файлу
cp копіювання файлів
mv переміщення або перейменування
df вільне місце на диску, напр. df -h
free інформація про оперативну пам’ять
uptime час роботи пристрою
dmesg повідомлення ядра
logread логи системи
cat /proc/version версія ядра
cat /proc/meminfo використання пам’яті
cat /proc/cpuinfo інформація про процесор
cat /proc/mtd MTD розділи
cat /proc/partitions розділи накопичувачів
cat /proc/net/nf_conntrack з’єднання netfilter
cat /proc/cmdline параметри ядра
cat /proc/modules завантажені модулі

Для редагування текстових файлів використовується редактор vi.

vi має два режими: командний та вставки.

Для командного — натисніть [Esc].

Для вставки — [i] або [a].

Запуск vi

vi /etc/config/network''
''vi firewall.user''

Вихід з vi

:w — зберегти

:q — вийти

:wq! — зберегти й вийти

:%s/старе/нове/g — замінити рядок у файлі

Альтернативні редактори

nano, joe, mg, vim, mc --edit, zile тощо

'Примітка:' багато графічних редакторів (наприклад, Visual Studio Code, Notepad++) мають плагіни для редагування файлів через SFTP.

OpenWrt використовує оболонку ash з Busybox, яка переважно сумісна з POSIX. Див. shell script.

''sh /шлях/до/файлу.sh''

Зробити скрипт виконуваним:

chmod +x /шлях/до/файлу.sh
/шлях/до/файлу.sh

Приклад зміни профілю:

mkdir -p /etc/profile.d
cat << "EOF" > /etc/profile.d/custom.sh
export EDITOR="nano"
export PAGER="less"
alias bridge="bridge -color=auto"
alias diff="diff --color=auto"
alias grep="grep --color=auto"
alias ip="ip -color=auto"
EOF
. /etc/profile

mc (Midnight Commander)

deco (Demos Commander)

Konqueror GVim WinSCP

https://wiki.debian.org/CommandLineInterface

http://linuxcommand.org/tlcl.php — безкоштовна книга Вільяма Шоттса

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2025/05/30 08:11
  • by vazaz