Linux运维第2天:Linux文件系统详解

来源:互联网 发布:室内烧烤知乎 编辑:程序博客网 时间:2024/06/06 07:10
date:   时间管理


Linux:  rtc
    
    硬件时钟(clock,hwclock)
    系统时钟(date)
    
获得命令的使用帮助:
    内部命令:
        help command
    外部命令:
        command --help
        
    whatis 可以查看在哪个部分存在手册
    
    命令手册:manual
        1.用户命令(/bin,/usr/bin,/usr/local/bin)
        2.系统调用
        3.库调用
        4.特殊文件(设备文件)
        5.文件格式(配置文件语法)
        6.游戏
        7.杂项(miscellaneous)
        8.管理命令(/sbin,/usr/sbin,/usr/local/sbin)
        
<>:必选
[]:可选
...:可以出现多次
|:多选一
{}:分组


MAN:
    NAME:命令的名称及功能简要说明
    SYNOPSIS:用法说明,包括可用的选项
    DESCRIPTION:命令的详细描述
    OPTIONS:选项的说明
    FILES:配制文件
    BUGS:
    EXAMPLES:使用实例
    SEE ALSO:另外参照
    
翻屏:
    向前一屏: SPACE
    向后一屏: b
    向后一行: ENTER
    向前一行: k
    
查找:
    /FORWARD
    ?BACKWARD
    n,N 


在线文档:
    info command
    
document:
    /usr/share/doc 


google


官方网站,相关书籍


练习:
    使用dateu单独获取系统当前的年份,月份,日,小时,分钟,秒
    
hwclock:
    hwclock -r 读取硬件时钟
    hwclock -w 同步到硬件时钟
    hwclock -s 同步到系统时钟
    
cal:calendar


练习:
    1.echo是内部命令还是外部命令
    2.作用?
    3.如何换行显示
    echo -e -n
    
练习:
    1.printf命令
    
练习:
    1.file命令
    
二进制:    
windows:PE
Linux:ELF


文件系统:
    rootfs:根文件系统


FHS:Linux文件系统标准


    /boot:系统启动相关文件,内核,initrd,grub
    /dev:设备文件
            块设备:随机访问
            字符设备:线性访问,按字符为单位
            设备号:主设备号(major),次设备号(minor)
    /etc:配置文件
    /home:用户家目录
    /root:管理员的家目录
    /lib:库文件
        /lib/modules:内核模块文件
        动态库:    .so
        静态库:    .a
    (/lost+found:意外关机损失的文件)
    /media:挂载移动设备
    /mnt:额外的临时文件系统
    /opt:可选目录,以前的第三分程序安装目录
    /proc:伪文件系统,内核映射文件,实际在内存中
    /sys:伪文件系统,跟硬件设备相关的属性映射文件,实际在内存中
    /tmp:临时文件
    /var:可变化的文件
        /var/run:运行的程序的pid
        /var/tmp:临时文件
    /bin:可执行文件,用户命令
    /sbin:管理命令(主要用于启动系统,修复系统)
    /usr: shared,read-only
        /usr/bin
        /usr/sbin(放置一些用户安装的系统管理的必备程序)
        /usr/lib
    /usr/local:
        /usr/local/bin
        /usr/local/sbin
        /usr/local/lib
命名规则:
    1.长度不能超过255个字符
    2.不能使用/字符
    3.严格区分大小写


相对路径:
绝对路径:


文件管理
    touch:修改时间戳
        -a: accesss
        -m: modify
        -c: 不创建文件
        -t: yymmddhhmm.ss
        
    stat:显示文件状态信息
    
    nano:简单文本编辑器
    
    rm:删除文件
        \rm:使用命令本身,而不是别名(alias)
        -i:交互
        -f:强制
        -r:递归
    
练习:
    1.在/mnt下创建boot和sysroot;
    2.在/mnt/boot下创建grub;
    3.在/mnt/sysroot下创建proc, sys, bin, sbin, lib, usr, var, etc, dev, home, root, tmp
        a)在/mnt/sysroot/usr下创建bin, sbin, lib
        b)在/mnt/sysroot/lib下创建modules
        c)在/mnt/sysroot/var下创建run, log, lock
        d)在/mnt/sysroot/etc下创建init.d
    
    cp: 复制文件
        -R|-r:复制目录 目的参数可以是不存在的文件,不能是存在的文件
        -p:主要用备份,保存文件的属性,属主
        -i:交互
        -f:强制
        -a:比-p更强劲 == -dR 归档复制,用于备份
        默认跟踪链接文件,复制链接指向的文件
        -P 复制链接本身
        -L 跟踪链接文件,默认选项
        
    mv: move 移动文件
    
    install: 复制文件(不包括目录),设置属性
        -d Directory ... :  创建目录
        -m:mode
        -t: 可以指定目的
        
作业1:
    1.创建目录/backup
    # mkdir -v /backup
    2.复制目录/etc至/backup目录中,并重命名为“etc-当前日期”,如etc-2013-02-26;要求保留文件原来的属性,保持链接文件;
    cp
        -r 
        -p
        -d
    # cp -a /etc /backup/etc-2013-02-28


    命令替换
    
    3.复制文件/etc/inittab为/tmp/inittab.new,并删除inittab.new文件的后两行;
    # cp /etc/inittab  /tmp/inittab.new
    # nano /tmp/inittab.new


作业2:
    1.思考:ls命令是否可以显示某目录的整体大小,即包括其内部的所有文件的整体大小?
    2.通过帮助手册,学习使用du命令;
    # du 
        -s
        -h
    3.通过帮助,学习read命令;
    变量:内存空间,有名称
    变量赋值:


    变量替换


作业3:
    描述GPL, BSD, Apache三个开源协定的大体联系及区别。


自由软件
开源协定,版权描述


作业4:
    1.如何获取Linux当前最新的内核版本号?
        www.kernel.org
    2.列出你所了解的Linux发行版,并说明其跟Linux内核的关系。
        Linux, GNU: GNU/Linux, 源代码
        
        发行版:Fedora, RedHat(CentOS), SUSE, Debian(Ubuntu, Mint), Gentoo, LFS(Linux From Scratch)
        
目录管理
    ls
    cd
    pwd
    
    mkdir [-p][-v](递归创建)
    mkdir -pv /mnt/test/{x/m,n}
    命令行展开
        {a,b}_{c,d} = a_c a_d b_c b_d
        
    tree:显示文件目录树
    
    rmdir:[-p] 删除空目录


文件管理:
    touch,stat,file,rm,cp,mv,nano
目录管理:
    ls,cd,pwd,mkdir,rmdir,tree
运行程序
设备管理
软件管理
进程管理
网络管理


日期时间:
    date,clock,hwclock,cal
0 0