ການແກ້ໄຂບັນຫາ
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. |
-
ທຳອິດ, ໃຫ້ແນ່ໃຈວ່າລະບົບຂອງທ່ານໄດ້ຮັບການອັບເດດຄົບຖ້ວນແລ້ວ ໂດຍການໃຊ້ຄຳສັ່ງ
sudo rpm-ostree upgradeແລະ ເຮັດການຣີບູດ (reboot). -
ຈາກນັ້ນໃຫ້ຕັ້ງຄ່າຄັງເກັບຊອບແວ RPM Fusion ຕາມ ເອກະສານແນະນຳ, ເຊິ່ງລວມເຖິງການຣີບູດສອງຄັ້ງ.
-
ສຸດທ້າຍ, ຕິດຕັ້ງໄດຣເວີ:
# 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) ດ້ວຍຄີພາຍໃນເຄື່ອງທີ່ຖືກລົງທະບຽນໂດຍໃຊ້ |
ຂໍຂອບໃຈ 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:
-
ດຶງຂໍ້ມູນ ແລະ ຕິດຕັ້ງການຕັ້ງຄ່າຄັງເກັບ (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 -
ດຶງຂໍ້ມູນ ແລະ ຕິດຕັ້ງ 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 -
ປ່ຽນ 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 ### ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -
ຕິດຕັ້ງແພັກເກັດໃໝ່ດ້ວຍຄຳສັ່ງ:
$ rpm-ostree install tailscale
ການຮອງຮັບທີ່ດີຂຶ້ນໃນ rpm-ostree ສຳລັບກໍລະນີນີ້ ແມ່ນຖືກຕິດຕາມຢູ່ໃນ rpm-ostree#4014.
ບັນຫາ SELinux
ໃນຂະນະທີ່ຜູ້ໃຊ້ງານ Fedora Atomic Desktops ໃນແຕ່ລະມື້, ມັນເປັນໄປໄດ້ວ່າພວກເຂົາອາດຈະໄດ້ແກ້ໄຂນະໂຍບາຍ (policy) ມາດຕະຖານຂອງ SELinux ເພື່ອພະຍາຍາມແກ້ໄຂບັນຫາທີ່ກ່ຽວຂ້ອງກັບ SELinux. ສິ່ງນີ້ມັກຈະເກີດຂຶ້ນເມື່ອຜູ້ໃຊ້ເຫັນການປະຕິເສດ (denial) ຈາກ SELinux ໃນ journal. ຖ້າເປັນກໍລະນີນັ້ນ ແລະ ຕ້ອງການກັບຄືນໄປໃຊ້ນະໂຍບາຍ SELinux ມາດຕະຖານ, ທ່ານສາມາດລອງປະຕິບັດຕາມຂັ້ນຕອນເຫຼົ່ານີ້.
-
ກວດສອບສະຖານະຂອງນະໂຍບາຍ 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 ຂອງທ່ານໄດ້ຖືກປ່ຽນແປງໄປຈາກຄ່າມາດຕະຖານ.
-
ສຳເນົານະໂຍບາຍ SELinux ມາດຕະຖານທີ່ມາພ້ອມກັບ OSTree compose
$ sudo cp -al /etc/selinux{,.bak} $ sudo rsync -rlv /usr/etc/selinux/ /etc/selinux/ຫຼັງຈາກເຮັດຂັ້ນຕອນນີ້ແລ້ວ, ຜົນລັອກຈາກ
ostree admin config-diff | grep policyບໍ່ຄວນຈະສະແດງວ່າວ່ານະໂຍບາຍຖືກປ່ຽນແປງອີກຕໍ່ໄປ.ຖ້ານະໂຍບາຍຂອງທ່ານຍັງຄົງສະແດງວ່າຖືກປ່ຽນແປງຢູ່, ທ່ານສາມາດລອງວິທີຕໍ່ໄປນີ້.
-
ລຶບນະໂຍບາຍ 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.
|
ການເລືອກຟໍແມັດ |
ບັນຫານີ້ຖືກຕິດຕາມຢູ່ໃນ Bugzilla#1575957.
toolbox: failed to list images with com.redhat.component=fedora-toolbox
|
ຕັ້ງແຕ່ |
ເມື່ອໃຊ້ຄຳສັ່ງ toolbox list, ລະບົບທີ່ໃຊ້ podman ເວີຊັນທີ່ໃໝ່ກວ່າ 1.2.0 ຈະສະແດງຂໍ້ຜິດພາດດັ່ງນີ້:
toolbox: failed to list images with com.redhat.component=fedora-toolbox
|
ວິທີແກ້ໄຂຕໍ່ໄປນີ້ອາດຈະເປັນປະໂຫຍດສຳລັບຂໍ້ຜິດພາດອື່ນໆຂອງ |
ເປັນວິທີແກ້ໄຂຊົ່ວຄາວ, ທ່ານສາມາດຂ້າມ (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) ແພັກເກັດໄດ້ໂດຍປະຕິບັດຕາມຂັ້ນຕອນເຫຼົ່ານີ້:
-
ດາວໂຫຼດ
podman-1.2.0-2.git3bd528e.fc30.x86_64.rpmຈາກ Koji. -
ລຶບ
podman-manpagesອອກດ້ວຍຄຳສັ່ງ:rpm-ostree override remove podman-manpages. -
ຂ້າມ (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
|
ທ່ານບໍ່ຄວນໃຊ້ຄຳສັ່ງ |
ແນວໃດກໍຕາມ, ຖ້າທ່ານໄດ້ເຮັດສິ່ງນັ້ນໄປແລ້ວ, ມັນຍັງພໍມີທາງທີ່ຈະກູ້ຄືນໄດ້.
-
ບູດເຄື່ອງດ້ວຍ
enforcing=0ໃນ kernel command line -
ສ້າງ commit ໃໝ່ທີ່ "ແກ້ໄຂແລ້ວ" ພາຍໃນເຄື່ອງ
-
ຕິດຕັ້ງ (Deploy) commit ໃໝ່ທີ່ "ແກ້ໄຂແລ້ວ"
-
ໃຊ້ຄຳສັ່ງ
restorecon -
ຣີບູດ
-
ທຳຄວາມສະອາດ (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 ຂອງທ່ານໄດ້, ທ່ານສາມາດຕັ້ງລະຫັດຜ່ານໃໝ່ໄດ້ໂດຍປະຕິບັດຕາມຂັ້ນຕອນເຫຼົ່ານີ້:
-
ໃນຂະນະທີ່ລະບົບກຳລັງບູດ, ໃຫ້ຂັດຈັງຫວະຂັ້ນຕອນການບູດທີ່ເມນູ GRUB2 ໂດຍການກົດປຸ່ມ Esc.
-
ເລືອກລາຍການບູດທີ່ທ່ານຕ້ອງການແກ້ໄຂໂດຍການໃຊ້ປຸ່ມລູກສອນ.
-
ແກ້ໄຂລາຍການທີ່ເລືອກດ້ວຍປຸ່ມ e.
-
ໃຊ້ປຸ່ມລູກສອນເພື່ອເລືອກແຖວທີ່ຂຶ້ນຕົ້ນດ້ວຍ
linux,linux16, ຫຼືlinuxefi. -
ໄປທີ່ສ່ວນທ້າຍຂອງແຖວນັ້ນ (ໂດຍການກົດ Ctrl + e) ແລ້ວຕື່ມ
init=/bin/bashໃສ່ທາງທ້າຍ. -
ກົດ Ctrl + x ຫຼື F10 ເພື່ອບູດລາຍການນັ້ນ.
-
ເມື່ອມາຮອດໜ້າຈໍ
bash, ໃຫ້ໃຊ້ຄຳສັ່ງຕໍ່ໄປນີ້:
# mount -t selinuxfs selinuxfs /sys/fs/selinux
# /sbin/load_policy
# passwd
# sync
# /sbin/reboot -ff
ຖ້າທ່ານຕ້ອງການປ່ຽນລະຫັດຜ່ານສຳລັບບັນຊີຜູ້ໃຊ້, ໃຫ້ປ່ຽນຄຳສັ່ງ passwd ເປັນ passwd <username>.
ຫຼັງຈາກທີ່ລະບົບຣີບູດສຳເລັດແລ້ວ, ທ່ານຄວນຈະສາມາດເຂົ້າສູ່ລະບົບດ້ວຍຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານໃໝ່ໄດ້.
Want to help? Learn how to contribute to Fedora Docs ›