Linux в контроллере TXT: Получаем root-доступ

Если вы начинаете изучать разработку приложений для встраиваемых компьютеров, то, скорее всего, вам понадобится неограниченный доступ к операционной системе, установленной на встраиваемом компьютере, с которым вы будете проводить эксперименты. В нашем случае таким учебным компьютером будет контроллер TXT, который входит в состав конструктора «TXT Набор первооткрывателя» (арт. 524328).

Контроллер TXT работает под управлением операционный системы Linux, в которой самый высокий уровень доступа по умолчанию принадлежит пользователю root. Следовательно, для неограниченного доступа к ресурсам операционной системы нам надо получить пароль этого пользователя.

Далее я приведу последовательность действий, выполнив которые, вы сможете узнать пароль пользователя root и получить неограниченный доступ к контроллеру TXT.

Перед тем как перейти к практической части я должен вас предупредить, что действия, выполненные пользователем root, могут привести к повреждению файлов операционной системы и как следствие к нарушению работоспособности контроллера TXT. В этом случае для восстановления нормальной работы контроллера вам придется самостоятельно восстановить образ операционной системы во flash-памяти контроллера.

 

Получаем root-доступ

1. Подключите контроллер TXT к компьютеру через интерфейс USB.

2. Проверьте версию системного ПО контроллера TXT в меню «Settings->Info». Должно быть не ниже 4.4.4. Если у вас старая версия системного ПО, то следует обновиться с помощью ROBO Pro. Обновление ROBO Pro можно скачать на сайте fischertechnik.

3. В TXT в меню «Settings->Security» включите опцию «SSH Daemon»:

TXT - включить SSH

4. Подключитесь к консоли TXT через SSH. В качестве SSH клиента я рекомендую использовать популярную программу Putty. Реквизиты для подключения:

  • IP адрес: 192.168.7.2
  • Порт SSH: 22

Настройки putty для подключения к TXT

5. Когда откроется консоль надо войти в систему как пользователь ROBOPro:

  • Пользователь: ROBOPro
  • Пароль: ROBOPro

6. После успешного входа запустите в командной строке скрипт, который генерирует новый пароль для пользователя root:

$ sudo /usr/sbin/new_root_password.sh 60

7. Примерно через 30 секунд на экране TXT появится окно с паролем для пользователя root. Запишите его или сфотографируйте. Он понадобится вам на следующем шаге.

Пароль на экране TXT

8. Теперь у вас есть пароль. Можно войти в систему как пользователь root:

Консоль TXT

Если вам не хочется постоянно вводить длинный пароль, то вы можете установить собственный. Для этого выполните команду passwd root:

$ passwd root

Если в момент запуска passwd вы были зарегистрированы под другим пользователем, то система попросит вас ввести текущий пароль пользователя root (его вы уже знаете), а затем надо будет два раза ввести новый пароль.

Список использованных источников и литературы

  1. TXT ROOT access. URL: https://github.com/fischertechnik/FT-TXT/blob/master/TXT-Linux-FAQ.md
  2. Обновление RP 4.4.4. URL: https://www.fischertechnik.de/en/service/downloads/robotics
  3. fischertechnik TXT Firmware. URL: https://github.com/fischertechnik/FT-TXT
  4. PuTTY: a free SSH and Telnet client. URL: https://www.chiark.greenend.org.uk/~sgtatham/putty/