/proc에서 파일의 UID 변경

/proc에서 파일의 UID 변경

후속 조치에서이 문제사용자 변경에 대해서는 UID소유권을 변경하는 것이 좋습니다.모든 파일시스템에서 (이 답변)

find / -uid 1000 -exec chown 5000 '{}' \+

1000오래된 것은 어디에 있고 UID, 5000새로운 것은 어디에 있습니까? 방금 /home/seb(외부적으로) 가지고 있는 모든 파일을 나열했는데 UID=1000대부분이 해당 /proc디렉토리에 있다는 것을 알았습니다.

find / -uid 1000 \! -wholename '/home/seb/*'

구하다또는필요한권장되는 변경사항을 구현하시겠습니까 UID? 이 파일의 목적은 잘 모르지만 /proc새 사용자로 로그인할 때 필요에 따라 생성된다고 가정합니다.

/dev참고: 에 속하는 일부 파일도 있지만 UID=1000이는 사용자가 연 터미널일 뿐입니다(예 /dev/pts/23: )

답변1

나는 당신이 말하는 파일이 그 (단지 디지털 디렉토리) /proc에 속한다고 가정합니까? 이는 디렉토리와 연관된 프로그램을 실행하는 사용자의 UID로 설정된 UID를 갖는 프로세스 계정 디렉토리입니다. pid가 "12345"인 프로그램을 시작하면 해당 프로그램은 사용자의 소유가 됩니다.UID=1000/proc/12345/proc/12345

/procproc의 어떤 것이 실제 파일 시스템이 아니고 의사 파일 시스템이기 때문에 작동할지 의심됩니다 .

마찬가지로 /devTTY는 현재 이를 사용하고 있는 사용자가 소유합니다.

답변2

UID번호가 매겨진 디렉터리는 변경 사항이 아니라 프로세스에 대한 열린 핸들을 나타냅니다. UID=1000소유한 모든 프로세스를 종료(사용) ps하거나 해당 프로세스의 모든 핸들을 닫을(사용 ) 수 있습니다 lsof.

답변3

파일의 소유권을 변경하는 것은 불가능하거나 필요하지 않습니다 /proc. 이러한 파일은 디스크에 저장되지 않으며 사용자가 읽을 때 커널에 의해 동적으로 생성됩니다. 루트에 속하지 않는 유일한 파일은 실행 중인 프로세스에 대한 정보를 제공하는 파일입니다. 이 파일은 프로세스를 실행 중인 사용자에게 속합니다.

디스크 파일의 소유권을 변경하기 전이나 후에 이전 uid에서 실행 중인 모든 프로세스를 종료합니다. (실행 중인 프로세스의 uid를 변경할 수 없습니다.)

이 사용자에게 속한 터미널( /dev/tty*또는 )이 있는 경우 /dev/pts/*해당 uid를 변경해야 합니다. 사용자 프로세스를 종료한 후에는 프로세스가 많이 남지 않을 가능성이 높습니다.

관련 정보