이것은 당연한 질문인 것 같지만 실제 정보를 얻지 못했습니다. 내 Ubuntu 서버에서 사용자 정의 구성 파일을 만들었습니다 /etc/cron.d
. 예를 들어 /etc/cron.d/MyCronTab
여기에 모든 것을 넣은 이유는 찾기 쉽고 수정하기 쉽기 때문입니다.
이제 나는 이 crontab에 민감한 내용을 넣지 않겠지만 Ubuntu는 기본적으로 이 파일에서 644를 좋아한다는 것을 알았습니다(루트는 읽기/쓰기 가능, 모든 사람이 읽을 수 있음). 사람들이 변경할 수 없더라도 백그라운드에서 어떤 작업이 실행될지 알 수 있도록 하는 것이 합리적일 수 있다고 생각합니다.
하지만 제 경우에는 특정 crontab 파일이 루트 및 관리 작업이기 때문에 해당 파일에 대한 정보를 노출하는 것은 좋은 생각이 아닌 것 같습니다.
/etc/cron.d/MyCronTab
그래서 루트만 읽고 쓸 수 있도록 내 file()에 대한 권한을 변경했는데 이는 완벽해 보였습니다. crontab에 다른 사용자가 실행하는 작업이 있어도 여전히 문제 없이 실행되어 완벽해 보였습니다.
내 관심사는 업데이트 시 Ubuntu 또는 cron 데몬이 내 프로필 권한을 다시 644로 재설정하여 모든 사람이 읽을 수 있도록 할 것인가, 아니면 이 디렉터리에 영원히 남게 될 것인가입니다.
답변1
이는 귀하의 파일이고 귀하는 해당 권한을 제어합니다. 패키지 업데이트나 cron 데몬 자체가 권한을 변경하지 않습니다.
일반적으로 아래 파일 중 상당수는 /etc
시스템에서 제공 하지만 /etc
이는 시스템 관리자의 도메인이므로 시스템은 해당 파일의 변경 사항을 유지합니다. 시스템 제공 구성 파일에 대한 변경 사항도 기본적으로 유지됩니다(업그레이드 중에 충돌이 발생하면 관리자에게 어떻게 해야 하는지 묻는 메시지가 표시됩니다).
Debian 및 우수한 파생 제품(Ubuntu 포함)에서 이 요구 사항은 다음과 같습니다.구성 파일의 정책 섹션;패키지는 구성 파일 처리를 에 위임 dpkg
하거나 관리자 스크립트에서 자체적으로 처리할 수 있습니다.
멱등성이어야 합니다(즉,
dpkg
설치 또는 제거 중 오류로 인해 다시 실행해야 하는 경우 올바르게 작동해야 함). 유지dpkg
관리자 스크립트를 호출할 수 있는 다양한 방법을 모두 처리해야 하며 덮어쓰기 또는 기타 요청 없이 사용해서는 안 됩니다. 사용자 구성을 손상시키고, 불필요한 질문을 해서는 안 되며(특히 업그레이드 중에) 좋은 시민이어야 합니다.
처음 설치하는 경우에도 기존 프로필은 유지됩니다. 즉, 나중에 자신의 프로필 중 하나와 충돌하는 패키지를 설치하게 되면 dpkg
어떻게 처리할지 묻는 메시지가 표시됩니다. 그러나 패키지를 제거하면 패키지에 "속해 있는" 것으로 간주되는 자체 파일을 포함하여 해당 구성이 모두 제거됩니다. 백업 전략에 이러한 내용이 포함되는지 확인하는 것이 좋으며 /etc
패키지에 대한 변경 사항을 추적하는 /etc
것도 좋습니다. 패키지 etckeeper
.