linux根目录被移动走了怎么办

今天本来打算把yum源移走一下,结果命令输入成了 mv /* /mnt,然后整个人都不好了

所有命令都没有用了

[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-CR.repo  CentOS-Debuginfo.repo  CentOS-fasttrack.repo  CentOS-Media.repo  CentOS-Sources.repo  CentOS-Vault.repo
[root@localhost yum.repos.d]# mv /* /mnt/
mv: cannot move ‘/boot’ to ‘/mnt/boot’: Device or resource busy
mv: cannot move ‘/dev’ to ‘/mnt/dev’: Device or resource busy
mv: cannot move ‘/home’ to ‘/mnt/home’: Device or resource busy
mv: cannot move ‘/mnt’ to a subdirectory of itself, ‘/mnt/mnt’
mv: cannot move ‘/proc’ to ‘/mnt/proc’: Device or resource busy
mv: cannot move ‘/run’ to ‘/mnt/run’: Device or resource busy
mv: cannot move ‘/sys’ to ‘/mnt/sys’: Device or resource busy
[root@localhost yum.repos.d]# ls
-bash: /usr/bin/ls: No such file or directory
[root@localhost yum.repos.d]# ls
-bash: /usr/bin/ls: No such file or directory

去网上寻求解决方法看了一篇博文https://blog.youkuaiyun.com/mayao11/article/details/7692350

他上面有一个方法

/ztmp/lib/ld-linux.so.2 --library-path /ztmp/lib /ztmp/bin/cp -rfp /ztmp/* /

---------------------

本文来自 善良的兽人Goodorc 的优快云 博客 ,全文地址请点击:https://blog.youkuaiyun.com/mayao11/article/details/7692350?utm_source=copy 

然后我发现lib下并没有这玩应。。。原来我是64位的

[root@localhost etc]# /mnt/lib64/ld-linux-x86-64.so.2 --library-path /mnt/lib /mnt/bin/cp -rvf /mnt/* /
-rvf: error while loading shared libraries: -rvf: cannot open shared object file: No such file or directory

并没有用。。靠

然后发现额。。。原来后面也应该是lib64......

[root@localhost mnt]# lib64/ld-linux-x86-64.so.2 --library-path lib64/ bin/cp -rfp /mnt/* /
[root@localhost mnt]# ls
bin  etc  lib  lib64  media  opt  root  sbin  srv  tmp  usr  var

64位下linux应该是

你动到的地址/lib64/ld-linux-x86-64.so.2 --library-path 你移动到的地址/lib64/ 你移动到的地址/bin/cp -rfp /mnt/* /

 

<think>我们正在处理用户的问题:如何在Linux系统中将文件移动根目录? 用户的问题是关于Linux命令的,我们需要提供清晰、准确的命令和解释。 注意:根目录Linux中是顶级目录,表示为“/”。移动文件根目录意味着将文件放在系统的根路径下。 步骤: 1. 使用`mv`命令(move的缩写)来移动文件。 2. 语法:`mv [选项] 源文件 目标路径` 3. 目标路径为根目录,即`/`。 示例: 假设我们有一个名为`example.txt`的文件,当前位于用户的主目录(例如`/home/username/`),我们想将它移动根目录。 命令如下: mv /home/username/example.txt / 注意:移动文件根目录通常需要超级用户权限(root权限),因为根目录是系统目录,普通用户可能没有写入权限。因此,可能需要使用`sudo`命令: sudo mv /home/username/example.txt / 重要提示:移动文件根目录需要谨慎,因为根目录下通常存放着系统关键文件和目录,随意添加文件可能会造成系统混乱。建议用户明确知道自己在做什么。 另外,如果用户想要移动整个目录(而不仅仅是文件),命令同样适用,但需要注意目录的权限和内容。 如果用户需要覆盖现有文件,`mv`命令默认会覆盖,可以使用`-i`选项进行交互式确认,或者`-n`选项避免覆盖。 我们还可以提供一些额外的提示,比如如何确认文件已经移动成功(使用`ls /`命令查看根目录下的内容)。 根据系统指令,我们需要在回答中生成相关问题。 引用说明:用户提供的引用内容是关于文件编码转换和Java文件路径问题的,与当前问题关联不大,因此我们不会在回答中引用这些内容。但根据指令,如果引用则需添加引用标识,这里我们不需要引用。 现在,我们按照要求组织答案。</think>### 在 Linux 中将文件移动根目录的方法 在 Linux 中,根目录文件系统的顶级目录,用 `/` 表示。要将文件移动根目录,需使用 `mv` 命令(move 的缩写),并确保您有足够的权限(通常需要 `sudo`)。以下是详细步骤: #### 1. **基本移动命令** ```bash sudo mv 源文件路径 / ``` - **示例**:将当前目录下的 `config.conf` 移动根目录 ```bash sudo mv config.conf / ``` - **验证结果**: ```bash ls / | grep config.conf # 查看根目录是否包含该文件 ``` #### 2. **移动目录到根目录** ```bash sudo mv 目录名 / ``` - **示例**:将 `backup` 目录移动根目录 ```bash sudo mv backup / ``` #### 3. **处理权限问题** - 若提示 `Permission denied`,需使用 `sudo` 提权: ```bash sudo mv 文件 / # 输入用户密码确认 ``` - 若需保留文件原属主,添加 `--preserve=ownership`: ```bash sudo mv --preserve=ownership 文件 / ``` #### 4. **覆盖文件时的注意事项** - `mv` 默认覆盖同名文件,建议先备份: ```bash sudo cp /原文件 ~/backup/ # 备份到主目录 sudo mv 新文件 / # 执行移动 ``` - 使用 `-i` 参数确认覆盖: ```bash sudo mv -i 文件 / # 交互式提示是否覆盖 ``` #### 5. **从其他位置移动文件** - 移动 `/home/user/docs/report.txt` 到根目录: ```bash sudo mv /home/user/docs/report.txt / ``` > ⚠️ **重要提示** > 根目录存放系统关键文件(如 `/bin`, `/etc`),误操作可能导致系统故障。若非必要,建议将用户文件存放在 `/home` 或自定义目录。 --- ### 相关问题 1. 如何将文件根目录移动回用户主目录? 2. Linux 中哪些目录不能随意修改?根目录下的核心目录有哪些作用? 3. 使用 `mv` 命令时如何避免误覆盖重要文件? 4. 除了 `sudo`,还有哪些方法可以获取文件操作权限?
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值