Я вижу некоторые неудобства в предоставленных решениях:
Переключатель --incognito удаляет кеш, что довольно плохо в большинстве случаев.
(Справка по копированию и вставке Chrome)
Google Chrome содержит сотни недокументированных флагов командной строки, которые добавляются и удаляются по желанию разработчиков.
--disable-session-crashed-bubble зависит от того, какую версию chrome вы используете, в самой актуальной версии v39 этот параметр не разрешен.
Решение, которое я сделал, состояло в том, чтобы изменить профиль пользователя и переписать статус сбоя на нормальный статус закрытия. Это простой хак, который отлично работает.
Это скрипт, который я запускаю в режиме киоска в сеансе только для Chrome под Ubuntu 12.04 и 14.04
#!/bin/sh
sed -i 's/"exited_cleanly": false/"exited_cleanly": true/' ~/.config/google-chrome/Default/Preferences
sed -i 's/"exit_type": "Crashed"/"exit_type": "None"/' ~/.config/google-chrome/Default/Preferences
google-chrome --kiosk "http://some_url"
Он просто находит и заменяет строку
- "Exited_cleanly" ложь
- exit_type ":" Crashed "
с
- "exited_cleanly": правда
- "exit_type": "Нет"
Так что, как бы ни закрылся хром. Он всегда будет думать, что он закрылся изящно.
(Проверено во многих версиях Chrome)