Это сообщение блога. Чтобы прочитать оригинальную запись, нажмите сюда »
Если вы пользуетесь Linux и Steam, и вам стало не хватать места для хранения игр — не вздумайте переносить папку Steam в другую директорию — вы можете лишиться всех своих файлов.
Данное действие на своей собственной шкуре проверил пользователь keyvin, переместив Steam в другую папку и перезапустив его. Когда Steam все-таки запустился со второй попытки, keyvin с удивлением обнаружил, что все его файлы на ПК, включая файлы на примонтированных внешних накопителях, удалены.
Виновниками всех бед считаются следующие строки в скрипте инсталляции Steam:
# figure out the absolute path to the script being run a bit
# non-obvious, the ${0%/*} pulls the path out of $0, cd's into the
# specified directory, then uses $PWD to figure out where that
# directory lives — and all this in a subshell, so we don't affect
# $PWD
STEAMROOT=»$(cd «${0%/*}» && echo $PWD)»
[…]# Scary!
rm -rf «$STEAMROOT/»*
Согласно этим строкам, если папка со Steam перемещена, то STEAMROOT принимает значение «/», то есть корневой каталог операционной системы, и тогда выполняется команда rm -rf «/»*, то есть удалить все из корневой директории. Если проводить аналогию с Windows, это (в шутливой форме) сравнимо с format c:.
Таким образом, Steam под Linux не любит произвольного перемещения по папкам, а мы ожидаем от Valve хотфикс решения этой проблемы, хотя уважающие себя линуксоиды могут найти выход из этой ситуации самостоятельно.