모든 프로세스와 사용자가 항상 접근할 수 있는 폴더가 있나요?

모든 프로세스와 사용자가 항상 접근할 수 있는 폴더가 있나요?

실행 중인 환경에서 디버깅 정보를 수집하는 스크립트가 있는데 해당 정보를 저장할 수 있는지 알아내야 합니다.

언제든지 호출할 수 있습니다.

  • 시작에
  • 시스템이 실행 중일 때
  • 종료하는 동안 기다려 주세요...
  • 모든 사용자 또는 프로세스/서비스.

언제든지 모든 항목에 액세스할 수 있는 폴더가 필요합니다.

이미 존재합니까? 그렇지 않다면 어떻게 구현할 수 있습니까?
이는 디버깅 목적이고 보안에는 관심이 없으므로 제품 배송 전에 완전히 제거됩니다.

답변1

/tmp하지만 거기에 저장된 데이터는 재부팅 시 삭제됩니다.

답변2

/예를 들어 이름을 지정 test하고 적절하게 권한을 설정하는 등 새로운 최상위 디렉터리를 만들 수 있습니다 .

sudo mkdir /test
sudo chmod 777 /test

최상위 디렉토리로 만들면 중간 디렉토리에 대한 권한에 대해 걱정할 필요가 없습니다.

코드/스크립트에서 디렉토리가 존재하는지 테스트하고 그렇지 않은 경우 테스트합니다.아니요프로덕션 시스템이라고 가정하여 생성합니다. 디렉토리에서 쓰기/읽기를 시도하는 루틴이 정상적으로 실패하는지 확인하십시오(프로덕션 시스템에 대한 일부 테스트 코드를 제거하는 것을 잊어버린 경우).

답변3

당신은 또한 사용할 수 있습니다/dev/shm/, 이는 메모리에 할당된 공간입니다. 공간은 RAM의 양에 따라 제한되지만 메모리에 있으므로 /tmp/하드 드라이브와 달리 대기 시간이 없습니다(SSD의 대기 시간은 0에 가깝기 때문에 그렇지 않습니다). 따라서 /dev/shm/적은 양의 데이터를 저장해야 하는 경우 대안으로 사용할 수 있습니다. 일부 Linux 배포판에서는 /run/shm/.

바라보다tmpfs더 많은 정보를 알고 싶습니다.

답변4

@Anthon의 답변은 귀하가 명시한 요구 사항에 대한 가장 좋은 답변일 수 있지만 fsck 이전과 도중에 해당 또는 @Creeks의 답변으로 극복할 수 없는 한 가지 단점이 있습니다. 대부분의 경우 UNIX 계열 시스템은 루트 파티션을 읽기 전용으로 부팅하고 오류를 확인한 다음 모든 것이 정상이면 읽기-쓰기로 다시 마운트합니다. 이것은 좋은 생각이지만 도구가 작동하지 않는 창을 남깁니다. 그것이 당신을 괴롭히지 않는다면 @Anthon이 당신의 사람입니다. 이 기간 동안 작업해야 하는 경우 실행 가능한 유일한 솔루션은 두 번째 컴퓨터와 몇 개의 직렬 포트입니다. 여기에는 하드웨어 요구 사항 증가, 속도 부족 등 여러 가지 단점이 있지만 가장 큰 장점은 직렬 포트를 훨씬 빠르게 사용할 수 있다는 것입니다(USB 직렬 어댑터를 제외한 대부분의 직렬 포트는 초기화 전에 사용 가능).

관련 정보