이제 "하나님! 왜 이런 일을 허락하셨나요?!?"라는 생각이 끝나기 전에 이것이 가능한지 궁금합니다.
내가 해결하려는 문제는 다른 방법으로 해결될 수 있지만 이는 내 직장에서 *nix-y 관리자가 아닌 다른 관리자의 기능 영역에 해당됩니다.
내가 달성하고 싶은 것은 삼바 연결을 통해 두 번 클릭(실행)하고 실행할 수 있는 바로가기/파일/무엇이든 갖는 것입니다 umount /path/to/ext-drive
.
이것은 여러 면에서 잘못될 수 있습니다. 그 중 하나는 앞서 언급한 "왜?!?!"입니다. 마운트는 루트의 cron을 통해 수행되므로 다른 지정된 smb를 통해 마운트 해제하는 것이 불가능할 수도 있다는 것을 방금 기억했습니다. 사용자.
저는 실제로 Samba 사용자 패치에서 실행을 분리하기 위해 공유 외부의 .sh 파일에 연결하는 것을 고려하고 있습니다.
어떤 아이디어가 있나요?
편집하다
USB 확장도 추가해야겠네요. 드라이브는 백업을 수행하는 스크립트를 통해 마운트됩니다. 드라이브 연결에는 설치되지 않습니다. 이는 지난 몇 주 동안 발생한 무작위 제거 실패 문제에 대한 해결책이 되기를 바랍니다.
또한 백업 프로세스가 실행을 중지했는지, 드라이브가 아직 연결되어 있는지 확인하고, 그렇다면 마운트 해제하기 위해 cron에 무언가를 넣을 수 있다고 생각했습니다.
다른 편집자
나는 이 질문이 무의미하다는 것을 깨닫기 시작했습니다. 아래 OP의 설명에서 말했듯이 내 컴퓨터의 공유에 있는 파일을 두 번 클릭해도 서버에서 일부 작업이 수행되지 않습니다.
문제가 아닌 문제를 해결하라
@slm의 답변은 질문에 대한 답변이므로 수락하겠습니다."삼바 연결을 통해 Windows에서 bash 명령을 실행할 수 있습니까?"아뇨, 아뇨, 그럴 수 없어요. (이 OP 아래 댓글에도 언급되어 있음)
하지만 문제를 해결하기 위해 저는 이렇게 했습니다. 매시간 cron을 통해 실행됩니다.
#!/bin/bash
if [ ! -f "/path/to/locking/file.txt" ]
then
if mount | grep /pathTo/backupDriveMount ; then
# Is still Mounted
echo "Drive Still Mounted - Attemping unmount" >> "/path2/logFile.log"
TEST="$(mount | grep /pathTo/backupDriveMount | cut -d' ' -f1)"
echo "Unmounting ${TEST}"
umount ${TEST}
fi
fi
영어로,
- 잠금 파일이 없으면 마운트에 있는 백업 마운트 지점의 경로를 확인합니다.
- 있는 경우 드라이브/파티션을 추출합니다.
- 추출된 위치를 제거합니다.
답변1
이건 불가능 해. Samba 연결을 통해 이러한 방식으로 Linux 서버에서 실행 파일을 원격으로 실행할 수 없습니다.
정말로 이와 같은 것을 성취하고 싶다면 마음속에 떠오르는 두 가지 방법 중 하나로만 할 수 있습니다.
PuTTY/SSH를 통해 원격으로 명령을 실행하고 Linux 상자에 효과적으로 로그인하여 명령을 실행한 다음 종료합니다.
$ ssh linux-server umount /path/to/ext-drive
웹 서버를 통해 실행할 수 있는 실행 파일을 설정하면
umount /path/to/ext-drive
CGI-BIN 유형 설정을 통해 명령이 실행됩니다.
노트:위의 두 번째 옵션은 "위험한" 것으로 간주될 수 있으므로 누구든지 이 옵션을 사용하지 말 것을 권장할 것입니다. 하지만 과거에는 원격으로 실행하고 싶은 몇 가지 기본 명령을 노출하기 위해 이 옵션을 사용한 적이 있으며 SSH를 통해 상자에 연결하는 것은 불가능합니다. 옵션이 아닙니다.
다양한 방법
더 나은 옵션은 Linux 서버에서 자동 설치 프로그램을 사용하는 것입니다. 자동 마운트를 사용하면 누군가가 디렉토리에 액세스하려고 할 때마다 지정된 파티션을 Linux 서버의 디렉토리 공간에 마운트하는 작업이 트리거될 수 있습니다. 자동 마운트된 디렉토리는 지정된 비활성 기간 이후 자동 마운트에 의해 자동으로 마운트 해제될 수 있습니다.
자동 설치 프로그램 설정에 대한 자세한 내용은 다음 가이드 중 일부를 확인하세요.