Недавно я столкнулся с проблемой нехватки дискового пространства на SFTP-сервере и понял, что понятия не имею, как проверить, сколько осталось или даже общее количество.
Кто-нибудь знает, как это сделать через приложение вроде FileZilla или, возможно, есть команда, которую можно использовать для этой цели?
Обратите внимание, что сервер размещен у третьей стороны, и я надеялся, что есть способ ответить на этот вопрос, не обращаясь к ним.
Обновить:
Я попытался подключиться через оболочку, используя как putty, так и cygwin ssh. Putty молча терпит неудачу, в то время как cygwin выдал мне следующее сообщение об ошибке:
$ 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.
Любые идеи?
В scponly
оболочка может позволить quota
команда (если включена). Но похоже, что у вас есть scponly
настроен для поддержки только SFTP с запрещенным доступом к оболочке.
Протокол SFTP позволяет проверять дисковое пространство (вопреки тому, что говорят другие ответы).
Извлечение из SFTP - проверьте наличие свободного места вопрос stackoverflow.com:
Протокол SFTP версии 6 позволяет проверять доступное пространство (
SSH_FXP_EXTENDED
имя запросаspace-available
). Большинство серверов SSH / SFTP (особенно OpenSSH, как один из наиболее распространенных) поддерживают только SFTP версии 3.OpenSSH, с другой стороны, поддерживает
statvfs@openssh.com
проприетарное расширение.
Расширение OpenSSH поддерживается некоторыми клиентами SFTP.
Очевидно, OpenSSH sftp
клиент через df
команда:
df [-hi] [path]
Отображение информации об использовании файловой системы, содержащей текущий каталог (или путь, если он указан). Если-h
установлен флаг, информация о емкости будет отображаться с использованием "удобочитаемых" суффиксов. В-i
flag запрашивает отображение информации inode в дополнение к информации о емкости. Эта команда поддерживается только на серверах, которые реализуют расширение statvfs@openssh.com.
sftp> df -h
Size Used Avail (root) %Capacity
591GB 358GB 203GB 233GB 60%
WinSCP также поддерживает его (см. Диалог информации о сервере и протоколе):
(Я автор WinSCP)
ssh <host> df -h
Предоставит вам всю необходимую информацию, если нет таких вещей, как дисковые квоты. Если у вас нет доступа к оболочке (или какого-либо способа запуска команд, например, через PHP exec
), то вы не можете проверить дисковое пространство, но опять же, если у вас нет оболочки, как вы можете отвечать за администрирование сервера и управление дисковым пространством?
С набором команд SFTP нет возможности получить доступный размер или используемое пространство.
Если вы можете подключиться к серверу по SSH (тот же хост, пользователь, пароль), вы можете выдать df -h
чтобы увидеть доступное пространство. Или du -h
в папке, чтобы увидеть используемое пространство папки.