1. 程式人生 > >Linux基礎知識part2

Linux基礎知識part2

.bashrc uid 用戶家目錄 進制 子進程 保存 dbo tmp 使用

繼續上一節,這次主要是用戶和權限的一些知識點。

命令創建用戶:useradd

手動創建用戶:

/etc/passwd

/etc/shadow

/etc/gshadow

/home/用戶名/

/var/spool/mail

id user 查看user用戶個人信息。

用戶家目錄的隱藏文件模板 /etc/skel

ls -ld 查看目錄詳細信息

chown -R oldboy:oldboy /home/oldboy 遞歸更改

家目錄下環境配置文件
env 查詢環境變量
set 查詢所有變量
環境變量可以被子進程繼承 export b=2
自定義變量不能被子進程繼承 a=1

環境配置文件(每個用戶家目錄下都存在)
.bash_history 保存用戶的歷史命令,當用戶退出時保存到文件
.bash_logout 保存用戶退出時執行的命令
.bashrc 保存用戶別名 (開啟新的終端就可以讀取該文件)
.bash_profile 保存用戶搜索命令的位置

.bashrc shell級別環境變量配置文件
.bash_profile 登錄級別環境變量配置文件

su - 登錄級別切換
su shell級別切換

全局環境配置文件
/etc/bashrc
/etc/profile

加載順序
/etc/profile
.bash_profile
.bashrc
/etc/bashrc

定義變量文件順序
/etc/profile1
/etc/profile2
.bash_profile1
.bashrc1
/etc/bashrc1
/etc/bashrc2
.bashrc2
.bash_profile2

權限(基本權限和高級權限)
[[email protected] ~]# ls -l install.log
-rw-r--r-- 1 robin upup 39751 05-23 11:15 aa.txt
rwx | rwx | rwx
robin upup other
uid=0----->uid=robin----->group=upup----->other

對於文件 r--------cat head tail....
w--------vim,gedit,vi,> >>
x--------執行./ 絕對路徑
對於目錄 r--------ls r-x查看目錄下文件信息
w--------mkdir touhc rm rwx
x--------cd
user u
group g
other o

chmod u+r file/dir
chmod u+r,g+w file/dir
chmod ug-rw file/dir
chmod ugo+rwx file/dir
chmod a+rwx file/dir

chmod u=r file/dir
chmod u=r,g=w file/dir
chmod uo=rw file/dir
chmod ugo=rwx file/dir
chmod a=rwx file/dir

/ rwxr-xr-x 755
/etc/ rwxr-xr-x 755
/usr/ rwxr-xr-x 755
/var/ rwxr-xr-x 755
/tmp rwxrwxrwt 1777
/etc/shadow r-------- 400
/etc/passwd rw-r--r-- 644
/home/robin rwx------ 700
/root rwxr-x--- 750
root創建文件默認權限 rw-r--r-- 644
root創建目錄默認權限 rwxr-xr-x 755
普通用戶創建文件默認權限 rw-rw-r-- 664
普通用戶創建目錄默認權限 rwxrwxr-x 775

r------4 w------2 x-----1
777
rwxr----x 741 123--x-w--wx
r-x-wx-w- 532 456r--r-xrw-

默認權限計算方法
666 023
110110110 000010011
111101100 111101100
110100100
644

chmod -R 777 /test

修改擁有者所屬組
chown robin tt.txt
chgrp uplooking tt.txt
chown robin.uplooking tt.txt
chown .uplooking tt.txt
.=:
chown -R robin.uplooking dir/

練習:
創建用戶tom和jerry
1.在/tmp目錄下創建文件tt.txt
要求:
tt.txt權限設置為651 在改為rwxr----x
chmod 651 /tmp/tt.txt
chmod u=rwx,g=r,o=x /tmp/tt.txt

設置tt.txt文件擁有這tom所屬組jerry
chown tom.jerry /tmp/tt.txt

2.根據以下要求設置擁有者和權限
在/tmp目錄下創建目錄test/,在test目錄下創建文件aa.txt
tom可以讀寫文件aa.txt 不能刪除
jerry 不可以讀寫文件aa.txt 可以刪除

mkdir /tmp/test/
touch /tmp/test/aa.txt

/tmp/test/ jerry root rwxr-xr-x
/tmp/test/aa.txt tom root rw-r-----

主組附加組
robin robin robin,uplooking
/tmp/test rwxrwx--- root uplooking
robin能不能進去/tmp/test? 為什麽?
可以 因為附加組有uplooking
進入後創建文件aa.txt 該文件 擁有者 所屬組??
robin robin
如果該用戶想創建屬於uplooking組的文件 怎麽做?
sg uplooking
robin uplooking robin,uplooking
tt.txt robin uplooking

高級權限
1.suid
必須作用於二進制可執行文件
chmod u+s file
作用:任何用戶在執行擁有suid權限的命令時,都以該命令擁有者的身份執行

實驗:
在不改變/etc/shadow權限的前提下,使普通用戶robin可以使用cat查看/etc/shadow文件內容
which cat
chmod u+s /bin/cat
robin用戶測試

2.sgid
必須作用於目錄
chmod g+s dir
作用:任何用戶在擁有sgid的目錄下創建的文件,都要繼承該目錄的組

useradd -g job -G uplooking tom
useradd -g job -G uplooking jerry
useradd -g sal -G uplooking zorro
useradd -g sal -G uplooking shrek

/job zhb uplooking rwxrwsr-x

aa.txt tom job
tt.txt tom uplooking rw-r-----


3.sticky(t 冒險位 粘貼位)
必須作用於目錄
chmod o+t dir
作用:任何用戶在擁有t權限的目錄下創建的文件,都屬於該用戶自己,其他人無權刪除(root,目錄擁有者)

Linux基礎知識part2