近期学习Linux的总结

Linux系统安装中遇到的问题


  • 时区问题

    在进行到选择时区的时候,下面有使用utc时钟这个不要选,勾选之后时间其实是按格林威治时间算的,我们现在处于东8区,因此勾了之后时间会差8个小时

  • 硬盘分区问题

    关于Linux分区规范中有swap分区应该是内存的两倍,当然如果内存特别大的话则没有必要遵循这个规范

Linux基本操作

  • 终端类型
    1. 设备终端
    2. 物理终端
    3. 虚拟终端
    4. 伪终端
    5. 串行终端
    6. 图形终端
  • who whoami w命令的对比
    # who
    近期学习Linux的总结
    # whoami
    近期学习Linux的总结
    # w
    近期学习Linux的总结

  • \r和\n的区别

    从专业术语上来说\r叫回车\n叫换行

    • \r:将光标移动到该行的行首,这样在后面输出的内容将会覆盖前面的内容比如下面这个例子
      #echo -e "abc\rd"
      这时屏幕上显示的内容为dbc,屏幕输出了abc后输出\r,\r将光标移动到该行行首继续输出这时输出d将a覆盖了
    • \n:换行符,将光标移动到下一行的开头继续输出
      在类Unix系统上换行只需要\n就够了,而在Windows上换行必须使用\r\n,这也就是我们看到在类Unix系统上写的代码拿到Windows上用记事本打开的时候为什么格式会乱的原因,当然有时用记事本写的文本拿到类Unix系统上则会在每一行后面都会有^M。

文件管理相关

Linux中目录的组织形式是单根的倒置树状结构,在Linux的文件系统例如ext4中大小写是敏感的


  • FHS文件分层标准

    Linux有一个LSB(Linux Standards Base)的组织定义的一个FHS(Filesystem Hierarchy Standard)文件系统层级标准,该标准主要定义了在Linux系统文件、工具和程序的存放位置和系统中的目录层次结构
    另外其实FHS也大大的促进了LSB组织的诞生,FHS是LSB组织定义的第一个标准
    该标准其实主要定义的是Linux系统中根目录下都有哪些目录,已经各种文件类型的颜色等等,当然还可以登录其官方网站下载整个标准的文档。

  • 文件名通配符

    *:匹配任意个任意字符
    ?:匹配单个任意字符
    ~:当前用户家目录
    ~user_name:某个用户的家目录
    ~+:当前工作目录
    ~-:表示刚才离开的目录,-只能在cd中使用

  • 文件在硬盘上的存储原理:

    首先,每个分区上的每个文件都有与之对应的inode号,通过该inode号可以在inode table中找到与之对应的该文件的元数据,元数据其实就是文件的属性信息,比如所有者,权限,修改日期等,当然还有最重要的就是指向文件数据的指针,如果文件足够小,则指向了文件的数据位置,如果比较大则会指向存放文件块位置信息的地方,当然如果块位置的区域放满了仍然放不下所有的块位置信息,则这个空间中仍然存放的是块位置的信息。
    目录的数据区域中存放的是该目录下文件名和inode的对应信息,系统每存放一个文件就会为其分配一个在该分区中唯一的inode,这样软链接和硬链接的原理就很清楚了:
    硬链接其实是在某个目录上创建了一个文件名和原文件inode号一样的一个数据,这样他们的属性信息也就一样了,当然由此看来在删除文件的时候是会判断文件的硬链接链接个数的,如果删了这个文件后硬链接变成0了则将对应的数据区的块标记为可以覆盖状态,当然创建一个目录后其硬链接个数就为2是因为该目录本身就是一个硬链接另外目录中有一个‘.’的目录再在创建的目录中创建一个新目录后该目录的硬链接还会加1是因为这个新创建的目录中的".."其实指向了该目录,
    注意:以上这一段内容是个人帮助理解记忆写下的,主要思路应该没有问题,偶尔某个细节可能表达的不是特别准确

  • 软链接和硬链接的区别

    • 软链接:
      • 删除原文件链接文件会受影响
      • 软链接文件本身有自己的属性信息
      • 软链接的在磁盘上的数据区存放的是要指向文件的路径
      • 软链接可以跨分区创建
      • 软链接可以指向目录或者文件
      • 创建软链接不会增加文件的链接数
      • 软链接的文件类型是链接文件
      • 软链接的inode号不同
      • 软链接原文件的相对路径相对的是链接文件所在的目录
    • 硬链接:
      • 删除原文件链接文件不会受影响
      • 所有直接或间接指向原文件的硬链接的属性信息都一样
      • 硬链接在磁盘上的数据区都是文件内容本身
      • 硬链接不可以跨分区创建
      • 硬链接只能指向文件
      • 创建硬链接会增加文件的链接数
      • 硬链接的文件类型还是普通文件
      • 硬链接的inode号相同
      • 硬链接原文件还是相对于自己
  • 重定向相关

    如果重定向有多个那么系统会先执行最后一个重定向再执行前一个,依次倒退执行,而且正常情况下某一次标准输出,输出一次后就没有数据了,第二次还要求输出的话只能是空

示例:

# cmd > log 2 > &1
先将错误输出重定向到标准输出中然后将标准输出重定向到log文件中,所以屏幕无显示,错误内容在文件中
# cmd 2 > &1> log
先将正确内容输入到log文件中 然后将错误输出输出到标准输出中,标准输出中无内容
# cmd &> log
把所有的内容输出到log中,log中应该只有错误信息
# cmd 2 > log > &2
把标准输出重定向到错误输出中,然后把错误输出输出到log文件中,log文件中为错误信息
log

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章