Avatar

Organizations

  • 使用Hyper-V安装CentOS虚拟机,使用起来非常方便。但遇到磁盘空间不够时,不像Windows虚拟机那样方便给磁盘空间扩容。 总体两分二步:

    1. vhdx扩容

    关闭虚拟机,然后给磁盘扩容,操作方便网上教程多,这里不再赘述。

    2. CentOS扩容

    2.1 查看分区表

    $ lsblk
    NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda               8:0    0   20G  0 disk 
    ├─sda1            8:1    0  200M  0 part /boot/efi
    ├─sda2            8:2    0    1G  0 part /boot
    └─sda3            8:3    0  8.8G  0 part 
      ├─centos-root 253:0    0  7.8G  0 lvm  /
      └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
    

    以上内容可以看出,sda已经扩容到20G,但sda1+sda2+sda3只有10G说明vhdx扩容成功。

    2.2 建立新分区

    $ fdisk /dev/sda
    
    The device presents a logical sector size that is smaller than
    the physical sector size. Aligning to a physical sector (or optimal
    I/O) size boundary is recommended, or performance may be impacted.
    欢迎使用 fdisk (util-linux 2.23.2)
    更改将停留在内存中,直到您决定将更改写入磁盘。
    使用写入命令前请三思。
    
    
    命令(输入 m 获取帮助):n
    Partition type:
       p   primary (1 primary, 0 extended, 3 free)
       e   extended
    Select (default p): 
    Using default response p
    分区号 (2-4,默认 2)起始 扇区 (20971520-41943039,默认为 20971520)将使用默认值 20971520
    Last 扇区, +扇区 or +size{K,M,G} (20971520-41943039,默认为 41943039):+10G
    值超出范围。
    Last 扇区, +扇区 or +size{K,M,G} (20971520-41943039,默认为 41943039):+9.9G
    不支持的后缀:“.9G”。
    支持:10^N: KB (千字节), MB (兆字节), GB (吉字节)
                2^N: K  (约千字节), M  (约兆字节), G  (约吉字节)
    Last 扇区, +扇区 or +size{K,M,G} (20971520-41943039,默认为 41943039):+9G 
    分区 2 已设置为 Linux 类型,大小设为 9 GiB
    
    命令(输入 m 获取帮助):w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    
    WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
    The kernel still uses the old table. The new table will be used at
    the next reboot or after you run partprobe(8) or kpartx(8)
    正在同步磁盘。
    

    重读分区表时,发生错误

    $ partprobe
    Error: 备份 GPT 表不像应该的那样出现在磁盘的末尾。这可能意味这其它操作系统相信磁盘小一些。通过将备份移动到末尾 (并删除旧备份) 来修正?
    Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space (an extra 20971520 blocks) or continue with the current setting? 
    

    查看分区表时,发现新分区未创建成功

    $ lsblk
    NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda               8:0    0   20G  0 disk 
    ├─sda1            8:1    0  200M  0 part /boot/efi
    ├─sda2            8:2    0    1G  0 part /boot
    └─sda3            8:3    0  8.8G  0 part 
      ├─centos-root 253:0    0  7.8G  0 lvm  /
      └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
    

    使用 parted 修复分区表

    $ parted /dev/sda
    GNU Parted 3.1
    使用 /dev/sda
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) p                                                                
    错误: 备份 GPT 表不像应该的那样出现在磁盘的末尾。这可能意味这其它操作系统相信磁盘小一些。通过将备份移动到末尾 (并删除旧备份) 来修正?
    修正/Fix/忽略/Ignore/放弃/Cancel? fix                                     
    警告: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space (an extra 20971520 blocks) or continue with the current
    setting? 
    修正/Fix/忽略/Ignore? fix                                                 
    Model: Msft Virtual Disk (scsi)
    Disk /dev/sda: 21.5GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name                  标志
     1      1049kB  211MB   210MB   fat16        EFI System Partition  启动
     2      211MB   1285MB  1074MB  xfs
     3      1285MB  10.7GB  9452MB                                     lvm
    
    (parted) p                                                                
    Model: Msft Virtual Disk (scsi)
    Disk /dev/sda: 21.5GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags: 
    
    Number  Start   End     Size    File system  Name                  标志
     1      1049kB  211MB   210MB   fat16        EFI System Partition  启动
     2      211MB   1285MB  1074MB  xfs
     3      1285MB  10.7GB  9452MB                                     lvm
    
    (parted) quit                                                             
    

    再次建立新分区

    $ fdisk /dev/sda
    WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
    欢迎使用 fdisk (util-linux 2.23.2)
    更改将停留在内存中,直到您决定将更改写入磁盘。
    使用写入命令前请三思。
    
    
    命令(输入 m 获取帮助):n
    分区号 (4-128,默认 4)第一个扇区 (34-41943006,默认 20969472)Last sector, +sectors or +size{K,M,G,T,P} (20969472-41943006,默认 41943006):+10G
    已创建分区 4
    
    
    命令(输入 m 获取帮助):w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    
    WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
    The kernel still uses the old table. The new table will be used at
    the next reboot or after you run partprobe(8) or kpartx(8)
    正在同步磁盘。
    

    2.3 重读分区表

    $ partprobe
    

    重读分区表,正常不会有任何输出

    CentOS Hyper-V windows Created Mon, 26 Dec 2022 21:01:32 +0800
  • Hyper-V 环境下安装 Linux 是无法调节分辨率的,但可以通过设置指定分辨率,不过最大只能支持1920x1080

    1. 修改配置文件

    $ sudo nano /etc/default/grub
    

    将配置

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash "
    

    修改为

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=hyperv_fb:1920x1080"
    

    这里要注意屏幕的实际分辨率,在15寸的笔记本上,适合的分辨率为1600x900

    2. 更新 Grub

    $ sudo update-grub
    

    3. 重启

    $ reboot
    

    参考文档

    Hyper-V 下 Ubuntu/Deepin 如何设置分辨率

    Ubuntu Hyper-V windows Created Mon, 26 Dec 2022 20:58:50 +0800
  • 一般新电脑买来都默认安排家庭版,相比专业版一个主要的区别就是没有Hpyer-V 功能。 Hpyer-V 功能支持虚拟机,Windows原生的虚拟机在资源占用方便很有优势,不只是对开发人员有用,对日常办公也非常方便。

    • 常用的办公软件环境统一
    • 迁移方便
    • 控制流氓软件占用资源
    • 可随时通过还原点,还原系统

    1. 安装脚本

    pushd "%~dp0"
     
    dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
     
    for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
     
    del hyper-v.txt
     
    Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
    

    保存为Hyper-V.cmd

    2. 运行脚本

    将脚本放到桌面,右键“以管理员身份运行”,等待安装结束后,就可以使用 Hyper-V 功能了。

    3. 其它

    Hyper-V Windows Created Mon, 26 Dec 2022 20:55:50 +0800
  • 1. 网络配置的方法

    • 1.1 Hyper-V 安装完后,将自动创建一个“默认虚拟交换机”,并同时创建一个同名的虚拟网卡。
      • 此交换机名及虚拟网卡都无法修改,虚拟机直接填加即可使用网络。
      • 虚拟机之间互联,再创建一个“内部交换机”,添加到虚拟机并设置同一网段即可。
      • 缺点:速度较慢
    • 1.2 将宿主机物理网卡直接共享给“默认虚拟交换机”创建的虚拟网卡,是比较省事、且高效的方法,相当于在物理网卡上做了一个NAT转换。
      • 优点:“默认虚拟交换机”创建的虚拟网卡IP地址会自动固定为192.168.137.1,所有虚拟机的网段会固定为192.168.137.0。网速较快。
      • 缺点:
        • 在多个物理网卡之间切换时非常不方便;
        • 在ReviOS等第三方精简系统中,运作不稳定。
    • 1.3 在宿主机使用无线网卡时,由于Hyper-V对无线网卡支持的不好,需要做以下操作:
      • 新建“外部虚拟交换机”:
        • 选择宿主机网卡。
          • 勾选“允许管理操作系统共享此网络适配器”。
            • 网速较快。
            • 会在宿主机上创建一个网桥,一个虚拟网卡,且宿主机可同时上网。
          • 反之,则只会添加一个网桥,且宿主机无法同时上网。
            • 这是 Hyper-V 对无线网卡支持不够好的表现,而且网速很慢,慢到什么程度呢?慢到微信连文件都发不出去!
      • 新建“内部虚拟交换机”:
        • 会在宿主机上创建一个虚拟网卡。
        • 将所有虚拟机都接入自建的“内部虚拟交换机”,可以解决IP变化的问题。
      • 在宿主机上,将“外部虚拟交换机”创建的虚拟网卡,共享给“内部虚拟交换机”创建的虚拟网卡。
        • “内部虚拟交换机”创建的虚拟网卡IP地址会自动固定为192.168.137.1,所有虚拟机的网段会固定为192.168.137.0。
      • 在ReviOS等第三方精简系统中,运作不稳定。

    PS:

    • 如在宿主机同时安装了“Windows沙盒”功能,则沙盒会给每个物理网卡和虚拟网卡,都自动的再创建一个对应的虚拟网卡,容易造成混乱,使用中要注意。
    • Windows 网络共享重启会失效,这个BUG一直没有解决,需要如此解决:
      • 找到“Internet Connection Sharing”服务
        • 启动类型:自动
      • 找到注册表中“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\SharedAccess”
        • 新建“DWORD(32位)值(D)”:EnableRebootPersistConnection
        • 值(十六进制):1
      • 重启电脑
    • 最好给每个虚拟机都设置外网DNS,比如1.2.4.8,因为hyper-v的DNS服务不是很稳定。

    2. 网络拓扑

    使用以下拓扑结构来,解决多个物理网卡随时切换的问题: 宿主机直连路由器,宿主机上创建一个虚拟路由器,和一个虚拟机,宿主机与虚拟机都通过虚拟路由器来上网。

    TP Route宿主机OpenWRT虚拟机
    WLAN>DHCP
    IP: 192.168.10.113
    IP: 192.168.10.114
    mac: ac-8f
    >Bridge
    IP: -
    mac: ac-8f
    --
    外部网络->WLAN
    IP: 192.168.10.113
    mac: ac-8f
    >WLAN
    IP: 192.168.10.114
    mac: 01-36
    -
    内部网络->DHCP
    IP: 192.168.123.100
    mac: 01-28
    >Static
    IP: 192.168.123.1
    mac: 01-29
    >DHCP
    IP: 192.168.123.102
    mac: 01-2c
    网桥->Switch
    IP: -
    mac: ac-8f
    --

    可以尝试使用网桥功能,解决多物理网卡切换的问题

    network Hyper-V windows Created Mon, 26 Dec 2022 20:49:50 +0800
  • command 指令

    # 字符串方式
    command: /bin/bash -c "cp /app/dtest/config.default.yml /app/config.yml && python -u /app/dtest/tcc.py"
    # 另一种方式
    command: ["/bin/bash","-c","while","true;","do","sleep","1;","done"]
    # 配置文件方式
    ......
    

    tty 指令

    启动后停在cli,等待登录

    stdin_open: true # 对应 docker run 中的 -i
    tty: true        # 对应 docker run 中的 -t
    
    docker compose cli Docker Created Tue, 19 Jul 2022 11:31:21 +0800
  • 做朋友式的情人

    情人是寂寞路上遇到的人,是相互需要依托的人,是无法光明正大走一辈子的人,是一个和你没有一点家庭关系的人,却让你尝尽男女滋味尽情消魂的人。

    真正的情人是距离的思念,是除了妻子或者丈夫以外的唯一,是锦上添花的极品。但找情人并不容易,也是一种缘分,不是上过床就是情人,它是行走在朋友、红颜知己、爱人边缘的一种感情。比爱人多了一份浪漫,比朋友多了一份知己,比红颜知己多了一层身体上的信息。

    朋友是相互信任,爱人是相互包容,红颜知己是相互欣赏。朋友式的情人就是它们的总和。你成了他的朋友式情人,他会视你为一笔财富,他在你面前会轻松自在。快乐和烦心时都会想到你,他会欣赏你的思想,回味你的笑容,他愿意成为你永远的朋友,任何朋友都取代不了你的位置与感觉,因为你是他朋友式情人。

    做成功情人的秘诀

    如果你爱上一个人,又被对方爱着,但又注定你们今后无法生活在一起,而你又不想失去他,那么,你应该懂得做情人的规则,给这个角色一个明确的定位,不该问的不要问,不该说的不要说,不该要求的不要要求,感情要专一、安分,不要有支解和破坏的心理,因为大家都有各自的生活,也不要为他昼夜难眠。分享他的快乐,分担他的痛苦,理解他,把他当作爱人、情人、朋友去疼他,不要给他压力,关心他,体贴他,为他着想。这样的情人才会相爱长久,乃至一生。

    tips Created Sun, 17 Jul 2022 15:45:54 +0800
  • 青春,是与七个自己相遇。一个明媚,一个忧伤,一个华丽,一个冒险,一个倔强,一个柔软,最后那个正在成长。

    不要轻易对别人好,因为只会让别人觉得你的好很廉价。

    当你心情平白无故变得不好,那你肯定是在想某个人了。

    tips Created Sun, 17 Jul 2022 15:36:10 +0800
  • 懂得,是一种难言的柔情,入心入肺,入骨入髓;懂得,即使不言不语,即使山高水远,彼此的心依然贴近,惺惺相惜没有离。懂得,是发自内心的声音!    有些人,无需相识,却能通过一段话、一篇字明白彼此的心情。虽然隔着一张屏,一本书,一页纸,因为懂得,所以,她就是那个可以走进自己内心深处的人。

    有些情,无需轰轰烈烈,却能深深铭记在心底一辈子。虽然时光荏苒,青春不在,因为懂得,所以他(她)依然是那个不管是开心或是悲伤都可以在心底温情拥抱的人。

    然而,在我们漫长的一生里,又会遇见几个懂自己的人,就算是遇见了,又会有几个真正愿意懂自己的。这样的人,如果遇到了,或男或女,只需一人便足够了。真正的懂得,不是相邀,也不是牵引,更不是逼迫,而是实实在在自然而然的明白,这样的明白,无关风月,无关功利,甚至无关风雨也无关晴天。

    真正的懂得,不必言语,不必刻意,有时,只需浅浅一个微笑。真正的懂得,不必解释,不必逃避,有时,只需轻轻的一声呼唤。真正的懂得是一种心情,一种欣赏,更是一种心灵的默契。

    懂得,是无声的,也是有声的。每当你开心时,忧伤时,伪装时,失落时,流泪时,甚至你对生活不满抱怨时,无需多言,因为他(她)会说出那句足以让你感动流泪话语:“我知道,我懂得,我明白”。这是一句比爱和喜欢更深情的表白。

    tips Created Sun, 17 Jul 2022 15:32:46 +0800
  • 观物

    • 以理观物,看到事物的本质
    • 本性观物,知晓事物的表现
    • 以命观物,知晓过去和未来

    上好义则下好义,上好利则下必好利

    tips Created Sun, 17 Jul 2022 15:24:19 +0800
    • 明拍马屁 - 先明夸
    • 暗拍马屁 - 再谈一路走来的心得
    tips Created Wed, 13 Jul 2022 10:51:49 +0800