향후 50년 동안 Linux 프로그램을 계속 실행하시겠습니까? [폐쇄]

향후 50년 동안 Linux 프로그램을 계속 실행하시겠습니까? [폐쇄]

2개월 후에 중단될 Ubuntu 16.04 LTS에서 실행되는 프로그램이 있습니다. 이 프로그램은 QT4를 사용하는 Python 2 애플리케이션입니다. 잘 작동하고 우분투 20으로 옮기고 싶습니다. 조만간 Python2와 QT4는 더 이상 공식적으로 지원되지 않습니다. 좋아, 비공식 저장소를 사용하면 누락된 부분을 설치할 수 있을 것입니다. 하지만 2025년(Ubuntu 20 지원 종료)에도 같은 상황이 될 것이고, 오래된 라이브러리를 설치하는 것은 더욱 악화될 것입니다.

프로그램의 특성상 콘텐츠의 유효기간은 없으며 향후 50년 동안 사용할 수 있기를 바랍니다. 저는 항상 오픈 소스를 믿어왔지만 이제 소스 코드에 대한 액세스가 전부가 아니라는 사실을 깨달았습니다. 저자는 이를 Python3/QT5로 변환하지 않을 가능성이 높지만(지난 4년 동안 업데이트하지 않음), 설사 그렇게 한다고 해도 어느 날 QT5 및 Python3 지원이 중단될 것이기 때문에 실제 솔루션이 아닐 것입니다. .

나는 파이썬을 바이너리로 컴파일하기 위해 두 가지 다른 방법을 사용해 보았습니다. 어느 정도는 작동하지만 python2 애플리케이션으로 실행할 때 1초에 비해 프로그램이 매우 느리게(30초) 시작됩니다. 또한 이와 같이 컴파일된 바이너리(Ubuntu 16 사용)는 향후 수십 년 동안 Ubuntu의 모든 다음 LTS 릴리스(glibc 종속성 등)에서 작동합니까?

이 문제를 해결할 수 있는 창의적인 아이디어가 있기를 바랍니다. 감사합니다!

답변1

그런 요구사항을 갖고 있는 회사에서 일하다 보면 100년 정도에 관심을 갖게 됩니다. 솔직히 50년과 100년의 차이는 그리 크지 않은 것 같습니다. 미래에 대한 모든 베팅은 잘못된 것입니다. 그래서 저는 제가 여러분에게 말하는 어떤 조언에도 매우 회의적입니다.이것또는저것여전히 주변에있을 것입니다.

내가 일하는 회사는 자신이 만든 콘텐츠가 100년 후에도 사람들이 읽을 수 있을지에 더 관심이 있다. 이를 위해 그들은 해당 기간 내에 작동하는 소프트웨어가 없다는 사실을 거의 받아들였습니다.

대신, 파일 형식을 읽기 쉽고, 잘 문서화되고, 개방적이며, 가능하다면 설명이 가능하도록 만드는 데 더 중점을 둡니다.

이로 인해 모든 것을 개방형 XML 표준으로 저장하고 SQL 데이터베이스만 보조 인덱스로 사용하게 되었습니다. 이들은 시간이 지남에 따라 소프트웨어가 변경될 것이라는 점을 인정하지만 최소한 파일 형식을 제어할 수 있습니다. 이는 항상 새로운 소프트웨어를 호환 가능하게 만들 수 있는 방법이 있다는 것을 의미합니다.


웹 기반 소프트웨어 GUI는 특정 데스크탑 환경이나 플랫폼 라이브러리에 연결된 소프트웨어보다 소프트웨어를 활성 상태로 유지하는 데 더 좋습니다. HTML은 1993년에 시작되었으며 많은 변화를 겪었음에도 불구하고 가장 간단한 기능으로는 여전히 이전 버전과 호환됩니다.

지금 소프트웨어를 이식하는 경우 웹 기반 옵션으로 이식하는 것이 더 나을 수 있습니다.

하지만 무엇이 살아남을지 예측하는 것은 정말 불가능합니다. 내 말은포트란을 기억하는 사람은 누구입니까?


소프트웨어가 매우 오래되었을 때(제가 지원하는 가장 오래된 소프트웨어는 약 20년 정도 되었습니다). 최후의 수단은 (다시) 업그레이드할 수 없다는 사실을 받아들이고 가능한 한 오랫동안 실행 중인 물리적 상자를 활성 상태로 유지하는 것입니다. 이는 일부 산업에서 놀랍도록 일반적인 전술입니다("오늘날의 우주선이 여전히 1990년대 프로세서를 사용하는 이유").

Muru가 의견에서 지적했듯이 가상 머신에서 이 기능을 가능한 한 빨리 설정하는 것이 좋습니다. 얼마 전 나는 그러한 "블랙 박스 서버"가 하드 드라이브 오류를 겪고 이전 버전의 Linux를 실행하는 다른 서버를 구하려고 1년 이상을 소비하는 것을 보았습니다.

또한 보안이 문제가 될 수 있다는 점을 기억하세요. 소프트웨어의 보안 허점은 패치할 수 없기 때문에 또 다른 취약점이 나타날 경우를 대비해 방화벽을 깔끔하게 유지해야 합니다.힘든 노력.


그러나 마침내 주요 문제를 발견했습니다. 도서관은 지원을 잃었습니다. 운영 체제는 이전에 컴파일된 라이브러리와 호환되지 않는 경우가 많습니다. 마지막으로CPU 수명이 다 되었습니다그리고 귀하가 대체품을 얻을 수 있다는 보장도 없습니다.

관련 정보