sshfs를 사용하여 자동 마운트하는 방법? 디렉토리를 내

다음 명령을 사용하여 ssh ubuntu 디렉토리를 내 우분투 PC에 마운트합니다.

sshfs user@192.xx.xx.xx.xx:/dir/dir /home/username/mount/xxx

내 질문은, 항상 수동으로 명령을 입력하지 않고 드라이브를 마운트해야 할 때 두 번 클릭 하여이 스크립트를 실행할 수있는 바탕 화면 에서이 스크립트를 만들 수 있습니까?



답변

.desktop-file을 여기 에 끌어다 놓아 실행기를 작성하고 실행기 표시 줄에 추가 할 수 있습니다 .

    #!/usr/bin/env xdg-open

    [Desktop Entry]
    Version=1.0
    Type=Application
    Terminal=false
    Icon[en_US]=nautilus
    Name[en_US]=Connect to xy
    Exec=shfs user@192.xx.xx.xx.xx:/dir/dir /home/username/mount/xxx
    #OR: to mount and than open in nautilus (note the '/dir' where ':dir' used to be)
    #Exec=nautilus sftp://user@192.xx.xx.xx.xx/dir/dir
    Comment[en_US]=Connect to xy via ssh
    Name=Connect to xy
    Comment=Connect to xy via ssh
    Icon=nautilus

제안-훨씬 적은 작업 :

더 적은 작업 (= autoconnect)과 그래픽 사용자 인터페이스를 원한다면 Gigolo 를 확인하십시오 gigolo 설치. 북마크 된 파일 시스템이 존재할 때마다 북마크를 자동 마운트하는 기능이 있습니다. 그것을 확인하고 싶을 수도 있습니다.

sudo apt-get install gigolo   # or use the install link above

를 실행하십시오 gigolo. 환경 설정에는 자동 시작과 트레이 아이콘을 활성화하는 옵션이 있습니다. 둘 다 확인하십시오. 그런 다음 북마크를 추가하십시오.

스크린 샷은 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

쉘 웨이

다른 해결책은 crontab에 다음 줄을 넣는 것입니다 ( /etc/crontabsudo 권한으로 편집 ).

@reboot sshfs user@192.xx.xx.xx.xx:/dir/dir /home/username/mount/xxx

그러나 명령이 실행될 때 Ubuntu의 비밀번호 관리자가 없으므로 비밀번호가없는 개인 / 공개 키 쌍을 사용하여 해당 ssh 서버로 인증해야합니다 (또는 유사한 인증 방법). 재부팅 할 때마다 마운트됩니다.

또 다른 해결책은 사용자를 편집하는 것입니다 /etc/fstab(Ubuntu-Version에서 해당 옵션을 제공하는 경우).


답변

이 포럼 스레드 는 자동 마운트 SSHFS를 작성하는 방법을 보여줍니다.


답변

쉘 스크립트에 간단히 입력하면 데스크탑에서 런처를 작성할 수 있습니다.

예를 들면 mountssh.sh다음과 같습니다.

#!/bin/bash
shfs user@192.xx.xx.xx.xx:/dir/dir /home/username/mount/xxx

확인한 chmod +x mountssh.sh다음 클릭하면 실행됩니다.

또는 데스크탑을 마우스 오른쪽 버튼으로 클릭하고 URL 매개 변수를 사용하여 실행기를 작성하여 gvfs를 통해 마운트 할 수 있습니다 ssh://user@192.xx.xx.xx.xx/dir/dir. 기본적으로에 마운트됩니다 ~/.gvfs/.... 당신이와 스틱을 원하는 경우에 /home/username/mount/xxx, 당신은 GVFS에서이 하나를 심볼릭 링크를 만들 수 있습니다.


답변

한 걸음 더 나아가서 autofs 가 마운트를 처리하도록 할 수도 있습니다. autofs는 SSH 공개 키 인증에서 특히 잘 작동하지 않기 때문에 ( 슈퍼 유저에 대해 암호가없는 키 페어작성 하지 않는 한 ) 사용자의 SSH 키, ssh-agent 및 키 체인을 사용할 수있는 도구가 있습니다.

  • autosshfs : 사용자의 SSH 구성을 사용하는 사용자 당 SSHFS 자동 마운트
  • afuse : FUSE로 구현 된 자동 마운터

답변

폴더를 똑같은 방식으로 마운트합니다 .sh. 명령을 포함 하는 파일을 가리키는 사용자 지정 실행기를 만들었습니다 . 파일에 실행 권한이 있는지 확인하고 계속 진행하십시오.

런처를 클릭하면됩니다.

여기에 이미지 설명을 입력하십시오


답변

cron을 사용하여 ssh 디렉토리를 자동으로 마운트하려고 시도했지만 오류가 발생했습니다 Network is unreachable. cron 작업 실행이 ip 연결을 설정하기에 너무 빠르기 때문입니다. sshfs명령 전에 sleep을 삽입 한 후 ssh 디렉토리를 성공적으로 마운트합니다.

sleep 5 && sshfs ......

그래서 나는이 스크립트를 내 요구 사항을 충족시키기 위해 만들었습니다.

#! /bin/sh
while true
do
    ping -c1 -w1 ssh_server_ip > /dev/null && break
done
sshfs -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3 sshname:/mountpath /localmountpath


답변