权限:
文件权限:RWX W 并没有删除文件的权限,但是可以删除文件的内容,没有内容的文件也就没有了意义,不是么。
路径权限:RWX 注意之间的区别。 R 读取路径下的文件及其文件夹列表信息,W 表示对路径具有修改的权利,复制,更改,删除等。X 表示可以进入路径内,使之成为工作路径。没有了X权限,也就意味着,没有进入路径的权限, 如果让其具有进入并查看文件夹内容的权利的话,具备最基础的RX权限。
权限的修改:
chmod ,chown,chgrp
chmod u=rwx,go=r /root/home/file
chmod 744 /root/home/file
chmod -R 744 /root/home -R 递归对home下的所有文件及文件夹修改权限为744
档案的分类:
一般档案:regular file 标识- 包含了: ASCII BINARY DATAFILE
目录文档 : 标识 d
链接档 : 标识 l
设备与装置文档: 包括了区块设备文档,字符设备文档,区块设备文档为b 存储设备,如硬盘字符设备标识c 键盘 鼠标 等
资料接口文件:标识s
数据传输文件:标识p
关于目录:
目录结构:
/
bin/ 一般用户可用,开机用到的程序
boot/ 包含了核心档案 vmlinuz grub
dev/ 设备档案 /dev/null dev/sda/
etc/ 主要为配置文件,init.d 各种scripts的启动
home/ 家目录
lib/ 目标函数库 moudles 不同版本的核心模组
media/ 用于挂载 移动媒体
mnt/ 同上
opt/ 第三方软件
proc/ 系统信息,软件信息,不占用磁盘空间,驻在内存中。如cpuinfo 等。
root/
sbin/ 系统相关的命令文件
srv/ 服务文件service
sys/ 内存中的文件,如核心档案等
tmp/
usr/ UnixSoftwareResource
X11R6/
bin/
include/
lib/
local/
sbin/
share/
src/
var/
catch/
lib/
log/
lock/
run/
spool/
cron/
mail/
mqueue/
lpd/
linux档案与目录管理:
相对路径与绝对路径。相对路径将用于scripts中对变量的设置,使其更为的方便。
mkdir -p -m 744 test1/test2
-p递归建立
-m 设置权限,不用理会umask
rmdir 只能删除空目录,可以递归删除 -p
文件的搜索路径:PATH
添加搜索路径/root PATH="$PATH":/root
cp
-a -pdr
-d 复制链接属性所指的文件,而非链接文件
-p 复制文件源属性
-r 递归复制目录
-i 如果目标文件存在,则询问是否覆盖
复制过程中,没有使用p 选项,则复制的文件的属性和权限会发生改变
没加参数复制链接档会默认复制源文件,添加p选项,才会复制链接档。
拥有者和群组信息则不会复制。
rm
删除如-aaa的文件
rm -- -aaa
cat -n 则显示行号
tail -f 会持续更新文件 检测文件变化 ctrl+c 取消操作
od 查看非文本文档
od -t 【参数】 filename
a : 默认字符输出
c : ASCII 码输出
d : 十进制输出 decimal
f : 浮点数输出
o : 八进制输出
x : 十六进制输出
以ASCII 码输出 /etc/passwd
od -t c /etc/passwd
修改档案时间或建立新档案touch
linux下的三个时间
modification time (mtime) 档案内容被修改的时间
status time (ctime) 状态改变时间 如权限 群组
access time (atime) 访问时间
ls -l --time=atime /etc/passwd
ls -l --time=mtime /etc/passwd
ls -l --time=ctime /etc/passwd
touch -[acdmt] filename
-a 只修改access time
-c 只修改ctime status time
-m 只修改 mtime modification time
-d 选择修改日期而不是当前日期 --date=20120807
-t 选择时间而不是当前时间 格式: YYMMDDhhmm
umask
拿掉的权限如果umask=022
文件权限 -rw-rw-rw - ----w--w- = -rw-r--r--
文件夹权限 drwxrwxrwx - d----w--w- = drwxr-xr-x
chattr [-+=] [ASacdistu] filename 修改档案隐藏属性
+ 追加一个隐藏属性,其他属性不受影响
- 去除一个隐藏属性, 其他属性不受影响
= 属性改为=后的隐藏属性
A : 档案的atime不会因为access 而改变
S : 一般档案是异步写入磁盘,添加了S 选项后,档案将同步写入磁盘
a : 添加a后,档案则只允许添加,不能删除内容
c : 添加c选项后,档案将自动被压缩,使用时将自动解压 ,适合大的文档
d : 设置了d属性后,当dump运行时,将不会对含有d属性的文档做备份
i: 文档将不能被修改(删除,改名,设定链接档也无法写入)只有root 有权利设置此属性
s : 如果档案被删除,则将会完全的移除硬盘,无法挽回
u : 与s属性相反,当档案被删除,则档案还会保存在磁盘中,可以将文件挽回
添加了i属性的文件,root也无法删除,修改
显示档案隐藏属性,lsattr -【adR】 filename
-a 将文件的隐藏属性 显示
-d 如果文件是目录,则显示目录本身的属性,而不是目录内的文件属性
-R 连同子目录也列举出来
档案的特殊权限
SUID SGID SBIT
set UID 位于文档所有者的X 权限上
ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 25980 Feb 22 2012 /usr/bin/passwd
SUID 只对二进制文件有效,而对scripts这样的文本程序无效执行者需要对文件有执行的权限
只在文件的执行过程中有效
执行者将对文件拥有 所有者的权限
如果有执行该命令的权限,则在使用二进制文件(命令)的过程中,获得命令所有者的权限
set GID
SGID 可以对文档和目录进行设定
SGID 对二进制程序有用
程序执行者对程序有执行权限
执行者在执行该程序的过程中获得该程序所在组的权限
当SGID对目录进行设置时,
用户对目录具有RX权限,也就是可以进入目录中,用户在该目录下的有效群组将变为该目录的群组,若用户在该目录下具有W权限,就可以建立新档案,该档案的群组与此目录群组相同。
StickyBit
SBIT只对目录有效,对于档案没有作用。
SBIT作用是:
用户对目录具有RX权限,就可以具有写入权限。
用户在该目录下建立档案的时候,只有自己和root有权限对该档案进行删除。
将文件file设置为-rws--x--x
chmod u=rws,go=x file
将file添加SGID 和SBIT
chmod g+s,o+t file
file 查看文件类型
which command 查询command 的路径
which是根据用户当前PATH设定的环境中,寻找是否含有command
如果which cd 将会提示找不到cd 会提示找不到cd 因为cd是bash内建的命令,不会在PATH的环境变量中出现,当然也就搜索不到了。
文档名的搜寻:
whereis -bmsu
参数: -b 只找到binary格式的档案
-m 只找在说明文件manual路径下的文档
-s 只找source 来源档案
-u 搜索不在上述来源的档案
locate -ir keyword
-i 忽略大小写
-r 后接正规表示法的显示方式
locate passwd 找出与passwd相关的文档名
locate搜索的是 在/var/lib/mlocate/里面的数据库所搜索到的
跟新数据库的方法 updatedb
find 【path】【option】【action】
选项与参数;
与时间相关的参数
-atime
-ctime
-mtime
以-mtime 为例,
-mtime n 意义在n天之前一天之内被更变过的档案
-mtime +n n天之前(n天前的所有时间)被修改的档案
-mtime -n n天之内被修改的内容
-newer file file为一个存在档案,列出比此档案更新的档案。
find / -mtime 0 找出/下 从现在开始24小时内文档修改的档案
find / -mtime 3 找出/ 距现在3天的那天24小时被修改的文档名
find /etc -newer /etc/passwd 找出在/etc下 比passwd更新的文件名
与使用者和组名相关的参数
-uid n
-gid n
-user name
-group name
-nouser寻找不再passwd中含有的用户的文件名
-nogroup寻找不再/etc/group 中的用户的文档
寻找/下 档案为username的档案
find / -user username
寻找/ 下非passwd中列举的档案文件
find / -nouser
与档案名称和权限相关的档案
-name filename 搜寻文件名为filename的档案
-size 【+ - 】 size 寻找大于,小于 size 的文档
c代表字节 k代表kb
-type type 寻找类型为type的文件
-perm mode 寻找档案权限刚好为mode的档案
-perm -mode 寻找权限中包含mode的档案
-perm +mode 寻找权限中含有(就是权限中与mode有交集)的档案
寻找/下具有特殊权限的文件 SUID SGID SBIT
find / -perm +7000
额外可进行的动作
-exec command 添加额外的命令 要将命令和参数全部写出 不能用命令别名 如ls -l 而不能写为ll
-print 将结果打印在屏幕
这是个预设动作
find / -perm +7000 -exec ls -l {} \;
用户在一个档案中读取文档的权限
文档权限 R 目录权限 x 和读取命令
用户在档案中修改文档的权限
文档权限r w 目录权限 x 修改的命令 vi nano
linux磁盘与文件系统管理
硬盘的构成:sector 扇区为存储的最小单位,大小为512bytes 将扇区组成一个圈即构成了磁柱 cylinder
第一扇区很重要,包含了MBR 和分区表
MBR 占446字节 分区表占用64字节
关于分区表 ;
primary extended logical
最多四个primary 可以将一个或2个或3个primary标注为 extended,将extended继续分割的分割槽为logical
能格式化format的只有primary和logical
文件系统特性:
df
实体链接和符号链接 ln
hard link 不能跨文件系统,不能对目录产生hard link 文件连接数数会增加 ln oldfile newfile 不依赖源文件 源文件被删除,依旧可以访问hardlink 来访问文件数据
Symbolic link符号链接 也就是快捷方式 inodenumber 会增加,相当与添加了一个新文件,指向源文件的block文件连接数不会增加 ln -s oldfile newfilelink 依靠源文件 若源文件删除,则symbolic link 失效
ln 默认产生 hardlink 添加-s 参数则产生符号链接 -f 选项是 如果目标文件存在,则现将其删除,再创建文件,若目标文件不存在,就直接产生目标文件访问目录的符号链接,也就是访问了目录本身,如果对链接目录内容作出修改,那么源目录也将收到影响,就是和快捷方式一样啦
目录的链接
新建立一个目录,由于目录中会存在. 和,, 分别代表当前目录和上层目录 ,所以建立目录后,目录具有的链接数是2 当在目录中建立新目录时,则上层目录链接数加1,以为那个/..代表了上层目录呀。
硬盘分区 fdisk 只对整个硬盘有效
格式化
mke2fs [ -b block ] [ -i block ] [ -L ] [-cj ]
-b 设置每个block大小 支持1024 2048 4096 三种
-i 多少容量给一个inode
-c 检查磁盘错误 下达一个 进行快速读取测试
下达两个-c -c 会测试读写 ,速度很慢
-L 后面可以接标头名称lable
-j 本来为ext2 添加-j 则会加入journal而成为ext3
磁盘检查 fsck badblocks
挂载 mount
mount -t filesystem -L lable -o others -n devname mountpoint
-o others ro 只读 rw 读写
remount 重新挂载
umount
手动建立装置档案: mknod
mknod bcp Major Minor
装置种类:
b 设定装置为周边存储设备
c 设定设备为周边输入设备
p 设置设备为FIFO 档案
Major主要装置代码
Mnior 次要装置代码
e2label 装置名称 新的label
e2label /dev/sda1 harddisk1
将/dev/sda1 标记为harddisk1
开机挂载 /etc/fstab /etc/mtab
建立一个预订大小的文件档案
dd if=/dev/zero of=/root/Download/newfile bs=1M count=512
建立位于/root/Download 名为newfile的文档,大小为512M
if inputfile 输入
/dev/zero 是一个一直输出0 的装置
of=outputfile
输出
bs block大小
count 多少个block
挂载
mkfs -t ext4 /root/Download/newfile建立文件系统
mount -o loop /root/Download/newfile
查看 df 就会发现 原本分割槽没法生改变的情况下 我们新建立了分割槽 挂载了 newfile文档
dump 备份整个文件系统 还可以设置备份等级。
dump [-Suvj ] [-level][-f 备份档]待备份资料
dump -W
选项与参数 :
-S 只是列出后面备份的文件需要多少空间才可以备份完毕
-u 将这次备份的时间记录到 /etc/dumpdates
-v 将dump档案的过程显示出来
-j 加入对bzip2 的支持 默认bzip等级为2
-level 就是我们说的压缩等级了
-f 后面直接产生档案
-W 列出在etc/fstab里面具有dump设定partition 是否有备份过
dump 对目录进行备份
dump -0j -f /root/Download /root/Download/dump.bz2
j 参数将使用bzip2 进行压缩,从而节省磁盘空间
restore
恢复数据
restore -t 【-f dumpfile】 【-h】可以对dump文档进行查看
restore -C 【 -f dumpfile 】 【-D 挂载点】 比较实际档案与dumpfile的差异
restore -i 【-f dumpfile】 进入互动模式
restore -r 【 -f dumpfile】 还原整个文件系统
-t参数用来查看dump中包含了什么备份文件
-C 可以将dump中的文件拿出来与实际数据进行比较
-i 进入互动模式
-r 将整个文件系统进行还原