Linux学习笔记

Linux学习笔记

1、Linux目录介绍

这里写图片描述
最重要的是根目录:/
root:超级管理员目录
etc:配置文件目录
usr:软件安装目录
lib :系统函数库
var:软件下载目录
sbin:系统级可执行命令
bin:可执行命令目录
dev:设备目录
mvt:挂载点目录
tmp:临时文件目录
home:用户主目录
opt:可选软件安装目录
proc:虚拟文件目录
lost+found:系统异常临时存放目录

2、文件权限与目录配置

用户相对于文件、目录的角色:user、group、others;
普通权限分为:可读r、可写w、可执行x;
特殊权限分为:SUID(用户所有权)\SGID(用户组所有权)\SBIT(仅用户删除权);
隐藏属性attr分为:不可变动i、只准增加a、不可备份d、自动压缩c、硬删除s、软删除u;

一个文件只能属于一个user和一个group;
一个目录需要具有r+x权限才能被读取,w则可删除、修改目录里的文件;

  • 修改文件属性和权限
    chgrp:修改文件所属用户组
    chown:修改文件所有者
    chmod:修改文件权限
  • 目录的四种形态:
    可分享、不可分享、可变动、不可变动
    主要分区:
    根目录:/,不可分享、不可变动
    软件安装区:/usr,可分享、不可变动
    可变区:/var、可分享、可变动
    home目录:/home,不可分享、可变动

3、文件与目录管理

  • 相对路径与绝对路径
    当前目录: ./
    父目录:../
  • 目录命令
    cd:切换目录
    pwd:显示当前目录
    mkdir:创建目录
    rmdir:删除目录
    ls:查看目录
    mv:移动文件或目录
    cp: 复制文件或目录
    rm:删除文件或目录
    basename:取文件名
    dirname:取目录名

    设置目录的默认权限:umask
    默认权限中,目录的最大权限是777,文件的最大权限是666
    默认权限的值:0002,分别为attr\r\w\x权限;表示最大权限减去该值后则是文件或目录权限;
    查看隐藏属性:lsattr
    修改隐藏属性:chattr

  • 环境变量$PATH
    不同用户的默认PATH是不同的;
    修改PATH:PATH=”$PATH”: /newDir

4、磁盘与文件系统管理

每一个分区都有一个独立的文件系统;

硬盘的一些概念:

  • 扇区:最小的存储单位,每个扇区是512byte。最重要的是第一扇区,包含了主引导记录MBR(446byte)、分区表(64byte,这决定了一个硬盘最多4个主分区)。
  • 柱面:最小分区单位。

EXT文件系统的一些概念:

  • 超级块superBlock:1024byte,记录整个文件系统的使用信息,包括inode/block总量、使用量、剩余量等;
  • inode:记录文件的属性,每个128byte,一个文件对应一个inode,包括权限、用户组、时间、数据块指针(N个);
  • block:数据块(N个)大小有1K、2K、4K,存放实际的文件数据,每个block最多只能放置一个文件的数据,可能会有浪费;
  • 块 组:包含inodeTable、superBlock、block、inodeMap对应表、blockMap对应表,便于管理;
  • inodeTable:存放inode、inodeNumber的对应关系,与目录块、inode相关;
  • inodeMap对应表:记录inode分配与否;
  • blockMap对应表:记录block分配与否;
  • 目录块:每个目录都会有一个或N个block,存放文件名与该文件的inodeNumber;
    注意:inode本身不记录文件名,文件名记录在目录的block中;
    数据在内存中的状态:clean和dirty;sync将dirty内容同步回硬盘;

ext2是传统的文件系统(遍历硬盘检查异常数据并修复);
ext3是日志文件系统(采用日志修复数据);

新增磁盘需要进行以下操作:

  • 分区:fdisk、parted
  • 格式化(决定了inode、block的数量和位置):mkfs
  • 挂载:mount、卸载umount
  • 其他辅助,如磁盘检查fsck、badblocks
  • 磁盘参数修改:mknod、e2label、tune2fs

挂载

挂载:指将分区(文件系统)跟目录关联;
命令:mount
开机自动挂载配置:
配置文件:/etc/fstab、/etc/mtab

文件系统的管理

VFS:虚拟文件系统,用来管理多个、不同的文件系统,对用户屏蔽差异性;
这里写图片描述
硬链接:多个文件名指向同一个inodeNumber;
软连接:新建一个inode,指向该文件的inode;
硬链接的限制:

  • 不能跨分区;
  • 不能连接到目录;

5、文件的压缩与打包

压缩的简单描述:

文件的btye中的bit大部分是没有被使用的或者重复的,利用算法将这些没被使用的、重复的bit精简下来,就是压缩技术。

解压缩的简单描述:

压缩的逆过程;
  • 常见的压缩类型:gz、Z、bz2
  • 打包类型:tar
  • 打包加压缩:tar.gz、tar.bz2

压缩命令:gzip、bzip2,只能压缩文件,目录需要先打包成tar
解压缩命令: gzip -d、bzip2 -d
读取压缩的文本文件数据:zcat f.gz、bzcat f.bz2

打包的简单描述:

将一对文件、目录打包为一个文件xxx.tar;

打包+压缩为.gz:tar -zcvf pkg.tar.gz *
打包+压缩为bz2:tar -jcvf pkg.tar.bz2 *
排除部分文件不压缩: 增加 –exclude参数

解压缩.gz+解包:tar -zxvf pkg.tar.gz -C /tmp/ 指定解压目录/tmp/
解压缩.bz2+解包:tar -jxvf pkg.tar.bz2 -C /tmp/指定解压目录/tmp/

利用打包备份:tar -cvf /dev/st0 /home /etc /root
打包某时刻后的新文件:tar -jcvf pkg.tar.bz2 –newer-mtime=’2018/01/01’ /etc/*
利用管道或数据流,实现边打包、边解压缩到当前目录:
tar -cvf - /etc/* | tar -xvf -

备份工具dump

  • 备份单一文件系统:全功能、完整备份+差异备份、crontab定时备份
  • 备份目录 :有限制
    全备份、本目录、不记录备份时间

备份命令:dump -0jf dumpFile.bk /root
恢复命令:restore -f dumpFile.bk
备份到光盘的步骤:

  • 制作ISO备份文件:mkisofs
  • 刻录到光盘:cdrecord

    其他压缩和备份工具:
    dd:dd if=inputFile of=outputFile

6、bash

简单描述bash:

bash就是个应用程序,可调用其他应用程序,通过操作系统提供的接口,调用内核程序,执行相应的操作。

bash的功能

  • 命令记忆功能:history可查看当前用户曾调用的命令;~/.bash_history存放当前用户上一次登录所使用过的命令;
  • 命令与文件补全功能:tab(2次)
  • 别名功能:设置alias,alias lm=’ls -al’
  • 作业控制、前台、后台:
  • 脚本:
  • 变量:包括环境变量:PATH\HOME\MAIL\SHELL\LANG\HISTSIZE\MAIL\RANDOM\等;自定义变量;
  • 其他bash变量(不是环境变量):PS1$\?\OSTYPE\HOSTTYPE\MACHTYPE\
    变量设置规则:实例
正确错误
var=abcvar = abc
var=$PATH2var=$PATH
var=’I love you’var=I love you
var=”my home is $HOME” 取变量var=’my home is $home’ 纯文本
var=`uname -r` or var=$(uname -r) 执行命令var=uname -r
PATH=$PATH:/home/bin 追加内容

设置环境变量:export VAR,子程序可以继承父程序的环境变量;相反则不行;
取消变量:unset VAR
查看环境变量:env
查看所有变量:set
`uname -r` | $(uname -r):两者等效,指优先执行其内的命令;
声明类型:declare、typeset

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值