Linux 1.文件權限與目錄配置

文件權限與目錄配置

涉及到的命令

ls

查看當前目錄下的所有文件詳細信息
-a 全部文件
- d 僅目錄本身
- l 詳細信息
- h 容量大小,易讀方式
- i 顯示inode 節點
- S 容量大小排序
- r 逆序
- t 按時間排序

chgrp

修改文件所屬組
- R 遞歸

chown

修改文件所有者
- R 遞歸修改

chmod

修改文件的權限屬性

cp 源文件 目標路徑

文件複製
- a 遞歸複製及其屬性
- i 若文件已存在則詢問
- p 連同文件屬性複製
- r 遞歸複製
- l 硬鏈接
- s 軟連接

uname

查看linux內核及系統架構版本
- r 查看內核
- m 查看系統架構

su

切換當前用戶

cd

切換目錄的命令
. 表示當前目錄
… 表示上層目錄
- 表示前一個目錄
~ 表示用戶的家目錄

pwd

顯示當前所在的目錄
- P 查看當前真實路徑,非鏈接目錄

mkdir

建立一個新目錄
- p 遞歸創建目錄

rmdir

刪除一個空目錄
- p 遞歸刪除空目錄

rm

刪除問價或目錄
- f 忽略提示信息
- r 遞歸刪除

mv

移動文件或重命名
- f 忽略詢問信息,強制覆蓋
- u 若文件已存在覆蓋

basename 獲取文件名

basename path 獲取path中的文件名

dirname 獲取路徑名

dirname path # 獲取path中的上一級目錄

cat 一次查看文件的所有內容

查看文件內容
- n 打印行號

tac 倒過來看文件的內容
more 翻頁查看
空格鍵(space)  翻頁
enter  --- 下一行
/ ---- 表示要查找的內容
:f  --- 查看文件名稱和行數
q ----- 推出查看
b -----向上翻
less

相對於more更有彈性
空格鍵:向下翻頁
pagedown:向下翻頁
pageup:向上翻頁
/ : 向下查找字符功能
? : 向上查找字符功能 (more 不行)
n: 重複上一個查找

head

取出文件的前幾行
head
- n 指定截取行數

tail

截取文件的後幾行
tail
- n 指定截取行數
- f 持續監測,當有數據追加的時候會動態顯示,看日誌時可使用
tail -n +100 列出100行後面的數據

od

讀取非文本文件
echo password | od -t oCc # 查看password對應的ASCII碼

touch

文件屬性的時間有三種 : atime(讀文件時更新時間) ctime(文件狀態被修改時更新,如權限屬性) mtime(文件更新的時候更新文件時間)
-d 自定義日期(文件屬性)
-m 修改mtime

umask

查看文件與目錄的默認權限
-S 以字符的形式顯示權限
文件默認權限最大 666,目錄爲777

chattr

給文件增加隱藏屬性 ,使用 + - = 進行操作
-S 同步操作
-a 只能向文件寫入數據,文件不能修改和刪除
-i 文件不能刪除,修改,rename,設置鏈接

lsattr

查看文件的隱藏屬性
-a 顯示所有文件的隱藏屬性
-d 目錄的隱藏屬性
-R 遞歸

file

查看文件的類型
file example_file

which

查看命令存放的位置
-a 找出該命令所有的path,而不是隻找第一個

whereis

查找特定目錄中的文件
-l 列出查詢過的目錄
-m 只找在man中的文件,才顯示出來

locate/updatedb

locate 文件查找,查詢速度較快是因爲從DB中查,updatedb 更新DB
-i 忽略大小寫
-l 顯示幾行
-r 正則匹配顯示

find

同 which、whereis、locate 一樣都是查找文件的作用
1.時間相關參數
-mtime n n天內被修改的文件(一天內,與-n區別於時間範圍)
-mtime +n n天之前被修改的文件
-mtime -n n天內被修改的文件
2.用戶相關
-user name 指定用戶名 如:find /home -user user1
-group name 指定用戶組
-nouser 同上
-nogroup 同上
3.文件權限相關
-name filename
-size [±] SIZE
-type TYPE ( f 表示文件 d 表示目錄 s 表示socket文件 l 表示鏈接文件)
4.額外參數
-exec command 例如:find /etc -name mysql* -exec ls -al {} \ , ---- 其中 {} 表示find要找的內容 ,-exec 一直到 “” 爲止。其實就是 ls -al {}

用戶和用戶組

用戶和用戶組概念是針對於文件權限來說的,一個文件的權限有三種表示方式來體現的使用者的權限,分別是

  • 文件的所有者
  • 文件的所屬組
  • 其他人

Linux 文件權限概念

Linux中的文件屬性,列如
-rwxrw-r–
drwxr–r--
一個文件有7個字段,3個爲一組
開頭以
- d開頭表示目錄
- - 則表示一個文件
- l 表示這是一個鏈接文件
- b 表示爲設備文件(存儲) ,c 爲串行端口設備(鍵盤鼠標)
- [.] 以點開頭的爲隱藏文件
第一組:文件擁有者的權限
第二組:文件所屬組的權限
第三組:既不是文件的所有者也不是所屬組(其他人)

ls 中 第二欄問 inode節點,表示有多少文件連接到此文件
第五欄 爲文件的容量大小,默認是bytes
第六欄爲 文件的創建時間和修改時間

修改文件屬性和權限

  • chgrp 用戶組 文件或目錄
    chgrp users test_file.txt
  • chown 用戶 文件或目錄
    chown root:root test_file.txt 同時修改用戶組與文件的所有者
    修改文件權限分兩種 1.使用數字 2.使用符號
    將文件權限修改爲【-rwxr-xr-x】
    r:4 w:2 x:1
  • chmod 755 file
    u 所有者 g 所屬組 o 其他人 a 所有人 + 增加權限 - 去掉權限 = 等於權限
    給所有人加上 w權限
  • chmod a+w file
    所有人去掉執行權限
  • chmod a-x file
    指點權限
    chmod u=rwx,g=rw,o=rx file

瞭解一下

export LC_ALL=en_US.utf8   修改語系

Linux 目錄配置

/bin  放置一些可執行文件如:date mv mkdir
/boot 放置啓動時的一些命令
/dev 設備文件
/etc 系統主要的配置文件
/lib 函數庫 如/bin 和 /sbin 執行中會調用的命令
/media 媒體文件
/mnt 暫時掛載一些設備
/opt 第三方軟件的放置目錄
/run 系統啓動後產生的信息
/sbin 包含修復還原、啓動系統、所需要的命令
/srv service縮寫 如www服務所需要的數據可以放在這裏
/tmp 臨時放置文件目錄
/home 用戶的家目錄
/root root 的家目錄
/lost+found 文件系統發生錯誤時產生的文件存放位置
/proc  內存中的數據
/sys 與proc類似

------------
/usr/bin  一般用戶使用命令
/usr/lib 與/lib 類似
/usr/local  管理員自己下載的軟件安裝位置
/usr/sbin  非系統正常運行時所需要的的命令
/usr/share  放置只讀數據文件和共享數據文件
/usr/include c/c++ 等語言程序的頭文件
/usr/src  一般源碼的放置目錄
-----------------
/var/cache  程序運行的產生的緩衝
/var/lib  一些服務用到的數據文件
/var/log  日誌目錄
/var/spool  隊列數據

絕對路徑與相對路徑的概念:
絕對路徑:從更目錄開始尋找 /
相對路徑:基於當前所在的目錄開始尋找,即非 / 開始的目錄, …/ 表示上一層目錄,

文件與目錄管理

$PATH 環境變量,使用echo $PATH 查看當前變量,每一個路徑使用冒號:分隔
在這裏插入圖片描述

磁盤文件系統管理

df

列出文件系統的磁盤使用量
-a 列出所有文件系統
-h 以kb ,mb ,gb 方式顯示

du

-s 顯示總用量
-a 所有,包括目錄
-h 以kb ,mb ,gb 方式顯示
查看當前文件系統磁盤使用量

ln

硬鏈接與 符號鏈接(軟連接,快捷方式)
不加任何參數就是硬鏈接
-s 軟連接 例如:ln -s 源文件 目標文件

文件系統的壓縮

在linux中常見的壓縮擴展名,.tar 、.tar.gz 、.tgz 、.gz、.Z 、.bz2 、 *.xz

gzip

-c 將壓縮數據輸出
-d 解壓
-v 顯示壓縮信息

bzip2

-c 將壓縮數據輸出
-d 解壓
-v 顯示壓縮信息
-k 保留源文件
-z 壓縮

tar

打包命令
-c 建立打包文件
-t 查看打包文件內容有哪些文件
-x 解包解壓縮
-z 壓縮
-v 顯示過程
-C 指定特定目錄壓縮
-p 保留原本權限屬性
-f 指定文件名 ,該參數需放到最後

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章