2012-10-14 5 views
-6

파일 경로가 주어지면 어떻게 메타 데이터를 얻을 수 있습니까? 여기에 내 문제가있다 : 필자는 파일을 정말로 숨길 필요가있다. (심지어 ls-a라면 어디서든 나타나지 않아야한다.) 나는 되돌아 올 때 같은 상태를 유지할 필요가 없다. 이제는 메타 데이터를 복사하여 어딘가에 저장할 수 있다면, 필요할 때 다시 쓸 수 있습니다. 내 문제를 해결할 것입니다.커널 공간에서 파일의 메타 데이터를 얻는 방법 - linux 3.5

  1. 해당 메타 데이터의 복사본을 만들어야합니다. 다른 장소.
  2. 내가 원할 때 그 메타 데이터를 다시 복사 할 수 있어야합니다.

어떻게 파일의 메타 데이터를 가져올 수 있습니까? 파일을 완전히 숨기는 더 좋은 방법이 있다면 어떻게 할 수 있습니까?

이것은 개인 프로젝트이며 업스트림 코드는 없습니다.

나는 리눅스 커널 3.5.4v

+0

파일 하위 시스템의 디자인이 Unix 및 Linux의 중심이므로 파일을 쉽게 숨기지 않고도 쉽고 안정적으로 수행 할 수 있습니다. 그러나, 나는 왜 당신이 임시 파일을 사용할 수 없는지 이해하지 못한다. (일부 사용자 공간 프로세스에 의해 여전히 열려 있지만,'unlink'-ed). –

+0

당신이하고있는 일은 완전히 악의가 아니라해도 사악합니다. 나는 당신이 배우는 것, 아무도 악용하려고 시도하지 않는다고 믿습니다. 그러나 당신이하려고하는 일은 긍정적 인 용도가 없으며 악의적 인 것들만 (맬웨어, 스파이웨어, 웜, 바이러스라고 생각하십시오)은 변하지 않습니다. * 귀하가 그러한 정보를 사용하려고하지 않더라도 *이 질문을 읽는 다른 모든 사람들은 책임이 있습니다. –

답변

0

하고 있어요 좀 더 많은 질문에 대해 생각했다.

물론 숨겨진 파일의 가능성을 만들 수있는 파일 시스템 고유의 방법이 있습니다. 그러나 나는 그것들을 탐구하는데 전혀 관심이 없습니다. 그러나 사용자의 요구에 맞는 다른 접근 방법 인 변형이 있습니다.

open 시스템 콜을 정확하게 가로 채기 만하면 비슷한 효과를 얻을 수 있습니다. 열려있는 파일이 존재하지 않는 파일로 해석되지만 디렉토리와 파일 이름이 일치하는 경우 실패하는 대신 "숨겨진"파일에 대한 특수 경로를 생성하고 대신 열기하십시오.

기존 파일은 실제로는 다른 곳의 파일처럼 완벽하게 정상적인 파일이됩니다. 물론 루트 전용 액세스 가능한 디렉토리 (drwx------ root:root)에 넣을 수 있으며 액세스 보안 검사를 열 때이를 숨겨 "숨김"상태로 만들 수 있습니다.

관련 문제