zoukankan      html  css  js  c++  java
  • 文件的基本管理和XFS文件系统备份恢复

    一、Linux系统目录结构和相对/绝对路径

    1.1 安装tree工具

       91  mount /dev/sr0 /mnt/   # sr0等同于 cdrom 
    
       93  rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm 
      

    使用Tree 查看文件

    1.2 根目录说明

          /
    处于linux系统树形结构的最顶端,它是linux文件系统的入口,所有的目录、文件、设备都在 / 之下
        /boot
    存放的系统启动相关的文件,例如:kernel.grub(引导装载程序) 
    /dev 
    dev是Device的缩写。设备文件目录,比如声卡、磁盘……在Linux中
    一切都被看做文件。终端设备、磁盘等等都被看做文件 
    设备文件: /dev/sda,/dev/sda1,/dev/tty1,/dev/tty2,/dev/pts/1, /dev/zero, /dev/null, /dev/cdrom
    /etc 

     常用系统及二进制安装包配置文件默认路径和服务器启动命令目录

              passwd 用户信息文件

              shadow  用户密码文件

              group 存储用户组信息

              fstab 系统开机启动自动挂载分区列表

              hosts 设定用户自己的IP与主机名对应的信息
    /bin
    bin是Binary的缩写。常用的二进制命令目录。比如 ls、cp、mkdir、cut等;链接到/usr/bin类似,一些用户级gnu工具
    /sbin
    同上,但是是超级用户root才有权限执行的命令。链接到/usr/sbin
    /home
    普通用户的家目录
    /lib
    /lib64

    这个目录里存放着系统最基本的动态链接共享库,包含许多被/bin/和/sbin/中的程序使用的库文件,目录/usr/lib/中含有更多用于用户程序的库文件。作用类似于windows里的DLL文件,几乎所有的应用程序都需要用到这些共享库

    注:lib***.a是静态库
         lib***.so是动态库

    静态库在编译时被加载到二进制文件中
    动态库在运行时加载到进程的内存空间中

    简单的说:这些库是为了让你的程序能够正常编译运行的

    其实类似于WIN中.dll文件,几乎所有的应用程序都需要用到这些共享库
       /usr
    曾经的 /usr 还是用户的家目录,存放着各种用户文件 —— 现在已经被 /home 取代了(例如 /usr/someone 已经改为 /home/someone)。
    现代的 /usr 只专门存放各种程序和数据,用户目录已经转移。虽然 /usr 名称未改,不过其含义已经从“用户目录”变成了“unix 系统资源”目录。
    值得注意的是,在一些 unix 系统上,仍然把 /usr/someone 当做用户家目录,如 Minix。

    /usr/bin 普通用户使用的应用程序
    /usr/sbin 管理员使用的应用程序
    /usr/lib 库文件Glibc(32位)
    /usr/lib64 库文件Glibc
       /var 系统运行和软件运行时产生的日志信息,该目录的内容是经常变动的,存放的是一些变化的文件。比如/var下有/var/log目录用来存放系统日志的目录,还有mail、/var/spool/cron
      /tmp

    该目录用于存放临时文件,有时用户运行程序的时候,会产生一些临时文件。/tmp就是用来存放临时文件的。/var/tmp目录和该目录的作用是相似的,不能存放重要数据,它的权限比较特殊

    [root@xuegod63 ~]# ls –ld /tmp

    drwxrwxrwt 10 root root 12288 Oct 3 20:45 /tmp/ à粘滞位(sticky bit)目录的sticky位表示这个目录里的文件只能被owner和root删除

    /mnt

    /media

    一般用来临时挂载存储设备的挂载目录,比如有cdrom、U盘等目录

    在CENTOS7中会挂载到/run下面

    /opt

    表示的是可选择的意思,有些软件包也会被安装在这里 

    /proc

    操作系统运行时,进程(正在运行中的程序)信息及内核信息(比如cpu、硬盘分区、内存信息等)存放在这里。/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统。因此,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在内存里。 du /proc 是为空的

    查看咱们的CPU信息

    cat /proc/cpuinfo

     /sys  系统目录,存放硬件信息的相关文件
    /run 运行目录,存放的是系统运行时的数据,比如进程的PID文件
    /srv 服务目录,存放的是我们本地服务的相关文件

    /lost+found

    只在centos6中有

    默认为空,被FSCK(file system check用来检查和维护不一致的文件系统。若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查)用来放置零散文件(没有名称的文件) 当系统非法关机后,这里就会存放一些文件。

    二、文件操作

    2.1 创建文件与文件夹

    2.1.1 创建文件的三种方法

    • touch 常用来创建空文件,如果文件存在,则修改文件的时间

          touch  a.txt

          touch a.txt  b.txt

          touch filehui{6..20}   #创建连续结尾的文件

    • vim    用vim来创建一个文件
    • echo  使用重定向创建一个文件

          echo "aaa">hui.txt  #直接覆盖文件。

    stat  name  查看文件的属性于时间

      

    访问时间:atime  查看内容   cat  a.txt

    修改时间:mtime  修改内容  vim a.txt

    改变时间:ctime  文件属性,比如权限  change time。  chmod +x a.sh

    2.1.2 创建文件夹

    mkdir    dir1
    mkdir    dir2 dir3 /home/dir4     #一次性创建多个文件
    mkdir    /tmp/a/b/c               #无法创建,需要先创建父级目录
    mkdir    -p   /tmp/a/b/c          #创建父级目录        

    2.2 删除

    -f  强制删除,没有提示
    -r  remove directories and their contents recursively
    [root@xuegod63 opt]# rm -rf a.txt     删除文件
    [root@xuegod63 opt]# rm -rf a.txt dir   删除文件与目录
    [root@xuegod63 opt]# rm -rf file*      
    
    rm -rf (慎用,一定要在删除以前确定一下所在目录,防止误删除重要数据)

    2.3 拷贝

    命令:cp  源文件/目录   目录文件/目录
    选项:-R/r:递归处理,将指定目录下的所有文件与子目录一并处理
    例子:
    [root@xuegod63 ~]# cp /etc/passwd /opt/   #复制文件
    [root@xuegod63 ~]# cp -r /boot/grub /opt/  #复制目录

    2.4 移动

    mv  passwd  /opt/
    mv /opt/* /mnt/

    三、查看文件

    3.1 cat

      查看文件内容一次性显示全部

    3.2 more

      以分页形式显示文件内容

      按下回车刷新一行,按下空格刷新一屏,输入q键退出

    3.3 less  

      more:不支持后退,但几乎不需要加参数,空格键是向下翻页,Enter键是向下翻一行,在不需要后退的情况下比较方便

      less:支持前后翻滚,既可以向上翻页(pageup按键),也可以向下翻页(pagedown按键)。,空格键是向下翻页,Enter键是向下翻一行

    3.4 head

      用于显示文件的开头的内容。在默认情况下,head命令显示文件的头10行内容

      head -n 3 /etc/passwd #显示前3行

    3.5 tail

      作用: 用于显示文件中的尾部内容。默认在屏幕上显示指定文件的末尾10行

        -n 显示文件尾部多少行的内容(n为数字)

        -f  动态显示数据(不关闭),常用来查看日志

    [root@xuegod63 ~]# tail -n 3 /var/log/secure  #查看最后3行记录
    [root@xuegod63 ~]# tail -f /var/log/secure    #在一个终端执行此命令动态查看文件内容
    [root@xuegod63 ~]# ssh root@192.168.1.63      #在另一个终端远程登录Linux,登录成功后
    [root@xuegod63 ~]# tail -f /var/log/secure    #可以动态查看到登录成功的日志
    Nov 17 00:08:32 xuegod63 sshd[2924]: Accepted password for root from 192.168.1.63 port 39904 ssh2

      

  • 相关阅读:
    Oracle Words Spelling Error
    原创 分布式锁与应用场景
    原创 分布式事务简单实现思路
    原创 使用redis位图实现布隆过滤器
    原创 redis实现接口限流
    原创 jwt-security简单实现
    原创 抢购秒杀之redis高性能实现
    原创 springcloud feign优化配置
    原创 派单、抢单业务简单实现
    原创 微信公众号推送图片实现
  • 原文地址:https://www.cnblogs.com/louhui/p/8620872.html
Copyright © 2011-2022 走看看