ການແກ້ໄຂບັນຫາ

Fedora Atomic Desktops ໃຊ້ວິທີໃໝ່ໃນການຕິດຕັ້ງ ແລະ ຈັດການລະບົບປະຕິບັດການເດັສທັອບຂອງທ່ານ, ດັ່ງນັ້ນ ບາງຄັ້ງທ່ານອາດຈະພົບກັບບັນຫາໃນຂະນະທີ່ນຳໃຊ້ໃນຊີວິດປະຈຳວັນ. ດ້ານລຸ່ມນີ້ແມ່ນບາງບັນຫາທີ່ພົບເລື້ອຍທີ່ສຸດ ແລະ ວິທີການແກ້ໄຂຊົ່ວຄາວສຳລັບບັນຫາເຫຼົ່ານັ້ນ.

"Forbidden base package replacements"

ສິ່ງນີ້ສາມາດເກີດຂຶ້ນໄດ້ເມື່ອແພັກເກັດທີ່ກຳລັງຖືກຕິດຕັ້ງແບບ Layer ມີຄວາມກ່ຽວຂ້ອງ (dependency) ກັບແພັກເກັດທີ່ຢູ່ໃນລະບົບປະຕິບັດການພື້ນຖານ (Base OS). ໃນກໍລະນີທີ່ເປັນບັນຫາ, ແພັກເກັດທີ່ຕິດຕັ້ງແບບ Layer ຕ້ອງການເວີຊັນທີ່ໃໝ່ກວ່າຂອງແພັກເກັດທີ່ກ່ຽວຂ້ອງນັ້ນ ເຊິ່ງຍັງບໍ່ມີໃຫ້ໃຊ້ໃນລະບົບປະຕິບັດການພື້ນຖານ.

ໃນກໍລະນີສ່ວນໃຫຍ່, ການລໍຖ້າຊຸດການສ້າງ (compose) ຂອງ OSTree ທີ່ໃໝ່ກວ່າຈະຊ່ວຍແກ້ໄຂບັນຫານີ້ໄດ້. ແພັກເກັດທີ່ກ່ຽວຂ້ອງຈະຖືກອັບເດດໃນຊຸດການສ້າງ ແລະ ແພັກເກັດທີ່ຈະຕິດຕັ້ງແບບ Layer ກໍຈະສາມາດຕິດຕັ້ງໄດ້ສຳເລັດ.

ແນວໃດກໍຕາມ, ຖ້າທ່ານຍັງຄົງພົບບັນຫານີ້ກັບຊຸດການສ້າງທີ່ໃໝ່ກວ່າ, ທ່ານສາມາດລອງລຶບເມຕາດາຕາ (metadata) ດ້ວຍຄຳສັ່ງ rpm-ostree cleanup -m ແລ້ວລອງໃຊ້ຄຳສັ່ງ rpm-ostree install ອີກຄັ້ງ.

ຫຼືອີກທາງເລືອກໜຶ່ງ, ທ່ານສາມາດລອງປ່ຽນຖານ (rebase) ໄປຫາ updates ref ໃດໜຶ່ງ, ເຊັ່ນ fedora/44/updates/x86_64 ຫຼັງຈາກທີ່ເຮັດການ cleanup ແລ້ວ.

ສຳລັບຂໍ້ມູນເພີ່ມເຕີມ, ເບິ່ງທີ່ rpm-ostree#415.

ການຕິດຕັ້ງແພັກເກັດໄວ້ທີ່ /opt ຫຼື /usr/local

ການຕິດຕັ້ງລົງໃນ /opt ມັກຈະຖືກຍົກຂຶ້ນມາເປັນບັນຫາເມື່ອຜູ້ໃຊ້ພະຍາຍາມຕິດຕັ້ງ Google Chrome. ໄດ້ມີການນຳໃຊ້ ວິທີແກ້ໄຂບາງສ່ວນ ເຊິ່ງຊ່ວຍໃຫ້ຜູ້ໃຊ້ສາມາດຕິດຕັ້ງ Google Chrome ແບບ Layer ໄດ້, ແນວໃດກໍຕາມ ມັນຍັງບໍ່ແມ່ນວິທີແກ້ໄຂທີ່ສົມບູນສຳລັບແອັບພລິເຄຊັນທີ່ຕ້ອງຂຽນຂໍ້ມູນທີ່ມີການປ່ຽນແປງ (mutable data) ລົງໃນ /opt.

ບັນຫານີ້ຖືກຕິດຕາມຢູ່ໃນ rpm-ostree#233.

ການນຳໃຊ້ໄດຣເວີ NVIDIA

ໂຄງການ Universal Blue ໄດ້ສ້າງອິມເມຈ (images) ຂອງລະບົບປະຕິບັດການທີ່ລວມເອົາໄດຣເວີ NVIDIA ມາໃຫ້ແລ້ວ. ອິມເມຈຂອງ Universal Blue ແມ່ນອີງໃສ່ Fedora Atomic Desktop ພ້ອມກັບການປ່ຽນແປງເພີ່ມເຕີມຕາມຄວາມເໝາະສົມຂອງພວກເຂົາ. ອິມເມຈ Universal Blue ບໍ່ໄດ້ຖືກຮັບຮອງຢ່າງເປັນທາງການໂດຍໂຄງການ Fedora. ຄວນພິຈາລະນາກ່ອນການນຳໃຊ້.

ທ່ານສາມາດຕິດຕັ້ງໄດຣເວີ NVIDIA binary ຢ່າງເປັນທາງການໄດ້ຈາກຄັງເກັບຊອບແວ (repositories) ຂອງ RPM Fusion.

ໄດຣເວີ NVIDIA binary ບໍ່ໄດ້ຖືກເບິ່ງແຍງໂດຍໂຄງການ Fedora ແລະ ໃນບາງຄັ້ງອາດຈະບໍ່ມີໃຫ້ໃຊ້ສຳລັບເວີຊັນຂອງເຄີເນິລ (kernel) ທີ່ລວມຢູ່ໃນ Fedora Atomic Desktops.
  1. ທຳອິດ, ໃຫ້ແນ່ໃຈວ່າລະບົບຂອງທ່ານໄດ້ຮັບການອັບເດດຄົບຖ້ວນແລ້ວ ໂດຍການໃຊ້ຄຳສັ່ງ sudo rpm-ostree upgrade ແລະ ເຮັດການຣີບູດ (reboot).

  2. ຈາກນັ້ນໃຫ້ຕັ້ງຄ່າຄັງເກັບຊອບແວ RPM Fusion ຕາມ ເອກະສານແນະນຳ, ເຊິ່ງລວມເຖິງການຣີບູດສອງຄັ້ງ.

  3. ສຸດທ້າຍ, ຕິດຕັ້ງໄດຣເວີ:

    # rpm-ostree install kmod-nvidia xorg-x11-drv-nvidia
    # rpm-ostree kargs --append=rd.driver.blacklist=nouveau,nova-core \
        --append=modprobe.blacklist=nouveau,nova-core \
        --append=nvidia-drm.modeset=1 \
        --append=initcall_blacklist=simpledrm_platform_driver_init
    # systemctl reboot

ເມື່ອນຳໃຊ້ Secure Boot, ໄດຣເວີ NVIDIA ທີ່ຕິດຕັ້ງໃນເຄື່ອງຈະຕ້ອງຖືກເຊັນ (signed) ດ້ວຍຄີພາຍໃນເຄື່ອງທີ່ຖືກລົງທະບຽນໂດຍໃຊ້ mokutil. ເບິ່ງລາຍລະອຽດເພີ່ມເຕີມທີ່ fedora-silverblue#499.

ທ່ານອາດຈະພົບກັບບັນຫາຕໍ່ໄປນີ້ໃນລະຫວ່າງການຕິດຕັ້ງ: #286, #331

ຂໍຂອບໃຈ Alex Larsson ຜູ້ທີ່ໄດ້ເຮັດການປ່ຽນແປງທີ່ຈຳເປັນຕໍ່ແພັກເກັດ akmods ແລະ kmodtools. ທ່ານສາມາດອ່ານເພີ່ມເຕີມກ່ຽວກັບວຽກທີ່ Alex ໄດ້ເຮັດໃນ ບລັອກ ຂອງລາວ.

ໂມດູນເຄີເນິລນອກຕົ້ນໄມ້ຫຼັກ (Out of tree) ແລະ ໄດຣເວີທີ່ໃຊ້ DKMS

ປັດຈຸບັນ Fedora Atomic Desktops ຍັງບໍ່ຮອງຮັບ DKMS. ເບິ່ງບັນຫາຈາກຕົ້ນທາງໄດ້ທີ່ rpm-ostree#1091.

ແທນທີ່ຈະເຮັດແນວນັ້ນ, ພວກເຮົາແນະນຳໃຫ້ທ່ານສ້າງແພັກເກັດ kmods ສຳລັບໂມດູນເຄີເນິລນອກຕົ້ນໄມ້ຫຼັກ ແລະ ສົ່ງພວກມັນໄປທີ່ຄັງເກັບຂອງ RPM Fusion. ຈາກນັ້ນແພັກເກັດ kmods ຈະຖືກນຳໃຊ້ໂດຍ akmods ເຊິ່ງຮອງຮັບໃນ Fedora Atomic Desktops.

ການເພີ່ມຄັງເກັບແພັກເກັດຈາກພາຍນອກ

ພາກສ່ວນນີ້ກ່າວເຖິງແຫຼ່ງຊອບແວຈາກບຸກຄົນທີສາມ ເຊິ່ງບໍ່ໄດ້ມີສ່ວນກ່ຽວຂ້ອງ ຫຼື ຖືກຮັບຮອງຢ່າງເປັນທາງການໂດຍໂຄງການ Fedora. ຄວນພິຈາລະນາກ່ອນການນຳໃຊ້.

ຖ້າທ່ານຕ້ອງການໃຊ້ຄັງເກັບຊອບແວ RPM Fusion, ກະລຸນາປະຕິບັດຕາມພາກສ່ວນ ການເປີດໃຊ້ຄັງເກັບ RPM Fusion.

ຊອບແວບາງຢ່າງອາດມີໃຫ້ໃຊ້ຈາກຄັງເກັບຂອງບຸກຄົນທີສາມເທົ່ານັ້ນ. ທ່ານສາມາດເພີ່ມຄັງເກັບພາຍນອກດ້ວຍຕົນເອງໃນ Fedora Atomic Desktops ໂດຍການວາງໄຟລ໌ .repo ໄວ້ໃນ /etc/yum.repos.d/ ແລະ ວາງ GPG key ໄວ້ໃນ /etc/pki/rpm-gpg/. ຕໍ່ໄປນີ້ແມ່ນຕົວຢ່າງຄົບຖ້ວນໃນການຕັ້ງຄ່າຄັງເກັບຂອງ Tailscale:

  1. ດຶງຂໍ້ມູນ ແລະ ຕິດຕັ້ງການຕັ້ງຄ່າຄັງເກັບ (repo config):

    $ curl -O https://pkgs.tailscale.com/stable/fedora/tailscale.repo
    [tailscale-stable]
    name=Tailscale stable
    baseurl=https://pkgs.tailscale.com/stable/fedora/$basearch
    enabled=1
    type=rpm
    repo_gpgcheck=1
    gpgcheck=0
    gpgkey=https://pkgs.tailscale.com/stable/fedora/repo.gpg
    $ sudo install -o 0 -g 0 -m644 tailscale.repo /etc/yum.repos.d/tailscale.repo
  2. ດຶງຂໍ້ມູນ ແລະ ຕິດຕັ້ງ GPG keys:

    $ curl -O https://pkgs.tailscale.com/stable/fedora/repo.gpg
    $ sudo install -o 0 -g 0 -m644 repo.gpg /etc/pki/rpm-gpg/tailscale.gpg
  3. ປ່ຽນ URL ໃນ gpgkey= ໃນການຕັ້ງຄ່າຄັງເກັບໃຫ້ເປັນທີ່ຢູ່ຂອງ GPG keys ໃນເຄື່ອງ:

    $ sudoedit /etc/yum.repos.d/tailscale.repo
    $ cat /etc/yum.repos.d/tailscale.repo
    [tailscale-stable]
    name=Tailscale stable
    baseurl=https://pkgs.tailscale.com/stable/fedora/$basearch
    enabled=1
    type=rpm
    repo_gpgcheck=1
    gpgcheck=0
    ### Update this line
    gpgkey=file:///etc/pki/rpm-gpg/tailscale.gpg
    ###    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  4. ຕິດຕັ້ງແພັກເກັດໃໝ່ດ້ວຍຄຳສັ່ງ:

    $ rpm-ostree install tailscale

ການຮອງຮັບທີ່ດີຂຶ້ນໃນ rpm-ostree ສຳລັບກໍລະນີນີ້ ແມ່ນຖືກຕິດຕາມຢູ່ໃນ rpm-ostree#4014.

ບັນຫາ SELinux

ໃນຂະນະທີ່ຜູ້ໃຊ້ງານ Fedora Atomic Desktops ໃນແຕ່ລະມື້, ມັນເປັນໄປໄດ້ວ່າພວກເຂົາອາດຈະໄດ້ແກ້ໄຂນະໂຍບາຍ (policy) ມາດຕະຖານຂອງ SELinux ເພື່ອພະຍາຍາມແກ້ໄຂບັນຫາທີ່ກ່ຽວຂ້ອງກັບ SELinux. ສິ່ງນີ້ມັກຈະເກີດຂຶ້ນເມື່ອຜູ້ໃຊ້ເຫັນການປະຕິເສດ (denial) ຈາກ SELinux ໃນ journal. ຖ້າເປັນກໍລະນີນັ້ນ ແລະ ຕ້ອງການກັບຄືນໄປໃຊ້ນະໂຍບາຍ SELinux ມາດຕະຖານ, ທ່ານສາມາດລອງປະຕິບັດຕາມຂັ້ນຕອນເຫຼົ່ານີ້.

  1. ກວດສອບສະຖານະຂອງນະໂຍບາຍ SELinux

    $ sudo ostree admin config-diff | grep policy
    M    selinux/targeted/active/policy.linked
    M    selinux/targeted/active/policy.kern
    M    selinux/targeted/policy/policy.31
    A    selinux/targeted/policy/policy.30

    ຖ້າມີຂໍ້ມູນໃດໆສະແດງອອກມາຈາກຄຳສັ່ງນີ້, ສະແດງວ່ານະໂຍບາຍ SELinux ຂອງທ່ານໄດ້ຖືກປ່ຽນແປງໄປຈາກຄ່າມາດຕະຖານ.

  2. ສຳເນົານະໂຍບາຍ SELinux ມາດຕະຖານທີ່ມາພ້ອມກັບ OSTree compose

    $ sudo cp -al /etc/selinux{,.bak}
    $ sudo rsync -rlv /usr/etc/selinux/ /etc/selinux/

    ຫຼັງຈາກເຮັດຂັ້ນຕອນນີ້ແລ້ວ, ຜົນລັອກຈາກ ostree admin config-diff | grep policy ບໍ່ຄວນຈະສະແດງວ່າວ່ານະໂຍບາຍຖືກປ່ຽນແປງອີກຕໍ່ໄປ.

    ຖ້ານະໂຍບາຍຂອງທ່ານຍັງຄົງສະແດງວ່າຖືກປ່ຽນແປງຢູ່, ທ່ານສາມາດລອງວິທີຕໍ່ໄປນີ້.

  3. ລຶບນະໂຍບາຍ SELinux ອອກ; ແລ້ວສຳເນົານະໂຍບາຍມາດຕະຖານເຂົ້າມາແທນ

    $ sudo rm -rf /etc/selinux
    $ sudo cp -aT /usr/etc/selinux /etc/selinux

    ຫຼັງຈາກນີ້, ຄຳສັ່ງ ostree admin config-diff | grep policy ບໍ່ຄວນຈະສະແດງການປ່ຽນແປງໃດໆ.

ບໍ່ສາມາດເພີ່ມຜູ້ໃຊ້ເຂົ້າໃນກຸ່ມໄດ້

ເນື່ອງຈາກວິທີທີ່ rpm-ostree ຈັດການຂໍ້ມູນຜູ້ໃຊ້ ແລະ ກຸ່ມ, ມັນອາດຈະບໍ່ສາມາດໃຊ້ຄຳສັ່ງ usermod -a -G ເພື່ອເພີ່ມຜູ້ໃຊ້ເຂົ້າໃນກຸ່ມໄດ້ສຳເລັດ. ຈົນກວ່າ rpm-ostree ຈະປ່ຽນໄປໃຊ້ systemd sysusers, ຜູ້ໃຊ້ຈະຕ້ອງດຶງຂໍ້ມູນໃສ່ໄຟລ໌ /etc/group ຈາກໄຟລ໌ /usr/lib/group ກ່ອນທີ່ຈະສາມາດເພີ່ມຕົນເອງເຂົ້າໃນກຸ່ມໄດ້.

ຕົວຢ່າງ, ຖ້າທ່ານຕ້ອງການເພີ່ມຜູ້ໃຊ້ເຂົ້າໃນກຸ່ມ libvirt:

$ grep -E '^libvirt:' /usr/lib/group | sudo tee -a /etc/group
$ sudo usermod -aG libvirt $USER
ທ່ານຈະຕ້ອງອອກຈາກລະບົບ (log off) ແລ້ວເຂົ້າສູ່ລະບົບໃໝ່ເພື່ອໃຫ້ການປ່ຽນແປງເຫຼົ່ານີ້ມີຜົນ.

ບັນຫານີ້ຖືກຕິດຕາມຢູ່ໃນ rpm-ostree#29 ແລະ rpm-ostree#49.

ostree fsck ລາຍງານວ່າໄຟລ໌ເສຍຫາຍ

ມັນເປັນໄປໄດ້ທີ່ຈະເກີດສະຖານະການທີ່ໄຟລ໌ໜຶ່ງ ຫຼື ຫຼາຍໄຟລ໌ໃນດິສກ໌ເກີດການເສຍຫາຍ ຫຼື ສູນຫາຍ. ໃນກໍລະນີນັ້ນ, ostree fsck ຈະລາຍງານຂໍ້ຜິດພາດໃນບາງ commit. ວິທີແກ້ໄຂ ໃນກໍລະນີນັ້ນ ແມ່ນການໝາຍ commit ທັງໝົດຂອງ OSTree ວ່າໄດ້ຮັບມາພຽງບາງສ່ວນ (partially retrieved) ແລ້ວດຶງ (re-pull) commit ນັ້ນມາໃໝ່.

/boot/efi ທີ່ເປັນແບບອ່ານຢ່າງດຽວ (Read-only) ເຮັດໃຫ້ບໍ່ສາມາດອັບເກຣດໄດ້

ບັນຫານີ້ມັກຈະພົບເຫັນຫຼາຍທີ່ສຸດເມື່ອຜູ້ໃຊ້ຕິດຕັ້ງ Fedora Atomic Desktops ເທິງຮາດແວຂອງ Apple. ພາທິຊັນ (partition) /boot/efi ໃນຮາດແວຂອງ Apple ຖືກຟໍແມັດເປັນ HFS+ ແລະ ມັນມັກຈະມີບັນຫາເມື່ອໄຟດັບ ຫຼື ເຫດການກ່ຽວກັບໄຟຟ້າອື່ນໆ.

ເນື່ອງຈາກຕອນນີ້ Fedora Atomic Desktops ໄດ້ລວມເອົາແພັກເກັດ hfsplus-tools ໄວ້ໃນຊຸດການສ້າງພື້ນຖານແລ້ວ, ມັນຈຶ່ງເປັນເລື່ອງທີ່ຂ້ອນຂ້າງງ່າຍສຳລັບຜູ້ໃຊ້ທີ່ຈະແກ້ໄຂຂໍ້ຜິດພາດປະເພດນີ້.

# umount /boot/efi
# fsck.hfsplus /dev/sda1
# mount -o rw /boot/efi

ເບິ່ງລາຍລະອຽດເພີ່ມເຕີມໄດ້ທີ່ບັນຫາໃນ GitHub rpm-ostree#1380.

ບໍ່ສາມາດຕິດຕັ້ງ Fedora Atomic Desktop ໃນລະບົບ EFI ໄດ້

ມີຜູ້ໃຊ້ລາຍງານວ່າພວກເຂົາບໍ່ສາມາດຕິດຕັ້ງ Fedora Atomic Desktop ໃນລະບົບທີ່ເປັນ EFI ເຊິ່ງເຄີຍມີລະບົບປະຕິບັດການອື່ນຕິດຕັ້ງມາກ່ອນ. ຂໍ້ຜິດພາດທີ່ມັກຈະພົບເຫັນມີລັກສະນະດັ່ງນີ້:

ostree ['admin', '--sysroot=/mnt/sysimage', 'deploy', '--os=fedora-workstation', 'fedora-workstation:fedora/28/x86_64/workstation'] exited with code -6`

ມີບາງວິທີທີ່ອາດຈະຊ່ວຍແກ້ໄຂໄດ້:

  • ໃນລະຫວ່າງຂັ້ນຕອນການຕິດຕັ້ງ, ໃຫ້ເລືອກ "Custom Partitioning" (ການຈັດພາທິຊັນເອງ) ແລະ ສ້າງພາທິຊັນ EFI ເພີ່ມເຕີມ. ກຳນົດພາທິຊັນ EFI ທີ່ສ້າງຂຶ້ນໃໝ່ນັ້ນໃຫ້ເປັນ /boot/efi. ທ່ານຈະສາມາດບູດລະບົບປະຕິບັດການກ່ອນໜ້ານັ້ນຄຽງຄູ່ໄປກັບ Fedora Atomic Desktop ຂອງທ່ານໄດ້. ຖ້າວິທີນີ້ບໍ່ໄດ້ຜົນ ໃຫ້ປະຕິບັດຕາມຂັ້ນຕອນຂ້າງລຸ່ມນີ້.

  • ເຮັດການຟໍແມັດພາທິຊັນ EFI ໃນເຄື່ອງຄືນໃໝ່ໃນລະຫວ່າງການຕິດຕັ້ງ. ສາມາດເຮັດໄດ້ໂດຍການເລືອກ "Custom Partitioning" ແລະ ໝາຍເລືອກຊ່ອງ Reformat (ຟໍແມັດໃໝ່) ໃນຂະນະທີ່ສ້າງພາທິຊັນ /boot/efi.

ການເລືອກຟໍແມັດ /boot/efi ໃໝ່ ອາດຈະສົ່ງຜົນໃຫ້ບໍ່ສາມາດບູດລະບົບປະຕິບັດການອື່ນໆທີ່ເຄີຍຕິດຕັ້ງມາກ່ອນໜ້ານີ້ໄດ້. ໃຫ້ແນ່ໃຈວ່າທ່ານໄດ້ສຳຮອງຂໍ້ມູນທີ່ສຳຄັນໄວ້ແລ້ວກ່ອນທີ່ຈະໃຊ້ມື້ນີ້.

ບັນຫານີ້ຖືກຕິດຕາມຢູ່ໃນ Bugzilla#1575957.

toolbox: failed to list images with com.redhat.component=fedora-toolbox

ຕັ້ງແຕ່ podman ເວີຊັນ 1.4.0 ເປັນຕົ້ນມາ ວິທີແກ້ໄຂນີ້ແມ່ນບໍ່ຈຳເປັນອີກຕໍ່ໄປ. ໃຫ້ແນ່ໃຈວ່າ podman ໄດ້ຮັບການອັບເດດແລ້ວ ໂດຍການໃຊ້ຄຳສັ່ງ rpm-ostree upgrade ກ່ອນທີ່ຈະລອງວິທີແກ້ໄຂນີ້.

ເມື່ອໃຊ້ຄຳສັ່ງ toolbox list, ລະບົບທີ່ໃຊ້ podman ເວີຊັນທີ່ໃໝ່ກວ່າ 1.2.0 ຈະສະແດງຂໍ້ຜິດພາດດັ່ງນີ້:

toolbox: failed to list images with com.redhat.component=fedora-toolbox

ວິທີແກ້ໄຂຕໍ່ໄປນີ້ອາດຈະເປັນປະໂຫຍດສຳລັບຂໍ້ຜິດພາດອື່ນໆຂອງ toolbox ທີ່ເກີດຈາກ podman ເວີຊັນທີ່ສູງກວ່າ 1.2.0. ເບິ່ງໄດ້ທີ່ toolbox#169.

ເປັນວິທີແກ້ໄຂຊົ່ວຄາວ, ທ່ານສາມາດຂ້າມ (override) ແພັກເກັດ podman ທີ່ໃໝ່ກວ່າເວີຊັນ 1.2.0 ໄດ້ໂດຍການໃຊ້ຄຳສັ່ງ:

$ rpm-ostree override --remove=podman-manpages \
    replace https://kojipkgs.fedoraproject.org//packages/podman/1.2.0/2.git3bd528e.fc30/x86_64/podman-1.2.0-2.git3bd528e.fc30.x86_64.rpm

ຣີບູດລະບົບເພື່ອໃຫ້ການປ່ຽນແປງມີຜົນ.

ສຳລັບການອ້າງອີງ, ທ່ານຍັງສາມາດຂ້າມ (override) ແພັກເກັດໄດ້ໂດຍປະຕິບັດຕາມຂັ້ນຕອນເຫຼົ່ານີ້:

  1. ດາວໂຫຼດ podman-1.2.0-2.git3bd528e.fc30.x86_64.rpm ຈາກ Koji.

  2. ລຶບ podman-manpages ອອກດ້ວຍຄຳສັ່ງ: rpm-ostree override remove podman-manpages.

  3. ຂ້າມ (override) ແພັກເກັດ podman ທີ່ຕິດຕັ້ງຢູ່ໃນປັດຈຸບັນ (ໂດຍໃຊ້ແພັກເກັດທີ່ທ່ານດາວໂຫຼດໃນຂັ້ນຕອນທຳອິດ) ດ້ວຍຄຳສັ່ງ:

    $ rpm-ostree override replace podman-1.2.0-2.git3bd528e.fc30.x86_64.rpm

ຕອນນີ້ທ່ານສາມາດຣີບູດລະບົບເພື່ອໃຫ້ການປ່ຽນແປງມີຜົນ.

ເພື່ອຍົກເລີກວິທີແກ້ໄຂນີ້ ໃຫ້ໃຊ້ຄຳສັ່ງຕໍ່ໄປນີ້:

$ rpm-ostree override reset podman
$ rpm-ostree override reset podman-manpages

ບໍ່ສາມາດເຂົ້າໃຊ້ toolbox ໄດ້ເນື່ອງຈາກຂໍ້ຜິດພາດກ່ຽວກັບສິດ (permissions)

ໃນບາງເວີຊັນຂອງ podman, ການພະຍາຍາມເຂົ້າໃຊ້ toolbox ຈະເຮັດໃຫ້ເກີດຂໍ້ຜິດພາດ. ທ່ານສາມາດແກ້ໄຂບັນຫານີ້ໄດ້ໂດຍການຕັ້ງຄ່າສິດ (reset permissions) ໃນ overlay-containers ໃໝ່ ດ້ວຍຄຳສັ່ງຕໍ່ໄປນີ້:

$ sudo chown -R $USER ~/.local/share/containers/storage/overlay-containers

ສິ່ງນີ້ຈະເຮັດການຕັ້ງຄ່າສິດໃນຄອນເທນເນີ (containers) ຂອງທ່ານໃໝ່ ແລະ ຊ່ວຍໃຫ້ທ່ານສາມາດເຂົ້າໃຊ້ພວກມັນໄດ້ອີກຄັ້ງ.

ເບິ່ງບັນຫາຂອງ podman ຈາກຕົ້ນທາງໄດ້ທີ່: podman#3187.

ການໃຊ້ຄຳສັ່ງ restorecon

ທ່ານບໍ່ຄວນໃຊ້ຄຳສັ່ງ restorecon ໃນລະບົບ Fedora Atomic Desktop ເດັດຂາດ. ເບິ່ງລາຍລະອຽດຂອງບັກ (bug) ໄດ້ທີ່ - Bugzilla#1259018

ແນວໃດກໍຕາມ, ຖ້າທ່ານໄດ້ເຮັດສິ່ງນັ້ນໄປແລ້ວ, ມັນຍັງພໍມີທາງທີ່ຈະກູ້ຄືນໄດ້.

  1. ບູດເຄື່ອງດ້ວຍ enforcing=0 ໃນ kernel command line

  2. ສ້າງ commit ໃໝ່ທີ່ "ແກ້ໄຂແລ້ວ" ພາຍໃນເຄື່ອງ

  3. ຕິດຕັ້ງ (Deploy) commit ໃໝ່ທີ່ "ແກ້ໄຂແລ້ວ"

  4. ໃຊ້ຄຳສັ່ງ restorecon

  5. ຣີບູດ

  6. ທຳຄວາມສະອາດ (Cleanup)

$ rpm-ostree status -b | grep BaseCommit
              BaseCommit: 696991d589980aeaef5eda352dd7ad3d33c444c789c209f793a84bc6e7269aee
### ຖ້າຄຳສັ່ງຂ້າງເທິງບໍ່ສະແດງຜົນໃດໆ, ໃຫ້ລອງ:
$ rpm-ostree status -b | grep Commit
              Commit: 696991d589980aeaef5eda352dd7ad3d33c444c789c209f793a84bc6e7269aee
$ sudo ostree checkout \
    -H 696991d589980aeaef5eda352dd7ad3d33c444c789c209f793a84bc6e7269aee \
    /ostree/repo/tmp/selinux-fix
$ sudo ostree fsck --delete
$ sudo ostree commit --consume \
    --link-checkout-speedup --orphan --selinux-policy=/ /ostree/repo/tmp/selinux-fix
$ sudo restorecon -Rv /var
$ sudo restorecon -Rv /etc
### ໃນຄຳສັ່ງຂ້າງລຸ່ມນີ້, ໃຫ້ປ່ຽນ:
### - x86_64 ເປັນສະຖາປັດຕະຍະກຳ CPU ຂອງທ່ານ
### - silverblue ເປັນຊື່ຂອງ Fedora Atomic Desktop ລຸ້ນທີ່ທ່ານໃຊ້
$ sudo ostree admin deploy fedora:fedora/44/x86_64/silverblue
$ sudo reboot

ຂໍ້ຄວນລະວັງໃນການກູ້ຄືນນີ້ຄື ແພັກເກັດທີ່ຕິດຕັ້ງແບບ layer ຂອງທ່ານຈະຖືກລຶບອອກ; ທ່ານຈະຕ້ອງຕິດຕັ້ງພວກມັນຄືນໃໝ່ຫຼັງຈາກການກູ້ຄືນ.

ເບິ່ງລາຍລະອຽດເພີ່ມເຕີມໄດ້ຈາກຄວາມຄິດເຫັນຕົ້ນທາງທີ່: ostree#1265.

ການຕັ້ງຄ່າລະຫັດຜ່ານໃໝ່ໃນໂໝດກູ້ໄພ (Rescue Mode)

ໃນກໍລະນີທີ່ທ່ານບໍ່ສາມາດຈື່ລະຫັດຜ່ານຜູ້ໃຊ້ ຫຼື ລະຫັດຜ່ານ root ຂອງທ່ານໄດ້, ທ່ານສາມາດຕັ້ງລະຫັດຜ່ານໃໝ່ໄດ້ໂດຍປະຕິບັດຕາມຂັ້ນຕອນເຫຼົ່ານີ້:

  1. ໃນຂະນະທີ່ລະບົບກຳລັງບູດ, ໃຫ້ຂັດຈັງຫວະຂັ້ນຕອນການບູດທີ່ເມນູ GRUB2 ໂດຍການກົດປຸ່ມ Esc.

  2. ເລືອກລາຍການບູດທີ່ທ່ານຕ້ອງການແກ້ໄຂໂດຍການໃຊ້ປຸ່ມລູກສອນ.

  3. ແກ້ໄຂລາຍການທີ່ເລືອກດ້ວຍປຸ່ມ e.

  4. ໃຊ້ປຸ່ມລູກສອນເພື່ອເລືອກແຖວທີ່ຂຶ້ນຕົ້ນດ້ວຍ linux, linux16, ຫຼື linuxefi.

  5. ໄປທີ່ສ່ວນທ້າຍຂອງແຖວນັ້ນ (ໂດຍການກົດ Ctrl + e) ແລ້ວຕື່ມ init=/bin/bash ໃສ່ທາງທ້າຍ.

  6. ກົດ Ctrl + x ຫຼື F10 ເພື່ອບູດລາຍການນັ້ນ.

  7. ເມື່ອມາຮອດໜ້າຈໍ bash, ໃຫ້ໃຊ້ຄຳສັ່ງຕໍ່ໄປນີ້:

# mount -t selinuxfs selinuxfs /sys/fs/selinux
# /sbin/load_policy
# passwd
# sync
# /sbin/reboot -ff

ຖ້າທ່ານຕ້ອງການປ່ຽນລະຫັດຜ່ານສຳລັບບັນຊີຜູ້ໃຊ້, ໃຫ້ປ່ຽນຄຳສັ່ງ passwd ເປັນ passwd <username>.

ຫຼັງຈາກທີ່ລະບົບຣີບູດສຳເລັດແລ້ວ, ທ່ານຄວນຈະສາມາດເຂົ້າສູ່ລະບົບດ້ວຍຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານໃໝ່ໄດ້.