1. 程式人生 > >week2(2)許可權管理、vi的使用

week2(2)許可權管理、vi的使用

檔案許可權管理 suid,sgid,sbit 1.suid 讓二進位制程式的執行者臨時擁有屬主的許可權 2.sgid 讓二進位制程式的執行者臨時擁有屬組的許可權,並且在某個目錄中建立的檔案自動繼承該目錄的使用者組(只可以對目錄進行設定)。 3.sticky 特殊許可權位可確保使用者只能刪除自己的檔案,而不能刪除其他使用者的檔案。 例:設定SUID 4代表SUID chmod 4764 chmod u+s 在這裡插入圖片描述 在這裡插入圖片描述 刪除suid 直接更改許可權即可 在這裡插入圖片描述 再次設定suid 在這裡插入圖片描述 會發現s變為大寫,說明使用者沒有寫的許可權 設定sgid 在這裡插入圖片描述 給目錄設定完sgid,目錄將會有屬組的許可權,在目錄下建立的檔案繼承目錄的屬組 使用者許可權管理 sudo

(給使用者臨時提權) sudo命令用來以其他身份來執行命令 預設的身份為root,在/etc/sudoers中設定了可執行sudo指令的使用者,若其未經授權的使用者想要使用sudo,則會發警告的郵件給管理員,使用者使用sudo時,必須先輸入密碼,之後會有五分鐘的有效期,超過則必須重新輸入密碼 sudo 命令的配置檔案位於 /etc/sudoers 也可將不同的使用者以不同檔案分別進行配置sudo許可權,這樣會便於控制 /etc/sudoers.d/user

1.給使用者分配sudo許可權 以配置使用者root的許可權為例 1.第一個ALL代表可以執行sudo命令的主機(這裡表示任何主機) 2.第二個ALL表示執行sudo的時候以哪個使用者的身份執行(這裡表示任何使用者) 3.第三個ALL表示執行sudo可以執行的命令(ALL表示所有) 在這裡插入圖片描述

2. 給使用者summer分配sudo許可權,不輸入密碼即可執行sudo許可權,並且限制可以執行的命令 NOPASSWD:/bin/systemctl,/usr/bin/touch表示使用者可以通過sudo來執行定義的兩條命令,那麼它不僅可以重啟服務,也可以touch在任何目錄下建立檔案。 在這裡插入圖片描述 檔案查詢 which 主要是通過 PATH環境變數到該路徑內查詢可執行檔案,所以基 本的功能是尋找可執行檔案 引數 -a 將所有由 PATH 目錄中可以找到的指令均列出,而不止第一個 被找到的指令名稱 在這裡插入圖片描述 whereis 查詢檔案路徑(含文件) 引數說明: -b : 只找二進位制檔案 -m: 只找在說明檔案manual路徑下的檔案 -s : 只找source原始檔 -u : 沒有說明文件的檔案 在這裡插入圖片描述
find 查全部有關的檔案(不含文件) find / -name 檔名 引數說明: 時間查詢引數: -atime n :將n24小時記憶體取過的的檔案列出來 -ctime n :將n24小時內改變、新增的檔案或者目錄列出來 -mtime n :將n24小時內修改過的檔案或者目錄列出來 -newer file :把比file還要新的檔案列出來 #-mtime -n # 檔案內容改變時間在N天以內 #-mtime +n # 檔案內容改變時間在N+1天以前 #-mtime n # 檔案內容改變時間在N到N+!那天與使用者或組名有關 -gid n :尋找群組ID為n的檔案 -group name :尋找群組名稱為name的檔案 -uid n :尋找擁有者ID為n的檔案 -user name :尋找使用者者名稱為name的檔案 -nouser :尋找檔案的擁有者不存在 /etc/passwd 的人! -nogroup :尋找檔案的擁有群組不存在於 /etc/group 的檔案! -type 查詢某一型別的檔案 d 目錄 c 字元裝置檔案 l 符號連結檔案 f 普通檔案 p 管道檔案 例:1.查詢passwd有關的檔案 在這裡插入圖片描述 2、查詢opt下所有名以.sh結尾的檔案並給664 許可權find / -name ".sh" | xargs chmod 664 在這裡插入圖片描述 find / -name “*.sh” -exec chmod 744 {} ; 在這裡插入圖片描述

vi 和vim的使用 vim是vi的加強版,會增加很多顏色標記 1.Vim擁有5種編輯模式:命令模式、輸入模式、末行模式、視覺化 模式、查詢模式。 1).命令模式(其它模式→ESC) 2).輸入模式(命令模式→a、i、o、A、I、O) 3).末行模式(命令模式→:) 4).視覺化模式(命令模式→v) 5).查詢模式(命令模式→?、/)

2.模式之間的切換在這裡插入圖片描述 移動游標(編輯模式) 1、逐字元移動: h: 左 l: 右 j: 下 k: 上 #h: 移動#個字元; 2、以單詞為單位移動 w: 移至下一個單詞的詞首 e: 跳至當前或下一個單詞的詞尾 b: 跳至當前或前一個單詞的詞首

命令模式: 翻頁 page down或 Crtl+F 向下翻一整頁 page up或 Crtl+B 向上翻一整頁 Ctrl+d: 向下翻半屏 Ctrl+u: 向上翻半屏 行內快速跳轉 home鍵或“^“、數字0 跳轉至行首 End鍵或 "$ " 鍵 跳轉至行尾

行間快速跳轉 1G或者gg 跳轉至檔案的首行 G 跳轉至檔案的末尾行 #G 跳轉至檔案的第#行 末行模式下,直接給出行號即可 :5 直接定位到第5行首 行號顯示 :set nu 在編輯器中顯示行號 :set nonu 取消編輯器中行號顯示 顯示忽略或區分字元大小寫 :set ignorecase :set ic :set noic 設定自動縮排 :set autoindent :set ai :set noai 查詢到的文字高亮顯示或取消 :set hlsearch :set nohlsearch 語法高亮 :syntax on 刪除 x或del 刪除游標處的單個字元 dd 刪除游標所在行 #dd 刪除從游標處開始的#行內容 d^ 刪除當前游標之前到行首的所有字元 d$ 刪除當前游標到行尾的所有字元 Crtl +v 刪除所選中的塊 複製 yy 複製當前行整行的內容到剪貼簿 #yy 複製從游標處開始的#行內容 貼上 p 將緩衝區中的內容貼上到游標位置處之後 P(大寫) 貼上到游標位置處之前 查詢 /word 從上而下在檔案中查詢字串"word" %word 從下而上在檔案中查詢字串"word" n 定位下一個匹配的被查詢字串 N 定位上一個匹配的被查詢字串 末行模式關閉檔案 :q 退出 :wq 儲存並退出 :q! 不儲存並退出 :w 儲存 :w! 強行儲存 :wq --> :x 編輯模式下退出 ZZ: 儲存並退出 末行模式下 :s /install.log 開啟新的檔案進行編輯 :r /etc/filesystems 在當前檔案中讀入其他檔案內容 字串的替換 :s /old/new 將當前行中查詢到的第一個’old’串替換為’new’ :s /old/new/g 將當前行查詢到的所有字串’old’串替換為’new’ :#,# s/old/new/g 在行號“#,#”範圍內替換所有的字串"old"為"new" :% s/old/new/g 在整個檔案範圍內替換所有的字串"old"為"new" :s /old/new/c 在替換命令末尾加入c命令,將對每個替換動作提示使用者進行確認 例:把15,17行的sbin 替換為bin :15,17 s/sbin/bin 在這裡插入圖片描述 撤消編輯操作 u u:撤消前一次的編輯操作 連續 u 命令可撤消此前的 n 次編輯操作 #u: 直接撤消最近#次編輯操作 撤消最近一次撤消操作:Ctrl+r 視覺化模式 v: 按字元選取 該模式下通過游標移動選擇文字,選取後按 y 可以把文字提取到緩 衝區(即複製),c 可以剪下。之後可以使用 p 在游標後貼上,P 貼上在游標前 V:按矩形選取 V 是行選取模式,以行為單位進行選取。Ctrl+v 是塊選取模式,可 以選取一塊矩形區域中的文字。 分屏顯示一個檔案 Ctrl+w, s: 水平拆分視窗 Ctrl+w, v: 垂直拆分視窗 在視窗間切換游標: Ctrl+w, ARROW(表示上下左右箭頭) 分視窗編輯多個檔案 vim -o : 水平分割顯示 vim -O : 垂直分割顯示