修正 fim 出現 open /dev/fb0: Permission denied 錯誤

fim open /dev/fb0: Permission denied

Fix Fim Open /dev/fb0: Permission denied error.

fim 是糊塗流浪貓於純文字終端機 tty 模式上必備的看圖軟體,但某次在設定好 Linux 環境後卻發現 fim 出現 open /dev/fb0: Permission denied 的錯誤訊息,這到底是怎麼回事呢?

 

 

原來 /dev/fb0 即為 Linux framebuffer (fbdev),是一套讓 Linux 顯示圖形的子系統。之所以會出現 Permission denied 錯誤是因為部份的 Linux 發行版會將 fim 與 /dev/fb0 的擁有者和群組指定給 root:root ,造成一般使用者無法執行。而解決方法也很簡單,只要將使用者、fim 與 /dev/fb0 的群組設為 video 並修改執行權限即可。翠近貧

 

將使用者、fim 與 /dev/fb0 的群組改為 video

usermod -a -G video YourUser
chgrp video /usr/bin/fim
chgrp video /dev/fb0

 

讓 video 群組擁有執行 fim 與讀寫 /dev/fb0 的權限

chmod 755 /usr/bin/fim
chmod 660 /dev/fb0


完成以上步驟後,fim 就能正常執行了。


重開機後  /dev/fb0 的權限被復原?

如果你遇上 /dev/fb0 群組與權限會在重新啟動後復原回預設值的問題,請修改 root 帳號的 crontab -e ,讓系統在開機時自動調整權限。


@reboot chgrp video /dev/fb0
@reboot chmod 660 /dev/fb0


 

檢視 fim 與 /dev/fb0 的狀態

ls -al /usr/bin/fim
-rwxr-xr-x root video 

ls -al /dev/fb0
crw-rw---- root video

 

其他指令

nano /etc/passwd    #檢視系統使用者狀態
nano /etc/group     #檢視系統群組狀態

 

 

延伸閱讀

Linux framebuffer

在終端機 tty 模式下用 fim 瀏覽圖片

更多 Linux

於 Debian 的 TTY 界面上閱讀、輸入中文和顯示圖片

 

 

 

留言