Linux系统文件的存储及权限
1.Linux文件基本概念:Linux文件被保存在文件系统下,由以下属性构成:各种类型、访问权限、连接数、文件拥有者、文件拥有组、修改时间等、文件名。
2.Linux EXT3 文件系统上文件是怎样存储的
3.文件的类型
4.文件的属性
5.文件的权限
6.文件的命令
使用ls -al 显示当前目录所有文件的信息,使用du查看文件的大小
-rw-r--r-- l root root 5234 Jun 5 06:18 a.log
最前面的一个代表文件的类型:文件一共7个类型
-表示普通文件
d表示目录文件
l表示链接型文件(如同:windows的快捷方式)
b表示block类型的设备文件
c表示字符型的设备文件
s表示网络类型的文件(socket)
p表示管道类型的文件
d表示目录文件,目录文件是勇于存放文件名及其相关信息的文件,是内核组织文件的基本节点。
l表示链接型文件(如同:windows的快捷方式),软链接
b表示block类型的设备文件,b 块设备文件,是Unix系统中的一种文件,用处是将复杂的多远的硬件抽象成文件,通过简单的打开文件就可以打开硬件设备了。
c表示字符型的设备文件,字符设备可以一个字节一个字节操作,不需要分块
s表示网络类型的文件(socket),一般在/tmp目录下,是Unix系统进行网络通信时使用的socket文件
p表示管道类型的文件,主要用于不同进程间的信息传递。当两个进程间需要进行数据或信息传递时,可以通过管道文件,一个进程将传递的数据或信息写入管道的一端,另一个进程则从管道的另一端取得所需的数据或信息。通常管道是建立在调整缓存中。
ls -l /dev/sda /dev/tty1
brw-rw---- l root disk 8, 0 Jun 5 2008 /dev/sda
crw--w---- l root tty 4 , 1 Jun 5 08:13 /dev/tty1
sda 第一块硬盘,tty1为第一个控制台
b表示block类型的设备文件,针对慢速设备,配一个buffer
c表示字符型的设备文件,如:echo 1 > /dev/tty1
cat /dev/sda 读硬盘,从第一个字节读到最后一行
备份硬盘
dd if=/dev/sda f=/mnt/a.img
备份分区
dd if=/dev/sda1 f=/mnt/a.img
ls -al /tmp/ (-al显示隐含文件)
ls -al /tmp/.font-unix/
srwxrwxrwx l xfs xfs 0 Jun 5 07:17 fs7100
s表示网络类型的文件
ls -l /dev/ |grep ^p
prw------- l root root 0 Jun 5 2008 initctt1
p表示管道类型的文件
修改权限
-rw-r--r-- l root root 5234 Jun 5 06:18 a.log
用户、用户组、其他组的权限
chmod 046 a.log
----r--rw- l root root 5234 Jun5 07:18 a.log
root的权限是什么?所以root就没有任何权限了,但是可以打开文件;普通用户无法打开文件
chmod -R g+w /tmp/work (-R是对这个文件夹下的所有文件,子文件夹,进行权限修改)
文件的拥有者
改变文件的拥有者使用chown , chown [-R] user 文件名
只有文件当前的拥有者和root才可以改变文件的拥有者
chown weixl a.log
ls -l
ls -l /root/a.log
两个连接
chown weixl.group a.log
chown -R weixl.group /tmp/
chown .group /tmp/
chown :group /tmp/
chown -R xl.bin . (.代表当前目录)
chown -R xl.bin /root
创建链接l
-rw-r--r-- l root root 5234 Jun 5 06:18 a.log
以上信息被保存在每一个文件的inode(i节点)中,用stat命令显示出文件的“code”
ln 硬链接,link数为0的时候,才会收回block和目录
ln -s /etc eee 软链接,创建的是一个全新的文件,可以跨分区,也可以跨目录,常用
l 链接文件是一种特殊的文件,实际上是指向一个真实存在的文件的链接,分为硬链接和符号链接文件(软链接)
创建空文件, block 没有,目录文件有,inode也有
cd /tmp
touch a
ls -l a
ln a b (创建硬链接)
ls -l a b
cd /root
ln /tmp b c
cd /tmp/
ls -l a b
stat a (stat查看a文件里面的内容)
rm -a (删除a, b还存在)
ls -l a b
文件名
2.4内核的ext3文件名,最大为255个字符
以“.”为第一个字符的文件为隐藏文件,使用ls -a显示隐藏文件