|
Дружественные сайты: alv.me и Rus-Linux.net
|
Здравствуйте, гость ( Вход | Регистрация ) Поиск ·
RSS

При репосте новостей с других сайтов размещайте в сообщении текст новости целиком, под ним указывайте ссылку на источник, а в начало заголовка добавляйте сокращённое название сайта.
Репосты не включаются в нашу новостную ленту.
![]() |
Jan 16 2015, в 11:16
Сообщение
#1
|
|
![]() Open Source geek Сообщений: 336 Вставить имя : Цитата ОС: Ubuntu Linux Город: Москва
Группа: Участники
Автор темы |
В коде Bash-скрипта Linux-клиента Steam обнаружили досадную ошибку, которая может привести к полному удалению из операционной системы всех файлов, для которых у текущего пользователя есть права на запись. Ошибка в скрипте от Valve напоминает легендарный баг в коде install.sh проекта Bumblebee для драйверов NVIDIA (см. GitHub), который удалял всё содержимое файловой системы, за что снискал широкую огласку в Open Source-сообществе. Посудите сами — вот фрагмент исходного кода из Bash-скрипта от Steam, что может спровоцировать выполнение команды rm -rf /*:
# 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/"*
Баг в Linux-версии Steam не просто является «потенциальным»: в тикетах GitHub проекта уже появилась запись от первого(?) пользователя, непосредственно пострадавшего ввиду неожиданной работы скрипта. Сообщество уже предлагает свои варианты исправления этой ошибки, так что новый релиз Linux-версии Steam должен быть не за горами. оригинал на www.nixp.ru -------------------- По-моему, это еще один повод перейти на Убунту.
|
|
|
|
Jan 16 2015, в 12:24
Сообщение
#2
|
|
|
Многоуважаемый джинн... Сообщений: 1659 Вставить имя : Цитата ОС: Slackware64-14.1
Группа: Участники
|
Я, честно говоря, так и не понял, что это за зверь - steam.
Вот эта хреновина, которую надо себе на комп поставить - она для чего? Что она делает, помимо темы данной новости? Лицензия проприетарная. Код закрытый что ли? Я сунулся, было, попробовать, но для Linux там ссылка только на deb-пакет. В слакбилдах, правда, что-то такое нашлось. Но так я его и не поставил, уже не помню, почему. А так - я не игрок. В общем, прожил я без него всю жизнь - и дальше проживу. -------------------- |
|
|
|
Jan 16 2015, в 12:32
Сообщение
#3
|
||||
![]() grammatikführer Сообщений: 13059 Вставить имя : Цитата ОС: Debian GNU/Linux Город: Санкт-Петербург
Группа: Модераторы разделов
|
Это типа магазина приложений. Получает данные карточки, ставит игрушку в хомяк.
-------------------- Пишите правильно:
|
|||
|
|
||||
Jan 16 2015, в 12:58
Сообщение
#4
|
|
![]() фанат консоли (= Сообщений: 4348 Вставить имя : Цитата ОС: GNU/Debian, RHEL
Группа: Модераторы разделов
|
см. GitHub ссылка неправильная. правильная здесь (:
-------------------- UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code. |
|
|
|
Jan 16 2015, в 18:30
Сообщение
#5
|
|
|
Коренной житель Сообщений: 837 Вставить имя : Цитата ОС: Ubuntu 10.04, Debian 7 и 6 Город: Москва
Группа: Участники
|
Код STEAMROOT="$(cd "${0%/*}" && echo $PWD)" Вот кто-то может мне объяснить зачем вообще эыла нужна эта конструкция? На ЛОРе мне так толком не ответили (только пожаловались на трудности борьбы с перлозависимостью). Может я не понимаю чего-то важного, но ведь при нормальной работе скрипта эта конструкция должна быть эквивалентна Код STEAMROOT="${0%/*}"
|
|
|
|
Jan 16 2015, в 18:46
Сообщение
#6
|
||||
![]() grammatikführer Сообщений: 13059 Вставить имя : Цитата ОС: Debian GNU/Linux Город: Санкт-Петербург
Группа: Модераторы разделов
|
Может я не понимаю чего-то важного, но ведь при нормальной работе скрипта эта конструкция должна быть эквивалентна Код STEAMROOT=`dirname $0` она эквивалентна у нормальных людей. Но им проще накатать пять строк комментария, из которого всё равно ничего не понятно, чем ещё одну строку кода. Итог: проверка существования каталога оказалась совсем не в том месте, в котором должна была быть, и не сработала.test -d "$STEAMROOT" || ... Upd. Хотя нет, наверное это была не проверка, а такой извращённый способ получить абсолютный путь к каталогу. Причём, похоже, довольно распространённый: https://stackoverflow.com/questions/5756524...n-macos#5756763 http://iallex.com/get-absolute-path-from-a-shell-path/ Я бы для этого использовал readlink -f, хотя это прокатило бы только при наличии гнутого readlink. -------------------- Пишите правильно:
|
|||
|
|
||||
Jan 16 2015, в 19:05
Сообщение
#7
|
|
![]() Не ходи по косогору, сапоги стопчешь! Сообщений: 1423 Вставить имя : Цитата
Группа: Участники
|
Я, честно говоря, так и не понял, что это за зверь - steam. Я сунулся, было, попробовать, но для Linux там ссылка только на deb-пакет. Debian 8 - из коробки есть этот Стим (в ветке non-free). Инсталлировал, попробовал Team Fortress, Civilization 5, Half-Life 2 - всё работает прилично, играть в принципе можно. Игр под Linux & SteamOS не много. Для игромана - развернуться негде, только Windows, только хардкор... В принципе штука удобная. Но - на любителя игр. Цитата В общем, прожил я без него всю жизнь - и дальше проживу. Именно. К тому же этот Стим ещё и поднаср... подгадить может, оказывается. P.S. Жаль, что JA2 в Стиме только для Windows. С вайном у меня она как-то не срастается... -------------------- Новые сапоги всегда жмут.
|
|
|
|
Jan 17 2015, в 18:24
Сообщение
#8
|
|
![]() Свой человек Сообщений: 1100 Вставить имя : Цитата ОС: Rosa Fresh, Debian, RELS Город: Барнаул
Группа: Участники
|
В SteamOS был более эпичный баг, который сносил все разделы на всех винтах при попытке установить сабж.
-------------------- Понимание - это меч с тремя кромками: ваша правда, наша правда и Истина.
Жизнь - игра: сюжет задуман фигова, но графика хорошая... Лучший игровой сервер - Земля: карта всего одна, но на 7 миллиардов игроков; читеров нет, админ терпеливый, но если уж забанит... |
|
|
|
Jan 17 2015, в 18:37
Сообщение
#9
|
||||
![]() grammatikführer Сообщений: 13059 Вставить имя : Цитата ОС: Debian GNU/Linux Город: Санкт-Петербург
Группа: Модераторы разделов
|
yamah
А разве там сабж не из коробки? В чём тогда вообще смысл этой steamos? -------------------- Пишите правильно:
|
|||
|
|
||||
Jun 13 2016, в 20:53
Сообщение
#10
|
|
![]() Не ходи по косогору, сапоги стопчешь! Сообщений: 1423 Вставить имя : Цитата
Группа: Участники
|
P.S. Жаль, что JA2 в Стиме только для Windows. С вайном у меня она как-то не срастается... Оказывается, ja2-stracciatella ще не вмерла! v0.15.0 релиз от 23.05.2016. amd64 deb-пакет нормально воткнулся в Ubuntu 14.04, data скопировал с виндовозной установки игры - "Золотая серия" Буки 2002 г. Всё работает, зависаний и вылетов пока не было. Играть можно. Нанял Ивана, Омерту зачистил. -------------------- Новые сапоги всегда жмут.
|
|
|
|
![]() |
|
Текстовая версия | Сейчас: 6th January 2018 - в 09:57 |