我们运行了一个Ubuntu服务器,并在其上安装了SVN。我们已经使用服务器4或5个月,我们为Appuser分配了sudo权限。
问题是,appuser的空间不足。据我所知,我们有3个不同的磁盘,分别是root,appuser和可移动磁盘。当前级别的快照如下
现在,我想知道如何防止这种情况或解决我的问题。我不得不删除一些有用的程序,以便创建80.6 MB的磁盘空间(之前,它是0)。
我能想到的一个选择是如果可行的话将SVN移动到root。不幸的是,我不知道该怎么做。其他选项可能是在另一个目录中创建具有root权限的新用户。
长话短说,我需要一种方法来管理我分配的有限磁盘。有几个像这样的服务器,我在每一个都有这个问题。
顺便问一下,有没有办法增加/ dev / sda3 / home(appuser)的磁盘大小?如果我可以添加一些额外的磁盘空间(从root或任何其他源),它将非常有用。
我能想到的最后一点是,我无法看到/ var / opt / appuser下的内容甚至很难与appuser连接。只有root才能看到它。这是一个问题吗?
我感谢任何提示和指示。
答案 0 :(得分:2)
Linux内核支持的本机文件系统(即extN
系列的内核文件系统)具有为超级用户保留的空间(具有UID
0的空间)的概念。这个想法是,当文件系统看起来已满,并且各种程序因此而开始失败时,超级用户仍然有一定的临时空间可用于执行恢复任务(想想文本编辑器的缓冲区交换/备份文件,需要复制文件周围等)。因此,您在这里看到的是root用户看到的内容与普通用户看到的内容之间的差异。
创建文件系统时,可用空间的典型预留率为5%(这在当天是明智的,但现在并非如此,具有多GB或-terabyte filesysems)。幸运的是,这个参数可能在事后调整(使用tune2fs
文件系统的extN
程序。在创建一个典型的相当大的extN
文件系统后,我通常会手动将其设置为100MiB。
要查看预留了多少空间,请按以下步骤操作:
向文件系统询问其当前参数:
# tune2fs -l /dev/sda1 | grep -Ei 'reserved|block size'
Reserved block count: 25600
Block size: 4096
Reserved GDT blocks: 1012
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
保留的实际空间(以字节为单位)为Reserved block count
×Block size
。
根据您的需要调整此项,如果您愿意的话。
例如,要将此值设置为10 MiB,您可以执行
# tune2fs -r $((10*1024*1024/4096)) /dev/sda1
这里4096是块大小,10×1024×1024是10 MiB。
答案 1 :(得分:0)
您是否考虑过查找名为 gparted 的实用工具来增加分配给appuser的空间?
可以在此处找到解决问题的命令行方式 - 值得一看: