Pemecahan Masalah
Fedora Atomic Desktops menggunakan cara baru dalam men-deploy dan mengelola sistem operasi desktop Anda, sehingga Anda mungkin sesekali mengalami masalah dalam penggunaan sehari-hari. Berikut adalah beberapa masalah yang lebih umum dilaporkan beserta solusi alternatifnya.
"Forbidden base package replacements"
Ini dapat terjadi ketika paket yang sedang dilapisi memiliki ketergantungan pada paket yang ada di OS dasar. Dalam kasus yang bermasalah, paket yang dilapisi membutuhkan versi yang lebih baru dari paket yang menjadi dependensinya, yang tidak tersedia di OS dasar.
Dalam kebanyakan kasus, menunggu compose OSTree yang lebih baru akan menyelesaikan masalah ini. Paket yang menjadi dependensi akan diperbarui dalam compose dan paket yang akan dilapisi akan berhasil.
Namun, jika Anda terus mengalami masalah ini dengan compose yang lebih baru, Anda dapat mencoba membersihkan metadata dengan rpm-ostree cleanup -m dan kemudian mencoba kembali rpm-ostree install.
Sebagai alternatif, Anda dapat mencoba melakukan rebase ke ref updates mana pun, seperti fedora/44/updates/x86_64 setelah operasi cleanup.
Untuk informasi lebih lanjut, lihat rpm-ostree#415.
Menginstal paket ke /opt atau /usr/local
Menginstal ke /opt sering dilaporkan sebagai masalah ketika pengguna mencoba menginstal Google Chrome. Sebuah solusi parsial telah diimplementasikan yang memungkinkan pengguna untuk melapisi Google Chrome, namun ini bukan solusi lengkap untuk aplikasi yang menulis data yang dapat diubah ke /opt.
Masalah ini dilacak di rpm-ostree#233.
Menggunakan driver NVIDIA
|
Proyek Universal Blue membuat image sistem operasi dengan driver NVIDIA yang sudah disertakan. Image Universal Blue didasarkan pada image Fedora Atomic Desktop dengan perubahan tambahan sesuai kebijakan mereka. Image Universal Blue tidak didukung secara resmi oleh Proyek Fedora. Gunakan sesuai kebijaksanaan Anda sendiri. |
Anda dapat menginstal driver biner NVIDIA resmi dari repositori RPM Fusion.
| Driver biner NVIDIA tidak dikelola oleh Proyek Fedora dan terkadang mungkin tidak tersedia untuk versi kernel yang disertakan dalam Fedora Atomic Desktops. |
-
Pertama, pastikan sistem Anda sepenuhnya diperbarui dengan menjalankan
sudo rpm-ostree upgradedan melakukan reboot. -
Kemudian siapkan repositori RPM Fusion mengikuti dokumentasi, termasuk dua kali reboot.
-
Terakhir, instal driver-nya:
# 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
|
Saat menggunakan Secure Boot, driver NVIDIA yang diinstal secara lokal harus ditandatangani dengan kunci lokal yang didaftarkan menggunakan |
Terima kasih kepada Alex Larsson yang telah membuat perubahan yang diperlukan pada paket akmods dan kmodtools. Anda dapat membaca lebih lanjut tentang pekerjaan yang dilakukan Alex di blognya.
Modul kernel dan driver di luar pohon menggunakan DKMS
Fedora Atomic Desktops saat ini tidak mendukung DKMS. Lihat issue upstream rpm-ostree#1091.
Sebagai gantinya, kami merekomendasikan agar Anda membuat paket kmods untuk modul kernel di luar pohon dan mengirimkannya ke repositori RPM Fusion. Paket kmods kemudian akan digunakan oleh akmods yang didukung pada Fedora Atomic Desktops.
Menambahkan repositori paket eksternal
|
Bagian ini membahas sumber perangkat lunak pihak ketiga yang tidak berafiliasi secara resmi atau didukung oleh Proyek Fedora. Gunakan sesuai kebijaksanaan Anda sendiri. |
| Jika Anda ingin menggunakan repositori RPM Fusion, ikuti bagian Mengaktifkan repo RPM Fusion. |
Beberapa perangkat lunak mungkin hanya tersedia dari repositori pihak ketiga. Anda dapat menambahkan repositori eksternal secara manual pada Fedora Atomic Desktops dengan menempatkan file .repo ke /etc/yum.repos.d/ dan kunci GPG ke /etc/pki/rpm-gpg/. Berikut adalah contoh lengkap untuk menyiapkan repo Tailscale:
-
Ambil dan instal konfigurasi repo:
$ 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 -
Ambil dan instal kunci GPG:
$ 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 -
Ganti URL
gpgkey=di konfigurasi repo dengan jalur kunci GPG:$ 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 ### ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -
Instal paket baru dengan:
$ rpm-ostree install tailscale
Dukungan yang lebih baik di rpm-ostree untuk kasus penggunaan ini dilacak di rpm-ostree#4014.
Masalah SELinux
Saat pengguna menggunakan Fedora Atomic Desktops sehari-hari, mungkin saja mereka telah memodifikasi kebijakan SELinux default sebagai upaya untuk mengatasi satu atau lebih masalah terkait SELinux. Ini biasanya dilakukan ketika pengguna melihat penolakan SELinux di jurnal. Jika ini terjadi dan Anda ingin kembali ke kebijakan SELinux default, Anda dapat mencoba serangkaian tindakan berikut.
-
Periksa keadaan kebijakan 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.30Jika ada sesuatu yang dikembalikan oleh perintah ini, maka kebijakan SELinux Anda telah dimodifikasi dari default.
-
Salin kebijakan SELinux default yang disertakan dalam compose OSTree
$ sudo cp -al /etc/selinux{,.bak} $ sudo rsync -rlv /usr/etc/selinux/ /etc/selinux/Setelah melakukan ini, keluaran dari
ostree admin config-diff | grep policyseharusnya tidak lagi menunjukkan bahwa kebijakan telah dimodifikasi.Jika kebijakan Anda masih tampak termodifikasi, Anda dapat mencoba pendekatan berikut.
-
Hapus kebijakan SELinux; salin kebijakan default
$ sudo rm -rf /etc/selinux $ sudo cp -aT /usr/etc/selinux /etc/selinuxSetelah ini, perintah
ostree admin config-diff | grep policyseharusnya tidak mengembalikan modifikasi apa pun.
Tidak dapat menambahkan pengguna ke grup
Karena cara rpm-ostree menangani entri pengguna + grup, mungkin tidak memungkinkan untuk menggunakan usermod -a -G untuk menambahkan pengguna ke grup dengan sukses. Sampai rpm-ostree beralih menggunakan systemd sysusers, pengguna harus mengisi file /etc/group dari file /usr/lib/group sebelum mereka dapat menambahkan diri mereka ke grup.
Misalnya, jika Anda ingin menambahkan pengguna ke grup libvirt:
$ grep -E '^libvirt:' /usr/lib/group | sudo tee -a /etc/group
$ sudo usermod -aG libvirt $USER
| Anda perlu keluar dan masuk kembali untuk menerapkan perubahan ini. |
Masalah ini dilacak di rpm-ostree#29 dan rpm-ostree#49.
ostree fsck melaporkan kerusakan file
Mungkin terjadi situasi di mana satu atau lebih file di disk menjadi rusak atau hilang. Dalam hal ini, ostree fsck akan melaporkan kesalahan pada commit tertentu. Solusi alternatif dalam kasus ini adalah menandai seluruh commit OSTree sebagai sebagian diambil dan kemudian menarik ulang commit tersebut.
/boot/efi yang hanya-baca mencegah peningkatan apa pun
Masalah ini paling sering terjadi ketika pengguna telah menginstal Fedora Atomic Desktops pada perangkat keras Apple. Partisi /boot/efi pada perangkat keras Apple diformat sebagai HFS+ dan tidak selalu tahan terhadap kegagalan daya atau jenis kejadian daya keras lainnya.
Karena Fedora Atomic Desktops kini menyertakan paket hfsplus-tools dalam compose dasar, pengguna menjadi relatif mudah untuk mengatasi jenis kesalahan ini.
# umount /boot/efi
# fsck.hfsplus /dev/sda1
# mount -o rw /boot/efi
Lihat issue GitHub rpm-ostree#1380 untuk detail tambahan.
Tidak dapat menginstal Fedora Atomic Desktop pada sistem EFI
Pengguna telah melaporkan bahwa mereka tidak dapat menginstal Fedora Atomic Desktop pada sistem berbasis EFI di mana sebelumnya telah terinstal OS lain. Kesalahan yang sering diamati terlihat seperti:
ostree ['admin', '--sysroot=/mnt/sysimage', 'deploy', '--os=fedora-workstation', 'fedora-workstation:fedora/28/x86_64/workstation'] exited with code -6`
Ada beberapa kemungkinan solusi alternatif:
-
Selama proses instalasi, pilih "Partisi Kustom" dan buat partisi EFI tambahan. Tetapkan partisi EFI yang baru dibuat ke
/boot/efi. Anda kemudian akan dapat melakukan boot OS sebelumnya bersamaan dengan Fedora Atomic Desktop Anda. Jika solusi alternatif ini tidak berhasil, ikuti langkah di bawah ini. -
Format ulang partisi EFI pada host selama proses instalasi. Ini dapat dilakukan dengan memilih "Partisi Kustom" dan mencentang kotak
Reformatsaat membuat partisi/boot/efi.
|
Memilih untuk memformat ulang |
Masalah ini dilacak di Bugzilla#1575957.
toolbox: gagal mencantumkan image dengan com.redhat.component=fedora-toolbox
|
Mulai |
Saat menjalankan perintah toolbox list, sistem yang menggunakan podman versi lebih baru dari 1.2.0 akan menghasilkan kesalahan berikut:
toolbox: failed to list images with com.redhat.component=fedora-toolbox
|
Solusi alternatif berikut mungkin berguna untuk kesalahan |
Sebagai solusi alternatif, dimungkinkan untuk mengganti paket podman yang lebih baru dari versi 1.2.0 dengan menjalankan:
$ 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
Reboot sistem untuk menerapkan perubahan.
Sebagai referensi, dimungkinkan juga untuk mengganti paket dengan mengikuti langkah-langkah berikut:
-
Unduh
podman-1.2.0-2.git3bd528e.fc30.x86_64.rpmdari Koji. -
Hapus
podman-manpagesdengan menjalankan:rpm-ostree override remove podman-manpages. -
Ganti paket
podmanyang saat ini terinstal (menggunakan paket yang telah Anda unduh pada langkah pertama) dengan:$ rpm-ostree override replace podman-1.2.0-2.git3bd528e.fc30.x86_64.rpm
Anda sekarang dapat mereboot sistem agar perubahan diterapkan.
Untuk membatalkan solusi alternatif ini, jalankan perintah berikut:
$ rpm-ostree override reset podman
$ rpm-ostree override reset podman-manpages
Tidak dapat masuk ke toolbox karena kesalahan izin
Dengan versi podman tertentu, mencoba masuk ke toolbox akan mengakibatkan kesalahan. Anda dapat memperbaiki ini dengan mengatur ulang izin pada overlay-containers dengan perintah berikut:
$ sudo chown -R $USER ~/.local/share/containers/storage/overlay-containers
Ini akan mengatur ulang izin pada kontainer Anda dan memungkinkan Anda untuk masuk ke dalamnya kembali.
Lihat issue podman upstream: podman#3187.
Menjalankan restorecon
|
Anda sebaiknya tidak pernah menjalankan |
Namun, jika Anda melakukannya, pemulihan masih dimungkinkan.
-
Boot dengan
enforcing=0pada baris perintah kernel -
Buat commit baru yang "diperbaiki" secara lokal
-
Deploy commit "diperbaiki" yang baru
-
Jalankan
restorecon -
Reboot
-
Pembersihan
$ rpm-ostree status -b | grep BaseCommit
BaseCommit: 696991d589980aeaef5eda352dd7ad3d33c444c789c209f793a84bc6e7269aee
### If the above command does not display any output, try:
$ 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
### In the command below, substitute:
### - x86_64 with your actual CPU architecture
### - silverblue with the name for your Fedora Atomic Desktop variant
$ sudo ostree admin deploy fedora:fedora/44/x86_64/silverblue
$ sudo reboot
Catatan untuk pemulihan ini adalah bahwa paket yang dilapisi akan dihapus; Anda perlu melapisnya kembali setelah pemulihan.
Lihat komentar upstream ini untuk detail tambahan: ostree#1265.
Mengatur ulang kata sandi dalam Mode Rescue
Dalam kasus di mana Anda tidak dapat mengingat kata sandi pengguna atau kata sandi root, Anda dapat mengatur ulang kata sandi menggunakan langkah-langkah berikut:
-
Saat sistem sedang booting, hentikan urutan boot pada menu GRUB2 dengan menggunakan tombol Esc.
-
Pilih entri boot yang ingin Anda edit menggunakan tombol panah.
-
Edit entri yang dipilih dengan tombol e.
-
Gunakan tombol panah untuk memilih baris yang diawali dengan
linux,linux16, ataulinuxefi. -
Pergi ke akhir baris tersebut (dengan menekan Ctrl + e) dan tambahkan
init=/bin/bash. -
Tekan Ctrl + x atau F10 untuk melakukan boot pada entri tersebut.
-
Pada prompt
bashyang muncul, jalankan perintah-perintah berikut:
# mount -t selinuxfs selinuxfs /sys/fs/selinux
# /sbin/load_policy
# passwd
# sync
# /sbin/reboot -ff
Jika Anda ingin mengubah kata sandi untuk akun pengguna tertentu, ganti perintah passwd dengan passwd <nama-pengguna>.
Setelah sistem selesai melakukan reboot, Anda seharusnya dapat masuk dengan nama pengguna dan kata sandi baru.
Want to help? Learn how to contribute to Fedora Docs ›