CIFS 마운트에서 파일을 삭제하는 방법은 무엇입니까?

CIFS 마운트에서 파일을 삭제하는 방법은 무엇입니까?

내 단계는 다음과 같습니다.

mkdir /mnt/docs
chown www-data:www-data /mnt/docs
ls -l /mnt

긍정적인 결과:

drwxr-xr-x 2 www-data www-data 4096 Jan  6 01:14 docs
drwxr-xr-x 2 root     root     4096 Dec  8 21:46 cdrom

이제 아래와 같이 원격 공유를 성공적으로 마운트했습니다( touch루트로 파일을 보낼 수 있음).

mount -t cifs //192.168.1.10/Public/Documents/Docs -o username=****,password="****" /mnt/docs
ls -l /mnt

부정적인 결과(소유자가 루트로 돌아감):

drwxr-xr-x 2 root root    0 Jan 12 02:51 docs
drwxr-xr-x 2 root root 4096 Dec  8 21:46 cdrom

그런 다음 이와 같은 심볼릭 링크를 사용해 보았습니다 chown(-h 사용).

chown -h www-data:www-data /mnt/docs
ls -l /mnt

하지만 결과는 아직

drwxr-xr-x 2 root root    0 Jan 12 02:51 docs
drwxr-xr-x 2 root root 4096 Dec  8 21:46 cdrom

루트가 아닌 사용자로 로컬 마운트 지점에 공유를 마운트하는 방법은 무엇입니까? 목표는 Apache가 원격 공유에 쓸 수 있도록 하는 것입니다. Debian 또는 CentOS 시스템용 솔루션을 높이 평가합니다. 또한 chmod효과가 없습니다.


관련된:심볼릭 링크 생성 실패: 소유권 변경 문제

답변1

어떤 심볼릭 링크를 언급하고 있는지 잘 모르겠습니다. 변경할 수 없는 것은 /mnt/docsCIFS 공유에 대한 마운트 지점의 소유자입니다. 마운트 포인트 소유자가 무언가가 설치된 사용자( root)로 변경됩니다.

root마운트만 가능 하므로 마운트 지점(및 기본 내용)의 소유자를 어떻게 변경합니까? uid및 옵션( gid필요한 경우 forceuid및 옵션)을 사용합니다 forcegid.

다음 매뉴얼 페이지를 참조하십시오 mount.cifs.

uid=매개변수

서버가 소유권 정보를 제공하지 않으면 설치 프로그램은 마운트된 파일 시스템에 있는 모든 파일 또는 디렉터리의 uid를 소유하게 됩니다. 사용자 이름이나 숫자 uid로 지정할 수 있습니다. 지정하지 않으면 기본값은 uid 0입니다.

따라서 mount명령은 다음과 같아야 합니다.

mount -t cifs \
      -o username=****,password="****",uid=www-data \
      //192.168.1.10/Public/Documents/Docs \
      /mnt/docs

관련 정보