AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 39536
Accepted
ændrük
ændrük
Asked: 2011-05-03 20:39:44 +0800 CST2011-05-03 20:39:44 +0800 CST 2011-05-03 20:39:44 +0800 CST

如何将 /var 存储在单独的分区上?

  • 772

我想存储/var在与/. 设置它的正确方法是什么?

partitioning
  • 2 2 个回答
  • 30616 Views

2 个回答

  • Voted
  1. Best Answer
    Aleksandr Levchuk
    2011-05-03T20:53:38+08:002011-05-03T20:53:38+08:00

    首先准备一个新分区(例如,使用partedand mkfs)。

    假设分区是 /dev/sda5

    挂载新分区:

    mkdir /var2
    mount /dev/sda5 /var2
    

    同步您当前的变量:

    rsync -a /var/ /var2
    

    将条目添加到 /etc/fstab

    /dev/sda5    /var    ext4    defaults      2 2
    

    重启。

    如果您碰巧需要返回您的旧 /var,只需将 fstab 中的条目注释掉即可。

    • 21
  2. Anthony Geoghegan
    2017-08-01T07:30:53+08:002017-08-01T07:30:53+08:00

    在虚拟服务器上配置新的 /var 分区

    当我接管了由我雇主的托管公司提供的新虚拟服务器时,根文件系统中没有足够的可用空间。幸运的是,他们使用了逻辑卷管理器 (LVM)来细分虚拟磁盘,并且有足够的可用空间来创建新卷。我为根文件系统中的常规目录var创建了额外的逻辑卷。home由于虚拟服务器提供商没有提供类似 KVM 的接口,通过它我可以在单用户模式下访问服务器,因此我使用了与 Aleksander 概述的方法非常相似的方法(这个答案包括用于恢复磁盘空间的额外详细信息)除了特定于 LVM 的命令)。

    使用 LVM 创建一个新的 /var 文件系统

    为新文件系统创建一个逻辑卷var,挂载它(使用临时目录)并将文件从当前文件系统复制/var到新文件系统:

    # Create a new 60GB logical volume in the `VolGroup00` group called `var`.
    sudo lvcreate -L 60GB -n var VolGroup00
    # Create an ext4 filesystem on this new `var` volume.
    sudo mkfs.ext4 /dev/VolGroup00/var
    # Mount this filesystem at a temporary mount-point.
    sudo mkdir /var.new
    sudo mount /dev/VolGroup00/var /var.new
    

    由于正在运行的进程将/var保持打开和使用的文件,因此不能简单地将目录树移动到新的文件系统。递归(-r)将文件从当前/var分区复制到新的文件系统,同时保留文件属性和扩展属性(-a, --archive选项)。谨慎的用户可能会在复制之前先创建当前卷的LVM 快照,但这对于这个问题来说太多了离题的细节。

    sudo cp -ra /var/ /var.new/
    

    或者,可以使用 复制文件rsync,其中包含-a, --archive保留时间戳、所有权、模式等的-X, --xattrs选项,以及保留扩展属性(例如 AppArmor 和 SELinux 使用的安全标签)的选项:

    sudo rsync -raX /var/ /var.new/
    

    更新文件系统表

    通过将以/var下行添加到/etc/fstab. 请注意,它用作通行证编号(最后一个字段),以便在一定次数的重新启动后0不会自动检查文件系统( )。fsck

    /dev/mapper/VolGroup00-var    /var    ext4  defaults  0 0
    

    由于无法更改为单用户模式,请重新启动计算机以将此新卷用作/var.

    删除临时挂载点

    机器重新启动后,新的文件系统将被挂载,/var因此可以安全地删除临时挂载点:

    sudo rmdir /var.new
    

    从根文件系统恢复磁盘空间

    旧/var文件仍将占用根分区上的空间,但在挂载另一个文件系统时它们不容易访问/var(它们被新文件系统“屏蔽”,使用该/var目录作为其挂载点)。使用临时挂载点挂载根文件系统,以便原始/var目录的内容可通过备用路径获得。

        sudo mkdir /old-root
        sudo mount /dev/mapper/VolGroup00-root /old-root/
        sudo rm -rf /old-root/var/*
        sudo umount /old-root/
        sudo rmdir /old-root/
    
    • 4

相关问题

  • 是否有更好的方式为 /home/userX 构建分区/挂载

  • Linux 文件系统层次结构中的默认目录是什么意思?

  • 如何将 /usr 移动到新分区?

  • 如何从双启动计算机访问加密的主文件夹?

  • 您对台式机和家庭服务器的驱动器分区方案有什么建议?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    我需要什么命令来解压缩/提取 .tar.gz 文件?

    • 8 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Martin Hope
    EmmyS 我需要什么命令来解压缩/提取 .tar.gz 文件? 2011-02-09 14:50:41 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve