Linux權限系列--給普通用戶添加某個命令的sudo權限

原文網址:Linux權限系列--給普通用戶添加某個命令的sudo權限_IT利刃出鞘的博客-CSDN博客

簡介

說明

本文介紹Linux系統如何給普通用戶添加某個命令的sudo權限。

使用場景

普通開發者可能需要sudo的命令:

apt-get(經常要安裝軟件)
service
make install(經常要編譯安裝)

普通開發者不能有sudo權限的命令:

passwd(不能修改其他用戶密碼)
vi sudo/chown/chmod/chgrp(不能修改sudo,不能修改其他用戶文件的訪問權限)
ls/vim (不能查看和編輯其他用戶目錄和文件)

本文的目標

給普通用戶(knife這個用戶)添加如下幾個命令的sudo權限:

  1. shutdown
  2. reboot
  3. halt

步驟

切換到root用戶下

在命令行輸入:su,回車,然后輸入密碼(即你的登錄密碼,且密碼默認不可見)。

給/etc/sudoers增加寫權限

sudoers文件默認是只讀的,對root來說也是,因此需先添加sudoers文件的寫權限,執行下面命令:

chmod u+w /etc/sudoers

編輯sudoers文件

執行下面命令:

vi /etc/sudoers 

在文件最后添加配置(這里knife是你的用戶名):

knife   ALL=(ALL:ALL) NOPASSWD: /sbin/shutdown,/sbin/reboot,/sbin/halt

注意:必須放在文件最后,這樣才能保證有效,否則可能被其他的組的配置給影響。?

如下:

撤銷sudoers文件寫權限

chmod u-w /etc/sudoers

測試

切換到knife用戶

su knife

執行shutdown命令?

sudo shutdown

結果:

sudoers的權限含義

用戶的權限

# 允許用戶myUser使用sudo執行命令(需要輸入密碼)。
myUser ALL=(ALL:ALL) ALL
# 允許用戶youuser使用sudo執行命令,并且在執行的時候不輸入密碼。
myUser ALL=(ALL:ALL) NOPASSWD: ALL

?組的權限

# 允許用戶組myUser里面的用戶使用sudo執行sudo命令(需要輸入密碼)。
%myUser ALL=(ALL) ALL?
# 允許用戶組myUser里面的用戶使用sudo執行命令,并且在執行的時候不輸入密碼。
%myUser ALL=(ALL) NOPASSWD: ALL

示例

root ? ?ALL=(ALL:ALL) ALL

上面的配置表示: root 用戶可以在 任意機器 上以 任意用戶 和 任意用戶組 的 任意組合 執行 任意命令。

  • root:用戶 (%admin 表示 用戶組)
  • ALL=:所有 host (sudoers 配置可能被用到多臺機器上)
  • ALL::任意 用戶
  • :ALL:任意 用戶組
  • ALL:任意 命令

其他網址

linux給普通用戶添加sudo權限 - 簡書

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/42393.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/42393.shtml
英文地址,請注明出處:http://en.pswp.cn/news/42393.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Vue2】---->VueX 3 核心概念

官網: Vuex 是什么? | Vuex (vuejs.org) 目錄 介紹 1、安裝 2、新建 store/index.js 專門存放 vuex 3、 在 main.js 中導入掛載到 Vue 實例上 核心概念 1、核心概念 -state 狀態 1、訪問Vuex中的數據 2、通過$store訪問的語法 3、通過輔助函…

Java IO流(一)IO基礎

概述 IO流本質 I/O表示Input/Output,即數據傳輸過程中的輸入/輸出,并且輸入和輸出都是相對于內存來講Java IO(輸入/輸出)流是Java用于處理數據讀取和寫入的關鍵組件常見的I|O介質包括 文件(輸入|輸出)網絡(輸入|輸出)鍵盤(輸出)顯示器(輸出)使用場景 文件拷貝(File&…

Python自帶的IDLE有什么用

在Python的官方解釋器中,自帶了一個名為IDLE(Interactive DeveLopment Environment)的集成開發環境。 一、簡化代碼調試過程 很多初學者在編寫Python代碼時,經常會遇到一些問題需要調試。而在IDLE中,我們可以通過設置斷點、單步調試等方法&…

算法競賽入門【碼蹄集新手村600題】(MT1160-1180)C語言

算法競賽入門【碼蹄集新手村600題】(MT1160-1180)C語言 目錄MT1161 N的零MT1162 數組最大公約數MT1163 孿生質數MT1164 最大數字MT1165 卡羅爾數MT1166 自守數MT1167自守數IIMT1168 階乘數MT1169 平衡數MT1170 四葉玫瑰數MT1171 幻數MT1172 完美數字MT1173 魔數MT11…

es線上處理命令記錄

常用命令 搜索 GET _search {"query": {"match_all": {}} }獲取全部模版 GET _index_template GET _index_template/yst_crawler_template獲取全部索引 GET /_cat/indices?v 獲取當前mapping GET /yst_crawler/_mapping創建一個mapping PUT /yst_c…

WebGL游戲站優化實錄【myshmup.com】

myshmup.com 允許在瀏覽器中創建 shmup(射擊)游戲。 你可以使用具有創意通用許可證的資源或上傳自己的藝術作品和聲音。 創建的游戲可以在網站上發布。 該平臺不需要編碼,游戲對象的配置是在用戶界面的幫助下執行的。 后端是使用Django框架開…

機器學習筆記 - 使用 ResNet-50 和余弦相似度的基于圖像的推薦系統

一、簡述 這里的代碼主要是基于圖像的推薦系統,該系統利用 ResNet-50 深度學習模型作為特征提取器,并采用余弦相似度來查找給定輸入圖像的最相似嵌入。 該系統旨在根據所提供圖像的視覺內容為用戶提供個性化推薦。 二、所需環境 Python 3.x tensorflow ==2.5.0 numpy==1.21.…

星際爭霸之小霸王之小蜜蜂(三)--重構模塊

目錄 前言 一、為什么要重構模塊 二、創建game_functions 三、創建update_screen() 四、修改alien_invasion模塊 五、課后思考 總結 前言 前兩天我們已經成功創建了窗口,并將小蜜蜂放在窗口的最下方中間位置,本來以為今天將學習控制小蜜蜂,結…

GPT-4一紙重洗:從97.6%降至2.4%的巨大挑戰

斯坦福大學和加州大學伯克利分校合作進行的一項 “How Is ChatGPTs Behavior Changing Over Time?” 研究表明,隨著時間的推移,GPT-4 的響應能力非但沒有提高,反而隨著語言模型的進一步更新而變得更糟糕。 研究小組評估了 2023 年 3 月和 20…

win10安裝mysql和c++讀取調用舉例

一、下載mysql8.rar解壓到C盤(也可以解壓到其他位置) 在系統環境變量添加JAVA_HOMEC:\myslq8,并在path中添加%JAVA_HOME%\bin; 二、以管理員身份進入命令窗口 三、修改配置文件指定安裝路徑和數據庫的存放路徑 四、鍵入如下命令初始化并啟動mysql服務,然后修改登錄…

Rust之泛型、trait與生命周期

泛型是具體類型或其他屬性的抽象替代。在編寫代碼時,可以直接描述泛型的行為,或者它與其他泛型產生的聯系,而無須知曉它在編譯和運行代碼時采用的具體類型。 1、泛型數據類型: 們可以在聲明函數簽名或結構體等元素時使用泛型&am…

TDD(測試驅動開發)?

01、前言 很早之前,曾在網絡上見到過 TDD 這 3 個大寫的英文字母,它是 Test Driven Development 這三個單詞的縮寫,也就是“測試驅動開發”的意思——聽起來很不錯的一種理念。 其理念主要是確保兩件事: 確保所有的需求都能被照…

macOS Ventura 13.5.1(22G90)發布(附黑/白蘋果系統鏡像地址)

系統鏡像下載:百度:黑果魏叔 系統介紹 黑果魏叔 8 月 18 日消息,蘋果今日向 Mac 電腦用戶推送了 macOS 13.5.1 更新(內部版本號:22G90),本次更新距離上次發布隔了 24 天。 本次更新重點修復了…

Redis 緩存過期及刪除

一、Redis緩存過期策略 物理內存達到上限后,像磁盤空間申請虛擬內存(硬盤與內存的swap),甚至崩潰。 內存與硬盤交換 (swap) 虛擬內存,頻繁I0 性能急劇下降,會造成redis內存急劇下降; 一般設置物理內存的3/4,在redis…

內存不足V4L2 申請DMC緩存報錯問題

當內存不足時,V4L2可能存在申請DMA緩存報錯,如下日志: 13:36:54:125 [15070.640862] rkcifhw fdfe0000.rkcif: swiotlb buffer is full (sz: 1843200 bytes) 13:36:54:125 [15070.640891] rkcifhw fdfe0000.rkcif: swiotlb: coherent allocation failed, size=1843200 13:3…

超分辨率地震速度模型

文獻分享 1. Multitask Learning for Super-Resolution 原題目:Multitask Learning for Super-Resolution of Seismic Velocity Model 全波形反演(FWI)是估算地下速度模型的強大工具。與傳統反演策略相比,FWI充分利用了地震波的…

typedef

t y p e d e f typedef typedef 聲明&#xff0c;簡稱typedef&#xff0c;是創建現有類型的新名字。 比如&#xff1a; #include <bits/stdc.h> using namespace std; typedef long long ll; int main() {ll n;scanf("%lld",&n);printf("%lld"…

C++ 面向對象三大特性——多態

?<1>主頁&#xff1a;我的代碼愛吃辣 &#x1f4c3;<2>知識講解&#xff1a;C 繼承 ??<3>開發環境&#xff1a;Visual Studio 2022 &#x1f4ac;<4>前言&#xff1a;面向對象三大特性的&#xff0c;封裝&#xff0c;繼承&#xff0c;多態&#xff…

30W IP網絡有源音箱 校園廣播音箱

SV-7042XT是深圳銳科達電子有限公司的一款2.0聲道壁掛式網絡有源音箱&#xff0c;具有10/100M以太網接口&#xff0c;可將網絡音源通過自帶的功放和喇叭輸出播放&#xff0c;可達到功率30W。同時它可以外接一個30W的無源副音箱&#xff0c;用在面積較大的場所。5寸進口全頻低音…

RNN模型簡單理解和CNN區別

目錄 神經網絡&#xff1a;水平方向延伸&#xff0c;數據不具有關聯性 ? RNN&#xff1a;在神經網絡的基礎上加上了時間順序&#xff0c;語義理解 ?RNN: 訓練中采用梯度下降&#xff0c;反向傳播 ? 長短期記憶模型 ?輸出關系&#xff1a;1 toN&#xff0c;N to N 單入…