SSH: различия между версиями

Материал из Wiren Board
 
(не показано 12 промежуточных версий 2 участников)
Строка 1: Строка 1:
{{DISPLAYTITLE: Как зайти на контроллер Wiren Board по SSH }}
{{DISPLAYTITLE: Как подключиться к консоли контроллера Wiren Board по SSH }}
[[Image: Putty logged in.png |500px|thumb|right| Консоль контроллера Wiren Board]]
 
[[Image: Putty enter ip.png|500px|thumb|right| Настройка SSH-соединения в программе [[PuTTY]]]]
== Введение ==
== Введение ==
{{YouTube
|link=https://youtu.be/VA_XHrY1RVA?feature=shared&t=500
|text= Работа в консоли контроллера Wiren Board 7 — SSH
}}
SSH — это протокол, при помощи которого можно получить доступ к консоли Wiren Board через локальную сеть или Интернет. Смотрите [http://en.wikipedia.org/wiki/Secure_Shell описание в Википедии].  
SSH — это протокол, при помощи которого можно получить доступ к консоли Wiren Board через локальную сеть или Интернет. Смотрите [http://en.wikipedia.org/wiki/Secure_Shell описание в Википедии].  


Кроме SSH, получить доступ к консоли можно через [[Special:MyLanguage/Debug UART|Debug UART]].
Кроме SSH, получить доступ к консоли можно через [[Special:MyLanguage/Debug Console|Debug Console]].
 
<gallery mode="packed" heights="120px">
Image: Putty logged in.png | Консоль контроллера Wiren Board
Image: Putty enter ip.png | Настройка SSH-соединения в программе PuTTY
</gallery>


== Логин и пароль ==
== Логин и пароль ==
{{Wbincludes:Controller SSH Default Login Password}}


Логин и пароль по умолчанию:
Обязательно смените пароль, для этого введите в консоли контроллера команду <code>passwd</code> и дважды введите новый пароль:
* Логин: '''root'''
<syntaxhighlight lang="console">
* Пароль: '''wirenboard'''
# passwd
Enter new UNIX password:
Retype new UNIX password:  
passwd: password updated successfully
</syntaxhighlight>


== Программы ==
== Программы ==
Строка 27: Строка 40:


IP-адрес зависит от способа подключения и настроек контроллера. Подробнее читайте в статье [[How to find IP address|Как узнать IP-адрес контроллера]].
IP-адрес зависит от способа подключения и настроек контроллера. Подробнее читайте в статье [[How to find IP address|Как узнать IP-адрес контроллера]].
== Основные команды консоли ==
* <code>ls</code> — выводит список файлов.
* <code>ls -l</code> — выводит список файлов, а также права доступа, владельца и путь к оригиналу, если файл является ссылкой.
* <code>pwd</code> — выводит путь к текущему каталогу, в котором мы находимся.
* <code>cd</code> — меняет текущий каталог:
** перейти в указанный каталог:
**: <syntaxhighlight lang="bash">
cd /путь/к/каталогу
</syntaxhighlight>
**перейти на верхний уровень:
**: <syntaxhighlight lang="bash">
cd ..
</syntaxhighlight>
** перейти в домашний каталог пользователя:
**: <syntaxhighlight lang="bash">
cd ~
</syntaxhighlight >
* <code>mv</code> — перемещает файл или каталог, можно использовать и для переименования:
*: <syntaxhighlight lang="bash">
# переместить файл
mv ~/filename.txt /новый_путь/filename.txt
# переместить каталог
mv ~/dirname /новый_путь/dirname
# переименовать файл
mv ~/filename.txt ~/newfilename.txt
</syntaxhighlight>
* <code>rm</code> — удаляет файлы и каталоги:
*: <syntaxhighlight lang="bash">
# удалить файл
rm ~/filename.txt
# удалить каталог каталог со всем содержимым
rm -r ~/dirname
</syntaxhighlight>
* <code>cp</code> — копирует файлы и каталоги:
*: <syntaxhighlight lang="bash">
cp file.txt file_backup.txt
</syntaxhighlight>
* <code>cat</code> — выводит содержимое файла на экран:
*: <syntaxhighlight lang="bash">
cat file.txt
</syntaxhighlight>
* <code>mkdir</code> — создаёт один или несколько каталогов с указанным именем:
*: <syntaxhighlight lang="bash">
mkdir newdirname
</syntaxhighlight>
* <code>chmod</code> — изменяет права доступа к файлам и каталогам:
*: <syntaxhighlight lang="bash">
# использование
chmod опции /путь/к/файлу
# например, сделать файл исполняемым
chmod +x ~/filename.txt
</syntaxhighlight>
* <code>touch</code> — создаёт файлы любого типа:
*: <syntaxhighlight lang="bash">
touch newfilename.txt
</syntaxhighlight>
* <code>find</code> — поиск файлов, например, найдём файл interfaces в каталоге ''/mnt/data/'':
*:<syntaxhighlight lang="console">
# find /mnt/data -name "interfaces"
/mnt/data/etc/network/interfaces
</syntaxhighlight>
* <code>nano</code> — [[NanoEditor | редактор текстовых файлов]].
* <code>df</code> — показывает доступное дисковое пространство:
*:<syntaxhighlight lang="console">
# df -hT
Filesystem    Type      Size  Used Avail Use% Mounted on
/dev/root      ext4      980M  818M  95M  90% /
devtmpfs      devtmpfs  239M    0  239M  0% /dev
tmpfs          tmpfs    248M    0  248M  0% /dev/shm
tmpfs          tmpfs      99M  1.2M  98M  2% /run
tmpfs          tmpfs    5.0M    0  5.0M  0% /run/lock
/dev/mmcblk0p6 ext4      4.7G  1.9G  2.7G  41% /mnt/data
tmpfs          tmpfs      50M    0  50M  0% /run/user/0
</syntaxhighlight>
* <code>--help</code> — посмотреть справку по команде:
*: <syntaxhighlight lang="bash">
cd --help
</syntaxhighlight>
== Обновление прошивки ==
[[Image: screen-help.png |300px|thumb|right| Приветственный экран команды screen ]]
При подключении по SSH есть риск, что соединение будет разорвано: закрыли окно подключения, пропала связь и т.п. Поэтому важные команды, например, обновление прошивки, лучше выполнять через утилиту [https://help.ubuntu.ru/wiki/screen screen]. Утилита создаст на контроллере виртуальную сессию командной оболочки, поэтому обрыв связи не повлияет на выполнение запущенных в ней команд.
Утилита не входит в стандартный пакет программ, поэтому ее нужно сначала установить:
<syntaxhighlight lang="bash">
apt install screen
</syntaxhighlight>
Как работать:
# Запустите сеанс screen командой:
#: <syntaxhighlight lang="bash">
screen
</syntaxhighlight>
#:После подключения вы увидите приветственный экран программы, нажмите на клавиатуре <kbd>Пробел</kbd> или <kbd>Enter</kbd> — откроется виртуальная консоль, которая внешне ничем не отличается от обычной.
# Дальше вводите нужные вам команды, а при разрыве связи достаточно будет переподключиться к контроллеру и открыть работающий сеанс командой:
#:<syntaxhighlight lang="bash">
screen -r
</syntaxhighlight>
# Для выхода из виртуальной консоли введите:
#:<syntaxhighlight lang="bash">
exit
</syntaxhighlight>

Текущая версия на 11:33, 12 января 2024


Введение

Работа в консоли контроллера Wiren Board 7 — SSH

SSH — это протокол, при помощи которого можно получить доступ к консоли Wiren Board через локальную сеть или Интернет. Смотрите описание в Википедии.

Кроме SSH, получить доступ к консоли можно через Debug Console.

Логин и пароль

Учётная запись по умолчанию: логин root, пароль wirenboard.

Обязательно смените пароль, для этого введите в консоли контроллера команду passwd и дважды введите новый пароль:

# passwd
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully

Программы

Windows

Для операционной системы Windows, используйте бесплатную программу PuTTY.

Linux

В операционной системе Linux, используйте PuTTY или просто выполните в консоли команду:

ssh root@192.168.42.1

Где 192.168.42.1 — IP-адрес контроллера, а root — имя пользователя. Если вы подключаетесь к контроллеру в первый раз, то система предложит принять сертификат — введите yes.

IP-адрес зависит от способа подключения и настроек контроллера. Подробнее читайте в статье Как узнать IP-адрес контроллера.

Основные команды консоли

  • ls — выводит список файлов.
  • ls -l — выводит список файлов, а также права доступа, владельца и путь к оригиналу, если файл является ссылкой.
  • pwd — выводит путь к текущему каталогу, в котором мы находимся.
  • cd — меняет текущий каталог:
    • перейти в указанный каталог:
      cd /путь/к/каталогу
      
    • перейти на верхний уровень:
      cd ..
      
    • перейти в домашний каталог пользователя:
      cd ~
      
  • mv — перемещает файл или каталог, можно использовать и для переименования:
    # переместить файл
    mv ~/filename.txt /новый_путь/filename.txt
    
    # переместить каталог
    mv ~/dirname /новый_путь/dirname
    
    # переименовать файл
    mv ~/filename.txt ~/newfilename.txt
    
  • rm — удаляет файлы и каталоги:
    # удалить файл
    rm ~/filename.txt
    
    # удалить каталог каталог со всем содержимым
    rm -r ~/dirname
    
  • cp — копирует файлы и каталоги:
    cp file.txt file_backup.txt
    
  • cat — выводит содержимое файла на экран:
    cat file.txt
    
  • mkdir — создаёт один или несколько каталогов с указанным именем:
    mkdir newdirname
    
  • chmod — изменяет права доступа к файлам и каталогам:
    # использование
    chmod опции /путь/к/файлу
    
    # например, сделать файл исполняемым
    chmod +x ~/filename.txt
    
  • touch — создаёт файлы любого типа:
    touch newfilename.txt
    
  • find — поиск файлов, например, найдём файл interfaces в каталоге /mnt/data/:
    # find /mnt/data -name "interfaces"
    /mnt/data/etc/network/interfaces
    
  • nano редактор текстовых файлов.
  • df — показывает доступное дисковое пространство:
    # df -hT
    Filesystem     Type      Size  Used Avail Use% Mounted on
    /dev/root      ext4      980M  818M   95M  90% /
    devtmpfs       devtmpfs  239M     0  239M   0% /dev
    tmpfs          tmpfs     248M     0  248M   0% /dev/shm
    tmpfs          tmpfs      99M  1.2M   98M   2% /run
    tmpfs          tmpfs     5.0M     0  5.0M   0% /run/lock
    /dev/mmcblk0p6 ext4      4.7G  1.9G  2.7G  41% /mnt/data
    tmpfs          tmpfs      50M     0   50M   0% /run/user/0
    
  • --help — посмотреть справку по команде:
    cd --help
    

Обновление прошивки

Приветственный экран команды screen

При подключении по SSH есть риск, что соединение будет разорвано: закрыли окно подключения, пропала связь и т.п. Поэтому важные команды, например, обновление прошивки, лучше выполнять через утилиту screen. Утилита создаст на контроллере виртуальную сессию командной оболочки, поэтому обрыв связи не повлияет на выполнение запущенных в ней команд.

Утилита не входит в стандартный пакет программ, поэтому ее нужно сначала установить:

apt install screen

Как работать:

  1. Запустите сеанс screen командой:
    screen
    
    После подключения вы увидите приветственный экран программы, нажмите на клавиатуре Пробел или Enter — откроется виртуальная консоль, которая внешне ничем не отличается от обычной.
  2. Дальше вводите нужные вам команды, а при разрыве связи достаточно будет переподключиться к контроллеру и открыть работающий сеанс командой:
    screen -r
    
  3. Для выхода из виртуальной консоли введите:
    exit