Jak oszukać wersję Ubuntu widzianą przez aplikację?

17

Próbuję zainstalować Intel Beacon Mountain na 64-bitowym systemie Ubuntu 13.10 (Saucy Salamander).

Ale instalator narzekał, że nie jest to obsługiwany system operacyjny. Instalator obsługuje tylko 12.04, 12.10 i 13.04. Spojrzałem na skrypt, ale w końcu uruchamia inny instalator (binarny plik wykonywalny) i wydaje się, że sprawdza samą wersję Ubuntu. Ja po prostu spróbowaliśmy do modyfikowania /etc/issuei /etc/issue.net, ale zgodnie z oczekiwaniami, nie miałem szczęścia.

Nie jestem pewien, jakiego mechanizmu używa instalator do sprawdzania wersji systemu operacyjnego. Może lsb_release ?

Czy istnieje jakieś ogólne podejście do oszukiwania wersji systemu operacyjnego?

Właściwie nie interesuję się instalacją Beacon Mountain, ale chcę poznać sposób na oszukanie wersji systemu operacyjnego.

Younggun Kim
źródło
Dlaczego nie zrobisz tego, grep lsb_release {executable}jeśli pokazuje hit, o którym wiesz, że to plik;)
Rinzwind
@Rinzwind zrobiłem. ale nie ma miejsca. Może nie działa tak lsb_releasejak jest.
Younggun Kim
3
Czy upewniłeś się, że wymuszenie instalacji nie spowoduje żadnych problemów z danym programem? To prawda, że ​​często nie ma problemu z używaniem programu stworzonego dla starszej wersji systemu operacyjnego tylko w nieco nowszej wersji, ale należy pamiętać, że potencjalnie możesz mieć problem (najbezpieczniejsze rozwiązanie, jeśli dostępny jest kod źródłowy, byłoby oczywiście skompilowanie programu samodzielnie, ale może to mieć więcej wspólnego z różnicami kompilatora niż różnicami jądra, wciąż jestem trochę niedoświadczony pod względem przenośności programów Linuksa).
JAB
@ JAB Naiwnie oczekiwałem, że będzie dobrze działać i wiedziałem, że wymuszenie instalacji może spowodować potencjalny problem. W rzeczywistości nie został zainstalowany pomyślnie, ale mogłem kontynuować instalację bez narzekań na wersję.
Younggun Kim

Odpowiedzi:

20

Kluczem jest /etc/lsb-release.

Po prostu modyfikuję /etc/lsb-releasei działam. Nie wiedziałem wcześniej o tym pliku, ale /etc/issue. Jednak w moim rozumieniu /etc/issueplik jest używany do powitania powłoki, a /etc/issue.netplik do zdalnego powitania powłoki. (NAPRAW MNIE)

Rozpracowałem to strace lsb_release -ai stwierdziłem, że odczytał /etc/lsb-releaseplik.

Younggun Kim
źródło
znakomity :) godny pochwały.
Rinzwind