etc/issue
lsblk
lscpu
cat /proc/meminfo
cat /proc/partition
uname -r 内核版本
cat /proc/cpuinfo
lsb_release
cat /etc/redhat-release 当前版本号
whatis
mankwhatis
mandb
man
!na na 首个字符
!?ut 包含ut字符串
!$:p
!$ = esc加.
/etc/profile
/etc/profile.d/env.sh
~/.bash_profile
/root/.bash_history
history -c
history -d
history -a
history 3 最近3条历史
history -r
history -w 、data/history另存
-n 未读取过的历史
history -p ·hostname· 隐藏历史执行
history -s ·hostname· 伪造历史
echo $HISTSIZE
内存纪录历史etc/profile 硬盘历史配置~./bash_profile
boot linux内核
dev硬件设备
、dev/zero 逻辑设备
dev/null 黑洞
b块设备 每次使用都是以块为单位 c字符设备以字符为单位写数据
块设备随机输入 字符设备按顺序输入 块设备有缓存 字符没有缓存
etc配置文件
root 家目录
run 运行文件
bin 二进制文件
sbin 管理员二进制文件 bin /usr/bin 类似
lib放程序库
var 缓存数据数据数据可变数据
media 外围设备
proc内存信息修改存不住
sys硬件信息
linux 文件系统目录结构 LSB 标准
linux是单根的结构
linux大小写敏感针对linux ext4 xfs
属性存元数据
文件数据放在数据
文件最长255字节
×××管道文件
a.sh
nano /etc/DIR_COLOR 定义文件颜色
斜杠和空不能作为文件名
buffer缓冲区
内存写入硬盘 先放到内核buffer缓冲区 多个数据都放在buffer ,之后再放入硬盘,buffer放的是可变数据RAM
硬盘先读 数据到内核缓存cache空间 然后在用户直接从缓存数据读取,如果数据变化须重新从硬盘读取 高速缓存RAM放的是固定数据读取快
原理就是快速设备代替慢速设备
cpu读取 cache
l软连接
P管道文件
两个软件不能互相通信,如果想通信就管道,数据先发个管道pipe之后在传,管道是单向传输
s套接字
两个软件不能互相通信,如果想通信就套接字,数据可以互相通信,相互传输socket
物理磁盘
选磁盘0
完成
加虚拟硬盘
ls /sys/class/scis_host/host2/scan
alias scandisk="echo '- - -' >/sys/class/scsi_host/host0/scan;echo '- - -' >/sys/class/scsi_host/host1/scan;echo '- - -' >/sys/class/scsi_host/host2/scan"
触发对硬件设备扫描
lsblk 看硬件触发
加硬盘做别名 scandisk host0 host1 host2
相对路径对当前工作目录路径描述 对pwd的路径描述
开始就是根就是绝对路径
pwd -P 软连接看真实路径
PWD -L
PWD -P
basename /etc/sysconfig/network-scripts network-scripts 取文件名 基名
dirname /etc/sysconfig/network-scripts /etc/sysconfig/ 取目录名
[root@centos7 ~]#basename ./99
99
[root@centos7 ~]#dirname ./99
.
[root@centos7 ~]#dirname ./99
ls -R 目录递归
ls -d 列出目录自身
ls默认是竖着排序
ls -S 时间排序
ll --time=atime
读时间atime,
index.html 网页一般不纪录读时间
ll 是修改时间
Access: 2019-03-06 19:55:53.417712884 +0800
Modify: 2019-03-06 17:24:18.747857874 +0800
Change: 2019-03-06 17:24:18.747857874 +0800
ls -t mtime
ls -ut atime
ls -U文件起始创建的时间排序
ls -d . 当前目录隐藏文件
通配符对文件名 通配符做不到全是数字匹配也就是单一字符匹配
ls / 不匹配隐藏文件 不包括.
? 单一字符
~+ 当前工作目录
~- 前一个工作目录 ~-/ cat~-/etc
alpha digit alnum space upper f[[:upper:]] blank双括号代表1个字符
ls f1{1..10}.txt = f1.txt f2.txt .......f10.txt
ls f[^admx].txt 托字符
ls f[a-c].txt fa fA fb fB 按小写大写字母排序
f[a-Z] 大小写
ls -d ^Car/l[0-9][[:lower:]]
第二教室
cp -a
cp -r =R
cp -i
cp -t
cp -av
cp本身命令会丢失数据 所以后边一般加-i
cp-f 删除加覆盖
cp -p
cp -u 更新最新的文件时间,用来更新数据,节约资源
cp -b 如果文件已存在会存在备份给文件加~符,只能保留最新版本
cp --backup=numbered 保留多个版本并加编号
必须加n才能保存多个并以字母显示
cp -t dir soure
一个文件复制如果文件不存在 则正常创建
一个文件复制如果文件存在 则覆盖有丢失数据风险
一个文件复制如果目录存在 则在目录建个与原名相同
cp -r /etc/adc /data/abc 如果文件夹已存在则在abc下adc 执行2次则在abc/adc询问覆盖
如果文件夹不存在则改名 ,
scp 远程拷贝 知道权限和用户密码
scp /etc/cen 192.168.36.6:/data
E
桥接网卡 见课堂截图
centos 6.10
nano /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=dhcp
service NetworkManager stop
service restart network
老师网卡
scp /root/.bashrc root@192.168.209.129:/root/ 连接局域网里我的另一个主机的root账户并且传送数据
输出yes
mv 可以移动 改名
rm -- -h = rm ./-h 删除带有标志的文件
rm相当危险 删除一定要仔细看
rm -f sjjjas 不删不报错
-f删除慎用
rm -f慎用
工作中测试环境生产环境容易搞糊涂,所有rm风险很大
mv作业看图
挂载点文件夹删不了 /data
rm 有些内存数据所以删不了
rm -rf /* /data
rm 定义别名最好
tree -L level /boot
mkdir -p /data/a/b/c 递归目录 parent父母 从上往下建文件夹
rmdir -p /data/a/b/c 从下往上删 只能删空文件夹
mkdir -pv /testdir/dir1/{x,y}/{a,b}
mkdir -pv /testdir/dir1/{x,y{a,b}}
mkdir -pv /testdir/dir{4,5,6/dir{7,8]}
cp /dev/zero /boot/bigfile
在生产中空间满了后果很严重,如果另外一个访问这个文件,这个文件空间是没有释放
lsof |grep delete 看删除文件信息
用 >/boot/bigfile 把空重定向到这个文件 则rm -f /boot/bigfile 删除
ext4系列的inode节点表
inode table
ll -i 查看节点编号
inode 文件由元数据和数据组成
元数据文件属性 metadata
inode number 数据 data
指针指向数据块 数据块大小 1k,2k,4K
直接指针 直接的路径
直接指向数据所在位置直接指针12个,
如果文件超过48K则用间接指针
间接指针 指向数据块 数据块则有4字节指针有4k/4b=1024
inode 节点号在同一个分区中唯一
basename
dirname
文件夹data/dir1/f1,f2
文件夹数据块是文件列表 2000 f1 放i节点 和文件名
2001 f2
删文件删的是纪录 inode 文件名
删除文件有可能还原 把block块指针指向新节点
物理破话能彻底销毁硬盘 如消磁,粉碎
df -i看节点编号存放
如果节点编号用光则不能见新文件
touch f{1..523948}
echo f{1..523948} |xargs touch
xargs 是一条 Unix 和类 Unix 操作系统的常用命令;
它的作用是将参数列表转换成小块分段传递给其他命令,
以避免参数列表过长的问题。可单独使用
,也可使用管道符、重定位符等与其他命令配合使用
硬盘空间不足 no space left on device
节点编号 占满 , 和 数据文件占用
cp /etc/fstab /data/f1.txt
分配一个i节点 之后把数据复制新的数据块之后指x向他i节点
不同分区
mv /etc/fstab /data/f1.txt
先分配一个i节点 数据复制新的数据块之后指向他新分配i节点,删除旧的节点编号和旧的数据
mv /root/fstab /root/f1.txt
如果在同一分区则是改名,位置改变
rm 删文件是删的是名字和名字所在i节点 目录下的所在文件数据块
备份就是把数据分散在别的地方
invalid cross device link 不能跨分区
硬链接在同一分区下创建,不能夸分区,不能给目录创建硬链接
本质文件起多个名字 节点号相同,链接数会递增
软连接不能连接已有文件
http://github.com 搜索kernel torvalds/linux
方便开发人员源代码下载 linux内核
人的能力在分析和解决问题
blog.51cto.com
写博客的目的自己记录
word存储不仅是信息而是一种展示格式
markdown易读纯文本格式编写文档maekdown转换成xhtml和html
纯文本文件转换成为第三方文件
github 默认markdown格式文本文件
##标题
*可以加粗斜体
*加粗
单独可以显示下划线
一个*斜体
hello 引用就是案例
嵌套引用
有序列表 如果加空格则往后排序
- a
- b
- c
无序列表
空行则控制段落
空格控制行数#!/bin/bash
反引号
顶端4个空格可以把底色变浅灰色
| 把表格隔开 ------:右对齐 :-------: 居中
www.baidu.com []代表意思 后面代表连接连接带协议
!www.baidu.com 加连接图片 ,如果图片在本地则可以发上去直接文件名
```bash 可以看到解析语言并且底色变成浅灰色
fddfsa
vscode 文本编辑器
https://code.visualstudio.com/
创建blog.md文件拖到
preview blog.md
https://github.com/CuteFishCat/markdown/blob/master/chapter01.md
博客操作网页
每天星期1要发宗华老师博客文章
转载于:https://blog.51cto.com/14230597/2368367