• Ubuntu Server 22.04.1配置(配置root账号、设置固定IP、更改SSH端口、配置UFW、VM扩展磁盘后Ubuntu的扩容)


            为了能快速的创建虚拟机,通过VM创建了一个2核CPU、4G内存、40G硬盘,安装Ubuntu Server 22.04.1的虚拟机,以便在需要的时候随时克隆一个新的虚拟机出来。

            在新的虚拟机克隆出来后可能会调整硬件的配置,例如将40G硬盘扩展到50G,此时在Ubuntu中是不认的,需要通过重新分配挂载来利用多出来的10G空间。

            网上的资料很多是挂载到某个目录下,而我想是直接扩容 / 。因此查了很多资料,也进行了很多尝试,综合网上的各种资料,实现了目标,在此记录过程,用于查阅。同时,本文记录了Ubuntu Server 22.04.1的初步配置过程。

            操作系统 Ubuntu Server 22.04.1

            初始虚拟机(2核CPU、4G内存、20G硬盘、Ubuntu Server 22.04.1)已经全部准备好,在安装Ubuntu时已经将源改为 https://mirrors.aliyun.com/ubuntu 。那么,我们从VM扩容开始。

     一、VM克隆

            右键要克隆的虚拟机,从管理->克隆 菜单进入。

            欢迎界面点击“下一页”。

     

            勾选”虚拟机中的当前状态“,点击”下一页“。此时的虚拟机应该在停机状态。

            勾选”创建完整克隆“后点击”下一页“。

            输入虚拟机的名称和路径后,点击”完成“,等待克隆结束即可。

    二、更改虚拟机配置

            在虚拟机没有启动的情况下,可以对虚拟机的配置进行修改。选中某虚拟机,点击”编辑虚拟机设置“进行修改。

            主要调整处理器、内存和硬盘。调整范围需要在本机的配置范围之内。

            配置好之后,启动虚拟机,进入后进行系统的相关配置。

    三、开放root账号

            由于目前不是用的root账号进行登录,因此,在操作命令前需要增加sodo 。

            1、编辑sshd_config文件,输入命令:sudo vi /etc/ssh/sshd_config ,在输入密码后编辑配置文件。

     改成 

             保存退出。

             2、重启sshd服务。输入命令:sudo systemctl restart sshd ,能正常重启即可。

             3、设置root账号密码。

            输入命令:sudo passwd root ,输入两次密码后即可。

            可退出系统重新用root进行登录尝试。

            注意:如果用root登录直接输入命令即可,否则,部分命令需要sudo 。

            下面的操作均是通过root登录后进行,如果不更换root登录,请在命令前加 sudo 。

     

    四、更改ssh登录端口

            用root登录新的IP和端口。

            1、编辑sshd_config文件,输入命令:vi /etc/ssh/sshd_config ,编辑配置文件。

     放开注释,并改成需要的端口, 

            保存退出。

             2、重启sshd服务。输入命令:sudo systemctl restart sshd ,能正常重启即可。

             可退出系统重新用root和新的端口进行登录尝试。

    五、设置固定IP

             1、编辑 00-installer-config.yaml 文件(寻找 /etc/netplan 目录下的 0开头的文件),输入命令: vi /etc/netplan/00-installer-config.yaml,编辑配置文件。

            目前默认是开启DHCP的。如图:

            按照下图进行调整:

            保存退出。

            2、使配置生效,输入命令:netplan apply 。IP更改完后需要重新登录新的IP。

            3、如果报了 WARNING:root:Cannot call Open vSwitch: ovsdb-server.service is not running. 的问题,则通过命令 apt install openvswitch-switch 安装服务后再执行 netplan apply 命令。

    六、开启UFW

            用root登录新的IP。

            1、确认UFW是否已经开启。输入命令:ufw status verbose 。如下图则没有开启。

            2、开启UFW,输入命令:ufw enable 。如果出现中间的确认项,则输入:y 。

             3、设置默认规则,输入命令:ufw default deny 。

            4、确认UFW状态,输入命令:ufw status verbose 。如下图则开启成功。

            5、配置当前需要的端口,例如ssh端口。输入命令:ufw allow 20022/tcp 。

            6、使设置生效,输入命令:ufw reload 。

            此时,重新登录时,没有在UFW开放的端口将无法访问。

    七、更新源和更新apt、apt-get

            1、更新源

            修改 sources.list 文件。输入命令:vi /etc/apt/sources.list ,编辑源内容,下面为阿里源。

    1. # See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
    2. # newer versions of the distribution.
    3. deb http://mirrors.aliyun.com/ubuntu jammy main restricted
    4. # deb-src http://mirrors.aliyun.com/ubuntu jammy main restricted
    5. ## Major bug fix updates produced after the final release of the
    6. ## distribution.
    7. deb http://mirrors.aliyun.com/ubuntu jammy-updates main restricted
    8. # deb-src http://mirrors.aliyun.com/ubuntu jammy-updates main restricted
    9. ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
    10. ## team. Also, please note that software in universe WILL NOT receive any
    11. ## review or updates from the Ubuntu security team.
    12. deb http://mirrors.aliyun.com/ubuntu jammy universe
    13. # deb-src http://mirrors.aliyun.com/ubuntu jammy universe
    14. deb http://mirrors.aliyun.com/ubuntu jammy-updates universe
    15. # deb-src http://mirrors.aliyun.com/ubuntu jammy-updates universe
    16. ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
    17. ## team, and may not be under a free licence. Please satisfy yourself as to
    18. ## your rights to use the software. Also, please note that software in
    19. ## multiverse WILL NOT receive any review or updates from the Ubuntu
    20. ## security team.
    21. deb http://mirrors.aliyun.com/ubuntu jammy multiverse
    22. # deb-src http://mirrors.aliyun.com/ubuntu jammy multiverse
    23. deb http://mirrors.aliyun.com/ubuntu jammy-updates multiverse
    24. # deb-src http://mirrors.aliyun.com/ubuntu jammy-updates multiverse
    25. ## N.B. software from this repository may not have been tested as
    26. ## extensively as that contained in the main release, although it includes
    27. ## newer versions of some applications which may provide useful features.
    28. ## Also, please note that software in backports WILL NOT receive any review
    29. ## or updates from the Ubuntu security team.
    30. deb http://mirrors.aliyun.com/ubuntu jammy-backports main restricted universe multiverse
    31. # deb-src http://mirrors.aliyun.com/ubuntu jammy-backports main restricted universe multiverse
    32. deb http://mirrors.aliyun.com/ubuntu jammy-security main restricted
    33. # deb-src http://mirrors.aliyun.com/ubuntu jammy-security main restricted
    34. deb http://mirrors.aliyun.com/ubuntu jammy-security universe
    35. # deb-src http://mirrors.aliyun.com/ubuntu jammy-security universe
    36. deb http://mirrors.aliyun.com/ubuntu jammy-security multiverse
    37. # deb-src http://mirrors.aliyun.com/ubuntu jammy-security multiverse

             2、更新apt

             输入命令:apt update 

    ​​​​​​​

            输入命令:apt upgrade

            3、更新apt-get 

            输入命令:apt-get update

             输入命令:apt-get upgrade 

             4、apt 和 apt-get 区别

            apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合。apt update 命令不仅更新存储库索引,还告知存储库中是否可用软件以及有多少新版本可用。

            apt 可以看作 apt-get 和 apt-cache 命令的子集, 可以为包管理提供必要的命令选项。apt-get 虽然没被弃用,但作为普通用户,还是应该首先使用 apt。

    八、修改时区

            1、设置时区为上海,输入命令:timedatectl set-timezone Asia/Shanghai 。

            2、将当前时间写入BIOS避免重启之后失效,输入命令:hwclock --systohc 。

            3、查看当前系统时间,输入命令:date -R 。

            4、查看当前硬件时间,输入命令:hwclock --show 。 

    九、扩展磁盘到 /

            物理卷(Physical Volume,PV)
            指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

            卷组(Volume Group,VG)
            类似于非LVM系统中的物理磁盘,其由一个或多个物理卷PV组成。可以在卷组上创建一个或多个LV(逻辑卷)。

            逻辑卷(Logical Volume,LV)
            类似于非LVM系统中的磁盘分区,逻辑卷建立在卷组VG之上。在逻辑卷LV之上可以建立文件系统(比如/home或者/usr等)。

            1、查看当前磁盘设备,输入命令:lsblk 。

            /dev/sda 有60G,但实际使用只有18.2G。

            2、通过 parted 进行 GPT 分区。

            parted命令可以划分单个分区大于2T的GPT格式的分区,也可以划分普通的MBR分区,fdisk命令对于大于2T的分区无法划分,所以用fdisk无法看到parted划分的GPT格式的分区,一般用“fdisk -l” 查看GPT磁盘分区时,往往会出现“WARNING...”。

            进入parted交互,输入命令:parted /dev/sda 。

             查看parted帮助,输入命令:help 。

            打印所有分区情况,输入命令:print all 。

     

            选中要分区的磁盘,输入命令:select /dev/sda 。

     

            打印 /dev/sda 分区的磁盘情况,输入命令:print 。

            创建新的分区,输入命令:mkpart 。用ext4,从21.5GB一直分到最后,End? -1 表示分配到最后。

            打印分配完成候的磁盘分区情况,输入命令:print 。

            退出prated ,输入命令:quit 。

            查看当前磁盘情况,可以看到 sda4 分配了 40G,输入命令:lsblk 。

            对分区进行格式化,此处格式化 /dev/sda4 ,输入命令:mkfs.ext4 /dev/sda4 。

     

            创建物理卷PV,输入命令:pvcreate /dev/sda4 。

            查看PV情况,输入命令:pvscan 。

            将PV加入卷组VG,首先查看VG情况,输入命令:vgdisplay 。

     

            查看逻辑卷LV情况,输入命令:lvdisplay 。VG Name 为 ubuntu-vg 。

     

             将物理卷 /dev/sda4 加入卷组 ubuntu-vg 中,输入命令: vgextend ubuntu-vg /dev/sda4 。

            再次查看卷组情况,输入命令:vgdisplay 。发现VG Size 和 Free PE/Size 已经发生变化。

            再次查看PV卷情况,输入命令:pvscan 。发现VG 值都为 ubuntu-vg 。

            查看磁盘情况,输入命令:df -h 。发现 / 对应的是 /dev/mapper/ubuntu--vg-ubuntu--lv 。

             对 /dev/mapper/ubuntu--vg-ubuntu--lv 进行扩容,分配所有Free的可用磁盘容量,输入命令:lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv

            调整文件系统大小后,完成扩容。输入命令:resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv 。

            有时候在执行此命令时会出现 no such file or director 错误,等一会或重启ssh session甚至重启下虚拟机试试,也许就好了。

            查看目前磁盘情况,输入命令:df -h 。发现 / 容量已经达到48G。

  • 相关阅读:
    vue2升vue3报错,warning Replace `xxx` with `“xxx“` prettier/prettier
    【网站项目】书籍销售系统小程序
    EN 13859-2防水用柔性薄板—CE认证
    等保三级,多级等保认证的一点了解
    二次元商业计划书PPT模版
    sizeof函数的用法
    MATLAB 多信号显示方案
    力扣labuladong——一刷day38
    Java函数式编程Lambda和Stream流
    Hexagon_V65_Programmers_Reference_Manual(30)
  • 原文地址:https://blog.csdn.net/wangt5952/article/details/127771485