Linux文件目錄和許可權

来源:https://www.cnblogs.com/javaLf/archive/2018/01/14/8283218.html
-Advertisement-
Play Games

前言: Linux一般將文件可存取的身份分為三個類別,分別是 owner/group/others,根據許可權劃分,每個目錄都可以擁有相對身份的-rwx[可讀可寫可執行] 使用者與群組: Owner :文件擁有者,如jane擁有此文件所屬權,可對該文件進行相應許可權操作。 Group :文件擁有組,如一 ...


前言:

Linux一般將文件可存取的身份分為三個類別,分別是 owner/group/others,根據許可權劃分,每個目錄都可以擁有相對身份的-rwx[可讀可寫可執行]

 

使用者與群組:

Owner :文件擁有者,如jane擁有此文件所屬權,可對該文件進行相應許可權操作。

Group  :文件擁有組,如一個project組中,有三個人people1,people2, people3,而該文件被project組所擁有,則組內的三個成員就可以對文件進行相應許可權操作。

Other  :其他所有者,即除去owner和group的可執行的操作

Linux文件屬性

使用ls -al可查看當前目錄下的文件(-a顯示隱藏文件,以.開頭的文件)

 

根據空格符劃分:[ 許可權 ][鏈接][擁有者][群組][文件大小][ 修改日期 ] [ 文件名 ]

1)       [許可權]:由十位字元組成,代表這個文件的類型與許可權

第一個字元代表這個文件是目錄、文件或鏈接文件等等

目錄

l   當為[ d ]則是目錄,例如上表文件名為“.config”的那一行;

l   當為[ - ]則是文件,例如上表文件名為“esd_auth”那一行;

l   若是[ l ]則表示為鏈接文件(link file);

l   若是[ b ]則表示為設備文件裡面的可供儲存的周邊設備(可隨機存取設備);

l   若是[ c ]則表示為設備文件裡面的序列埠設備,例如鍵盤、滑鼠(一次性讀取設備)。

   接下來的字元中,以三個為一組,且均為“rwx” 的三個參數的組合。

l   [ r ]代表可讀(read)

l   [ w ]代表可寫(write)

l   [ x ]代表可執行(execute)。

l   這三個許可權的位置不會改變,如果沒有許可權,就會出現減號[ - ]

l   查閱時可將類型與數據劃分開: [-][rwx][r-x][r--]è1 234 567 890

1 :代表這個文件名為目錄或文件

234:擁有者的許可權

567:同群組使用者許可權

2)       [鏈接]:表示有多少文件名鏈接到此節點(i-node)

每個文件都會將他的許可權與屬性記錄到文件系統的i-node中,我們使用的目錄樹卻是使用文件名來記錄,因此每個文件名就會鏈接到一個i-node,這個屬性記錄的,就是有多少不同的文件名鏈接到相同的一個i-node號碼。

3)       [擁有者]:表示這個文件(或目錄)的“擁有者帳號”

4)       [群組]:表示這個文件的所屬群組

5)       [文件大小]:文件的容量大小,預設單位為Bytes

6)       [ 修改日期 ]:文件的創建日期或者是最近的修改日期

7)       [ 文件名 ]:文件的文件名

改變文件屬性與許可權

1)       chgrp :改變文件所屬群組(change group):被改變的群組名稱必須要

在/etc/group文件記憶體在才行,否則就會顯示錯誤

2)       chown :改變文件擁有者(change owner): 使用者必須是已經存在系統中的帳號,也就是在/etc/passwd 這個文件中有紀錄的使用者名稱才能改變

chown [-R] 帳號名稱 文件或目錄

chown [-R] 帳號名稱:群組名稱 文件或目錄(可連同變更文件的所屬組)

-R : 進行遞歸(recursive)的持續變更,連同次目錄下的所有文件都變更

 

3)       chmod :改變文件的許可權, SUID, SGID, SBIT等等的特性

分別可以使用數字或者是符號來進行許可權的變更。

許可權分數對照:r:4  w:2  x:1

a)       chmod [-R] xyz 文件或目錄

xyz :數字類型的許可權屬性,為 rwx 屬性數值的相加。

b)       chmod | u g o a | +(加入) -(除去) =(設置) | r w x | 文件或目錄

user、group 、others三種身份,藉由u, g, o來代。此外, a 則代表 all 即全部的身份

文件預設許可權:umask

umask 就是指定 “目前使用者在創建文件或目錄時候的許可權預設值”

1)      umask  0022  :與一般許可權相關的是後3位數字,第1位是特殊許可權用的

2)       umask –S  u=rwx,g=rx,o=rx

3)      umask 的分數指的是“該預設值需要減掉的許可權”

 

如圖所示,git用戶預設umask值為0002 即對所屬者全部擁有,所屬組全部擁有,其他用戶不擁有許可權值2,即w,所以我們新建的test目錄許可權為drwxrwxr-x

Linux文件種類與擴展名

l   純文本文件(ASCII):可以直接讀到的數據,cat指令可查看該文件

l   二進位文件(binary :一般電腦系統的可執行文件

l   數據格式文件(data):特定格式的文件可以被稱為數據文件,last可查看該文件,使用cat會出現亂碼

l   目錄(directory)

l   鏈接文件(link)

l   設備與設備文件(device):與系統周邊及儲存等相關的一些文件,通常在/dev目錄下

²   區塊(block)設備文件:一些儲存數據, 以提供系統隨機存取的周邊設備,如硬碟與軟盤等[b]

²   字元(character)設備文件:一些序列埠的周邊設備, 例如鍵盤、滑鼠等[c]

l   數據介面文件(sockets): 通常被用在網路上的數據傳輸

l   數據輸送檔(FIFO, pipe): FIFO也是一種特殊的文件類型,解決多個程式同時存取一個文件所造成的錯誤問題。

Linux文件擴展名

l   .sh : 腳本或批處理文件 (scripts)

l   Z, .tar, .tar,.gz, .zip, *.tgz: 經過打包的壓縮文件,因壓縮方式不同,尾碼也不同

l   .html, .php:網頁相關文件

Linux目錄配置的依據—FHS(Filesystem Hierarchy Standard)

l   FHS主要功能:規範每個特定的目錄下應該要放置什麼樣子的數據

l   FHS下目錄的四種交互形態

1)     可分享的:可以分享給其他系統掛載使用的目錄

2)     不可分享的:一些隱私數據

3)     不變的:不會經常變動的數據

4)     可變的:經常改變的數據

l   FHS針對目錄樹架構定義的三層目錄

1)     三個目錄的定義:

2)     /(root, 根目錄):與開機系統有關;

3)     /usr (unix software resource):與軟體安裝/執行有關;

4)     /var (variable):與系統運行過程有關。

 

/etc----配置文件

/bin----重要執行文件

/dev----所需要的設備文件

/lib----執行文件所需要的函數庫與內核所需的模塊

/sbin----重要的系統執行文件

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在多線程環境下,使用BlockingCollection以及ConcurrentQueue來消費生產者生產的資源,這是我自己寫的多生產者多消費者的作法,其實也是基於單個task下的阻塞隊列的IsComplete來識別的。 使用阻塞隊列更簡單但是內部的消費者線程比較適合使用單獨的線程不適合使用線程池, ...
  • 因為要部署項目到雲伺服器,不想在伺服器上裝SqlServer,所以需要把項目改為Mysql。 項目初始化 1、下載項目壓縮包,前面文章已經說到,可以加群到群文件里下載。解壓縮下載的項目源碼,使用VS2015打開項目 這裡需要還原包,選擇解決方案 右鍵(還原NuGet包),現在還原NuGet包比之前快 ...
  • 在.NET中有兩個AuthorizeAttribute類, 一個定義在System.Web.Http命名空間下 #region 程式集 System.Web.Http, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35... ...
  • 查看mysql資料庫federated引擎是否開啟。 show engines; 若沒有開啟federated則在mysql配置文件my.cnf中mysqld中添加federated。 在遠程資料庫中添加遠程訪問資料庫的用戶 創建表 CREATE TABLE `work_step_apply_che ...
  • 前段時間,換了個27寸的4k顯示器。原始解析度下文字太小,眼睛估計得看瞎 放大dpi後,這問題,那問題,好多 百度知道,淘寶,這網頁文字顏色也非常的淺,看著眼睛很累人 看了半天是字體若的禍 暫時發現Arial與Tahoma字體,在dpi放大後,會出現這個問題 折騰了半天,我把微軟雅黑UI的字體改名, ...
  • 系統信息 arch 顯示機器的處理器架構(1) uname -m 顯示機器的處理器架構(2) uname -r 顯示正在使用的內核版本 dmidecode -q 顯示硬體系統部件 - (SMBIOS / DMI) hdparm -i /dev/hda 羅列一個磁碟的架構特性 hdparm -tT / ...
  • zabbix工具監控伺服器是以組的形式來管理,創建單個被監控伺服器之前需要先創建一個主機組,然後將被監控機添加到這個組中即可 1 創建主機群組: 2 向主機群組中添加主機 3 向主機中添加模板,選擇要監控哪些服務等 4 查看監控的內容以及數據成圖 ...
  • 本章目錄 1.1 Shell,Bash介紹 1.2 內部命令與外部命令 1.3 命令別名 1.4 命令歷史 1.5 Bash快捷鍵 1.1 Shell,Bash介紹 ◆Shell:Linux系統的用戶界面,提供了用戶與內核進行交互操作的一種介面。它接收用戶輸入的命令並把它送入內核去執行。 ◆Bash ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...