檔案vim以及使用者管理
vim以及使用者管理
1.管理輸入輸出
在linux系統中,正確輸出的編號為1,錯誤輸出編號為2
在系統中用普通使用者執行 “student”
find /etc -name passwd
因為student使用者許可權問題會有以下輸出
find: ‘/etc/pki/CA/private’: Permission denied ##沒有進入權力,報錯
find: ‘/etc/pki/rsyslog’: Permission denied
find: ‘/etc/audit’: Permission denied
/etc/passwd ##正確輸出
find: ‘/etc/polkit-1/rules.d’: Permission denied
find: ‘/etc/polkit-1/localauthority’: Permission denied
find: ‘/etc/dhcp’: Permission denied
find: ‘/etc/selinux/targeted/modules/active’: Permission denied
find: ‘/etc/lvm/archive’: Permission denied
find: ‘/etc/lvm/backup’: Permission denied
find: ‘/etc/lvm/cache’: Permission denied
find: ‘/etc/grub.d’: Permission denied
/etc/pam.d/passwd ##正確輸出
find: ‘/etc/audisp’: Permission denied
find: ‘/etc/firewalld’: Permission denied
find: ‘/etc/cups/ssl’: Permission denied
find: ‘/etc/ipsec.d’: Permission denied
find: ‘/etc/libvirt’: Permission denied
find: ‘/etc/sudoers.d’: Permission denied
find: ‘/etc/named’: Permission denied
find /etc -name passwd > file ##重定向正確輸出
find /etc -name passwd 2> file ##重定向錯誤輸出
find /etc -name passwd &> file ##重定向所有輸出
注意: >, 2> ,&> 都會覆蓋原始檔內容
file ##清空file
find /etc -name passwd >> file ##追加正確輸出
find /etc -name passwd 2>> file ##追加錯誤輸出
find /etc -name passwd &>> file ##追加所有輸出
注意:>> 2>> &>> 不會覆蓋原始檔內容,會把相應的輸出字元方到檔案的最後
| 管道,管道的作用是將前一條命令的輸出變成管道後命令的輸入
ls /bin | wc -l ##統計ls /bin 命令輸出的行數
系統中錯誤的輸出是無法通過管道的。
用 2>&1 可以把錯誤的輸出編號由2變成1
tee 複製輸出到指定位置
date |tee file |wc -l ###tee命令複製date命令的輸出到file中,並統計輸出行數
####2.vim ####
1.vim 命令模式
在vim異常退出
在vim一場退出時,系統中會在所編輯的檔案目錄中生成.file.swp
vim再次編輯此檔案時會出現相應提示
按 “o” open
按 “e” edit
按 “r” recover
按 “d” delete .swap file
按 “q” quit
在vim的命令模式下可以配置vim的工作方式
:set nu ##行號新增
:set nonu ##取消行號
:set mouse=a ##新增滑鼠選擇
:set cursorline ##行線顯示
以上設定都是臨時的,
永久設定方式
vim /etc/vimrc ###此檔案為vim的配置檔案,在此檔案最後加入以上引數,加到檔案中的才數不需要:
2.vim命令模式下關鍵字搜尋
/關鍵字
n向下匹配
N向上匹配
3.vim命令模式下字元的管理
1.字元的複製
yl ##複製一個字母
y3l ##複製3個字母
yw ##複製一個單詞
y3w ##複製3個單詞
yy ##複製一行
y3y ##複製3行
p ##複製完成後按“P”貼上
2.字元的刪除
dl ##刪除一個字母
d3l ##刪除3個字母
dw ##刪除一個單詞
d3w ##刪除3個單詞
dd ##刪除一行
d3d ##刪除3行
3.字元的剪下
cl ##剪下一個字母
c3l ##剪下3個字母
cw ##剪下一個單詞
c3w ##剪下3個單詞
cc ##剪下一行
c3c ##剪下3行
esc —> p ##剪下過後會進入到插入模式,在執行貼上動作時一定要退出插入模式
4.vim的視覺化模式
在命令模式下按“ctrl+v”進入到可視模式
在可視模式下可以區域選擇字元
可視模式下批量新增字元
*>> ctrl+v 選中要加入字元所在列
*>> 按“I”進入插入模式,寫入要加入的字元
*>> 按esc
####5.批量修改字元####
:%s/原有字元/替換後字元 ##只替換每一行中出現的第一個原有字元
:%s/原有字元/替換後字元/g ##替換所有
:1,5s/原有字元/替換後字元/g ##替換1-5行
6.vim的分屏功能
ctrl+w s ###上下分屏
ctrl+w v ###左右分屏
ctrl+w c ###關閉游標所在螢幕
ctrl+w 上下左右 ###游標移動到指定螢幕
:sp file2 ##同時編輯當前文章
7.vim游標移動
在命令模式下
:數字 ##移動到指定的行
G ##檔案最後一行
gg ##檔案第一行
在插入模式下
i ##游標所在位置插入
I ##游標所在行行首
a ##游標所在字元的下一個位置
A ##游標所在行行尾
o ##游標所在行下一行
O ##游標所在行上一行
s ##刪除游標所在字元插入
S ##刪除游標所在行插入
8.vim的退出模式
:q ##當用vim開啟檔案但沒有對字元作任何操作時可直接退出
:q! ##當用vim開啟檔案並對字元作操作,放棄所有操作退出
:wq ##儲存退出
:wq! ##強行儲存退出,對超級使用者及檔案所有人生效
9.vim手冊
vimtutor ##vim的手冊
:q ##退出vimtutor
3.gedit
ctrl+n ##在gedit中開啟一個新的tab
ctrl+s ##儲存檔案
ctrl+o ##開啟檔案
ctrl+x ##剪下字元
ctrl+v ##貼上字元
ctrl+c ##複製字元
yelp help:gedit ##gedit的圖形手冊
####3.使用者理解####
使用者就是系統使用者的身份
在系統中使用者儲存為若干竄字元+若干個系統配置檔案
使用者資訊涉及到的系統配置檔案:
/etc/passwd ###使用者資訊
使用者:密碼:uid:gid:說明:家目錄:使用者使用的shell
/etc/shadow ###使用者認證資訊
使用者:密碼:最後一次密碼修改該時間:最短有效期:最長有效期:警告期:非活躍期:帳號到期日
/etc/group ###組資訊
組名稱:組密碼:組id:附加組成員
/etc/gshadow ###組認證資訊
/home/username ###使用者家目錄
/etc/skel/.* ###使用者骨架檔案
####4.使用者管理####
1.使用者建立
useradd 引數 使用者名稱字
-u ##指定使用者uid
-g ##指定使用者初始組資訊,這個組必須已經存在
-G ##指定附加組,這個組必須存在
-c ##使用者說明
-d ##使用者家目錄
-s ##使用者所使用的shell,/etc/shells記錄了使用者能使用shell的名字
2.使用者刪除
userdel -r 使用者名稱稱 -r表示刪除使用者資訊及使用者的系統配置
3.組的建立
groupadd -g ##建立組
groupdel 組名字 ##刪除組
作以上實驗的監控命令:
watch -n 1 ‘tail -n 3 /etc/passwd /etc/group;echo ====;ls -l /home;echo ===;ls -l /mnt’
4.使用者id資訊檢視
id 引數 使用者
-u ##使用者uid
-g ##使用者初始組id
-G ##使用者所有所在組id
-n ##顯示名稱而不是id數字
-a ##顯示所有資訊
5.使用者資訊更改
usermod 引數 使用者
-l ##更改使用者名稱稱
-u ##更改uid
-g ##更改gid
-G ##更改附加組
-aG ##新增附加組
-c ##更改說明
-d ##更改家目錄指定
-md ##更改家目錄指定及家目錄名稱
-s ##更改shell
-L ##凍結帳號
-U ##解鎖
####5.使用者權力下放####
1.在系統中超級使用者可以下放普通使用者不能執行的操作給普通使用者
下放權力配置檔案:/etc/sudoers
2.下放權力的方法
*)超級使用者執行visudo進入編輯/etc/sudoers模式
*)格式:
獲得許可權使用者 主機名稱=(獲得到的使用者身份) 命令
test desktop0.example.com=(root) /usr/sbin/useradd
test使用者能在desktop0.example.com以超級使用者身份執行/usr/sbin/useradd
3.執行下放許可權命令
sudo 命令 ##如果第一次執行sudo需要輸入當前使用者密碼
在/etc/sudoers中如果設定如下:
test desktop0.example.com=(root) NOPASSWD: /usr/sbin/useradd
表示使用者呼叫sudo命令的時候不需要自己密碼
####4.使用者認證資訊的控制####
chage 引數 使用者
-d ##使用者密碼組後一次修改的時間,如果設定成0,使用者登陸系統後必須修改自己的密碼
-m ##最短有效期
-M ##最長有效期
-W ##警告期
-I ##使用者非活躍天數
####root密碼忘記#####
1.重新啟動系統
2.在系統啟動階段按上下健停止系統系統引導
3.選擇啟動引導標題,按“E”進行編輯
4.找到linux16引導條目這一行,從這行最後刪除到ro選項,並把ro改為rw,然後新增rd.break選項
5.ctrl+x啟動設定過後的系統引導條目
6.進入系統後執行chroot /sysroot切換到真實的系統環境
7.passwd root修改超級使用者密碼
8.建立檔案/.autorelabel讓系統從新掃描所有檔案
9.exit兩次使系統自動重新啟動