鸟哥的Linux私房菜基础篇笔记--2

135./etc/issue 文件。

 

(1)

/etc/issue 文件储存的信息会在登录的界面显示出来,修改了之后,有什么显示什么。

 

137.date 的用法。

1)修改日期时间。

 date  mmddHHMMYYYY

(2)修改时间。

 date  -s  HH:MM:SS

(3)如果想要知道 2010-5-2是星期几。

 date  -d   20150502 (并不会改变真正的时间)

 

141.Linux文件属性中的你不知道的。

(1)

     第二列表示有多少文件名链接到此节点(i-node)。

     每个文件都会将它的权限与属性记录到文件系统的i-node中,不过我们使用的目录树却是用文件名来记录的,这个属性就是记录了,有多少不同的文件名链接到相同的一个i-node号码,

(2)有的时候,Linux系统会将距离现在较久远的文件的时间显示 “2016” ,就是时间不会具体。

     解决: 使用命令, ls -l --full-time  

     

143.Linux系统中中英文的转化。

(1)代表中文的是 LANG=”zh_CN.UTF-8”

     代表英文的是 LANG=”en_US.UTF-8”

(2)在终端机中,就是以init 3 的级别开机的时候,是不支持中文的,所有中文的东西都会是乱码。

 

144.关于目录的权限问题。

(1)当目录的权限为 drwxr-xr--  的时候,这时其他用户对这个目录来说只有ls  的权限,没有进入查看的权限,必须要同时有r x 才能进入目录查看。

 

150.Linux系统的文件种类。

1)普通文件:分为纯文本文件、二进制文件、数据格式文件。

     ls -l 的时候,第一列中的第一个符号是“-”的,可以分为以下几种形式。

     1.纯文本文件(ASCII):这个Linux系统中最常见的文件格式,用cat可以直接查看里面的内容,

     2.二进制文件:我们的系统仅可以识别二进制文件,你的Linux中可执行的文件就是这种格式的,举个例子,就是命令的执行文件,lscat  放在/etc/init.d/下的文件。

     3.数据格式文件:有些程序在运行的时候回读取一些特定格式的文件,那些特定格式的文件被称为数据文件。/var/log/wtmpLinux自用户登录的时候,都会将登录的数据记录在里面)就是这种文件,这种文件可以通过last来查看。

     last  /var/log/wtmp

(2)套接字文件

     既然被称为数据接口文件,这种类型的文件通常被用在网络上的数据连接。我们可以启动一个程序来监听客户端的请求,而客户端就可以通过这个socket来进行数据的通信了,其第一个属性为【s】 ,通常在/var/run这个目录中可以看到这种文件类型了。

     除了网络上的连接外,其实Linux系统上面的进程是可以接收不同进程所发送的信息,那就是Linux上面的(socket file(套接字文件)),socket file 可以沟通两个进程之间的信息,因此进程可以取得对方传送过来的数据。netstat  可查看---------527

152.Linux目录配置标准:FHS

分类:

(1)不变的

    有些数据是不会经常变动的,跟随着distribution而不变动,例如函数库、文件说明文件、系统管理员所管理的服务配置文件。

(2)可变动的

    经常改变的数据,例如登录文件、新闻组等。

(3)可分享的

可以分享给其他系统挂载使用的目录,所以包括执行文件与用户的邮件等数据,是能够

分享给其他用户挂载使用的目录。

(4)不可分享的

    自己机器上的设备文件或者是与程序有关的socket文件等,由于仅与自身机器有关,所以当然就不适合分享给其他主机了。

 例子:/etc/ /boot是不可分享的、不变的。

(5)FHS其实只是对三个目录下面应该放置什么目录而已,分别是:

  1.   / root,根目录,与开机系统有关。

  2.   /usr ,于软件安装,执行有关。

  3.   /var ,于系统运行过程有关。

153./目录所在分区的限制。

(1)根目录建议不要放到非常大的分区内,因为越大的分区你会放入越多的数据,如此一来根目录所在的分区就会有较多的发生错误的机会。

 

154.分区时不要把一些目录和根放到不同的分区。

(1)因为根目录与开机有关,开机过程中仅有根目录会被挂载,其他分区则是在开机完成之后才会被持续进行挂载的行为。所以说一下的目录不可以和/放到不同的分区内。

     /etc/ : 配置文件

     /bin/: 重要执行文件

     /dev:所需要的设备文件

     /lib :  执行文件所需要的函数库,与内核所需要的模块。

     /sbin; 重要的系统执行文件

154./bin  /usr/bin的不同之处。

1/usr/bin:绝大部分用户可使用的命令都放在这里。

2)与/bin的区别,在开机的时候/bin下的执行程序会被用到,而/usr/bin下的执行程序不会被用到。

 

157./sbin/bin下的执行文件的不同。

(1)/sbin  下有开机或单用户模式时还能操作的系统命令。

(2)/bin   下有一般用户可用,启动时会用到的命令。

 

164.pwd -p 的意义。

(1)pwd  -p :会显示真正的工作目录,而不是显示链接文件的目录。

例子:# pwd

      /var/mail

      # pwd  -p

      /var/spool/mail

/var/mail /var/spool/mail  的链接文件。

 

165.关于PATH路径。

(1)普通用户的PATH路径和root的路径是不同的。

 

166.普通用户不能执行PATH路径中没有的命令的问题。

(1)由于普通用户的PATH路径和root是不同的,所以有一些命令是普通用户在命令行上不能使用的,例如/sbin下的命令,ifconfig

   解决:既然不能直接在命令行中使用命令,那可以使用命令的绝对路径来使用。

   /sbin/ifconfig  -a

166.何添加PATH路径。

(1)/root 加入到PATH路径中。

   PATH=”$PATH”:/root

 

169.cd 的一些常用的参数。

1-a :相当于-pdr的意思。

     -d: 如果源文件是链接文件,那么复制文件的链接属性,而不是文件本身。

     -p: 连同文件的属性一起复制过去,而不是使用默认的属性。

     -r: 用于目录的复制行为。

     -uupdate: cp  -u   /root/.bashrc   /tmp/bashrc

        /root/.bashrc  /tmp/bashrc 新的时候才会被复制覆盖过去。常被用于备份的工作中。mv -u  也有相同的意思。

172.在命令的前面 \(反斜杠)的作用。

(1)在命令前的 \ 的作用是能够忽略掉alias的指定参数。

 

177.tail -f 的作用。

(1)tail -f  能够持续监视一个文件的内容,按ctrl -c退出监视。

 

179.touch 的一些用法。

(1)-a  :  仅修改访问时间,(atime,文件最后一次被访问的时间,cat

(2)-c  :  仅修改系统权限被改变时间(ctime, 文件权限最后一次被改变的时间,chmod),若该文件不存在则不创建文件。

(3)-m  :  仅修改文件内容改变的时间(mtime,文件内容最后一次呗修改的时间)

(4)-d  :  后面可以接欲修改的日期(ls显示出来的mtime

     # touch  -d  “2 days ago ”   /etc/passwd

(5)-t  :  后面可以接欲修改的时间,格式为 YYMMDDhhmm

     %touch  -t  0709150202    /etc/passwd

 

 

181.umask权限的一些东西。

(1)# umask

     022

     # umask -S

     u=rwx,g=rx,o=rx

(2)用户创建一个文件的时候,权限最大为666

(3)用户创建一个目录的时候,权限最大为777

(4)umask 的意义在于减去的权限,但不是数字的相减,而是权限的相减。

   例如:umask 等于033

       在创建目录的时候, rwxrwxrwx 减去 ----wx-wx 等于rwxr--r--

       而不是 777 - 033 = 733   rwx-wx-wx

 

183.chattr lsattr 文件的隐藏属性。

(1)chattr 的一些用法。

-a:  当设置了a属性之后,这个文件将只能增加数据,而不能删除也不能修改数据,只有root能设置这个属性。

-i :  这个可就厉害了,它可以让文件 , 不能被删除、改名,不能设置连接文件,不能写入或者添加数据。

(2)lsattr 查看文件的隐藏属性,它的参数的意义和ls的意义差不多。

 

185.SUIDSGIDSBIT的使用范围和意义。

(1)SUID仅可以使用在二进制程序上,不能够使用在shell脚本上。因为shell脚本最终还是引用的二进制文件,是否有SUID还得看原有的二进制文件是否有SUID

(2)SGID可以使用在二进制文件和目录上,

     如果用在目录上,如果用户在此目录下具有w权限(可以新建文件),那么该用户在此目录下新建的文件的基本组和目录的基本组相同。

     还有一个效果就是,其他的用户other在这个目录中,拥有该目录基本组的权限。

(3)SBIT仅可以使用在目录上。

(4)ls  -l  /etc/passwd  显示出来的文件的属性中,有时会有rwSrwxr-x这个是因为这个文件的所属用户没有对这个文件的x执行权限。也就是说这个SUID是没有任何意义的,因为文件的所有者都没有执行的权限,普通用户会拥有所有者的权限,也不能执行这个文件。

 

187.file 命令的意义。

(1)file  文件名: 可以简单地先判断这个文件的格式为何。

 

188.which 命令的意义。

(1)which 命令 :  可以找到命令的完整文件名。

     which -a 命令: 找出所有由PATH目录中可以找到的命令均列出,而不只列出第一个    找到的命令。

(2)当使用root 执行  which  ifconfig   的时候就会出结果。

     但是使用普通用户执行  which ifconfig  的时候不会出现结果。

     这个是因为which 是根据PATH路径去找的命令的完整名称,但是普通的用户并不包括/sbin所以普通用户是不能找到/sbin/ifconfig的。这个时候普通用户可以使用whereis

 

188.whereis 的意义。

(1)whereis  文件或目录名。

     whereis  ifconfig

     这个普通用户也是可以使用的,因为whereis 是以数据库的文件为准的。

190.find 的一些特殊用法。

(1)find  /  -mtime  0  

     查找之前的24小时之内有改变内容的文件。

(2)-perm  mode  : 查找文件权限“刚好等于”mode的文件,这个mode为类似chmod的属性值,举例来说,rws-wx-r-x 的属性值为4735

     -perm  -mode  :  查找必须包含mode的文件属性的文件,举例来说,我们要查找rwxr--r--0744的文件,使用 -perm  -0744  rwsr-xr-x的文件也会被列出来,也就是4755因为 后者已经包含前者了。

      

     -perm  +mode  : 查找文件权限“包含任一mode的权限”的文件,举例来说,我们查找 ,rwxr-xr-x即  -perm  +755  的时候,rw------的文件也会出现,因为它有rw-------它有rw的属性存在。

 

(3)-exec  : 可以让find查找到的结果能够作为命令的参数进行使用。

# find / -perm +7000  -exec  ls -l  {} (注意这里是有空格的,没有空格会报错)\;

查找有特殊权限的文件,SUIDSGIDSBIT

-exec  不支持别名的使用。

(4)-newer :  find  /etc   -newer   /etc/passwd

    找出/etc/ 中,比/etc/passwdmtime新的文件或者目录。

 

197.最小的物理存储单位。

(1)扇区为最小的物理存储单位,每个扇区为512Bytes

 

198.文件系统存储要使用到的一些工具。

(1)super block : 记录此文件系统的整体信息,包括inode /block的总量、使用量、剩余量、以及文件系统的格式与相关信息。

(2)inode:  记录文件的属性,一个文件占用一个inode,同时记录此文件的数据所在的block号码。

(3)block : 实际记录文件的内容,若文件太大时,会占用多个block

 

200.block 的使用限制。

(1)原则上,block的大小与数量在格式化完成之后就不可以再被改变了,除非重新格式化。

(2)每个block内最多只能够放置一个文件的属性。

(3)如果文件的大小大于block的大小,则一个文件会占用多个block

(4)如果文件的大小小于block的大小,block剩余的空间就不可以被使用了。

 

203.查看superblock的信息。

(1)dumpe2fs   设备名

     查找出来的内容,上半部分是superblock 的内容,下半部分是每个blockgroup 的内容。

 

204.当我们新建一个目录时,文件系统有哪些操作。

(1)当我们在Linux的文件系统中新建一个目录时,文件系统会分配一个inode与至少一块block给该目录,其中,inode记录该目录的相关权限和属性,并可记录分配到的那块block号码,而block则是记录在这个目录下的文件名与该文件名占用的inode号码数据。

 

205.关于inodeblock

(1)inode本省并不记录文件名,文件名的记录是在目录的block中。所以目录内文件的删除和新建才会和目录是否有w权限有关,

 

206.解决文件数据离散的问题。

(1)将整个文件系统内的数据全部复制出来,将该文件系统重新格式化,再将数据复制回去即可解决这个问题。

 

206.当新建一个目录或者文件时,我们的文件系统会有哪些行为呢。

(1)先确定用户对于欲添加文件和目录是否具有wx的权限,若有的话才能添加。

(2)根据inode bitmap 找到没有使用的inode号码,并将新文件的权限/属性写入。

(3)根据block bitmap 找到没有使用中的block 号码,并将实际的数据写入block中,且更新inodeblock指向数据。

(4)将刚才写入的inodeblock数据同步更新inode bitmap  block bitmap  并更新superblock的内容。

如果在上述的四个步骤中断电等特殊的情况,系统将在下次开机时根据日志文件系统的记录记性修复。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值