umask
当你最初登录到系统中时, umask 命令确定了你创建文件的缺省模式。这一命令实际上和chmod命令正好相反。你的系统在安装时为你设置一个合理的umask值,以确保你创建的文件具有所希望的缺省权限,防止其他非同组用户对你的文件具有写权限。在已经登录之后,可以按照个人的偏好使用umask命令来改变文件创建的缺省权限。相应的改变直到退出该shell或使用另外的umask命令之前一直有效。一般来说,umask命令是在 /etc/profile 文件中设置的,每个用户在登录时都会引用这个文件,所以如果希望改变所有用户的umask,可以在该文件中加入相应的条目。如果希望永久性地设置自己的umask值,那么就把它放在自己 $HOME 目录下的 .profile 或 .bash_profile 文件中。这些我们将在“用户”一章中作具体介绍。
在shell下直接输入umask,显示的是当前umask值。umask 022,则表示把umask值改为022,只在此次登录中生效。
计算 umask 值
umask 命令允许你设定文件创建时的缺省模式,对应每一类用户(文件属主、同组用户、其他用户)存在一个相应的 umask 值中的数字。对于文件来说,这一数字的最大值分别是6。系统不允许你在创建一个文本文件时就赋予它执行权限,必须在创建后用chmod命令增加这一权限。目录则允许设置执行权限,这样针对目录来说, umask 中各个数字最大可以到7。
对普通用户而言,其umask值为002,即其建立起来的普通文件默认权限为664,目录权限为775。超级用户的umask值为022,即建立普通文件默认权限为644,目录权限为755。
根目录下的目录结构:
•/bin:存储常用用户指令。
•/boot:存储核心、模块映像等启动用文件
•/dev:存储设备文件
•/etc:存储系统、服务的配置目录与文件
•/home:存放个人主目录
•/lib:存放库文件,诸如核心模块、驱动
•/lost+found:存储fsck用的孤儿文件
•/mnt:系统加载文件系统时用的常用挂载点
•/opt:第三方工具使用的安装目录
•/proc:虚拟文件系统,包含系统讯息等资料
•/root:root用户的主目录
•/sbin:存储系统管理用指令
•/tmp:临时文件的暂存点
•/usr:存放与用户直接相关的文件与目录
•/var:存储在系统运行中可能会更改的数据