학생 프로젝트의 일환으로 저는 다른 사람들이 연결을 시도하고 기능의 완전성을 테스트할 수 있도록 Node.js 기반 서버 애플리케이션을 서버에 호스팅할 것입니다. 문제는 제가 할당된 서버가 다른 도시 컴퓨터의 LAMP 서버라는 것입니다. 보안상의 이유로 서버의 인터넷 연결이 끊어져 있어, 대학 인트라넷에서는 SSH를 통해서만 접속할 수 있습니다.
내 애플리케이션에는 Node.js가 필요하지만 인터넷에 연결되어 있지 않기 때문에 수동 설치를 수행해야 합니다. 이를 수행하는 유일한 방법은 sftp를 사용하여 가상 서버를 호스팅하는 서버로 파일을 보낸 다음 가상 서버에 있는 내 사용자의 홈 디렉터리에 배치하는 것입니다.
위의 단계를 완료하면 문제가 시작됩니다. 미리 컴파일된 바이너리를 서버에 넣는 것만으로는 작동하지 않습니다. 여전히 라이브러리가 서버에 설치되어 있다는 것을 알 수 없습니다. 소스 코드를 서버에 보내고 원격으로 컴파일하려고 시도했지만(Ssh 연결을 사용하여) 오류가 반환되었습니다 Cannot open : Disk quota exceeded
. 이는 가상 서버가 자동으로 사용 가능한 공간을 확장해야 한다고 확신했음에도 불구하고 그렇습니다.
무슨 일이 일어나고 있는지 이해하도록 도와줄 수 있는 사람이 있나요?
답변1
내가 찾아 낼 것이다정확히원격 시스템에서 사용하는 운영 체제 및 CPU 유형을 확인한 후 로컬 시스템을 구축합니다.가상 기기동일한 운영 체제와 CPU 유형을 사용하십시오. 그런 다음 그 안에 작업 환경을 구축하면 tar
원격 시스템에서 실행하고 압축을 풀 수 있습니다.
--prefix
소프트웨어를 구축할 때 나는 스크립트 옵션을 많이 사용하여 configure
모든 바이너리를 내가 선택한 디렉토리 구성표에 강제로 넣습니다. 예를 들어 $HOME/myproject
모든 것을 이식 가능하게 만듭니다.