리눅스 환경 (데비안 - 레니)에서 C로 프로그램을 작성 중이며 업데이트가있을 때 프로그램을 업데이트하고 싶습니다. 새 업데이트를 사용할 수 있음). 프로그램 자체를 업데이트 할 수있는 방법을 찾고 있습니다.리눅스 C - 프로그램이 스스로 업데이트 할 수있는 기능 구현하기
내가 생각하는 주요 프로그램은 업데이트를 처리하기 위해 새 프로그램을 호출하는 것입니다. 업데이터 프로그램은 소스 코드를 (액세스)가 소스 코드의 변경, 그런 일에 대한 업데이트 정보를 수신합니다 :
edit1: line 20, remove column 5 to 20;
edit2: line25, remove column 4-7 then add "if(x>3){" from the column4
edit3: line 26, enter a new line and insert "x++;"
다음, 주요 프로세스를 종료 소스 코드를 컴파일 한 후 교체 이전 바이너리와 새로운 바이너리.
또는 프로그램이 자체적으로 업데이트 할 수있는 기능을 구현하는 데 더 나은 (더 쉽고) 표준 방법이 있습니까?
이 프로그램을 사용하여 Linux 임베디드 보드가있는 시스템을 제어합니다. 따라서 소스 코드를 다른 사람이 액세스 할 수 없도록하려는 경우 (시스템이 해킹 당하거나 뭔가가있는 경우). 소스 코드를 사용하여 프로그램을 업데이트하는 가장 좋은 방법이 있다면 소스 코드의 보안을 어떻게 제안합니까? 내가 소스 코드를 암호화하도록 제안했다면, 프로그램이 소스 파일을 암호화하고 해독하기 위해 어떤 기능 (Linux C)을 사용할 수 있습니까?
원격 서버에서 업데이트를 확인하는 방법은 어떻습니까? 그게 선택의 여지가 있니? – Jeff
은 svn, git etc 트렁크를 업데이트 한 다음 코드를 다시 컴파일하고 svn 또는 git 등을 사용하여 더러운 작업을 수행하는 것이 가장 쉽습니다. – hetepeperfan
잘 읽었는지 모르겠지만 소스 코드를 신경 쓰면 보안 상자에 프로그램의 새 버전을 컴파일하고 바이너리를 보내야합니다 (또는 클라이언트가 가져 오도록하십시오). – Will