关于Linux中的目录配置标准

在查看docker、k8的运行日志,修改相关的运行记录的时候,学长总是能很快地找到目录,这个多多少少和Linux的FHS(File Hierarchy Standard)有关,有必要把常见的集中再整理整理。具体的规范有很多,先整理一点出来,一点点再添加。具体可以参考鸟叔的p152页。

查询日志

/var 目录通常存放常态性变动的文件,包括缓存,登录文件以及某些软件运行的时候所产生的文件,或者Mysql的数据文件等等。

  • 比如k8s的相关日志信息都存储在/var/log/upstart文件夹下。
  • 比如docker的 container 相关的信息都存储在 /var/lib 上

查询配置文件

系统的主要配置文件一般都放在这个文件夹中,不建议在这个文件夹中放可执行的文件。

  • 比如/etc/init.d/中存放着所有的服务的默认的启动脚本。

二进制文件

系统中存放二进制文件的目录比较多,但是 /bin 目录中存放的是单用户维护模式下还能够被操作的命令,在/bin目录下的命令可以被root与一般用户所使用,比如cat,bash,chown,chomod之类的命令。另外一个是/opt/bin 目录,这个目录中通常存放的是第三方软件(非distribution所提供的)所放置的目录。

关于文件权限

文件权限和用户权限的问题在平时操作中也是经常遇到的,比如有时候权限管理混乱,go get 的时候就总是permission denied,或者有的时候没有读写权限之类的,再好好整理一下。

其是这个问题主要是 ls -l 的时候,把所有的信息都解释清楚。
这里还要多说一点就是在使用linux命令的时候要学会使用man来查看,比如ls命令可以按照修改日期排序输出,可以按照文件大写排序输出等等

关于用户组与用户

通过用户组与用户的概念可以实现文件的隔离与共享。

用户的概念很好理解,就是不同的使用os的用户。用户组的概念是在用户的基础上的第二层抽象,一个用户可以分别属于多个用户组,一个用户组中可以有多个用户,不同用户组的文件是彼此隔离开的,同一个用户组内的成员可以共享这个用户组内的文件。

linux所有用户组的信息都存储在/etc/group中,通过groups命令就可以查看当前用户所支持的用户组。

/etc/group 文件中存储的内容是用户组的相关信息。/etc/group的文件内容格式: 组名:密码保存位置:组ID:组成员。以root用户组为例,即组名是root,密码保存位置为/etc/shadow,root组的GID为0,组下面的用户是root用户。

/etc/passwd的文件内容格式:注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序 。以root用户为例。root是用户注册名,X表示密码保存在/etc/shadow,用户ID为0,所在用户组ID为0,用户名是root,home目录为/root,解释程序/bin/bash。

文件的权限

文件的具体权限一共有9种,owner,group以及others各有三种,分别是read,write以及execute权限。具体的信息通过权限字符串 -rwxrwxrwx来标记,可以通过三个二进制换算成10禁止的数字来表明文件的权限,具体的表述可以参考鸟叔p141,p146。

修改命令

chown -R 账号名称 dirname/filename 这个命令可以递归地修改文件或文件目录下的文件的所属用户。
chgrp -R 用户组名称 文件或目录 这个命令可以用来改变所属的用户组
chmod 可以用来改变文件的具体的读写权限。

关于linux中的目录配置标准以及文件基本信息的更多相关文章

  1. linux中的目录配置

    一.权限对文件的重要性 1.r(read):可读取此文件的实际内容,读取文本文件的文字内容等. 2.w(write):可以编辑,新增或者是修改该文件的内容. 3.x(execute):该文件具有可以被 ...

  2. linux中替换目录下的某个文件中包含的IP地址

    #!/bin/bash #set -x oldIP=172.17.39.135 newIP=172.17.98.115 homefile=/usr/local/ims/ filelist=`grep ...

  3. Linux中/proc目录下文件详解

    转载于:http://blog.chinaunix.net/uid-10449864-id-2956854.html Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统 ...

  4. Linux中VSFTP的配置

    配置VSFTP服务器: 1.安装VSFTP,可以参考Linux 中yum的配置来安装: yum installvsftpd.x86_64 -y 2.修改SELinux: setenforce 0 查看 ...

  5. Linux中redis安装配置及使用详解

    Linux中redis安装配置及使用详解 一. Redis基本知识 1.Redis 的数据类型 字符串 , 列表 (lists) , 集合 (sets) , 有序集合 (sorts sets) , 哈 ...

  6. Unix/Linux中/usr目录的由来

    在Linux系统中,有一个很重要的目录——/usr目录.关于这个目录名称的由来,网上主要有下面几种说法: user的缩写 User Shareable Read-only的缩写 Unix/User S ...

  7. Linux中 /boot 目录介绍 【转载】

    Linux中 /boot 目录介绍 转自:点击打开链接 一./boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有: (1)系统Kernel的配置文件 ...

  8. Linux中/proc目录下文件详解(转贴)

      转载:http://www.sudu.cn/info/index.php?op=article&id=302529   Linux中/proc目录下文件详解(一) 声明:可以自由转载本文, ...

  9. 在Linux中安装和配置OpenVPN Server的最简便方法!

    本文介绍了如何在基于RPM和DEB的系统中安装和配置OpenVPN服务器.我们在本文中将使用一个名为openvpn-install的脚本,它使整个OpenVPN服务器的安装和配置过程实现了自动化.该脚 ...

随机推荐

  1. P1086 花生采摘题解

    这道题只是普通的模拟,不是贪心! 重点在于这句话:“然后再找出剩下的植株里花生最多的,去采摘它的花生”. 也就是,你下一个必须找到剩下花生最多的,而不是按照贪心思想来考虑在限定时间内的最优解 那么,应 ...

  2. java多线程面试题整理及答案

    1) 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对 运算密集型任务提速.比如,如果一个线程完 ...

  3. python之同步IO和异步IO

    linux操作系统基础知识 用户空间和内核空间 操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限.为了保证用户进程不能直接操作内核保证内核的安全,操 ...

  4. share point 已在此服务器场中安装 ID 为 15/b7a69889-1789-4855-b8bd-9a3b4cfd7fc0 的功能。请使用强制属性显式地重新安装此功能。

    部署步骤“添加解决方案”中出现错误: 已在此服务器场中安装 ID 为 15/b7a69889-1789-4855-b8bd-9a3b4cfd7fc0 的功能.请使用强制属性显式地重新安装此功能. 英文 ...

  5. rsync+inotify实时数据同步多目录实战

    rsync+inotify实时数据同步多目录实战       inotify配置是建立在rsync服务基础上的配置过程 操作系统 主机名 网卡eth0 默认网关 用途 root@58server1 1 ...

  6. java 责任链接模式

  7. end of sleepyhead

  8. aspnet:MaxHttpCollectionKeys 不起作用

    场景: vs2010  webform  表单域长度,在webconfig中加入该节点,有的项目起作用,有的项目无效,不知道是什么原因??

  9. SDRAM学习笔记

    摘自“开源骚客视频教程” 1.仲裁模块就是用来控制什么时候读.写.刷新 2.模块中的状态机 3.初始化时序图说明,来自“IS42S116160.pdf”文件 4.SDRAM写时序图,来自“IS42S1 ...

  10. java HTTP文件断点上传

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...