鸟哥的LINUX私房菜基础篇第三版 阅读笔记 一

时间:2022-09-07 17:24:42

1、 Linux的档案权限与目录配置

     一、基础知识:
            a、分为三类,拥有者(owner)、群组(group)、其他人(other)
            b、三个核心命令:chgrp  chown chmod
                chgrp [-R] groupname file/dir  -R表示循环
                chown [-R] username file/dir -R表示循环
                tips:chown 也可以改变群组 例子:chown root:root test.log   chown root.root 不过由于某些逗比取账号名有逗号所以最好用冒号来分隔开来!
                chmod [-R] 777 file/dir 
                r = 4 ;w=2 ; x= 1  所以 rwx=7
                tips:chmod还能用符号类型改变档案权限 
                    u = owner/user ; g = group  ; o=other;a=all
                    =  赋予权限   -  减掉某些权限 + 增加某些权限
                   例子: chmod  u=rw,g-x,o+r test.log
           c、单一档案或目录最大容许文件名为255个字符 即 8位
                包含完整路径名称及目录(/)之完整档案名为 4096个字符 即 12位        
            d、根据FHS定义的隔层目录相关性
                请注意,每个目录都是依附在 / 这个根目录底下的,所以我们在安装的时候一定要有一个 / 对应的 partition 才能安装的原因即在于此!这也就是我们俗称的『树状目录』棉!而根据 FHS 定义出来的每个目录内应该放置的档案内容为∶
目录 应放置档案内容
/ 根目录 root (/),一般建议在根目录底下只接目录,不要直接有档案在 / 底下。 根目录是开机的时候系统第一个挂载的 partition ,所以,所有开机过程会用到的档案, 应该都要放置在这个 partition 当中。举例来说, /etc, /bin, /dev, /lib, /sbin 这五个次目录都应该要与根目录连在一起,不可独立成为某个 partition 呢!
/bin,
/usr/bin,
/usr/local/bin
除了 /bin 之外, /usr/local/bin, /usr/bin 也是放置『使用者可执行的 binary file 的目录』喔!举例来说, ls, mv, rm, mkdir, rmdir, gzip, tar, cat, cp, mount 等等重要指令都放在这个目录当中。
/boot 这个目录主要的目的是放置 Linux 系统开机会用到的档案。 开机会用到什么呢?没错~就是 Linux 的核心档案。这个目录底下档名为 vmlinuz 的就是 Linux 的 Kernel 啦!粉重要的东西! 而如果你的开机管理程式 (loader) 选择 grub 的话,那么这个目录内还有 /boot/grub 这个次目录呦!
/dev 在 Linux 系统上,任何装置与周边设备都是以档案的型态存在于这个目录当中的。 您只要透过存取这个目录底下的某个档案,就等于存取某个装置棉~ 主要又分为周边设备 (character device),例如键盘、滑鼠等;以及储存设备 (block device), 例如硬碟、光碟等等。在此目录下的档案会多出两个属性,分别是 major device number , 与 minor device number 。我们的系统核心就是透过这两个 number 来判断装置的呢! 比要重要的档案有 /dev/null, /dev/tty[1-6], /dev/ttyS*, /dev/lp*, /dev/hd*, /dev/sd* 等等
/etc 系统主要的设定档几乎都放置在这个目录内,例如人员的帐号密码档、 各种服务的启始档等等。一般来说,这个目录下的各档案属性是可以让一般使用者查阅的, 但是只有 root 有权力修改。并且在此目录下的档案几乎都是 ASCII 的纯文字档案哩。 不过, FHS 建议不要放置可执行档在这个目录中喔。比较重要的档案有∶ /etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11, /etc/fstab, /etc/sysconfig/ 等等。另外,其下重要的目录有∶
  • /etc/init.d/∶所有服务的预设启动 script 都是放在这里的,例如要启动或者关闭 iptables 的话∶
    /etc/init.d/iptables start 
    /etc/init.d/iptables stop
  • /etc/xinetd.d/∶这就是所谓的 super daemon 管理的各项服务的设定档目录。
  • /etc/X11∶与 X Window 有关的各种设定档都在这里,尤其是 xorg.conf 或 XF86Config 这两个 X Server 的设定档。
/home 这是系统预设的使用者家目录 (home directory)。在你新增一个一般使用者帐号时, 预设的使用者家目录都会规范到这里来。比较重要的是,家目录有两种代号喔∶
~∶代表目前这个使用者的家目录,而 
~dmtsai ∶则代表 dmtsai 的家目录!
/lib,
/usr/lib,
/usr/local/lib
系统会使用到的函式库放置的目录。 程式在运作的过程中,可能会呼叫一些额外的功能参数,那需要函式库的协助! 这些函式库就放在此处。比较重要的是 /lib/modules 这个目录内会摆放 kernel 的相关模组喔!
/lost+found 系统不正常产生错误时,会将一些遗失的片段放置于此目录下, 通常这个目录会自动出现在某个 partition 最顶层的目录下。例如你加装一棵硬碟于 /disk 中, 那在这个目录下就会自动产生一个这样的目录 /disk/lost+found
/mnt
/media
这是软碟与光碟预设挂载点的地方;通常软碟挂在 /mnt/floppy 下,而光碟挂在 /mnt/cdrom 下,不过也不一定啦!只要你高兴,随便找一个地方来挂载也可以呀!另外,目前也规划出另一个 /media 的目录呢!与 /mnt 有点类似啦~
/opt 这是给主机额外安装软体所摆放的目录。举例来说, FC4 使用的是 Fedora 社群开发的软体, 如果您今天想要自行安装新的 KDE 桌面软体的话,可以将该软体安装在这个目录下的意思。 不过,以前的 Linux 系统中,我们还是习惯放置在 /usr/local 目录下呢!
/proc 这个目录本身是一个『虚拟档案系统』喔!他放置的资料都是在记忆体当中, 例如系统核心、形成资讯、周边设备的状态及网路状态等等。因为这个目录下的资料都是在记忆体当中, 所以本身不占任何硬碟空间啊!比较重要的档案例如∶/proc/cpuinfo, /proc/dma, /proc/interrupts, /proc/ioports, /proc/net/* 等等。
/root 系统管理员 (root) 的家目录。之所以放在这里, 是因为我们提过,系统第一个开机就被挂载的 partition 为 / , 而我们希望 /root 能够与 / 放在同一块 partition 上面之故。
/sbin,
/usr/sbin,
/usr/local/sbin
放置一些系统管理员才会动用到的执行指令,例如∶ fdisk, mke2fs, fsck, mkswap, mount 等等。与 /bin 不太一样的地方,这几个目录是给 root 等系统管理用的。但是本目录下的执行档还是可以让一般使用者用来『察看』而不能设定喔!
/srv 一些服务启动之后,这些服务所需要取用的资料目录。举例来说,WWW 伺服器需要的网页资料就可以放置在 /srv/www 里面。
/tmp 这是让一般使用者或者是正在执行的程序暂时放置档案的地方。 这个目录是任何人都能够存取的,所以您需要定期的清理一下。当然,重要资料不可放置在此目录啊!
/usr 由 FHS 规范的第二层内容,在 /usr 此目录下,包含系统的主要程式、 图形介面所需要的档案、额外的函式库、本机端所自行安装的软体,以及共享的目录与文件等等, 都可以在这个目录当中发现。事实上,他有点像是 Windows 作业系统当中的『Program files』与 『WinNT』这两个目录的结合!在此目录下的重要次目录有∶
  • /usr/bin, /usr/sbin∶一般身份使用者与系统管理员可执行的档案放置目录;
  • /usr/include∶c/c++等程式语言的档头 (header) 与包含档(include)放置处, 当我们以 tarball 方式 (*.tar.gz 的方式安装软体) 安装某些资料时,会使用到里头的许多包含档喔!;
  • /usr/lib∶各应用软体的函式库档案放置目录;
  • /usr/local∶本机端自行安装的软体预设放置的目 录。目前也适用于 /opt 目录。 在你安装完了 Linux 之后,基本上所有的配备你都有了,但是软体总是可以升级的, 例如你要升级你的 proxy 服务,则通常软体预设的安装地方就是在 /usr/local (local 是『当地』的意思),同时,安装完毕之后所得到的执行档,为了与系统原先的执行档有分别, 因此升级后的执行档通常摆在 /usr/local/bin 这个地方。给个建议啦, 通常鸟哥都会将后来才安装上去的软体放置在这里,因为便于管理呦;
  • /usr/share∶共享文件放置的目录,例如底下两个目录∶
  • /usr/share/doc∶放置一些系统说明文件的地方,例如你安装了 grub 了,那么在该目录底下找一找,就可以查到 grub 的说明文件了!很是便利!
  • /usr/share/man∶manpage 的文件档案目录;那是什么?呵呵! 就是你使用 man 的时候,会去查询的路径呀!例如你使用 man ls 这个指令时,就会查出 /usr/share/man/man1/ls.1.gz 这个说明档的内容棉!
  • /usr/src∶Linux 系统相关的程式码放置目录,例如 /usr/src/linux 为核心原始码!
  • /usr/X11R6∶系统内的 X Window System 所需的执行档几乎都放在这!
/var 这个目录也很重要,也是 FHS 规范的第二层目录内容。他主要放置的是针对系统执行过程中, 常态性变动的档案放置的目录。举例来说,例如快取档案 (cache) 或者是随时变更的登录档 (log file) 都是放在这个目录中的。此外,某些软体执行过程中会写入的资料库档案, 例如 MySQL 资料库,也都写入在这个目录中!很重要吧!他底下的重要目录有∶
  • /var/cache∶程式档案在运作过程当中的一些暂存档;
  • /var/lib∶程式本身执行的过程中,需要使用到的资料档案放置的目录, 举例来说, locate 这个资料库与 MySQL 及 rpm 等资料库系统,都写在这个目录内。
  • /var/log∶登录档放置的目录。很重要啊!例如 /var/log/messages 就是总管所有登录档的一个档案!
  • /var/lock∶某些装置具有一次性写入的特性,例如 tab (磁带机), 此时,为了担心被其他人干扰而破坏正在运作的动作,因此,会将该装置 lock (锁住)起来, 以确定该装置只能被单一个程序所使用啊!
  • /var/run∶某些程式或者是服务启动后,会将他们的 PID 放置在这个目录下喔!
  • /var/spool∶是一些伫列资料存放的地方。举例来 说,主机收到电子邮件后, 就会放置到 /var/spool/mail 当中,若信件暂时发不出去,就会放置到 /var/spool/mqueue 目录下, 使用者工作排程 (cron) 则是放置在 /var/spool/cron 当中!

练习题

 
鸟哥的LINUX私房菜基础篇第三版 阅读笔记 一
 

鸟哥的LINUX私房菜基础篇第三版 阅读笔记 一的更多相关文章

  1. 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 四 档案的文件系统的压缩和打包

    1.压缩文件案的用途与技术     a.用途,简单来说,就是节约磁盘空间.如果从传输角度讲,占用宽带也会小很多(Apache就有自动压缩的功能,节省宽带资源,提升网站的输出能力)     b.压缩技术 ...

  2. 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 三 Linux磁盘与文件系统管理

    一.认识EXT2文件系统:     a.硬盘的组成:转动小马达+存储的磁盘+读写的机械臂     b.磁盘的一些概念              扇区为最小的物理储存单位,每个扇区为512B       ...

  3. 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 二

    Linux档案与目录管理 1.一些比较特殊的目录,需要用力的记下来 .         代表当前层目录 ..        代表上一层目录 -        代表前一个工作目录   (这个好屌!其他的 ...

  4. 《鸟哥的Linux私房菜--基础篇》学习

    第四章 显示日期与时间的指令:date 输入: (base) liyihuadeMacBook-Pro:~ liyihua$ date 输出: Thu Jun 6 08:44:02 CST 2019 ...

  5. 拒绝从入门到放弃_《鸟哥的 Linux 私房菜 — 基础学习篇(第三版)》必读目录

    目录 目录 前言 关于这本书 必看知识点 最后 前言 相信部分刚进入这个行业的新同学会对一个问题感到疑惑,为什么从培训学校出来的学员不被欢迎? 这里记录下一些我个人的看法(博主也曾有面试新员工的经历) ...

  6. 每周一书-《鸟哥的Linux私房菜基础学习篇(第四版)》*原版,你想要吗?

     首先说明,本周活动有效时间为2016年10月19日到2016年10月31日.   目在介绍这本书之前,首先要感谢QQ号为:1084830483(路在远方),来自哈尔滨工程大学的同学赠送给玄魂工作室的 ...

  7. 【Linux】鸟哥的Linux私房菜基础学习篇整理(一)

    最近,一直在写PPC的模拟器和汇编器,也在做设计.所以重新看了看<鸟哥的Linux私房菜>,还是有好多命令不太熟悉.就打算写几篇blog记下来. 1. nl [-bnw] filename ...

  8. 《鸟哥的Linux私房菜-基础学习篇(第三版)》(三)

    第2章 Linxu怎样学习         1. Linux当前的应用角色 当前的Linux常见的应用可略分为企业应用和个人应用双方面. 首先谈了企业环境的利用. 1)网络server. 2)关键任务 ...

  9. 鸟哥的Linux私房菜 基础学习篇读书笔记(9):Linux磁盘与文件系统管理(2)

    上一篇文章主要从理论上分析了Linux的Ext2文件系统.这一篇主要解说怎样查看Linux的文件系统的容量以及解说Linux文件系统中的连接文件. 能够通过df和du命令来查看磁盘与文件夹的容量.df ...

随机推荐

  1. &lbrack;Linux监控&rsqb;磁盘空间大小

    echo 192.168.10.69>>ip.list ------------------------------------------- #!/bin/bash #注意if和[]之间 ...

  2. Visual Studio中删除所有空行

    解决方法如下: 使用快捷键Ctrl+H,显示查找和替换视图菜单 Find what(查找内容):^:b*$\n Replace with(替换为):[Empty] (空字符串,什么都不用填) Look ...

  3. 简单几何&lpar;凸包&plus;枚举&rpar; POJ 1873 The Fortified Forest

    题目传送门 题意:砍掉一些树,用它们做成篱笆把剩余的树围起来,问最小价值 分析:数据量不大,考虑状态压缩暴力枚举,求凸包以及计算凸包长度.虽说是水题,毕竟是final,自己状压的最大情况写错了,而且忘 ...

  4. AspectJ给类的属性打桩,进行替换。

    这个东西必须写个博客记一下了,一方面是防止以后忘记,一方面也反思一下自己的固执. 在我们的代码中,通常会有一些配置文件的路径写死在代码里面.比如 public class ConfigPath { p ...

  5. C语言学习&lowbar;查找三分之二

    查找三分之二: #include <stdio.h> #define M 10 int main(void) { int front, near, mid1, mid2; int n; i ...

  6. Eclipse-ee 启动Tomcat后浏览器无法访问Tomat,并且Web项目服务部署

    环境: Ubuntu 14.04 + Eclipse-ee +  Tomcat7 问题: 在Eclipse中建立Server时选择的Tomcat7,Server的运行时选择的时自己安装的Tomcat目 ...

  7. 走进JavaScript——重拾对象

    创建对象 Object构造器的参数如果为空或null.undefined将返回一个空的Object对象,如果为其他值则调用相应的构造器,如 new Object() // Object {} new ...

  8. Spring框架xml配置中属性ref与value的区别

    1.spring批量扫描mybatis的mapper,使用value 2.spring管理mybatis的单个mapper,用的是ref 虽然引用的是同一个bean,但两个对象的属相类型明显不一样,一 ...

  9. Emscripten 安装和使用

    OS: Windows 10 x64 I. install 0. pre install Python2.7 Node js Java 1. down git clone https://github ...

  10. HTML5自定义data属性

    可能大家在使用jquery mobile时,经常会看到data-role.data-theme等的使用,比如:通过如下代码即可实现页眉的效果: [html] <div data-role=&qu ...