发表于:2008.06.21 09:46
分类: Linux/Unix管理
出处:http://tolywang.itpub.net/post/48/464765
---------------------------------------------------------------
ORACLE_BASE=/u01/product;export ORACLE_BASE
ORACLE_TERM=vt100;export ORACLE_TERM
PS1=`hostname`'<$PWD>$';export PS1
EDITOR=/bin/vi; export EDITOR
ORA_NLS33=/u01/product/oracle/ocommon/nls/admin/data;export ORA_NLS33
CLASSPATH=/u01/product/oracle/jdbc/lib/classesl11.zip:/usr/local/java;
export DISPLAY=127.0.0.1:0.0
export LD_ASSUME_KERNEL=2.4.1
PATH=$ORACLE_HOME/bin:$PATH:.; export PATH
umask 022
alias ll='ls -l';
alias ls='ls --color';
我们在Linux系统下安装Oracle数据库的时候,设置Oracle用户的profile , .bash_profile 文件中设置有 umask 022 , 是作什么用的呢 ?
$ umask 022
umask
功能说明:指定在建立文件时预设的权限掩码。
语 法:umask [-S][权限掩码]
补充说明:umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。
参 数:
-S 以文字的方式来表示权限掩码。
文件:用八进制基数666,即无x位(可执行位)rw- rw- rw-.执行位需由用户自行加入
例一:设要生成的文件以rw- r-- r--这样的权限字出现,即真实权限用八进制表示为644,则被666基数减得022,022即掩码。使用umask 022。
注:033效果与022一样,假设使用033掩码进行设置,则真实权限应为633即rw- r-x r-x ,但前提规定文件不生成x位,所以文件的权限最终将以rw-r--r--出现。
目录:用八进制基数777
例二:设要生成的目录权限以rwxr-xr-x这样的权限字出现,即真实权限用八进制表示为755,则被基数为777的权限字相减后,得掩码022。则使用umask 022进行设置。
总结:
掌握二个要点,一、文件基数为666,目录为777,即文件无设x位,目录可设x位。二、chmod是设哪个位,哪么哪个位就有权限,而umask是设哪个位,则哪个位上就没权限。
读写执行权限分别对应是
R -- 4
W -- 2
X -- 1
写是 2 ,022 表示group,other 的写权限,umask=022 掩码表示取消group , other 用户的些权限 。
-rw-r--r-- 1 oracle dba 124 Jun 18 16:33 .bashrc
一般这种目录 -rwxr--r-- 最前面一位表示是文件,为 -
目录为 d , 随后9位表示权限,rwx 表示owner用户权限,中间r-- 表示group权限,最后的 r-- 表示other用户权限。
022 表示group,other 的写权限,umask=022 掩码表示取消group , other 用户的些权限 。