Debian应用-1.2 类Unix文件系统

1.2 类Unix文件系统在GNU/Linux和其他类Unix操作系统中,文件被组织到目录中。所有的文件和目录排放在以“/”为根的巨大的树里。Unix系统上叫做目录,某些其他系统上叫做文件夹。在任何Unix系统上,没有驱动器的概念。1.2.1 Unix文件基础1.下面是一些Unix文件基础。(1)文件名是区分大小写的。也就是说,"MYFILE"和"MyFile"是不同的文件或不同的目录。(2)根目录意味着文件系统的根,简单的称为“/”,不要把它跟root用户的目录“/root”混淆了。(3)每个目录都有一个名字,它可以包含任意字母或除了/”以外的符号,并且可以重命名【但是系统文件的目录不可以重命名】。根目录是个特例。它的名字是“/”(称作“斜线”或“根目录”),并且它不能被重命名。(4)每个文件或目录都被指定一个全限定文件名,绝对文件名,或路径,按顺序给出必须经过的目录从而到达相应目录。这三个术语是同义的。(5)所有的全限定文件名以“/”目录开始,并且在每个目录或文件名之间有一个“/”。第一个“/”是最顶层目录,其他的“/”用于分隔跟着的子目录。直到到达最后的入口,即实际文件的名称。例如:“/usr/share/keytables/us.map.gz”,其中“us.map.gz”为文件名,其他的部分为该文件所在的绝对路径。(6)根目录有很多分支,例如“/etc/”和“/usr/”。这些子目录依次分出更多的子目录,例如“/etc/init.d/”和“/usr/local/”。这整体叫做“目录树”。2.注意事项(1)虽然可以在文件名中使用任意的字幕或者符号,但是在实际情况下最好避免使用一些在命令行里面含有特殊意义的字符, 比如空格, 制表符, 换行符, 和其它的特殊字符: { } ( ) [ ] ' ` " \ />< | ; ! #&^ * % @ $.(2)这个"root" 可能既表示 "超级用户root" 又表示" 根目录"(/root) . 应该根据上下文确定它的用法.(3)单词path不仅表示包含全限定文件名,也可能表示命令搜索的路径. 通常路径真实的意思是需要通过上下文来明确.3.常用的目标及功能对应表目录目录用途/根目录/etc/系统范围的配置文件/var/log/系统日志文件/home/所有非特权用户的用户目录4.在根目录下【/】查看系统目录

目录目录的作用或含义/bin存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。/etc存放系统管理和配置文件/home存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示/usr用于存放系统应用程序,比较重要的目录/usr/local 本地系统管理员软件安装目录(安装系统级的应用)。这是最庞大的目录,要用到的应用程序和文件几乎都在这个目录。/usr/x11r6 存放x window的目录/usr/bin 众多的应用程序/usr/sbin 超级用户的一些管理程序/usr/doc linux文档/usr/include linux下开发和编译应用程序所需要的头文件/usr/lib 常用的动态链接库和软件包的配置文件/usr/man 帮助文档/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里/usr/local/bin 本地增加的命令/usr/local/lib 本地增加的库/opt额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。/proc虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。/root超级用户(系统管理员)的主目录(特权阶级^o^)/sbin存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。/dev用于存放设备文件。/mnt系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。/boot存放用于系统引导时使用的各种文件/lib存放跟文件系统中的程序运行所需要的共享库及内核模块。共享库又叫动态链接共享库,作用类似windows里的.dll文件,存放了根文件系统程序运行所需的共享文件。/tmp用于存放各种临时文件,是公用的临时文件存储点。/var用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等。/lost+found这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里1.2.2 文件系统权限1.文件系统权限限定(1)拥有这个文件的用户(u)(2)这个文件所属组的其他用户(g)(3)所有其余的用户(o),同样称为“世界”和“所有人”2.对应权限的动作--文件(1)可读(r)权限允许所有者检查文件的内容。(2)可写(w)权限允许所有者修改文件内容。(3)可执行(x)权限允许所有者把文件当做一个命令运行。3.对应权限的动作--目录(1)可读(r)权限允许所有者列出目录内的内容。(2)可写(w)权限允许所有者添加或删除目录里面的文件。(3)可执行(x)权限允许所有者访问目录里的文件。在这里,一个目录的可执行权限意味着不仅允许读目录里的文件,还允许显示他们的属性,例如大小和修改时间。4.用“ls -l”命令查看文件的权限

(1)文件类型(第一个字母)(2)文件的访问权限(9个字符,三个字符组成一组按照用户、组、其他的顺序表示)(3)链接到文件的硬链接数(4)文件所有者的用户名(5)这个文件所属的组名(6)以字符(字节)为单位的文件大小(7)文件的日期和时间(mtime)(8)文件的名字5.文件类型与字符的对应关系字符说明-普通文件d目录l符号链接c字符设备节点b块设备节点p命名管道s套接字1.2.3 用户和组的创建1.添加新用户(1)进入超级用户

(2)利用useradd命令创建用户

注意:提示的信息为“没有发现useradd”命令,则解决的办法“退出当前的登录状态,采用'su -’命令进入超级用户”

(3)利用useradd命令创建用户

(4)查看新创建的用户

tail命令,是显示文件内容,默认情况显示文件中最后的10条记录;-1,标识显示文件中最后一条记录/etc/shadow,是用户名所在的位置和文件;!表示该用户未创建密码;(5)查看新创建用户所在的组

从/etc/group文件中可以看到,该文件中多出了一个新的组“abc-1”,其原因是“当创建一个新的用户时,若未为该用户指定组名,则在创建该用户的时候同时也会创建一个于该用户名相同的组名”。(6)为新用户创建密码

(7)查看密码文件

x表示该用户已经创建了密码;2.创建组和查看组

3.实例(1)创建用户实例

l -c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中;l -d<登入目录>:指定用户登入时的启始目录; -D:变更预设值;l -e<有效期限>:指定账号的有效期限;l -f<缓冲天数>:指定在密码过期后多少天即关闭该账号;l -g<群组>:指定用户所属的群组;l -G<群组>:指定用户所属的附加群组;l -m:自动建立用户的登入目录;l -M:不要自动建立用户的登入目录;l -n:取消建立以用户名称为名的群组;l -r:建立系统账号;l -s:指定用户登入后所使用的shell;l -u:指定用户id。(2)为abc-2用户创建密码

(3)查看用户和组的信息

注意:在debian系统中,普通用户和组的编号从1000开始自动编号。1.2.4 修改文件所属的用户和组chown用于root 账户修改文件的所有者;chgrp用于文件的所有者或 root 账户修改文件所属的组;(1)创建文件

(2)修改文件所属的用户

(3)修改文件所属的组

1.2.5 创建文件和修文件的权限(1)创建文件

l -rw-r--r-- 1 root toot 0 Aug 5 07:46 book-1的含义l 第一个“-”表示book-1为文件;l 第一组“rw-”表示该文件所在的用户root的权限为“可读、可写”;l 第二组“r--”表示该文件所在的组root的权限为“可读”;l 第三组“r--”表示该文件所在的其他用户的权限为“可读”;l “0”代表该文件的大小;l “Aug”代表该文件创建的月份;l “5”代表该文件创建的日期;l “07:46”代表该文件创建的时间;【注意系统采用的美国时间】;l “book-1”为文件名;(2)修改文件权限的方法一

(3)修改文件权限的方法二

(4)修改文件权限的方法三

a代表所有用户,包括user、group、other三个;(5)数字代表的含义十进制数二进制数代表的含义0000无任何权限1001具有可执行权限2010具有可写的权限3011具有可写、可执行的权限4100具有可读的权限5101具有可读、可执行的权限6110具有可读、可写的权限7111具有可读、可写、可执行的权限1.2.6 设置新建文件或目录的默认权限(1)查看当前系统默认的文件权限

(2)查看当前系统默认的目录的权限

(3)解析l 如果用户创建的是目录,则默认的权限是,为755,drwxr-xr-xl 如果创建的是文件,默认没有x权限,那么就只有r、w两项,默认为644,-rw-r--r--l 0022中的第一个“0”表示特权权限;022表示取消组的写权限、取消其它用户的写权限。所以目录的权限为777-022=644;文件的权限为666-022=644;(4)修改系统默认文件或目录的权限

1.2.7 时间戳(1)时间戳列表类型含义(历史上 Unix 的定义)mtime文件修改时间(ls -1)ctime文件状态修改时间 (ls -lc)atime文件最后被访问的时间 (ls -lu)(2)显示文件的创建时间

(3)修改文件的创建时间

(4)修改文件状态并查看修改的时间

(5)访问文件并查看文件最后访问的时间

(6)查看文件创建的时间

注意:l 覆盖一个文件,将会改变该文件所有的 mtime,ctime, 和 atime 属性。l 改变文件的所有者或者权限,将改变文件的ctime 和 atime 属性。1.2.8 链接(1)硬链接:对现有文件重命名

(2)符号链接:通过名字指向另一个文件的特殊文件

1.2.9 设备文件设备文件包括系统的物理设备和虚拟设备,如硬盘、显卡、显示屏、键盘。虚拟设备的一个例子是控制台,用“/dev/console”来描述。(1)设备类型:每个访问一个字符;一个字符等于一个字节;如键盘、串口...等;(2)块设备:通过更大的单元-块,进行访问;一个块>一个字节;如硬盘等;(3)显示设备的节点数

l "/dev/sda"的主设备号是8,次设备号是0。它可以被disk群组的用户读写。l "/dev/sr0"的主设备号是11,次设备号是0。它可以被cdrom群组的用户读写。l "/dev/ttyS0"的主设备号是4,次设备号是64。它可以被dailout群组的用户读写。l "/dev/zero"的主设备号是1,次设备号是5。它可以被任意用户读写。(4)特殊设备文件列表设备文件操作响应描述/dev/null读取返回“文件结尾字符(EOF)“/dev/null写入无返回(一个无底的数据转存深渊)/dev/zero读取返回"\0空字符"(与ASCII中的数字0不同)/dev/random读取从真随机数产生器返回一个随机字符,供应真熵(缓慢)/dev/urandom读取从能够安全加密的伪随机数产生器返回一个随机字符/dev/full写入返回磁盘已满(ENOSPC)错误

(0)

相关推荐