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?

kjetilh
fonte
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 [email protected]extensõ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 '' [email protected] ''.

    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)

Martin Prikryl
fonte
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 [email protected] #
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?

mulher
fonte
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.

mailq
fonte
Não é verdade que o SFTP não permita o uso do disco. Veja minha outra resposta.
Martin Prikryl