系统基础-很重要,在使用过程中感触更深,持续更新

权限:

         文件权限: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 将整个文件系统进行还原 





















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值