前言:在 Linux 系統(tǒng)生態(tài)中,Ubuntu 憑借其易用性和穩(wěn)定性成為眾多開發(fā)者與企業(yè)的首選操作系統(tǒng)。而權限管理作為 Ubuntu 系統(tǒng)安全的核心支柱,直接決定了系統(tǒng)的穩(wěn)定性、數據安全性和操作規(guī)范性。本文將從基礎原理到實戰(zhàn)操作,全面解析 Ubuntu 權限管理的核心知識。
一、權限管理三角:用戶、組與權限
Ubuntu 采用多用戶多任務的操作系統(tǒng)設計,其權限管理體系建立在 "用戶 - 組 - 權限" 的三角模型之上,理解這一模型是掌握權限管理的基礎。
1.1用戶體系:三種身份的明確劃分
Ubuntu 系統(tǒng)中將用戶劃分為三種核心身份:
- root 用戶:擁有對系統(tǒng)的絕對控制權,可執(zhí)行包括刪除系統(tǒng)文件、修改核心配置等所有操作。默認情況下,Ubuntu 為了安全起見會隱藏 root 用戶的直接登錄入口。
- 普通用戶:日常操作的主要身份,權限受限,僅能在授權范圍內操作。
- 系統(tǒng)用戶:由系統(tǒng)自動創(chuàng)建的特殊用戶,用于運行特定服務(如 www-data 用于 Web 服務),不允許交互式登錄。
id命令可查看當前用戶的身份,cat /etc/passwd命令可查看系統(tǒng)中所有用戶的列表。
1.2用戶組:權限的批量管理單元
用戶組是實現權限批量管理的有效機制,每個用戶至少屬于一個主組(創(chuàng)建時默認分配的組,通常與用戶名同名),還可以加入多個附加組以獲取特定權限集合。groups命令可查看當前用戶所屬的所有組,cat /etc/group命令可查看系統(tǒng)中所有組的配置信息。
1.3權限類型:文件操作的三重控制
Ubuntu 對文件和目錄定義了三種基本權限,每種權限又分別對應文件所有者、所屬組和其他用戶三類對象:
- 讀權限(r):允許查看文件內容或列出目錄中的文件
- 寫權限(w):允許修改文件內容或在目錄中創(chuàng)建 / 刪除文件
- 執(zhí)行權限(x):允許運行可執(zhí)行文件或進入目錄
權限有兩種表示方式:字符型(如rwxr-xr--)和數字型(r=4、w=2、x=1)。例如rwxr-xr--對應數字權限 754(所有者 7=4+2+1,所屬組 5=4+1,其他用戶 4)。
二、root 用戶安全配置
在開發(fā)板環(huán)境中,通常Ubuntu 默認使用 root 用戶直接登錄,方便測試,但同時也存在安全隱患。這里以我們RK3568評估板為例,為root 用戶設置密碼,優(yōu)化登錄配置:
2.1root 密碼設置
為 root 用戶設置強密碼可有效防止未授權訪問,操作步驟如下:
# 執(zhí)行密碼設置命令passwd root# 系統(tǒng)會提示輸入新密碼(輸入時無字符顯示)newpassword:# 再次輸入確認密碼newpassword:# 出現"passwd: password updated successfully"提示即完成設置

2.2修改登錄配置
默認配置中可能存在自動登錄的授權參數,需要通過修改系統(tǒng)服務配置文件移除:
# 第一步:備份原始配置文件(關鍵操作必須先備份)sudocp/etc/systemd/system/serial-getty\@.service.d/override.conf /etc/systemd/system/serial-getty\@.service.d/override.conf.bak# 第二步:編輯備份文件vi /etc/systemd/system/serial-getty@.service.d/override.conf.bak# 文件原始內容[Service]ExecStart=ExecStart=-/sbin/agetty -a root -keep-baud 115200,38400.9600 %I STFRM

# 第三步:移除自動登錄參數# 將第二行中的"-a root"參數刪除,修改后內容為:[Service]ExecStart=ExecStart=-/sbin/agetty -keep-baud115200,38400.9600%I STFRM

# 第四步:恢復配置文件sudocp/etc/systemd/system/serial-getty@.service.d/override.conf.bak /etc/systemd/system/serial-getty@.service.d/override.conf -f# 第五步:設置服務自啟動systemctlenableserial-getty@.service# 第六步:重啟系統(tǒng)使配置生效reboot
配置修改后,系統(tǒng)將要求輸入密碼才能通過串口登錄 root 用戶,大幅降低未授權訪問風險。
三、用戶與組的精細化管理
合理的用戶和組管理是權限體系的基礎,通過命令行工具可實現用戶全生命周期的管理。
3.1用戶管理核心命令
- 創(chuàng)建用戶:sudo adduser 用戶名,會自動創(chuàng)建同名主組并提示設置密碼
- 刪除用戶:sudo deluser 用戶名(僅刪除用戶)或sudo deluser --remove-home 用戶名(同時刪除用戶主目錄)
- 修改用戶密碼:sudo passwd 用戶名
- 切換用戶:su - 用戶名("-" 表示切換環(huán)境變量,完全切換身份)
3.2組管理核心命令
- 創(chuàng)建組:sudo addgroup 組名
- 刪除組:sudo delgroup 組名
- 將用戶加入組:sudo usermod -aG 組名 用戶名(-a 表示追加,避免覆蓋原有組)
- 將用戶移出組:sudo gpasswd -d 用戶名 組名
- 查看組成員:grep 組名 /etc/group

四、文件與目錄權限設置
文件和目錄的權限控制是日常操作中最頻繁的權限管理場景,掌握相關命令能有效避免權限問題導致的操作失敗。
4.1權限的基礎修改
- 修改權限(chmod):
# 字符方式:給所有者添加執(zhí)行權限chmodu+x test.c# 數字方式:設置權限為所有者讀寫執(zhí)行,所屬組讀執(zhí)行,其他用戶只讀chmod754 test.c# 遞歸修改目錄及子內容權限chmod-R 755 /data/project
- 修改所有者(chown):
# 修改文件所有者為user1chownuser1 test.c# 同時修改所有者和所屬組chownuser1:group1 test.c# 遞歸修改目錄所有者chown-R user1:group1 /data/project
修改所屬組(chgrp):
chgrpgroup1 test.c

4.2常見權限問題排查
- "Permission denied" 錯誤:檢查文件權限、所有者和所屬組,以及父目錄權限
- sudo 命令被拒絕:檢查用戶是否在 sudo 組或 sudoers 配置
- 服務啟動失?。簷z查服務相關文件權限是否正確,尤其是日志目錄和配置文件
結語
Ubuntu 權限管理為系統(tǒng)構建了安全可靠的權限控制體系,通過用戶組劃分、權限配置到 sudo 精細授權的流程設計,可實現從基礎操作到多樣場景的安全防護。本文涵蓋從核心原理到實戰(zhàn)命令的完整解析,開發(fā)者可根據實際場景調整權限策略,有效保障系統(tǒng)穩(wěn)定與數據安全。想了解更多相關技術知識或產品信息,請關注眺望電子公眾號并聯系我們,我們將竭誠為您服務!
-
操作系統(tǒng)
+關注
關注
37文章
7401瀏覽量
129274 -
Ubuntu
+關注
關注
5文章
613瀏覽量
33360 -
權限管理
+關注
關注
0文章
17瀏覽量
9178
發(fā)布評論請先 登錄
Windows/Ubuntu安裝frida和objection
基于Acegi技術的通用權限管理組件的研究
PCB技術文章精選
【分享】PCB技術文章分享!
ADI首冊《技術文章合集》來了,速速拿走~
怎么獲取管理員權限?
Ubuntu文件權限管理的相關資料分享
淺談Linux權限管理的ACL權限
第1期Ubuntu入門篇:【12】Ubuntu文件權限管理
erp用戶權限管理怎么做
Linux文件權限及Makefile
Linux權限管理基礎入門
技術文章 | Ubuntu權限管理攻略
評論