Верстакфорум практиков
рекламаiprazon: приватные серверные адреса IPv4 и SOCKS5, безлимитный трафик, бесплатный тест до 2 часов
ФорумНовичкам

Как не сломать рабочую машину в первый месяц

sonyaK
sonyaK
Новичок
сообщений 240
с фев, второй сезон
1 сентября, 08:32первое сообщение

За месяц дважды довела ноутбук до состояния, когда проще переустановить. Первый раз поставила три версии питона и разломала системную, второй раз правила настройки сети и потеряла связь.

Есть какой-то набор привычек, чтобы так больше не делать? Копии я уже завела, интересует сам порядок работы.

Денис Прошин
Денис Прошин
Знаток
сообщений 1000
с июн
8 февраля, 11:49#2

Главная привычка одна: одно изменение за раз.

Поставил пакет, проверил, что всё живо, пошёл дальше. Когда меняешь пять вещей подряд и на шестой всё падает, ты уже не знаешь, что именно сломало.

Дальше по твоим двум случаям.

Питон. Системный интерпретатор трогать нельзя, на нём держится половина утилит системы. Всё своё ставится в отдельное окружение:

python3 -m venv ~/venv/sbor
source ~/venv/sbor/bin/activate
pip install requests

Внутри окружения ставь что угодно, системе от этого ни жарко ни холодно.

Конфиги. Перед правкой копия рядом, про это уже писали в соседней теме. Плюс проверка синтаксиса до перезапуска службы, у большинства она есть отдельной командой.

sonyaK
sonyaK
Новичок
сообщений 240
с фев, второй сезон
15 июля, 14:06#3
Денис Прошин: одно изменение за раз

Звучит очевидно, но именно этого я и не делала.

Костя Фомин
Костя Фомин
Знаток
сообщений 1600
с апр
22 декабря, 17:23#4

Ещё три штуки в копилку.

sudo без понимания это главный источник бед. Прочитал строку, понял каждое слово, потом уже вводи.

Пакеты из случайных источников в систему ставить незачем. Если очень хочется попробовать, для этого есть контейнер.

И держи под рукой второй способ попасть в машину. Потеря сети после правки конфига лечится за минуту, когда есть доступ через консоль хостера.

Ирина Пахомова
Ирина Пахомова
Новичок
сообщений 280
с янв, второй сезон
1 мая, 08:40#5

после истории с сетью я правлю сетевые настройки только с таймером отката

zapuskator
zapuskator
Участник
сообщений 420
с ноя
8 октября, 11:57#6

Ирина дело говорит, поясню приём для новичков.

Правишь настройки сети удалённо и заранее ставишь команду, которая через десять минут вернёт старый файл и перезапустит службу. Связь после правки жива, ты эту команду отменяешь. Связь пропала, через десять минут машина откатится сама.

echo 'cp /etc/network/interfaces.bak /etc/network/interfaces && systemctl restart networking' | at now + 10 minutes

Меня это спасало дважды.

sonyaK
sonyaK
Новичок
сообщений 240
с фев, второй сезон
15 марта, 14:14#7

Про откат по таймеру вообще не слышала. Записала себе крупными буквами.

А контейнеры для новичка не перебор? Читала про них, выглядит как отдельная профессия.

Артур Вагнер
Артур Вагнер
Знаток
сообщений 1290
с мая
22 августа, 17:31#8

Соня, для твоей задачи хватит одного уровня понимания: контейнер это коробка, внутри которой стоит своя маленькая система. Что бы ты там ни сломала, наружу не протечёт.

Минимальный сценарий, никакой профессии не требует:

docker run --rm -it -v ~/rabota:/rabota python:3.11-slim bash

Разбор строки по кускам. --rm значит выбросить коробку после выхода. -it даёт живой терминал. -v пробрасывает твою рабочую папку внутрь. Дальше ты внутри, ставишь что хочешь, ломаешь что хочешь, выходишь по exit, и от всего этого не остаётся следа.

Это же и ответ на твоё «а вдруг сломаю». Пробуй в коробке, на машину переноси то, что заработало.

Где что пробовать
Где что пробовать
конфиг без комментария это загадка
Ирина Пахомова
Ирина Пахомова
Новичок
сообщений 280
с янв, второй сезон
1 января, 08:48#9

Артур, про -v добавлю: домашнюю папку целиком пробрасывать не надо. Один неверный путь внутри коробки, и вынесет всё.

Костя Фомин
Костя Фомин
Знаток
сообщений 1600
с апр
8 июня, 11:05#10

Верно. И ещё мелочь про привычки: заведи файл журнала прямо в домашней папке. Дата, что поставила, что поправила, одна строка на событие. Когда через две недели что-нибудь отвалится, причина найдётся за минуту.

Денис Прошин
Денис Прошин
Знаток
сообщений 1000
с июн
15 ноября, 14:22#11

Журнал поддерживаю. У меня он лежит в git вместе с самими конфигами, история правок видна построчно.

sonyaK
sonyaK
Новичок
сообщений 240
с фев, второй сезон
22 апреля, 17:39#12

Отчёт за две недели. Питон уехал в отдельные окружения, опыты с пакетами гоняю в контейнере, журнал веду, конфиги правлю с копией рядом.

Ноутбук цел, переустановок ноль. Про таймер отката рассказала коллеге, он уже успел им воспользоваться.