【VS Code远程连接失败】No space left on device
我回想了一下,昨天我在服务器上下载了一些大模型文件,但没有指定下载路径,结果它们默认被缓存到了根目录。我用VS Code连接我的远程服务器时,连接一直卡住,最终弹出报错。由于VS Code无法连接,我选择用传统的SSH客户端来排查。我使用的是Git Bash。输出结果显示了目录总大小超过1.6GB,证实了我的猜想。查看父目录,发现还有其他占用了几百兆空间的模型文件夹,我同样将其删除。输入密码后,我
**VS Code远程连接失败,排查后发现是磁盘空间不足!
1. 问题:VS Code远程连接失败,日志显示磁盘已满 ⚠️
我用VS Code连接我的远程服务器时,连接一直卡住,最终弹出报错。我查看了“Remote-SSH”的日志后,发现了一行关键信息:
.../vscode-server/.cli.log': No space left on device
这句错误信息非常直白:设备上没有剩余空间了。这表明,VS Code无法在远程服务器上写入或创建必要的文件(比如 VS Code Server 组件),导致连接中断。
我回想了一下,昨天我在服务器上下载了一些大模型文件,但没有指定下载路径,结果它们默认被缓存到了根目录。这大概就是导致磁盘空间不足的原因。
2. 诊断:用SSH登录并检查磁盘空间
由于VS Code无法连接,我选择用传统的SSH客户端来排查。我使用的是Git Bash。
步骤1:登录服务器
在Git Bash中,我输入以下命令并按回车。
$ ssh 用户名@服务器IP地址
ssh
: Secure Shell 的缩写,用于安全登录远程主机。用户名
: 我指定了服务器的登录用户名,比如root
。服务器IP地址
: 替换为你的服务器IP地址,比如192.168.1.10
。
输入密码后,我成功登录到服务器,登录时出现的语言环境警告可以忽略。
步骤2:检查磁盘使用情况
登录后,我立即运行了Linux上最常用的查看磁盘空间的命令:
df -h
df
:disk free
的缩写,用于查看磁盘空间。-h
:human-readable
,以GB、MB等易读的格式显示。
命令输出如下:
Filesystem Size Used Avail Use% Mounted on
...
/dev/vda1 100G 98G 2.7G 98% /
...
结果一目了然:我的根分区 (/
) 使用率高达 98%,只剩下 2.7GB 的可用空间,这完美解释了为什么VS Code无法写入文件。
3. 解决:找到并删除大文件
既然问题找到了,就该动手清理空间了。我怀疑是之前下载的 AI模型 缓存占用了大量空间。
步骤1:查看第一个可疑目录
我使用 ls -l
命令查看了第一个目标目录。
ls -l /root/.cache/modelscope/hub/models/._____temp/AI模型名
ls
:list
,列出文件和目录。-l
:long
格式,显示详细信息,如文件大小。AI模型名
: 替换为你下载的模型的实际名称。
输出结果显示了目录总大小超过1.6GB,证实了我的猜想。我毫不犹豫地使用 rm -rf
命令将其删除。
rm -rf /root/.cache/modelscope/hub/models/._____temp/AI模型名
rm
:remove
,删除文件或目录。-r
:recursive
,递归删除目录及其所有内容。-f
:force
,强制删除,不进行任何确认提示。
步骤2:查看并删除其他目录
删除后,我再次 ls -l
查看父目录,发现还有其他占用了几百兆空间的模型文件夹,我同样将其删除。
rm -rf /root/.cache/modelscope/hub/models/._____temp/其他AI模型名
4. 结论:成功解决,并进行反思
在清理完所有大文件后,我再次运行 df -h
命令进行验证。这次,根目录的可用空间显著增加,问题得以解决。我回到VS Code,重新尝试连接,成功了!
这次经历让我深刻反思:
- 日志是最好的侦探:遇到问题时,第一时间查看日志,它会告诉你大部分真相。
- 下载需谨慎:在服务器上下载文件,一定要 指定好存储路径(比如
/data
或/home/user
等非系统分区),避免占用根目录的空间。 - 基础命令很重要:熟练掌握
ssh
,ls
,df
,rm
等Linux基础命令,能让你在没有图形界面的情况下轻松排查和解决问题。
更多推荐
所有评论(0)