Найти в Дзене
Я познаю Питон

Телеграм-бот на старом ноутбуке

Остался у меня на руках старый ноут от Самсунга. Учитывая, что компания их больше не выпускает, можно назвать музейным экспонатом.=) Ноутбук на аж втором поколении интеловского i3 - Intel(R) Core(TM) i3-2330M CPU @ 2.20GHz, с дискретной видеокартой от Nvidia - GeForce GT 520MX. Неплохие параметры для 2011 года. С того времени он чуть изменился, туда я добавил планку ОЗУ на 4 ГБ (снял с умершего ноута), стало 8 Гб и докинул китайский SSD на 240. Апгрейд ему помог дышать чуть свободнее и всё равно пользоваться им после шустро работающего ПК было неприятно. Поэтому в последние год или даже полтора он просто тихонечко собирал пыль. А так как и без него пылесборников хватает, решил я его хоть как-то применить. Самым очевидным для меня решением стало использование его как сервера. Задумал я это давно, а вот попробовать решил только сейчас. Для теста пробую запустить простого телеграм-бота, которого писал ещё в далёком 2020 году, это была игра больше-меньше. Ссылку на статью оставлять не буду

Остался у меня на руках старый ноут от Самсунга. Учитывая, что компания их больше не выпускает, можно назвать музейным экспонатом.=) Ноутбук на аж втором поколении интеловского i3 - Intel(R) Core(TM) i3-2330M CPU @ 2.20GHz, с дискретной видеокартой от Nvidia - GeForce GT 520MX. Неплохие параметры для 2011 года. С того времени он чуть изменился, туда я добавил планку ОЗУ на 4 ГБ (снял с умершего ноута), стало 8 Гб и докинул китайский SSD на 240. Апгрейд ему помог дышать чуть свободнее и всё равно пользоваться им после шустро работающего ПК было неприятно. Поэтому в последние год или даже полтора он просто тихонечко собирал пыль. А так как и без него пылесборников хватает, решил я его хоть как-то применить.

Моё рабочее место прямо сейчас, даже статья открыта=)
Моё рабочее место прямо сейчас, даже статья открыта=)

Самым очевидным для меня решением стало использование его как сервера. Задумал я это давно, а вот попробовать решил только сейчас. Для теста пробую запустить простого телеграм-бота, которого писал ещё в далёком 2020 году, это была игра больше-меньше. Ссылку на статью оставлять не буду, но залил код на гитхаб, есть в планах чуть покрутить этого бота, добавить БД, статистику игр и может что-то ещё в ходе этого процесса придумается.

Уголок, который стал серверной=D
Уголок, который стал серверной=D

На ноуте я ещё весной уже прошлого года поставил Ubuntu, да и на своём ПК тоже пересел на неё, поэтому весь процесс идёт на этой ОС. Хотя может и назвать это процессом довольно оптимистично. Поскольку мне нужен ноутбук, который будет издавать минимум шума, не иметь графического интерфейса, да и вообще максимально продолжать имитировать пылесборник, то первым делом нужно было сделать так, чтобы он продолжал работать с закрытой крышкой и пользоваться им можно было с основной рабочей станции. Поэтому первым делом поставил настройку "Режим ожидания при закрытии ноутбука" в выключенное состояние. Ставится она только в стороннем приложении Gnome Tweak, или дополнительные настройки.

Скрин программы с основного ПК
Скрин программы с основного ПК

Дальше подключил к роутеру без особых заморочек (это пока всё с включенным монитором и графическим интерфейсом). Узнал локальный ip командой ip address. Установил openssh-server: sudo apt-get install openssh-server, открыл порт ufw для SSH: sudo ufw allow 22/tcp и уже с основной машины подключился по SSH командой ssh имя_пользователя@ip_адрес. Дальше пароль от этого пользователя и терминал уже запущен на стареньком ноутбуке, который обретает вторую жизнь.

Дальше в целом классические действия по запуску программы на Питоне. Единственное, установил сперва виртуальное окружение, я наконец спустя почти 4 года научился это делать, потом с помощью редактора nano скопировал код с ПК на ноутбук (с переносом файлов пока не стал заморачиваться), установил библиотеки и запустил командой nohup python3 main.py &. nohup позволяет отключиться от терминала без прерывания процесса, а & запускает в фоновом режиме (это я вчера только нагуглил).

Пока ссылку на бота не даю, потому что он у меня падает, а автоподъёма процесса я пока не сделал. Это я оставлю на следующие дни и следующую статью.

Даже, если эта статья будет неактуальна, она всё равно станет отличным блокнотом для меня, чтобы не потерять некоторые команды и не гуглить их повторно. Может через пару лет я вернусь сюда, чтобы вспомнить некоторые моменты. А дочитавшим до конца желаю, чтобы ваши работы, проекты и поделки были актуальными всегда!=)