Macbook Console Font Size

  1. Macbook pro 螢幕解析度度為 2560x1600,文字模式的終端機字非常小無法操作。修改開機核心載入 vga=xxx 無效,載入 video=xxxx 指定螢幕解析度。
    [root@dywmac ~]# vim /boot/efi/EFI/redhat/grub.conf 
    [root@dywmac ~]# grep video /boot/efi/EFI/redhat/grub.conf 
        kernel /vmlinuz-............. quiet video=1024x800
    
  2. kernel 4.5 以上變更螢幕解析度度雖然可以將文字模式的終端機字型變大,但卻沒有改變終端機的行列數,以致於過長文字及超過的執行列會跑到螢幕外,仍需要調整。為解決此問題可以將預設字型 SYSFONT=latarcyrheb-sun16 由 16 增到 32。
    [root@dywmac ~]# vim /boot/efi/EFI/redhat/grub.conf 
    [root@dywmac ~]# grep video /boot/efi/EFI/redhat/grub.conf 
        kernel /vmlinuz-..... SYSFONT=latarcyrheb-sun16 ........ quiet
    
  3. 查終端機系統字型在 /lib/kbd/consolefonts 目錄下。
    [root@dywmac ~]# find /lib* -name latarcyr*
    /lib/kbd/consolefonts/latarcyrheb-sun16.psfu.gz
    
  4. 在系統字型 /lib/kbd/consolefonts 目錄下找不到 32 點字型。
    [root@dywmac ~]# ls /lib/kbd/consolefonts/*32*
    ls: cannot access /lib/kbd/consolefonts/*32*: No such file or directory
    
  5. 使用 yum 查到 terminus-fonts-console 套件包含 32 的字型。
    [root@dywmac ~]# yum provides /lib/kbd/consolefonts/*32* --enablerepo=centos
    .......
    terminus-fonts-console-4.30-1.el6.noarch : Clean fixed width font (console version)
    Repo        : installed
    Matched from:
    Other       : Provides-match: /lib/kbd/consolefonts/ter-v32n.psf.gz
    
  6. 安裝 terminus-fonts-console 套件。
    [root@dywmac ~]# yum install terminus-fonts-console --enablerepo=centos
    
  7. 在系統字型 /lib/kbd/consolefonts 目錄下已有 32 點字型。
    [root@dywmac ~]# ls /lib/kbd/consolefonts/*32*
    /lib/kbd/consolefonts/ter-132b.psf.gz  /lib/kbd/consolefonts/ter-g32n.psf.gz
    /lib/kbd/consolefonts/ter-132n.psf.gz  /lib/kbd/consolefonts/ter-i32b.psf.gz
    /lib/kbd/consolefonts/ter-232b.psf.gz  /lib/kbd/consolefonts/ter-i32n.psf.gz
    /lib/kbd/consolefonts/ter-232n.psf.gz  /lib/kbd/consolefonts/ter-k32b.psf.gz
    /lib/kbd/consolefonts/ter-732b.psf.gz  /lib/kbd/consolefonts/ter-k32n.psf.gz
    /lib/kbd/consolefonts/ter-732n.psf.gz  /lib/kbd/consolefonts/ter-m32b.psf.gz
    /lib/kbd/consolefonts/ter-932b.psf.gz  /lib/kbd/consolefonts/ter-m32n.psf.gz
    /lib/kbd/consolefonts/ter-932n.psf.gz  /lib/kbd/consolefonts/ter-p32b.psf.gz
    /lib/kbd/consolefonts/ter-c32b.psf.gz  /lib/kbd/consolefonts/ter-p32n.psf.gz
    /lib/kbd/consolefonts/ter-c32n.psf.gz  /lib/kbd/consolefonts/ter-u32b.psf.gz
    /lib/kbd/consolefonts/ter-d32b.psf.gz  /lib/kbd/consolefonts/ter-u32n.psf.gz
    /lib/kbd/consolefonts/ter-d32n.psf.gz  /lib/kbd/consolefonts/ter-v32b.psf.gz
    /lib/kbd/consolefonts/ter-g32b.psf.gz  /lib/kbd/consolefonts/ter-v32n.psf.gz
    
  8. Grub 設定開機核心載入終端機系統字型使用 ter-932n 32 點字型。
    [root@dywmac ~]# vim /boot/efi/EFI/redhat/grub.conf 
    [root@dywmac ~]# grep ter-932n /boot/efi/EFI/redhat/grub.conf 
        kernel /vmlinuz ...... SYSFONT=ter-932n ...... quiet
    
  9. kernel 4.3 版 Grub 設定開機核心載入終端機系統字型使用 ter-932n 32 點字型,並且使用 video 參數不會有顯示超出螢幕的問題。
    [root@dywmac ~]# vim /boot/efi/EFI/redhat/grub.conf 
    [root@dywmac ~]# grep ter-932n /boot/efi/EFI/redhat/grub.conf 
        kernel /vmlinuz ...... SYSFONT=ter-932n ...... quiet video=1280x800
    
  10. 開機及終端機系統字型於開機核心參數設定無效,在 i18n 設定使用 ter-932n 32 點字型。
    [root@dywmac ~]# vim /etc/sysconfig/i18n 
    [root@dywmac ~]# cat /etc/sysconfig/i18n 
    LANG="en_US.UTF-8"
    #SYSFONT="latarcyrheb-sun16"
    SYSFONT="ter-132n"
    
  11. 修改 dracut 預設 SYSFONT,重新產生開機 initramfs 檔案,開機時才會使用 ter-932n 32 點字型。
    [root@dywmac ~]# vim /usr/share/dracut/modules.d/10redhat-i18n/install
    [root@dywmac ~]# grep SYSFONT /usr/share/dracut/modules.d/10redhat-i18n/install
        [[ $SYSFONT ]] || SYSFONT=ter-932n
        for FN in ${kbddir}/consolefonts/$SYSFONT.* ; do
        [[ $SYSFONTACM ]] && inst ${kbddir}/consoletrans/$SYSFONTACM
    
    [root@dywmac ~]# dracut -f /boot/initramfs-4.7.0-1.el6.elrepo.x86_64.img 4.7.0-1.el6.elrepo.x86_64
    
  12. 若還是有問題,在第一支程式 init 設定 SYSFONT 為 sun-932n。
    [root@dywmac ~]# vim /etc/sysconfig/init 
    [root@dywmac ~]# head -1 /etc/sysconfig/init
    setfont ter-932n