A Linux-os Steam futtatásáért egy steam.sh nevezetű bash script felel és ebben található a következő sor: rm -rf „$STEAMROOT/”*
Akik nem jártasak a Linux parancsok terén azoknak lebontva:
Az rm paranccsal lehet fájlt törölni és az -rf kapcsolókkal együtt könyvtárat és annak teljes tartalmát. A $STEAMROOT egy változó, mely tárolja a Steam könyvtár helyét.
A Valve hivatalos GitHub tárolóján feltűnt egy hibajegy mely arról számolt be, hogy egy Steam indítás hibába ütközött és újratelepítés után a rendszerről eltűnt minden felhasználói adat. A bejelentés után egyre többen számoltak be hasonló esetről.
Mint kiderült, ezt a fenti sor idézte elő, mely csak újratelepítés vagy a Steam adatok eltávolításakor futna le, ugyanis ha valami miatt a Steam nem tudta beolvasni a Steam könyvtár helyét, akkor üresen hagyta a változót és a parancs úgy hajtódott végre, hogy rm -rf /* mely annyit tesz, hogy a rendszeren belül minden fájlt töröl amihez a felhasználónak írási joga van.
A Valve szerencsére már javította a hibát és a fenti sort kiegészítették egy vizsgálattal mely megnézi, hogy üres-e a $STEAMROOT változó és ha igen akkor nem hajtja végre a parancsot.
Egyébként az eredeti kód érdekessége, hogy az említett parancs fölött egy rövid, de annál frappánsabb hozzászólást hagytak a fejlesztők: SCARY!
kpal
11 éve, 4 hónapja és 2 heteGyorsak 😮
darkomen
11 éve, 4 hónapja és 2 heteNem kellett sok mindent csinálniuk. Ez lett az új kód:
# Check before removing
if [ „$STEAMROOT” != „” ]; then
rm -rf „$STEAMROOT/”*
fi
A hibás kód amúgy már szinte kezdetek óta benne van, csak most jelentették.
warriorautobot
11 éve, 4 hónapja és 2 heteElég érdekes… ha tudtak a hibáról akkor miért csak most javították?
Se baj legalább kijavították 🙂
c64fun
11 éve, 4 hónapja és 2 heteAz 500 game nagyon durva. Ez pár éve elképzelhetetlen lett volna Linuxon! Hajrá Valve!
bvektor
11 éve, 4 hónapja és 2 heteVan egy olyan érzésem, hogy őket főként nem a Linuxot használó gamerek érdeklik, ha a saját Linux alapú OSüket nyomnák 😄
rdave
11 éve, 4 hónapja és 2 heteLényegtelen miért teszik, az eredmény ugyanaz. 🙂
totyak
11 éve, 4 hónapja és 2 heteHa a kezdetek óta ilyen hibás a rendszer, akkor annyira nem dícsérendő, hogy kijavították. Miért csak most?