Jak sprawdzić przestrzeń dyskową na serwerze SFTP

11

Ostatnio napotkałem problem z brakiem miejsca na dysku na serwerze SFTP i zdałem sobie sprawę, że nie mam pojęcia, jak sprawdzić, ile pozostało lub nawet całkowitą kwotę.

Czy ktoś wie, jak to zrobić za pomocą aplikacji takiej jak FileZilla, czy może istnieje polecenie, które można wykorzystać w tym celu?

Zauważ, że serwer jest hostowany przez firmę zewnętrzną i miałem nadzieję, że istnieje sposób, aby odpowiedzieć na to pytanie bez przechodzenia przez nie.

Aktualizacja:

Próbowałem połączyć się przez powłokę używając zarówno putty jak i cygwin ssh. Putty po cichu zawiodło, a cygwin dał mi następujący komunikat o błędzie:

$ ssh [user]@[host] -i "[priv.key]"
Last login: Wed Aug 17 12:54:46 2011 from 195.204.103.176
Could not chdir to home directory /local00/ftproot/[user]: No such file or directory
/usr/local/sbin/scponlyc: No such file or directory
Connection to [host] closed.

Jakieś pomysły?

kjetilh
źródło
1
Czy masz dostęp shellowy do serwera?
Sven
Próbowałem połączyć się za pośrednictwem PuTTy i SSH przy użyciu tego samego użytkownika, hosta i klucza prywatnego, ale w momencie rozpoczęcia procesu uwierzytelniania okno się zamyka. Nie jestem pewien, jak to zinterpretować czy autoryzacja nie powiodła się lub jeśli nie masz powłoki dostęp .. mogę połączyć się z tego samego loginu z FileZilla
kjetilh
Proszę zobaczyć moje zaktualizowane pytanie
kjetilh
1
Cóż, jak odpowiedział mailq w tym przypadku, gotowe: nie ma możliwości sprawdzenia w scponlyśrodowisku.
François Feugeas

Odpowiedzi:

15

scponlyPowłoka może pozwolić na quotapolecenie (jeśli aktywne). Wygląda jednak na to, że masz scponlyskonfigurowaną obsługę tylko SFTP z niedozwolonym dostępem do powłoki.

Protokół SFTP pozwala na sprawdzenie miejsca na dysku (w przeciwieństwie do innych odpowiedzi).

Wydobywanie z SFTP - sprawdź wolne miejsce dostępne pytanie stackoverflow.com:

Protokół SFTP wersja 6 pozwala na sprawdzenie dostępnej przestrzeni ( SSH_FXP_EXTENDEDnazwa żądania space-available). Większość serwerów SSH / SFTP (szczególnie OpenSSH, jako jeden z najbardziej rozpowszechnionych) obsługuje tylko SFTP w wersji 3.

Z drugiej strony OpenSSH obsługuje [email protected]własne rozszerzenia.

Rozszerzenie OpenSSH jest obsługiwane przez niektórych klientów SFTP.

  • Oczywiście przez sftpklienta OpenSSH za pomocą dfpolecenia:

    df [-hi] [path]
    Wyświetl informacje o użyciu dla systemu plików zawierającego bieżący katalog (lub ścieżkę, jeśli jest określona). Jeśli -hflaga jest określona, ​​informacje o pojemności będą wyświetlane przy użyciu sufiksów „czytelnych dla człowieka”. Te -iwnioski flag wyświetlanie informacji węzła oprócz informacji pojemności. To polecenie jest obsługiwane tylko na serwerach, które implementują rozszerzenie „[email protected]”.

    sftp> df -h
        Size     Used    Avail   (root)    %Capacity
       591GB    358GB    203GB    233GB          60%
    
  • WinSCP obsługuje również to (patrz okno dialogowe Informacje o serwerze i protokole ):

    Okno dialogowe informacji o serwerze i protokole WinSCP

    (Jestem autorem WinSCP)

Martin Prikryl
źródło
Tak, po użyciu sftp wiersza polecenia do połączenia z serwerem można użyć df -h /do sprawdzenia wolnego miejsca itp.
LyK
1
Niestety nie wszystkie serwery obsługują to: sftp> df Serwer nie obsługuje rozszerzenia [email protected]
Thomas Lauria
@ThomasLauria To zastrzeżone rozszerzenie OpenSSH. Chociaż niektóre inne serwery również mogą to wspierać, nie wszystkie to robią.
Martin Prikryl
1
ssh <host> df -h

Dostarczy Ci wszystkich niezbędnych informacji, w przypadku braku takich rzeczy jak przydziały dysku. Jeśli nie masz dostępu do powłoki (lub jakiegoś sposobu uruchamiania poleceń, np. Za pomocą PHP exec), nie możesz sprawdzić miejsca na dysku, ale jeśli nie masz powłoki, to jak możesz być odpowiedzialny za administrować serwerem i zarządzać miejscem na dysku?

womble
źródło
Cóż, nie jest to wyłącznie moja odpowiedzialność, ale napisałem kilka skryptów eksportujących / importujących dotyczących serwera SFTP i jestem powiadamiany o wyzwolonych błędach. Ostatecznie chcielibyśmy dostosować / przepisać proces czyszczenia, ale teraz chcę tylko trochę więcej informacji
kjetilh
-1

Po ustawieniu polecenia SFTP nie ma możliwości uzyskania dostępnego rozmiaru ani zajętego miejsca.

Jeśli możesz połączyć się z serwerem SSH (ten sam host, użytkownik, hasło), możesz wydać a, df -haby zobaczyć dostępne miejsce. Lub a du -hw folderze, aby zobaczyć zajętą ​​przestrzeń folderu.

mailq
źródło
To nieprawda, że ​​SFTP nie pozwala na użycie dysku. Zobacz moją drugą odpowiedź.
Martin Prikryl