Linux學習筆記三:管道,重定向與用戶管理

 1  ---第三天:重定向,管道與用戶管理---

 2  軟連接:
 3  ln -s file link_file

 4  特點:支持跨設備,網絡,支持目錄。
 5  相對路徑:相對軟連接的路徑

 6  本質:是不同文件!節點編號不一樣。
總結:軟連接與硬連接有哪些不同點?
1,本質區別,硬連接是同一文件的不同名字,而軟連接是不同的文件。
    >硬連接不能跨越分區和網絡,軟連接可以
    >硬連接具有相同的inode號,軟連接不相同
    >硬連接不支持文件對目錄操作,軟連接可以
    >硬連接的鏈接文件必須存在,軟連接可以不用存在
    >硬連接會增加文件連接數,軟連接不增加
    >硬連接和軟連接命令不一樣,軟連接文件比源文件大。

 7  ln -s f1 f2     假如f1是文件夾
 8  rm -rf f2/      刪除的是f1目錄裏面的文件

 9  Linux文件系統:

10  file    查看文件類型
如何查看使用vim打開一個文件的fd?
    cd /proc/`pidof vim`/fd
    ll  0,1,2是默認的。

11  pidof tail      查看tail的進程編號

12  打開文件,系統就會分配一個文件描述符(fd):file discriptor

13  標準輸入:STDIN         0
14  標準輸出:STDOUT        1
15  標準錯誤:STDERR        2       0,1,2是3個默認的文件描述符

16  文件描述符存放路徑:/proc/pid/fd

17  I/O重定向:

18  0>
19  1>      可以省略
20  2>      標準錯誤
21  &>      錯誤+標準輸出合併

22  新浪面試題:
將標準輸出和錯誤輸出一起輸出到文件的三種寫法?
    1,&>
    2, 1 > file.log 2>&1
    3, 2> file.log 1>&2

23  >       標準輸出的重定向

24  < >     是危險操作   cat <file1>file1 等於清空   cat<file1>>file1    等於無限追加file1文件   慎用!

25  tr      替換處理字符      tr -s "abc" <file   ...
26  -t      截斷
27  -d      刪除
28  -c      取補集,需要配合其他幾個一起使用。
29  -s      壓縮

30  cat >f.txt      單行重定向
31  cat <<EOF       多行重定向
例子:cat >file1<<EOF
    mail -s 'hello' root <file.txt
    mail -s 'hello' root <<EOF
32  |       管道
33  用法:cmd1 | cmd2

34  cmd 2>&1 | tr "a-z" "A-Z"       等價於 |&

35  | tee   既輸出到標準輸出,也重複定向到文件

36  ---------------------用戶,組和權限------------

37  主要配置文件
38  /etc/passwd
39  /etc/shadow
40  /etc/group
41  /etc/gshadow
42  /etc/default/useradd
43  /etc/skel   創建用戶“家目錄”參考模板
44  /etc/login.defs

45  chfn    修改finger
46  chsh -s     修改用戶shell
47  chage   修改shadow
48  vipw    具有語法檢查功能
49  vigr

50  加密算法:
51  $1  MD5
52  $5  sha256
53  $6  sha512

54  getent shadow mage  之查看mage賬戶shadow

55  usermod -L mage     將mage用戶鎖了!!!,等於加了一個!
56  usermod -U mage     解鎖
57  newgrp zhang    臨時加入zhang組,並設置爲主組   很少用,不用記

58  openssl rand -base64 9  生成一個隨即口令

59  useradd
60  -u  指定uid
61  -o  uid可以重複
62  -g  gid或者組名,設置主組
63  -c  描述
64  -d  家目錄
65  -G  指定附加組
66  -s  shell
67  -r  創建一個系統用戶
68  -M  不創建家目錄

69  rm -rf .[^.]*   刪除所有隱藏文件

70  usermod
71  和useradd選項基本一樣

72  userdel
73  -r  把用戶和數據都刪了

74  groupadd
75  groupmod
76  groupdel

77  id命令

78  su  不完全切換
79  su -    完全切換

80  passwd  設置口令
81  echo "magedu" |passwd --stdin wang
82  -e  第一次登陸必須修改口令

================用戶和組===================
用戶名:密碼:uid:gid:描述:家目錄:shell

創建用戶:useradd chendafu
創建或者修改密碼:passwd chendafu
uid:centos7普通用戶1000+;centos6普通用戶500+
gid:同上
描述:chfn chendafu
家目錄:useradd -d
shell:  useradd -s

useradd 默認:由/etc/default/useradd    useradd默認文件

cat /etc/default/useradd
[root@chendafu ~]# cat /etc/default/useradd 

useradd defaults file

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

useradd選項:

參考:
rpm -q --scripts postfix

/usr/sbin/groupadd -g 90 -r postdrop 2>/dev/null
/usr/sbin/groupadd -g 89 -r postfix 2>/dev/null
/usr/sbin/groupadd -g 12 -r mail 2>/dev/null
/usr/sbin/useradd -d /var/spool/postfix -s /sbin/nologin -g postfix -G mail -M -r -u 89 postfix 2>/dev/null

-g  指定gid或者組名
-r  創建系統用戶
-d  指定家目錄,不適用默認的/home
-s  指定shell
-m  系統用戶創建家目錄
-M  不創建家目錄
-G  指定附加組
-u  指定uid
2>/dev/null 不顯示標準錯誤

用戶和組相關配置不建議直接修改配置文件,應該用ch相關命令修改:
1,修改用戶:chpasswd修改加密類型,chgrp修改組,chfn修改finger,chsh修改shell,chage修改各種時間。

修改用戶:usermod
    -G  修改附加組
    -g  修改主組
    -c  添加描述
    -f  inactive時間
    -L  鎖定用戶密碼
    -U  解鎖密碼
    -d  修改家目錄   但是需要將/etc/skel/.  拷貝到後指定家目錄裏
    -a  追加,常與-G一起,給用戶添加多個附加組
    -p  修改密碼,是銘文

刪除用戶:userdel
-r  刪除用戶同時刪除文件(/home/usernam, mail spool)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章