打开了防火墙,然后ssh连接被禁了,我又断开了和服务器的连接

0

我打开了防火墙,ssh的22端口被禁了,我不知道,打开了ftp结果和服务器的连接就断了。 现在我没法登录上去关闭防火墙,按照网上的说法可以把它的硬盘挂到别的服务器的底下,然后修改配置文件,但是我挂了之后发现,根本打不开硬盘,去查又说什么需要格式化,或者没有文件系统,要建立文件系统,并且还有提示,如果原来有数据,会格式化。 我就是要里面的数据,才会想要连接回去,才会想要挂载到别的服务底下,看能不能关闭服务器。

已提问 1 年前265 查看次数
3 回答
1
已接受的回答

我已经解决了此问题,当我对xvdf使用挂载命令时,提示错误。但是我对xvdf1使用时便没有此错误。通过命令我查看到xvdf所属的三个部分中,xvdf14是没有文件系统的,所以我猜想这就是我挂载不成功的原因。

已回答 1 年前
0

一般来说,开启防火墙后,是不会把文件系统搞坏,若您在挂载磁盘时,挂载 mount 出现以下错误,此时不一定是文件系统损坏,常见是该 EBS 卷分区上的 UUID 跟当前实例使用的根卷磁盘分区是重复的(相同),所造成的问题。

mount: /mnt: wrong fs type, bad option, bad superblock on /dev/nvme2n1p1, missing codepage or helper program, or other error.

建议先使用 lsblk -f 检查磁盘分区的 UUID,是否跟目前实例使用的根卷磁盘分区是重复的(相同),如果重复再使用参数 -o nouuid 来挂载。

$ sudo lsblk -f
$ sudo mount -o nouuid  /dev/nvme2n1p1 /mnt

[+] Unable to mount the filesystem due to duplicate UUID error. https://access.redhat.com/solutions/5494781

若是文件系统的问题,建议您参考以下文档来修复,但以下操作仍有一定的风险,建议您先做快照备份,再来执行。

[+] 由于操作系统出现问题,我的 EC2 Linux 实例未通过实例状态检查。如何解决此问题? https://repost.aws/zh-Hans/knowledge-center/ec2-linux-status-check-failure-os-errors

$ sudo fsck /dev/nvme2n1p1
$ sudo xfs_repair /dev/nvme2n1p1
profile pictureAWS
Jerry_K
已回答 1 年前
  • 如你所说,我查看了他们的uuid:

    xvda
    ├─xvda1
    │    ext4   1.0   cloudimg-rootfs
    │                       cda0c0a7-e64a-4413-85a5-a0235f6f567f    5.3G    30% /
    ├─xvda14
    │
    └─xvda15
         vfat   FAT32 UEFI  54D6-C8B8
    xvdf
    ├─xvdf1
    │    ext4   1.0   cloudimg-rootfs
    │                       cda0c0a7-e64a-4413-85a5-a0235f6f567f
    

    我发现xvda1的uuid和xvdf1相同,这属于你说的那种情况吗? 之后我使用了

    sudo mount -o nouuid /dev/xvdf /mnt/temp
    

    显示

    mount: /mnt/temp: /dev/xvdf already mounted or mount point busy.
    

    并且取消挂载时会显示并没有挂载

    ubuntu@ip-172-31-25-199:/mnt/temp$ sudo umount /mnt/temp
    umount: /mnt/temp: not mounted.
    ubuntu@ip-172-31-25-199:/mnt/temp$ sudo umount /dev/xvdf
    umount: /dev/xvdf: not mounted.
    

    此外,我查看了占据/mnt/temp的进程:

    sudo fuser -mv /mnt/temp
    

    显示

                         USER        PID ACCESS COMMAND
    /mnt/temp:           root     kernel mount /
                         root          1 .rce. systemd
                         root          2 .rc.. kthreadd
                         root          3 .rc.. rcu_gp
                         root          4 .rc.. rcu_par_gp
                         root          5 .rc.. slub_flushwq
                         root          6 .rc.. netns
                         root          7 .rc.. kworker/0:0-events
                         root          8 .rc.. kworker/0:0H-events_highpri
                         root          9 .rc.. kworker/u30:0-events_power_efficient
                         ...
    

    也许有用? 然而/mnt/temp文件夹下没有任何文件

0
  1. 我发现xvda1的uuid和xvdf1相同,这属于你说的那种情况吗?
>> 是的。
/dev/xvda1 cda0c0a7-e64a-4413-85a5-a0235f6f567f 
/dev/xvdf1 cda0c0a7-e64a-4413-85a5-a0235f6f567f 

!!! 这常见于您这两台实例是从同一个 AMI 所创建的,所以 root volume 上的分割区(Partition)配置是一致的。
  1. 您没挂载到正确的分割区(Partition)
sudo mount -o nouuid /dev/xvdf /mnt/temp <---挂错了。
>> 请改用。
sudo mount -o nouuid /dev/xvdf1 /mnt/temp
profile pictureAWS
Jerry_K
已回答 1 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则