小節

管道符:cmd1 輸出
cmd2 輸入
cmd1 | cmd2
如果想將錯誤信息傳給cmd2
cmd1 |& cmd2 或 cmd1 2>&1| cmd2
加上 >
2>
<
&>
就是重定向
<< key
與用戶名和組相關的
/etc/passwd
/etc/shadow 放用戶口令的
/etc/group
/etc/gshadow
以上可以用cat查看也可以用
getent passwd|shadow|group|gshadow
前提是必須是root尤其是 shadow ,gshadow
上一節課講到用戶賬號和組賬號可以同名
也就是 UID=GID ,一般用戶創建賬號時是默認創建一個和他同名的組作為主組,即uid和主組相同
在Linux中默認一個uid=0的號即root ,并且gid=0的也叫root的組
如果把liang號 UID設為0 就可以獲得和root一樣的權限
準確的說ID為0的就是管理員
我們把用戶加到組里面就會繼承組的權限
工作中 一般先建一個賬號
useradd -s /sbin/nologin -r -d /data/mysql -m -u1234 mysql
-s shell類型 nologin給某個服務用的,一般都是系統賬號 -d指定家目錄,后面跟指定目錄。 -r 一旦加上就不會建家目錄,郵箱也不會生成,如果想建家目錄加上-m 后面跟指定用戶名 -u指定UID如果在多臺服務器上建賬號不指定UID 系統會隨機分配,管理麻煩
usermem

userdel 帶-r選項會把郵箱一起刪

 

 

2文件的權限
read r 讀
write w 寫
excute x 執行
讀文件 要確保文件可讀才行 如果是二進制文件讀取后會把系統弄亂碼 ,
解決辦法exit logout 或CTRL+D 或敲命令reset(重置字符)
讀寫文件一般針對文本說的
執行列外 執行:當程序運行

改所有者 chown wang f1 更改f1的所有者為wang
查組的列表 getent group
改所有組 chgrp rpc f1 更改f1的所有組為rpc

建兩個組 #groupadd g1
#groupadd g2
把wang用戶加到g1組里 有三種方法
#groupmems -a wang -g g1
#usermod -aG g2 wang 給wang建一個叫g2的附加組 如果沒有a 將會把上一個附加組g1覆蓋抹去
列如
[root@liang data 21:00:42]#id wang
uid=502(wang) gid=504(wang) groups=504(wang)
[root@liang data 21:08:11]#groupmems -a wang -g g1
[root@liang data 21:16:11]#id wang
uid=502(wa
ng) gid=504(wang) groups=504(wang),501(g1)
[root@liang data 21:16:18]#usermod -aG g2 wang
[root@liang data 21:16:50]#id wang
uid=502(wang) gid=504(wang) groups=504(wang),501(g1),502(g2)
普通賬號無法改變UID
列如
[root@liang data 21:19:10]#su wang
[wang@liang data 21:19:25]$ll
total 16
-rw-r–r–. 1 wang root 0 Apr 4 20:53 f1
drwx——. 2 root root 16384 Apr 2 19:54 lost+found
[wang@liang data 21:19:30]$chown mage f1
chown: changing ownership of `f1′: Operation not permitted
可以改變GID 前提是文件是所有者的,并且必須要在這個組里
例如
[wang@liang data 21:20:08]$chgrp g1 f1
[wang@liang data 21:24:17]$ll f1
-rw-r–r–. 1 wang g1 0 Apr 4 20:53 f1
繼承的組權限是一樣的
相對于普通用戶 。
通過這 我們把將要訪問f1文件的 人 分成 三類人
第一類 文件的所有者 權限最大
第二類 所加入的 所屬于的組 權限相對小
第三類 other 權限最嚴

如何對三類人 授權
1 chmod change mode
方法 :mode 法
chmod who opt per file chmod跟上對誰操作who 做什么操作opt 針對他授予什么權限per 跟上文件file

who :u g o a(all)
opt : + – =
per :r w x X X特殊權限
chmod u+x,file
chmod u+x,g-w,o= file
例如
[wang@liang data 21:54:06]$ll f1
-rw-r—–. 1 wang g1 0 Apr 4 20:53 f1
[wang@liang data 21:54:35]$chmod u= f1
[wang@liang data 21:54:44]$ll f1
—-r—–. 1 wang g1 0 Apr 4 20:53 f1
普通用戶讀寫執行 有限制
刪除文件不是對文件的權限 而是對目錄的

方法2: 數字法
u g o
rwx rw- r–
111 110 100
421 42 4

7 6 4

chmod 421 f1

chmod -R 422 dir1 更改dir1下的所有文件的權限為422

umask 取消對應的權限 mask 掩碼
設為多少
新建的文件的權限就是666-umask值剩下的數,但是 如果是奇數+1 偶數不變
新建的文件夾的權限是777-umask值剩下的數。

例如
[root@liang data ]#umask 251
[root@liang data ]#mkdir dir2
[root@liang data ]#ll
total 0
drwxrwxrwx. 2 liang liang 27 Apr 5 16:29 dir1
dr-x-w-rw-. 2 root root 6 Apr 5 17:05 dir2
[root@liang data ]#touch f1
[root@liang data ]#ll
total 0
drwxrwxrwx. 2 liang liang 27 Apr 5 16:29 dir1
dr-x-w-rw-. 2 root root 6 Apr 5 17:05 dir2
-r—w-rw-. 1 root root 0 Apr 5 17:05 f1

在Linux中要想存的住就要放在文件里
所以umask值可以存在 .bashrc 中
-p
#umask -p >>.bashrc

-s
#umask -s
u=rwx g=rw o=r
可以直接看到設置的 不用算 我們也可以這樣
#umsak u=rwx g=r o=rw 這樣設置也可以
文本處理工具 cat
cat [OPTION] …[FILE]
-E:顯示行結束符$
-n:對顯示出的每一行進行編號
-A:顯示所有控制符
-b:非空行編號
-s:壓縮連續的空行成一行
tac
豎著反寫功能

rev
橫著反寫

more 相當于空格 用于翻頁
less 也用于翻頁

head 顯示文件的頭
head -n2 前兩行

head -c12 前12個字符
tail
tail -n2 后兩行
tail -f /etc/ss 跟蹤/etc/ss 的頁面
-F
tailf 相當于tail -f

cut 取列

cut -d: -f 1 取以:為分隔符的第一列

cut -c4-6 取4-6列的字符

paste 將兩個文件的內容橫著合并 同一行的合到一起
paste f1 f2 把f1和f2橫著合并一起

cat f1 f2 把f1和f2 豎著合并一起
paste -s f1 f2 把f1的內容合成一行做成第一行再把f2的內容合成一行作為第二行 ,把兩個合成一起顯示出來

wc 顯示文件內容有幾行 多少個字節 多少個單詞
一般 ls -l | wc

wc -w file file 中有多少個單詞
-c 字節
-m 字符
-L 顯示最長的行的字節符
-l 有多少行

sort 取出列 并排序
sort -t: k 1 /etc/passwd 對/etc/passwd 以:為分隔符第1列 的字符 排序
sort -t: k 1 -n /etc/passwd 對 /etc/passwd 以:為分隔符第1列 的數字 排序
sort -t: k 1 -nr /etc/passwd 對/etc/passwd 以:為分隔符第1列 的數字 倒序排序

-n 數字排序 排序后可以跟 | head -n1 取第一行 就是取最大值

-u 把重復的刪除留下單個的
-n
-f 忽略大小寫
uniq 刪除相鄰的相同的行
uniq -c 顯示幾行合并到一起
-u 僅顯示不重復的行
-d 僅顯示重復的行

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/95112

(0)
lhl123456lhl123456
上一篇 2018-04-07 11:08
下一篇 2018-04-07 11:43

相關推薦

  • DNS服務、BIND

    DNS:domain name service,協議(C/S,udp53,tcp53) BIND:bekerley internat name domain 注意:named程序的啟動用戶是named用戶,非root用戶,因此需要注意權限和屬主。 本地名稱解析配置文件:hosts linux:/etc/hosts windows:%WINDOWS%/syst…

    2018-03-26
  • d3基本命令總結

    ltrace ls 跟蹤進程調用庫函數的情況 strace ls 跟蹤一個進程的系統調用或信號產生的情況 安裝:yum -y install ltrace   hex   兼容分時系統 同一個時間,CPU只能處理終端的請求,綁定task和cpu。   80年代 GNU (GNU Not is UNIX)單一處理 AIX HP I…

    Linux筆記 2018-07-30
  • Centos6.9上安裝httpd2.2.34步驟

    Centos6.9上安裝httpd2.2.34步驟 1.????? 首先安裝包組 yum groupinstall “development tools”如下圖所示: 2.????? 我們需要建立一個repo倉庫,可以指向網絡鏡像地址,也可以指向光盤,這里為了更加快速,所以指向光盤。并且清除緩存,獲取repolist列表。 在/etc/yum.repos.d…

    2018-04-22
  • Linux上的文件管理類命令

    一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。(1)目錄管理命令——ls:列出指定目錄下的內容格式:ls [OPTION]… [FILE]…-a:顯示所有文件包括隱藏文件-A:顯示除.和..之外的所有文件-l,–long:顯示文件的詳細屬性信息-h:對文件大小進行單位換算,可能影響精度-d:查…

    Linux筆記 2018-05-19
  • 第三周作業

    1.列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可 [root@yinwei ~]# who | cut -d ‘ ‘ -f1 | sort -ucentosgentooroot   取出最后登錄到當前系統的用戶的相關信息 [root@yinwei ~]# last | head -1gentoo pts/2 …

    Linux筆記 2018-05-25
欧美性久久久久