Ошибка в Steam для Linux может привести к удалению всех данных пользователя

Один из пользователей Steam на платформе Linux столкнулся с непонятным пропаданием всех своих данных после перемещения директории ~/.local/share/steam на новый диск через символическую ссылку. После перемещения данных, запуск Steam завершился крахом, а повторный запуск привёл к инициированию переустановки клиента Steam. После данных манипуляций все принадлежащие текущему пользователю данные оказались удалены, в том числе данные, размещённые в директории пользователя и в примонтированном накопителе.

Причиной удаления оказался скрипт steam.sh, в котором была допущена ошибка, приводящая к запуску команды «rm -rf /» в случае проблем с доступом к директории с данными Steam. В частности, в скрипте присутствует строка rm -rf «$STEAMROOT/»*, которая должна была выполнить чистку содержимого директории с данными Steam при переустановке. Заполнение переменной производится командой STEAMROOT=»$(cd «${0%/*}» echo $PWD)»). Таким образом, в случае, если директория не найдена, в переменную STEAMROOT записывается пустая строка, что приводит к выполнению rm -rf «/»* и удалению в системе всех данных, принадлежащих пользователю. Следует отметить, что похожая проблема наблюдается и в версии для платформы Windows (при установке Steam в «C:Program Files» вместо «C:Program FilesSteam» может быть удален весь «C:Program Files»).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.