Como verificar o espaço em disco no servidor SFTP


11

Recentemente, encontrei um problema de falta de espaço em disco em um servidor SFTP e percebi que não tenho idéia de como verificar quanto resta ou mesmo o valor total.

Alguém sabe como fazer isso através de um aplicativo como o FileZilla ou talvez exista um comando que possa ser usado para esse fim?

Observe que o servidor está hospedado em terceiros e eu esperava que houvesse uma maneira de responder a essa pergunta sem passar por eles.

Atualizar:

Tentei conectar via shell usando o putty e o cygwin ssh. O Putty falhou silenciosamente enquanto o cygwin me deu a seguinte mensagem de erro:

$ 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.

Alguma ideia?


1
Você tem acesso de shell ao servidor?
Sven

Tentei conectar-me através do PuTTy e SSH usando o mesmo usuário, host e chave privada, mas assim que o processo de autenticação inicia, a janela se fecha. Eu não tenho certeza de como interpretar esta ou não a autenticação falhou ou se eu não tiver acesso shell .. I pode se conectar com o mesmo login com FileZilla
kjetilh

Por favor, veja minha pergunta atualizada
kjetilh

1
Bem, como respondido pelo mailq, neste caso, você terminou: não há como fazer check-in em um scponlyambiente.
François Feugeas

Respostas:


15

O scponlyshell pode permitir o quotacomando (se ativado). Mas parece que você scponlyconfigurou o suporte apenas ao SFTP, com um acesso de shell não permitido.

O protocolo SFTP permite verificar o espaço em disco (ao contrário do que outras respostas dizem).

Extraindo do SFTP - verifique a questão de espaço livre disponível no stackoverflow.com:

A versão 6 do protocolo SFTP permite verificar o espaço disponível ( SSH_FXP_EXTENDEDnome da solicitação space-available). A maioria dos servidores SSH / SFTP (principalmente o OpenSSH, como o mais difundido) suporta apenas a versão 3 do SFTP.

O OpenSSH, por outro lado, suporta statvfs@openssh.comextensões proprietárias.

A extensão OpenSSH é suportada por alguns clientes SFTP.

  • Obviamente pelo sftpcliente OpenSSH através do dfcomando:

    df [-hi] [path]
    Exiba informações de uso do sistema de arquivos que contém o diretório atual (ou caminho, se especificado). Se o -hsinalizador for especificado, as informações de capacidade serão exibidas usando sufixos "legíveis por humanos". O -isinalizador solicita a exibição de informações do inode, além das informações de capacidade. Este comando é suportado apenas em servidores que implementam a extensão '' statvfs@openssh.com ''.

    sftp> df -h
        Size     Used    Avail   (root)    %Capacity
       591GB    358GB    203GB    233GB          60%
    
  • O WinSCP também suporta (consulte a caixa de diálogo Informações sobre protocolo e servidor ):

    Caixa de Diálogo de Informações do Servidor e Protocolo WinSCP

    (Eu sou o autor do WinSCP)


Pois é, depois de usar linha de comando sftp para se conectar ao servidor, pode-se utilizar df -h /para verificar o espaço livre etc
Lyk

1
Infelizmente, nem todos os servidores suportam isso: sftp> df O servidor não suporta a extensão statvfs@openssh.com #
Thomas Lauria

@ThomasLauria É uma extensão proprietária do OpenSSH. Enquanto alguns outros servidores podem optar por suportá-lo também, nem todos o fazem.
Martin Prikryl

1
ssh <host> df -h

Fornecerá todas as informações necessárias, na ausência de coisas como cotas de disco. Se você não possui acesso ao shell (ou alguma maneira de executar comandos, como via PHP exec), não pode verificar o espaço em disco, mas, novamente, se não tiver shell, como pode ser sua responsabilidade administrar o servidor e gerenciar o espaço em disco?


Bem, não é estritamente minha responsabilidade, mas escrevi alguns scripts de exportação / importação referentes ao servidor SFTP e sou notificado dos erros acionados. Em última análise, gostaríamos de ajustar / reescrever o processo de limpeza, mas agora eu só quero mais algumas informações
kjetilh

-1

Com o conjunto de comandos SFTP, não há possibilidade de obter o tamanho disponível ou o espaço usado.

Se você conseguir fazer o SSH no servidor (mesmo host, usuário, senha), poderá emitir a df -hpara ver o espaço disponível. Ou a du -hna pasta para ver o espaço usado da pasta.


Não é verdade que o SFTP não permita o uso do disco. Veja minha outra resposta.
Martin Prikryl
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.