关于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. feign请求写法

    @FeignClient(value = "test", url = "${proxy.srvs.test:}") public interface ISubS ...

  2. HDU-2389-Rain on your Parade (最大匹配,kopcroft-karp)

    链接: https://vjudge.net/problem/HDU-2389 题意: You're giving a party in the garden of your villa by the ...

  3. Codeforces Round #569 (Div. 2) C. Valeriy and Deque

    链接: https://codeforces.com/contest/1180/problem/C 题意: Recently, on the course of algorithms and data ...

  4. 3828. 三角形计数 3829. ZCC loves Isaac 3830. 字符消除

    3828 给定n个点的坐标(0<=xi,yi<=10000)求选出任意三个点能组成的三角形的总面积. 题解 太naive了 枚举三角形的y最小的点,把剩余的点按角度排序 然后随便算,可以用 ...

  5. ubuntu1604-Python35-cuda9-cudnn7-gpu-dockerfile

    一,在某目录下有如下文件: -rw-r--r-- 1 root root 1643293725 9月 2 11:46 cuda_9.0.176_384.81_linux.run -rw-r--r-- ...

  6. Linux入门培训教程 linux网络编程socket介绍

    一.概念介绍 网络程序分为服务端程序和客户端程序.服务端即提供服务的一方,客户端为请求服务的一方.但实际情况是有些程序的客户端.服务器端角色不是这么明显,即互为Linux培训 客户端和服务端. 我们编 ...

  7. ZooKeeper设置开机启动

    1 在init.d目录下新建脚本文件 进入到/etc/rc.d/init.d目录下,命令是: cd    /etc/rc.d/init.d 新建一个名为zookeeper的文件,命令是: touch ...

  8. Spotlight_on_linux 安装和监控

    一.下载 下载并安装 Spotlight_on_linux 二.建立连接 注意:用户名不能使用root连接,需要自己创建个用户root权限的用户 1.useradd  xiaoxitest   2.p ...

  9. 【Python】学习笔记三:序列

    sequence(序列) sequence(序列)是一组有序的元素的集合,序列可以有任何元素,也可以没有元素 元组与表的区别:一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更 ...

  10. Failed to read artifact descriptor for xxx:jar

    在MyEclipse中执行Maven的install命令时,报“Failed to read artifact descriptor for xxx:jar ”的错误.这可能是在下载过程中文件出现错误 ...