$ sqlite3
SQLite version 3.37.2 2022-01-06 13:25:41
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> CREATE TABLE user (
id INTEGER PRIMARY KEY,
username TEXT UNIQUE,
usertg TEXT UNIQUE,
name TEXT UNIQUE
);
sqlite> insert into user (name) values ('test');
sqlite> insert into user (name) values ('test');
Error: stepping, UNIQUE constraint failed: user.name (19)
sqlite> insert or ignore into user (name) values ('test');
sqlite> insert or ignore into user (name) values ('test');
sqlite> insert or ignore into user (name) values ('test');
sqlite> select count(*) from user;
1
sqlite>
$ sqlite3 bot.db
SQLite version 3.37.2 2022-01-06 13:25:41
Enter ".help" for usage hints.
sqlite> .schema files
CREATE TABLE files (
file_name TEXT VARCHAR(256) UNIQUE,
file_id TEXT VARCHAR(256)
);
sqlite>
1. Снять образ системы (бэкап).
2. Накатить новую версию Debian
3. Постараться добиться работоспособности астериска
4. Повторить сначала в случае удачи.
В итоге, если повезёт, получится новая версия Debian с сохранением старого астериска.
Но лучше превентивно начинать разбираться с бардаком в астериске. Документировать, разбирать конфиг на части. Собрать тестовый стенд на новой версии и постепенно приделывать к нему старый функционал.
Иначе можно когда-нибудь оказаться в ситуации, в которой всё помрёт и быстро уже не починишь. Или когда потребуется что-то, что нужно срочно, а в старом астериске уже не сделаешь.