Linux-用戶管理與軟件管理

用戶授權

如果普通用戶需要執行特殊操作,有兩種方法

1、su - root????????? 切換到root賬號進行特殊操作,然后再返回到普通用戶

2、sudo命令

命令:su

優點:使用簡單

缺點:1、root密碼容易泄露;2、普通用戶執行操作不可控

命令:sudo

作用:給普通用戶授權,讓普通用戶執行特定的操作

缺點:需要進行權限配置

優點:1、不需要切換到root用戶(無需root密碼);2、用戶可執行預定的操作;3、可以記錄每個用戶執行過的命令

sudo使用

1、通過sudo配置文件為普通用戶授權;2、普通用戶執行特殊操作

sudo的配置文件:/etc/sudoers

格式

root???????? ALL=(ALL)??????? ALL

用戶名????? 主機=(用戶名)???? 全部命令

例:lisi????? localhost=(lisi)????? ALL

%aa????? 代表給aa組授權

ALL:全部命令

/usr/bin/touch:授權單個命令

/usr/bin/touch,/usr/bin/ls:授權多個命令,用,(逗號)作為分隔

/usr/bin/*:授權/usr/bin下的全部命令

修改配置文件

visudo

添加一行

lisi??? ALL=(root)?? /usr/bin/touch,/usr/bin/ls

命令:sed

格式:sed 選項 操作 目標文件

選項

-i:修改原始文件【如果不加-i,那就是僅僅修改內存中的文件副本】

案例:將文件中的a修改成b

sed -i "s/a/b/g" 文件名

注意點:/僅表示為分隔符,也可以用于其他符號,例:#、@、%等

命令:awk

作用:截取文件中的每行的指定的字段

格式:awk -F "分隔符" '{print $數字}' 文件名

$0:表示整條記錄;$NF:輸出最后一條字段

選項

-F "分隔符":用什么字段將內容分開成一段一段

軟件管理

Linux的軟件的安裝與卸載

1、rpm包安裝;2、yum安裝;3、源碼編譯安裝

yum的配置文件路徑:/etc/yum.repos.d? 以.repo結尾的文件

rpm安裝

命令格式:rpm 選項 軟件名

選項

-i:安裝軟件

-v:顯示安裝過程信息

-h:用#表示安裝進程,一個#代表2%

-ivh:安裝軟件并顯示安裝過程

-e:卸載軟件

-q:查看軟件是否安裝

-ql:查看安裝文件生成文件列表

-qc:查看安裝軟件生成的配置文件

-qf:查看某個文件是哪個軟件安裝過程中生成的

--nodeps:強制安裝忽略依賴關系

--replacepkgs:覆蓋安裝

第一步:掛載光盤

mount /dev/cdrom /mnt

第二步:查看/mnt

ls /mnt

第三步:切換到/mnt/Packages

cd /mnt/Packages

第四步:安裝

rpm -ivh 軟件名

注意點:rpm安裝需要解決各種依賴

使用光盤作為yum源

第一步:掛載光盤

mount /dev/cdrom /mnt

檢查掛載點

ls /mnt

第二步:修改yum的配置文件

主配置文件:/etc/yum.conf

子配置文件:/etc/yum.repos.d下的以.repo結尾的文件

修改的是子配置文件

第三步:切換路徑

cd /etc/yum.repos.d

第四步:刪除原來文件并新建以.repo結尾的文件

rm -rf .repo

touch 文件名

第五步:vi打開這個文件

[new]????????????????????????????? 指定yum倉庫的id,不能有空格

name=myrepo??????????????? yum倉庫的名稱,可以隨便寫

enabled=0????????????????????? 指定是否要檢查rpm的來源合法性;0:不檢查;1:檢查

gpgchck=1????????????????????? 是否啟動;0:不啟動;1:啟動

baseurl=file:///mnt?????????? 指定yum的位置

第六步:檢查是否配置成功

yum clean all??????? 清除yum緩存

yum repolist????????? 加載yum源

第七步:安裝軟件(安裝多個軟件以,為分隔)

yum install 軟件名,軟件名

yum remove 軟件名

注意點:yum安裝自動解決各自依賴,安裝位置固定不可改

編譯安裝

安裝源碼包的過程

1、解壓源碼包

2、進入解壓目錄

3、安裝依賴

4、執行./configuse

①、檢查當前系統環境是否滿足后續操作

②、指定軟件的安裝路徑

5、執行make

①、進行編輯

6、安裝、執行make install

①、將編譯好的程序進行安裝

安裝niginx

第一步:安裝組件

yum install lrzsz -y

第二步:解壓安裝包

tar -xvf niginx-1.22.1.tar.gz

第三步:進入解壓目錄

cd niginx-1.22.1

第四步:安裝依賴

yum install gcc gcc-c++ pcre-devel zlib-devel openssl-devel ncurses-devel -y

第五步:檢查環境,并指定安裝位置

./configure --prefix=/ng

第六步:執行編譯

make

第七步:編譯安裝

make install

第八步:啟動

/ng/sbin/nginx

第九步:關閉

kill -9 pid?????? -9:立即殺死該pid???? -15:通知一聲,并殺死該pid

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

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

相關文章

基于MBD開發汽車軟件

MBD 原理及重要性 模型驅動開發(Model-Based Development,簡稱 MBD)是一種在現代工程領域中日益重要的方法。它的基本原理建立在以模型為核心的理念之上。 MBD 的核心概念包括模型的構建、使用和維護。模型在這里不僅僅是對系統或過程的簡單描述,而是包含了豐富的信息和邏…

04-240606Spark筆記

04-240606Spark筆記 1.行動算子-2 save相關算子: 格式: def saveAsTextFile(path: String): Unit def saveAsObjectFile(path: String): Unit def saveAsSequenceFile(path: String,codec: Option[Class[_ <: CompressionCodec]] None): Unit 例子: val rdd sc.makeR…

【Python報錯】已解決NameError: name ‘Image‘ is not defined

解決Python報錯&#xff1a;NameError: name ‘Image’ is not defined 在使用Python進行圖像處理時&#xff0c;我們經常使用Pillow庫&#xff08;PIL的一個分支&#xff09;。如果你在嘗試創建或處理圖像時遇到了NameError: name Image is not defined的錯誤&#xff0c;這通…

史上最易懂的mysql鎖 、mvvc分析

1 mysql中的鎖類型&#xff1a; 1) 表鎖 表共享鎖(S):表級別的讀鎖&#xff0c;表共享鎖之間是兼容的。 表排他鎖(X): 表級別的寫鎖&#xff0c;表排他鎖和任何鎖(包括表排他鎖)都不兼容(不包括意向鎖)。 意向排他鎖(IX): 獲取行排他鎖之前必須獲取的意向排他鎖&#xff0c;這…

關于python包導入問題的重思考

將頂層目錄直接設置為一個包 像這樣&#xff0c;每一個文件從頂層包開始導入 這樣可以解決我的問題&#xff0c;但是要注意的時&#xff0c;要避免使用出現上下級出現同名包的情況&#xff0c;比如&#xff1a; AutoServer--AutoServer--__init__.py--__init__.py這種情況下…

騰訊云的身份證核驗,找不到這個類

系統接入騰訊云的sdk&#xff0c;Class ‘TencentCloud\Common\Credential’ not found 以下方法核對一下看有沒有做錯&#xff0c;如果沒有需要重啟一下守護一般是能解決問的 這個錯誤表明PHP代碼試圖加載一個名為TencentCloud\Common\Credential的類&#xff0c;但是在指定…

綠聯云NAS一些探索(1):SSH、包管理器探測、安裝docker-compose等

綠聯云NAS一些探索SSH、包管理器探測、安裝docker-compose等 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite&#xff1a;http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https:…

AI圖書推薦:《如何利用ChatGPT在線賺錢》

這本書《如何利用ChatGPT在線賺錢》&#xff08;$100m ChatGPT_ How To Make Money Online With ChatGPT -- Sharp, Biily -- 2023 &#xff09;主要闡述如何利用ChatGPT這一強大的語言模型工具在互聯網上創造收入。 以下是各章節內容的概要&#xff1a; **引言** - 介紹了Chat…

STM32F103單片機工程移植到航順單片機HK32F103注意事項

一、簡介 作為國內MCU廠商中前三陣營之一的航順芯片&#xff0c;建立了世界首創超低功耗7nA物聯網、萬物互聯核心處理器浩瀚天際10X系列平臺&#xff0c;接受代理商/設計企業/方案商定制低于自主研發十倍以上成本&#xff0c;接近零風險自主品牌產品&#xff0c;芯片設計完成只…

spring整合kafka

原文鏈接&#xff1a;spring整合kafka_spring集成kafka-CSDN博客 1、導入依賴 <dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId><version>2.5.10.RELEASE</version> </depende…

Arthas Profiler 事件監控場景介紹

CPU 使用情況 (cpu) 場景描述&#xff1a; 當應用程序響應緩慢或者CPU使用率異常高時&#xff0c;開發者需要找出導致高CPU消耗的具體方法調用。通過監控CPU使用情況&#xff0c;可以識別出那些占用大量CPU時間的熱點方法。 使用Arthas的步驟&#xff1a; 啟動CPU profiler:…

編譯等底層知識

目錄 一. GCC命令語句大全 二. GCC編譯4個階段 三. makefile的使用 四. CMake 五. GNU工具鏈開發流程圖 六. Keil中的地址段 七. 靜態庫和動態庫 一. GCC命令語句大全 -c只編譯源文件&#xff0c;生成目標文件&#xff08;.o 文件&#xff09;&#xff0c;不進行鏈接。…

CC++內存管理【new和delete操作符的詳細分析】【常見面試題】

C/C內存管理 1.C/C內存分布 我們先來看一段代碼&#xff0c;來了解一下C/C中的數據內存分布。 # include <stdlib.h>int globalVar 1; static int staticGlobalVar 1; // 比globalVar還要先銷毀,同一個文件下后定義的先析構 // 全局變量存在 數據段&#xff08;靜態…

[Unity]播放音頻卡頓問題

記錄一個問題&#xff1a; 游戲內播放完音頻A再去循環播放音頻B&#xff0c;在協程里使用等待n秒來實現拼接&#xff0c;發現在個別手機上會有卡頓的問題&#xff0c;盲猜是和幀率有關。 這是最初的實現方案&#xff1a; IEnumerator IEPlayAudio(){if(ASOnBeginDrag ! null)…

VSCode+Vite+Vue3斷點調試

目錄 lunch.json創建 vite.config.ts 打斷點運行 lunch.json創建 首先&#xff0c;點擊VSCode左上角&#xff0c;甲殼蟲運行的按鈕&#xff0c;然后點擊運行與調試&#xff0c;選擇chrome瀏覽器&#xff0c;修改成一下配置。 { // 使用 IntelliSense 了解相關屬性。 // 懸停…

codeforces round 949 div2

A Turtle and Piggy Are Playing a Game 題目&#xff1a; 思路&#xff1a;輸出2的冪次b使得2^b為最大的不超過x的數 代碼&#xff1a; #include <iostream>using namespace std;const int N 2e5 10;void solve() {int l, r;cin >> l >> r;if(r % 2) …

vscode 運行和調試

vscode使用斷點 1.安裝并激活擴展 Debugger for Chrome (棄用 --> JavaScript Debugger)Debugger for Firefox 2. 配置config文件 打開 config/index.js 并找到 devtool property。將其更新為&#xff1a; 如果你使用的是 Vue CLI 2&#xff0c;請設置并更新 config/in…

SpringBoot Redis讀寫與數據序列化 RedisTemplate 與 StringRedisTemplate 防轉字節

介紹 RedisTemplate 對象在底層默認會轉成字節&#xff0c;造成了內存的開銷很大&#xff0c;這是他底層進行處理的,造成可讀性差&#xff0c;如需要轉成簡單的字符串存儲需要進行序列化的配置。 RedisTemplate 配置類 Configuration public class RedisConfig {Beanpublic …

OpenGL系列(五)紋理貼圖

概述 OpenGL紋理是一種在三維圖形中應用紋理映射的技術。紋理是一張圖像&#xff0c;可以應用到三維模型的表面上&#xff0c;從而使得模型看起來更加真實和具有細節。通過紋理映射&#xff0c;可以將圖像的像素值與三維模型的頂點進行匹配&#xff0c;從而為模型的表面增加細節…

Java并發編程之由于靜態變量錯誤使用可能導致的并發問題

Java并發編程之由于靜態變量錯誤使用可能導致的并發問題 1.1 前言1.2 業務背景1.3 問題分析1.4 為什么呢&#xff1f;1.5 修復方案2 演示示例源碼下載 1.1 前言 我們知道在 Java 后端服務開發中&#xff0c;如果出現并發問題一般都是由于在多個線程中使用了共享的變量導致的。…