가상 박스, Linux 호스트, Windows 게스트, 공유 폴더 및 휴지통

가상 박스, Linux 호스트, Windows 게스트, 공유 폴더 및 휴지통

기본적으로 내가 찾고 있는 것은 실수로 Windows에서 파일을 삭제하고 해당 파일을 복원할 수 있는 (편리한) 방법이 없다는 두려움 없이 Debian Jessie 호스트와 Windows 7 게스트 간에 폴더를 공유하는 방법입니다.

나는 이것이 쉽게 달성할 수 있는 것이라고 생각했지만 전혀 그렇지 않은 것 같습니다.

약간의 인터넷 검색을 통해 TechNet에서 다음과 같은 매우 자세한 해결 방법을 찾았습니다.

매핑된 네트워크 드라이브에서 휴지통 활성화

그러나 결과적으로 양쪽 모두 Windows 환경에 있을 때 작동하는 것처럼 보입니다(아마도 VirtualBox가 아니라 예를 들어 서버 역할을 하는 NTFS가 활성화된 일반 Windows 시스템에서). 나와 다른 사람들의 댓글을 확인하세요.

... 파일을 삭제할 때 Windows는 먼저 해당 파일을 휴지통으로 이동할지 묻는 메시지를 표시한 다음 다른 대화 상자에서 권한(관리자가 부여한 권한)이 필요하다는 메시지를 표시하고 재시도 버튼을 표시합니다. 그런 다음 파일이 이미 삭제되었으므로 재시도를 클릭하면 실패합니다. 어쨌든 Explorer가 관리자 권한으로 실행되는지 여부는 문제가 되지 않습니다. 동작은 동일하기 때문입니다.

그래서 저는 이 문제에 대한 또 다른 해결책을 찾고 싶습니다. 게스트만으로 달성할 수 있는지(TechNet에 설명된 해킹과 같은) 호스트 설정에 대한 일부 변경이 포함되는지는 (현재로서는) 중요하지 않습니다. 어떤 의견이라도 만족합니다!

나는 섀도 복사본과 같은 것을 상상할 수 있습니다.ext4파일 시스템(가능한 경우) 또는 다음을 사용하여 파일 서버 설정삼바(?) 내 호스트에서 이를 게스트에게 매핑하는 방법을 찾는 중입니다.

보시다시피 저는 여기에 지식이 너무 적습니다 ...

답변1

Linux에서 Samba는 vfs_recycle 모듈을 사용하여 파일 삭제를 차단하고 파일을 다른 저장소로 이동할 수 있습니다.

다음 링크를 참조하세요.

답변2

@harrymc가 제공한 답변 덕분에 휴지통이 활성화된 Samba를 설정할 수 있었습니다. 제가 수행한 단계는 다음과 같습니다.

1. Virtual Box 공유 폴더 비활성화

우선 모든 파일 공유가 Samba 구성 네트워크 공유를 통해서만 이루어지도록 Virtual Box 공유 폴더를 비활성화했습니다. 하지만 필수 사항은 아닙니다.

2. 삼바 설치

그런 다음 다음 지침을 따랐습니다.https://wiki.debian.org/SambaServerSimple삼바 설치를 위해...

apt-get install samba samba-client

3. 삼바 사용자 생성

... 그런 다음 다음을 사용하여 새 사용자를 만듭니다.

smbpasswd -a johndoe

4. 삼바 구성 업데이트

공유 폴더를 구성하기 위해 호스트 컴퓨터의 이름으로 매핑될 /etc/samba/smb.conf해당 섹션을 업데이트했습니다 .[shared]//debian/shared데비안나의 경우에는.

[shared]
   path = /home/johndoe/shared
   comment = My Shared Folder
   read only = no
   browseable = yes
   create mask = 0777
   directory mask = 0777
   guest ok = no
   hide files = /.recycle/
   vfs objects = recycle
      recycle:repository = .recycle
      recycle:keeptree = yes
      recycle:versions = yes
      recycle:touch = yes
      recycle:minsize = 0
      recycle:maxsixe = 0

5. 삼바를 다시 시작하세요

구성을 완료한 후 파일을 저장하고 다음을 사용하여 삼바를 다시 시작했습니다.

sudo service smbd restart

6. 완료

그리고 그게 다야. Windows 게스트로 돌아가서 //debian/sharedWindows 탐색기를 사용하여 연결하고 다음에 대한 자격 증명을 입력했습니다.존 도우이전에 구성한 대로. 그리고 이제 파일을 삭제할 때 영구적으로 삭제할 것인지 묻는 메시지가 계속 표시되지만 확인하면파일은 실제로 삭제되지 않고 재활용 저장소 디렉터리로 이동됩니다.


노트:

나는 그것을 인식했다빈 폴더 삭제손님에게영구적으로 제거됩니다재활용 저장소 디렉토리로 이동하는 대신 호스트에서도 가능합니다.


휴지통 보호...

hide files = /.recycle/설정은 Windows 탐색기 표준 설정에서 재활용 저장소 폴더가 표시되지 않도록 보장하지만 공유 폴더 외부에서도 재활용 저장소를 사용할 수 있으므로 클라이언트가 해당 내용을 삭제할 수 없습니다. 이를 설정하려면 /home/johndoe/.shared.recycle다음을 사용했습니다.

      recycle:repository = ../.shared.recycle

추가 구성

이 질문의 범위를 약간 벗어났지만 여기에서 전체 구성 파일을 볼 수 있습니다. Samba를 설치한 후 처음에는 많은 설정이 [global]존재했습니다. 하지만 나는 항상 실제로 무엇이 구성되어 있는지 알고 싶었기 때문에 다음을 살펴보았습니다.https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html매뉴얼 페이지를 수정한 후 일부 기본 설정을 변경했습니다.

[global]
   workgroup = WORKGROUP
   dns proxy = no
   log file = /var/log/samba/log.%m
   max log size = 1024
   syslog only = no
   syslog = 0
   server role = standalone server

   map to guest = Never
   usershare allow guests = no

   pam password change = yes
   obey pam restrictions = yes
   unix password sync = no

   passdb backend = tdbsam
   encrypt passwords = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .


;[homes]
;   comment = Home Directories
;   browseable = no
;   read only = yes
;   create mask = 0700
;   directory mask = 0700
;   valid users = %S

;[printers]
;   path = /var/spool/samba
;   comment = All Printers
;   browseable = no
;   read only = yes
;   create mask = 0700
;   printable = yes
;   guest ok = no

;[print$]
;   path = /var/lib/samba/printers
;   comment = Printer Drivers
;   browseable = yes
;   read only = yes
;   guest ok = no

#[shared]
# ... as shown above

보시다시피 지금은 프린터를 공유하고 싶지 않기 때문에 댓글 [printers]과 섹션을 작성했습니다.[print$]

해당 부분에 대해서도 댓글을 달았습니다 [homes]. 주로 이 기능을 활성화했을 때 보안 측면에서 어떤 영향을 미치는지 잘 모르기 때문입니다. 누군가 여기에 대해 자세히 설명하고 싶다면 환영합니다!

제가 이해하고 있는 것은 게스트 액세스를 완전히 비활성화한다는 것입니다 map to guest = Never.usershare allow guests = no

하지만 위에 표시된 다른 보안 관련 설정에 대해서는 잘 모릅니다. 누군가가 혼자 또는 모두 함께 의미하는 바를 나에게 설명할 수 있다면 좋을 것입니다. 특히 pam password change, obey pam restrictions및 는 unix password sync매뉴얼 페이지에서 해당 장을 읽었지만 나에게는 명확하지 않습니다.

https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html#PAMPASSWORDCHANGE

https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html#OBEYPAMRESTRICTIONS

https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html#UNIXPASSWORDSYNC

passdb backend마지막으로 , encrypt passwords및 설정은 passwd program기본적 passwd chat으로 Debian Jessie에 설치되어 있습니다.

관련 정보