国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux筆記:Linux中的文件系統(tǒng)權(quán)限

這篇具有很好參考價值的文章主要介紹了Linux筆記:Linux中的文件系統(tǒng)權(quán)限。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

在Red Hat Enterprise Linux 或其他類似的Linux發(fā)行版中,全局umask設(shè)置通常在幾個不同的系統(tǒng)級配置文件中定義。以下是一些可能設(shè)置umask的地方:

(1)/etc/profile:

這是為系統(tǒng)上的所有用戶設(shè)置全局環(huán)境變量和啟動程序的地方。通常,umask設(shè)置會在這個文件中定義。

[root@iZ8vb0njm9zbv3qvisb1ktZ ~]# vim /etc/profile
        EUID=`/usr/bin/id -u`
        UID=`/usr/bin/id -ru`
    fi
    USER="`/usr/bin/id -un`"
    LOGNAME=$USER
    MAIL="/var/spool/mail/$USER"
fi

# Path manipulation
if [ "$EUID" = "0" ]; then
    pathmunge /usr/sbin
    pathmunge /usr/local/sbin
else
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
fi

HOSTNAME=`/usr/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
    export HISTCONTROL=ignoreboth
else
    export HISTCONTROL=ignoredups
fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
    umask 002
else
    umask 022
fi

for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
    if [ -r "$i" ]; then
        if [ "${-#*i}" != "$-" ]; then
            . "$i"
        else
            . "$i" >/dev/null
        fi
    fi
done

unset i
unset -f pathmunge

if [ -n "${BASH_VERSION-}" ] ; then
        if [ -f /etc/bashrc ] ; then
                # Bash login shells run only /etc/profile
                # Bash non-login shells run only /etc/bashrc
                # Check for double sourcing is done in /etc/bashrc.
                . /etc/bashrc
       fi
fi

(2)/etc/bashrc 或 /etc/bash.bashrc:

對于使用Bash shell的系統(tǒng),這個文件包含了所有Bash用戶的全局定義和別名。umask也可能在這里設(shè)置。

# /etc/bashrc

# System wide functions and aliases
# Environment stuff goes in /etc/profile

# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.

# Prevent doublesourcing
if [ -z "$BASHRCSOURCED" ]; then
  BASHRCSOURCED="Y"

  # are we an interactive shell?
  if [ "$PS1" ]; then
    if [ -z "$PROMPT_COMMAND" ]; then
      case $TERM in
      xterm*|vte*)
        if [ -e /etc/sysconfig/bash-prompt-xterm ]; then
            PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm
        elif [ "${VTE_VERSION:-0}" -ge 3405 ]; then
            PROMPT_COMMAND="__vte_prompt_command"
        else
            PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
        fi
        ;;
      screen*)
        if [ -e /etc/sysconfig/bash-prompt-screen ]; then
            PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen
        else
            PROMPT_COMMAND='printf "\033k%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
        fi
        ;;
      *)
        [ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=/etc/sysconfig/bash-prompt-default
        ;;
      esac
    fi
    # Turn on parallel history
    shopt -s histappend
    history -a
    # Turn on checkwinsize
    shopt -s checkwinsize
    [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
    # You might want to have e.g. tty in prompt (e.g. more virtual machines)
    # and console windows
    # If you want to do so, just add e.g.
    # if [ "$PS1" ]; then
    #   PS1="[\u@\h:\l \W]\\$ "
    # fi
    # to your custom modification shell script in /etc/profile.d/ directory
  fi

  if ! shopt -q login_shell ; then # We're not a login shell
    # Need to redefine pathmunge, it gets undefined at the end of /etc/profile
    pathmunge () {
        case ":${PATH}:" in
            *:"$1":*)
                ;;
            *)
                if [ "$2" = "after" ] ; then
                    PATH=$PATH:$1
                else
                    PATH=$1:$PATH
                fi
        esac
    }

    # By default, we want umask to get set. This sets it for non-login shell.
    # Current threshold for system reserved uid/gids is 200
    # You could check uidgid reservation validity in
    # /usr/share/doc/setup-*/uidgid file
    if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
       umask 002
    else
       umask 022
    fi

    SHELL=/bin/bash
    # Only display echos from profile.d scripts if we are no login shell
    # and interactive - otherwise just process them to set envvars
    for i in /etc/profile.d/*.sh; do
        if [ -r "$i" ]; then
            if [ "$PS1" ]; then
                . "$i"
            else
                . "$i" >/dev/null
            fi
        fi
    done

    unset i
    unset -f pathmunge
  fi

fi
# vim:ts=4:sw=4

(3)Shell個人配置文件:

如~/.bashrc, ~/.bash_profile, ~/.profile等,這些是針對單個用戶的配置文件。雖然這些不是全局設(shè)置,但是管理員可能已經(jīng)為每個用戶配置了默認的umask。

PAM (Pluggable Authentication Modules) 配置:
在/etc/pam.d/目錄下的PAM配置文件中,可能會有pam_umask.so模塊的相關(guān)配置。例如,在/etc/pam.d/login文件中,可能會有如下行來設(shè)置umask:

session optional pam_umask.so

或者指定了一個默認的umask值:

session optional pam_umask.so umask=0022

(4)Systemd服務(wù)文件:

如果你是在Systemd服務(wù)中更改umask,那么你需要查看服務(wù)的配置文件。這些文件通常位于/etc/systemd/system/或/usr/lib/systemd/system/目錄下。在服務(wù)文件中,可以通過UMask=指令設(shè)置umask。

要查看當前的全局umask設(shè)置,你可以在終端中運行以下命令:

umask

這將顯示當前shell會話的umask值。要找出是哪個配置文件設(shè)置了這個值,你可能需要手動檢查上述文件。你可以使用grep命令來幫助搜索這些文件中的umask設(shè)置:

[root@iZ8vb0njm9zbv3qvisb1ktZ system]# grep -ir "umask" /etc/profile /etc/bashrc /etc/bash.bashrc /etc/pam.d/ /etc/systemd/system/ /usr/lib/systemd/system/
/etc/profile:# By default, we want umask to get set. This sets it for login shell
/etc/profile:    umask 002
/etc/profile:    umask 027
/etc/bashrc:    # By default, we want umask to get set. This sets it for non-login shell.
/etc/bashrc:       umask 002
/etc/bashrc:       umask 022
grep: /etc/bash.bashrc: No such file or directory
/usr/lib/systemd/system/rsyslog.service:UMask=0066

請注意,如果你的系統(tǒng)配置了多個地方設(shè)置了umask,最終的umask值將取決于這些配置的加載順序和優(yōu)先級。通常,最后執(zhí)行的配置文件中的設(shè)置將覆蓋之前的設(shè)置。

那么,文件掩碼到底是什么呢?

其實在Linux系統(tǒng)中,文件掩碼(umask)用于確定新創(chuàng)建的文件或目錄的默認權(quán)限。umask值是一個三位的八進制數(shù),每一位分別對應用戶(u)、組(g)和其他(o)的權(quán)限。

umask值實際上是一個“反向”的權(quán)限設(shè)置。也就是說,它定義了哪些權(quán)限應該被移除,而不是哪些權(quán)限應該被賦予。因此,要得到新創(chuàng)建的文件或目錄的默認權(quán)限,你需要從全權(quán)限(即777對于目錄,666對于文件)中減去umask值。

如果umask值是022,那么:

對于目錄,全權(quán)限是777,減去umask值022后,得到的默認權(quán)限是755。也就是說,用戶有讀(r)、寫(w)和執(zhí)行(x)權(quán)限,組和其他用戶有讀和執(zhí)行權(quán)限。

對于文件,全權(quán)限是666,減去umask值022后,得到的默認權(quán)限是644。也就是說,用戶有讀和寫權(quán)限,組和其他用戶只有讀權(quán)限。

請注意,這只是默認權(quán)限。你可以在創(chuàng)建文件或目錄后,使用chmod命令來更改它們的權(quán)限。文章來源地址http://www.zghlxwxcb.cn/news/detail-792642.html

到了這里,關(guān)于Linux筆記:Linux中的文件系統(tǒng)權(quán)限的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 復習之linux系統(tǒng)中的權(quán)限管理

    復習之linux系統(tǒng)中的權(quán)限管理

    # ls? -l?? file? : 查看文件的權(quán)限 # ls? -ld? dir :查看目錄權(quán)限 文件的屬性叫做文件的元數(shù)據(jù)。 元數(shù)據(jù) ( Metadata ),又稱 中介數(shù)據(jù) 、 中繼數(shù)據(jù) ,為 描述數(shù)據(jù)的數(shù)據(jù)(data about data),主要是描述數(shù)據(jù)屬性(property)的信息, 用來支持如指示存儲位置、歷史數(shù)據(jù)、資源查找、

    2024年02月07日
    瀏覽(18)
  • Linux系統(tǒng)文件權(quán)限詳解

    Linux系統(tǒng)中,我們常常使用命令行來對文件進行操作,比如 mkdir -m 777 temp 命令是去創(chuàng)建一個具有最高讀寫權(quán)限的名為 temp 的文件夾。本篇文章詳細介紹了 Linux 系統(tǒng)中常見的文件權(quán)限表示方法,通過字母表示法和數(shù)字表示法展示了不同權(quán)限對文件訪問的含義。以777、444、600、

    2024年01月25日
    瀏覽(23)
  • 掌握文件權(quán)限管理:Mac和Linux中的chmod +x命令詳解

    chmod +x是一個用于在Mac和Linux操作系統(tǒng)上設(shè)置可執(zhí)行權(quán)限的命令。它允許你將可執(zhí)行權(quán)限添加到文件,使得你可以運行這個文件作為一個程序或腳本。這個命令通常用于shell腳本、可執(zhí)行程序和其他可運行文件。? chmod 是一個在Unix和Unix-like操作系統(tǒng)中用來改變文件或目錄權(quán)限的

    2024年02月05日
    瀏覽(97)
  • [Linux]文件系統(tǒng)權(quán)限與訪問控制

    [Linux]文件系統(tǒng)權(quán)限與訪問控制

    ??作者介紹:大二本科網(wǎng)絡(luò)工程專業(yè)在讀,持續(xù)學習Java,輸出優(yōu)質(zhì)文章 ?作者主頁:@逐夢蒼穹 ?所屬專欄:Linux基礎(chǔ)操作。本文主要是分享一些Linux系統(tǒng)常用操作,內(nèi)容主要來源是學校作業(yè),分享出來的同時自己也得到復習。 ?如果覺得文章寫的不錯,歡迎點個關(guān)注一鍵

    2023年04月27日
    瀏覽(28)
  • Linux——系統(tǒng)介紹及文件類型和權(quán)限

    Linux——系統(tǒng)介紹及文件類型和權(quán)限

    開機,關(guān)機 什么是終端? 主機名的意義?(連接數(shù)據(jù)庫的電腦,Web服務(wù)器等,連的太多分不清楚) 終端:Ctrl+Alt+T 或者桌面/文件夾右鍵,打開終端 切換為管理員:sudo su 退出:exit 查看內(nèi)核版本號:uname -a 內(nèi)核版本號含義:5 代表主版本號;13代表次版本號;0代表修訂版本號;30代表修訂版本的第幾

    2024年04月16日
    瀏覽(20)
  • 【Linux權(quán)限:系統(tǒng)中的數(shù)字鎖與安全之門】

    【Linux權(quán)限:系統(tǒng)中的數(shù)字鎖與安全之門】

    ?Linux下有兩種用戶:超級用戶(root)、普通用戶。 超級用戶:可以再linux系統(tǒng)下做任何事情,不受限制 普通用戶:在linux下做有限的事情。 超級用戶的命令提示符是“#”,普通用戶的命令提示符是“$”。 命令: su [用戶名] 功能: 切換用戶。 例如,要從root用戶切換到普通

    2024年02月05日
    瀏覽(22)
  • Linux 系統(tǒng)文件權(quán)限管理(參考菜鳥教程)

    Linux 系統(tǒng)文件權(quán)限管理(參考菜鳥教程)

    如圖所示: ? 1、第一個字符代表這個文件是目錄、文件或鏈接文件等等。 當為 d 則是目錄 當為 - 則是文件; 若是 l 則表示為鏈接文檔(link file); 若是 b 則表示為裝置文件里面的可供儲存的接口設(shè)備(可隨機存取裝置); 若是 c 則表示為裝置文件里面的串行端口設(shè)備,例如鍵盤

    2024年02月14日
    瀏覽(26)
  • 【操作系統(tǒng)】一篇文章帶你理清Linux中的權(quán)限!

    【操作系統(tǒng)】一篇文章帶你理清Linux中的權(quán)限!

    ?? 乀艨ic: 個人主頁 ??說是高產(chǎn)但是還是過了快半個月才更新() ??來看看這次的博客吧~ 上次注意到發(fā)Linux相關(guān)的點擊量比其他的多很多,那就最近多更幾篇Linux相關(guān)的吧() 注:Linux的不同發(fā)行版本的指令可能有所不同,本次是按照CentOS7的標準來進行追述的。 在談

    2024年04月11日
    瀏覽(24)
  • 【Linux】文件系統(tǒng)中inode與軟硬鏈接以及讀寫權(quán)限問題

    【Linux】文件系統(tǒng)中inode與軟硬鏈接以及讀寫權(quán)限問題

    我們接下來以磁盤舉例: 文件=文件內(nèi)容+文件屬性 Linux中文件內(nèi)容與屬性是分開存儲的。 文件內(nèi)容:在數(shù)據(jù)塊中存著 文件屬性:在inode中存著 Block Group:ext2文件系統(tǒng)會根據(jù)分區(qū)的大小劃分為數(shù)個Block Group。而每個Block Group都有著相同的結(jié)構(gòu)組成。政府管理各區(qū)的例子 超級塊(

    2024年02月05日
    瀏覽(23)
  • Linux系統(tǒng)中的文件傳輸

    Linux系統(tǒng)中的文件傳輸

    目錄 一、文件傳輸 二、文檔的歸檔壓縮 總結(jié) 實驗環(huán)境: 需要2臺主機并且保證兩臺主機可以通信 systemctl disable firewalld? ? ? ? 設(shè)定防火墻開啟不啟動 systemctl stop firewalld? ? ? ? 關(guān)閉防火墻 ?

    2024年02月09日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包