Bug 34967 - Запретить запуск нескольких копий
Summary: Запретить запуск нескольких копий
Status: REOPENED
Alias: None
Product: Sisyphus
Classification: Development
Component: livecd-install (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Michael Shigorin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-05-30 13:02 MSK by Антон Мидюков
Modified: 2023-09-14 19:34 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Антон Мидюков 2018-05-30 13:02:03 MSK
В лайве можно случайно запустить инсталлятор дважды. При этом даже закрытие одного из инсталляторов уже не исправит ситуацию, установить не удастся. Во время инсталляции на шаге 5 ничего не отображается, хотя копирование, видимо идёт. После окончания копирования уже ничего сделать нельзя, перехода на следующий шаг не происходит.

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

Правда тут есть вопрос, когда этот lock файл удалять? После успешной установки его точно удалять не надо. Также под вопросом: если установку прервать, то второй раз установить успешно возможно или нет (не проверял, но проверю).

И надо, чтобы создавалось диалоговое окно с сообщением, что инсталлятор уже был запущен.
Comment 1 Антон Мидюков 2018-05-30 13:14:42 MSK
Хм. А не получается запустить дважды. Это, оказывается, надо было очень постараться, чтоб успеть запустить вторую копию :-)
Comment 2 Антон Мидюков 2018-10-01 18:43:02 MSK
Не, всё-таки иногда получается в некоторых DE (Mate), если перед этим выделить значок и щёлкнуть два раза. Или три раза щёлкнуть по значку.

Вот только побороть такое не так уж просто. Если добавить в начало скрипта /usr/sbin/livecd-install:

sleep 1 ms

То при таком нажатии окна установки будут появляться и тут же закрываться, что тоже совсем не то, что хотелось. Но всё же лучше, так как даже закрыв лишние окна процесс установки завершится с ошибкой.

Аналогичный эффект получается, если грепать запущенный процесс:

pgrep alterator-wizard > /dev/null && exit

Потому раз нет разницы, можно и sleep использовать.
Comment 3 Антон Мидюков 2023-09-14 19:34:05 MSK
livecd-install в регулярках не используется около года уже. Поэтому этот баг больше не является багом регулярок.