Java教程

08重要目录之文件相关

本文主要是介绍08重要目录之文件相关,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文件属性详述

1.补充:搭建yum仓库的步骤

1、创建目录,充当仓库
    mkdir /yumrepo2
2、在仓库中创建Packages目录,用于存放软件
    cd /yumrepo2
    mkdir Packages
3、下载测试软件到Packages目录中
    cd /yumrepo2/Packages
    wget https://repo.huaweicloud.com/centos/7/os/x86_64/Packages/zip-3.0-11.el7.x86_64.rpm
4、下载远程访问软件:Nginx
    yum install nginx 
5、下载仓库初始化软件(yum-utils、createrepo)
    yum install yum-utils createrepo
6、初始化仓库
    createrepo /yumrepo2
    注:会在仓库目录中创建repodata目录,主要用来存放yum依赖关系的。
7、修改Nginx配置文件,使其代理yum仓库目录索引
    修改/etc/nginx/nginx.conf     
    root /yumrepo2;
    nginx实现目录索引
        autoindex on;
        autoindex_exact_size off;
        autoindex_localtime on;
​
    systemctl restart nginx
    
    在浏览器测试
        
8、编辑yum源
    1、将/etc/yum.repos.d中所有的文件备份到backup目录中
        mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
    2、创建local.repo文件
        touch local.repo
    3、编辑local.repo
        vim local.repo
        [local]
        name="xxx源的简介"
        baseurl=http://192.168.15.201
        gpgcheck=0  
    4、更新源
        yum clean all
        yum makecache               
9、测试
    yum remove zip
    yum install zip  
​

2.二进制编译安装

优点:单独定制安装软件
缺点:不能决绝依赖关系
下载源代码包:https://nginx.org/download/nginx-1.20.1.tar.gz
    [root@python ~]$ wget https://nginx.org/download/nginx-1.20.1.tar.gz
    知识储备:
    解压文件:tar -xf nginx-1.20.1.tar.gz
1.检查系统
    cd nginx-1.20.1
    yum install pcre pcre-devel zlib zlib-devel make gcc gcc-c++ -y
    ./configure
2.编译
        make
        -j : 多核编译, 但是容易出错(不推荐)
 3.安装
   make install
 4.测试
    [root@python nginx]$ systemctl stop nginx
    # 启动nginx服务
    [root@python nginx]$ /usr/local/nginx/sbin/nginx

3.重要目录数据说明 ——proc文件系统

1.重要日志文件
(1)/var/log/messages #软件安装运行以及系统运行异常日志文件
(2)/var/log/secure # 系统登录用户情况日志信息
       grep 'Failed' /var/log/secure
2.重要信息文件
/proc/cpuinfo #用于查看系统CPU信息情况文件   相关命令:lscpu
/proc/meminfo #用于查看系统内存信息情况文件   相关命令:free -m
/proc/loadavg #用于查看系统负载信息情况文件,用于衡量系统繁忙程度 相关命令:w
      什么是系统负载:单位时间内,系统进程占用cpu的相对时间
      
    1个CPU 1个核       1   100%
    
    1个CPU 2个核       1   50%
    
     10:23:31           up                      4 days, 22:06,  3 users,  load average: 0.00,       0.86,       2.90
      当前系统时间        当前系统状态(up\down)     启动时间        三个窗口                1分钟负载  10分钟负载  15分钟负载
    
    [root@python nginx]$ while true ; do w ; sleep 1; clear; done
/proc/mounts #用于查看系统挂载信息情况文件    相关命令:column -t(根据文件类型进行对齐)
​

文件属性

1.文件属性信息概述

 1.常见的文件类型:
   d:文件夹(directory)
•  -:普通文件(f/-(file))
             ①纯文本文件 text /etc/hosts
             ②二进制文件 binary /bin/ls
             ③数据型文件 data /tmp/etc.tar.gz
    l:链接文件
    c:字符设备文件,会不断产生字符信息(字体)character
    b:块设备文件(硬盘)block
    
    s:socket文件,套接接口文件,和网络有关的文件
    p:管道文件(pipe)
    管道:将前一个命令的结果交给后面一个命令来处理即管道技术
    文件类型查看方法:
        配置文件:.conf
        日志文件:.log
        脚本文件:.sh
        脚本文件.py
  drwxr-xr-x.        6       root    root  100   Sep 13 16:48   yum
  -rw-r--r--         1       root    root  970   Sep 23 03:50   yum.conf
  drwxr-xr-x.        4       root    root  151   sep 23 04:16   yum.repos.d
inode号  文件的类型 linux权限  硬链接个数 属主    属组 文件的大小 文件的修改时间 文件名字
(index node索引节点)
属主属性:文件所有者
属组属性:文件所属组
文件大小属性:最小单位字节
​
inode包含文件的元信息(除了文件名),具体来说有以下内容:
 Size: 文件的字节数
 Blocks: 块数
 IO Block: 块大小
 Device: 设备号码
 Inode: 文件数据block的位置
 Links: 链接数,即有多少文件名指向这个inode
 Access: 文件的读写执行权限
 Uid: 文件拥有者的User ID
 Gid: 文件的Group ID
 Access: 指文件上一次打开的时间
 Modify: 指文件内容上一次变动的时间
 Change: 指inode上一次变动的时间
​
 可用 stat 命令查看
​
​

2.硬链接和软连接

硬链接和软连接
硬链接:相当于文件的别名,id号一致
 ln [原来的路径] [新的路径]
 硬链接,源文件与目标文件的inode号码相同,都指向同一个inode。107 inode信息中有一项叫做“链接数”,记录指向该inode的文件名总数。
 反过来,删除一个文件名,就会使得indoe节点中的链接数减一。当这个值减到0,表明没有文件名指向这个inode,系统就会回收这个inode号码,以及其对应的block区域。
 
 
软连接:相当于快捷方式,用于存放指向源文件的路径信息
  ln -s [原来的路径] [新的路径]
  特点:1. 防止误删数据 2.不能给目录创建硬链接
  目录文件的“链接数”。创建目录时,默认会生成两个目录项"."和"..",前者的inode号码就是当前目录的inode号码,等同于当前目录的“硬链接“后者的inode号码就是当前目录的父目录的inode号码,等同于父目录的“115 硬链接“。所以,任何一个目录的”硬链接“总数,总是等于2+它的子目录总数(含隐藏目录)
​
 软链接文件指向的是源文件的文件名,而不是inode号,所以源文件的“链接数”不会增加
​
注:在linux操作系统中,硬链接个数为0时,才会删除源文件,表示数据真正删除了
  文件信息没有被进程调用的时候,进程调用数为0

3.存储数据相关

1.inode用于存放的是文件属性
创建一个文件至少占用一个inode和一个block
在同一个分区中,两个文件的inode号码相同,两个文件互为硬链接
展示inode信息:ls -lhi /etc/hosts
    drwxr-xr-x  2 root root         6 Sep 22 18:05 yum
 统计文件数据信息:df -i
 2.block存储数据信息
   block默认大小为4k,比较大的文件占用多个block,比较小的文件,剩余空间无法使用
   磁盘读取数据按block为单位读取的
   读取一个block会消耗一次磁盘I/O(input/output 磁盘读写)
   展示block信息: ls -lh /etc/hosts
   统计block数目:df/df -h
   

4.文件属性信息详述

用户及用户组
1.概念
用户:相当于系统管理员
用户组:相当于具有某种相同特征的一系列用户的集合
2.创建用户
useradd:创建用户
groupadd:创建用户组
 案例1:创建用户
        [root@python ~]$ groupadd -g 666 shanhe
        [root@python ~]$ useradd -u 666 -g 666 test777
id:查看指定用户的id(默认查看当前用户)
格式:useradd [选项(非必须)] [用户名称]
用户名命名规则:1.可以包含字母和数字
              2.必须字母开头
3.选项:
 -u:指定uid
 -g:指定gid
 -r::指定创建系统用户
 -s:指定用户默认的解释器
 
 4.uid代表的是用户的唯一标号
 gid代表的用户组的唯一编号
 
 系统用户和普通用户的区别:
 系统用户一般用来运行系统级别的应用程序
     id号在0-200之间的用户运行的是操作系统级别的应用程序
     id号在201-999之间的用户运行的是用户级别的应用程序
     通常情况下,id号在1000以下,那么该用户就是系统用户,在1000以上是普通用户。
        普通用户一般用来登录操作系统
 5.用户的特征信息:/etc/passwd
    用户的密码信息:/etc/shadow
    用户组特征信息: /etc/group
    用户组密码信息:/etc/gshadow
  6.权限:r(read):4
         w(write):2
          x(execute):1
          N/A(-):0(没有权限)
   
   7.时间信息:文件修改时间mtime,属性修改时间ctime,文件访问时间atime   用stat查看
   8。系统常用的shell解释器:
   /bin/bash
   /bin/sh
   /etc/passwd 文件保存的是用户信息
   
   
   
 
 
 
 



这篇关于08重要目录之文件相关的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!