day 13 命令行模式特殊字符and 硬链接

Day 13


作者:翟玉龙

归档:课堂笔记

2019/3/18

快捷键:

Ctrl  + 1    标题1

Ctrl  + 2    标题2

Ctrl  + 3    标题3

Ctrl  + 4    实例

Ctrl  + 5    程序代码

Ctrl  + 6    正文

格式说明:

蓝色字体:注释

黄色背景:重要

绿色背景:注意

老男孩教育教学核心思想6重:重目标、重思路、重方法、重实践、重习惯、重总结

学无止境,老男孩教育成就你人生的起点!

联系方式:

网站运维QQ交流群:

Linux 385168604架构师390642196

Python 29215534大数据421358633

官方网站:

http://www.oldboyedu.com 

目录

学无止境,老男孩教育成就你人生的起点!... 1

第1章 SELinux. 1

1.1 安全规则让Linux系统更安全的一套规则... 1

1.2 怎么关掉selinux. 1

1.2.1 临时关闭... 1

1.2.2 永久关闭... 1

第2章 老男孩思想之优秀的运维思想... 1

第3章 防火墙简介... 1

第4章 硬链接... 2

4.1 什么是硬连接?... 2

第5章 通配符知识与实践... 3

5.1 通配符... 3

5.1.1 基本含意... 3

通配符就是键盘上的一些特殊字符,实现某些特殊的功能... 3

5.1.2 适用范围... 3






[if !supportLists]第1章 [endif]SELinux

[if !supportLists]1.1 [endif]安全规则让Linux系统更安全的一套规则

但是这个规则太严格了,所以一般情况下都会关闭selinux

[if !supportLists]1.2 [endif]怎么关掉selinux

查看状态getenforce

[if !supportLists]1.2.1 [endif]   临时关闭

       Setenforce  0

[if !supportLists]1.2.2 [endif]   永久关闭

  /etc/selinux/config

[if !supportLists]第2章 [endif]防火墙简介

Linux 里的防火墙 C6 iptables   C7 firewalld

作用:防护计算机 防止被入侵

Systemctl  status firewalld.service

开机自启动4

Systemctl enable firewalld.service

开机不启动即使

   Disable

C6用法

     Chkconfig  iptables[if !vml]

[endif]off

[if !supportLists]第3章 [endif]硬链接

[if !supportLists]3.1[endif]   什么是硬连接?

具有相同inode 节点号的文件互为硬链接



一个文件的两个入口。

[root@oldboyedu~]# ls -ldi test test/.

16964029drwxr-xr-x. 2 root root 4096 Oct  1 14:07test

16964029drwxr-xr-x. 2 root root 4096 Oct  1 14:07test/.

[root@oldboyedu/data]# ls -ldi oldboy

33631853drwxr-xr-x. 5 root root 45 Oct  4 21:03oldboy

[root@oldboyedu/data]# ls -ldi oldboy oldboy/. oldboy/test{1..3}/..

33631853drwxr-xr-x. 5 root root 45 Oct  4 21:03oldboy

33631853drwxr-xr-x. 5 root root 45 Oct  4 21:03oldboy/.

33631853drwxr-xr-x. 5 root root 45 Oct  4 21:03oldboy/test1/..

33631853drwxr-xr-x. 5 root root 45 Oct  4 21:03oldboy/test2/..

33631853drwxr-xr-x. 5 root root 45 Oct  4 21:03oldboy/test3/..

2.硬链接的原理 

相同文件不同名字

3  测试

创建硬链接

 Ln   原文件  硬链接文件

A  文件的硬链接a.文件硬链接

[root@oldboyedu/data]# echo "I am oldboy." >oldboy.txt

[root@oldboyedu/data]# cat oldboy.txt

I am oldboy.

[root@oldboyedu/data]# ln oldboy.t

oldboy.tar.gz  oldboy.txt    

[root@oldboyedu/data]# ln oldboy.txt oldboy_hard_link

[root@oldboyedu/data]# ls -lirt

total 20

33631860 -rw-r--r--.1 root root   0 Oct  1 00:19 5.txt

33631855-rw-r--r--. 1 root root   0 Oct  1 00:19 4.txt

33631847-rw-r--r--. 1 root root   0 Oct  1 00:19 3.txt

33631845-rw-r--r--. 1 root root   0 Oct  1 00:19 2.txt

33631841-rw-r--r--. 1 root root   0 Oct  1 00:19 1.txt

33656236-rw-r--r--. 1 root root  18 Oct  1 09:01 paichu.txt

33631869-rw-r--r--. 1 root root 187 Oct  1 09:01oldboy.tar.gz

33656257-rwxr-xr-x. 1 root root  14 Oct  1 11:07 test.txt

33631853drwxr-xr-x. 5 root root  45 Oct  4 21:03 oldboy

33656238-rw-r--r--. 2 root root  13 Oct  4 21:10 oldboy.txt

33656238-rw-r--r--. 2 root root  13 Oct  4 21:10 oldboy_hard_link



作用:

1、备份,防止误删。

[root@oldboyedu/data]# ln /etc/hostname /opt/hostname

[root@oldboyedu/data]# cat /opt/hostname

oldboyedu

[root@oldboyedu/data]# rm -f /etc/hostname

[root@oldboyedu/data]# cat /etc/hostname

cat:/etc/hostname: No such file or directory

[root@oldboyedu/data]# cat /opt/hostname

oldboyedu

[root@oldboyedu/data]# ln /opt/hostname /etc/hostname

[root@oldboyedu/data]# cat /etc/hostname

oldboyedu

作用,备份 防止误删

Linux里不支持人工对目录创建硬链接

Linux 文件删除原理

[if !vml]

[endif]

[if !supportLists]1.     [endif]静态文件,:没有进程或者程序正在访问的文件

所有的硬链接数为0(i_link)  即所有硬链接都被干掉了,包括自身

硬链接的数量的代表变量符号I_link

Rm -f

oldboy.txtt oldboy_hard_link 执行完,其实文件也没删

A.系统会定时清理没有文件名的inode

     b.磁盘检查的时候会清理

     c.当增加新文件是会优先占用没有文件名的inode

恢复工具:debugfs,ext3grep等等

但是亡羊补牢实不可取的,直接违反运维的三大职责

解决方法:多备份,操作前备份,异服务器备份和异地备份

[if !supportLists]2.     [endif]动态文件:有程序或进程访问的文件

[if !supportLists]A.    [endif]i_link为0

[if !supportLists]B. [endif]i_count为0 。i_count是进程调用文件的数量(引用计数),所有进程调用都要停止取消。

[if !supportLists]3.     [endif]实践文件删除原理。

环境准备,命令集合如下:

mkdir -p /app/logs                           #<==创建用于挂载的目录。

dd if=/dev/zero of=/dev/sdc bs=8K  count=10 #<==创建指定大小的文件。

mkfs.ext4 /dev/sdc                           #<==格式化。

mount -o loop /dev/sdc /app/logs             #<==挂载。

df -h                                        #<==检查挂载结果。

实践:

[root@oldboyedu /data]# cd /app/logs/

[root@oldboyedu /app/logs]# touch nginx.log

[root@oldboyedu /app/logs]# tail -fnginx.log


[root@oldboyedu /app/logs]# cat/etc/services >>nginx.log

cat: write error: No space left on device

[root@oldboyedu /app/logs]# df -h

Filesystem      Size Used Avail Use% Mounted on

/dev/sda3        19G 1.9G   18G  10% /

devtmpfs        980M  80K  980M   1% /dev

tmpfs           991M     0 991M   0% /dev/shm

tmpfs           991M 9.5M  981M   1% /run

tmpfs           991M     0 991M   0% /sys/fs/cgroup

/dev/sda1       253M 136M  118M  54% /boot

tmpfs           199M     0 199M   0% /run/user/0

/dev/loop0       73K  71K     0 100% /app/logs


2


明明删除了,结果还是100%。

[root@oldboyedu /app/logs]# rm -f nginx.log

[root@oldboyedu /app/logs]# lsof|grep nginx

tail     7927         root    3r     REG                7,0     57344         12 /app/logs/nginx.log (deleted)


[root@oldboyedu /app/logs]# df -h

Filesystem      Size Used Avail Use% Mounted on

/dev/sda3        19G 1.9G   18G  10% /

devtmpfs        980M  80K  980M   1% /dev

tmpfs           991M     0 991M   0% /dev/shm

tmpfs           991M 9.5M  981M   1% /run

tmpfs           991M     0 991M   0% /sys/fs/cgroup

/dev/sda1       253M 136M  118M  54% /boot

tmpfs           199M     0 199M   0% /run/user/0

/dev/loop0       73K  71K     0 100% /app/logs


重来:

模拟进程读文件:

[root@oldboyedu /app/logs]# touch nginx.log

[root@oldboyedu /app/logs]# tail -fnginx.log


ln nginx.log nginx_hard.log


当前:

i_link=2

i_count=1


模拟把文件变大,让分区满

[root@oldboyedu /app/logs]# cat/etc/services >>nginx.log

cat: write error: No space left on device

[root@oldboyedu /app/logs]# df -h

Filesystem      Size Used Avail Use% Mounted on

/dev/sda3        19G 1.9G   18G  10% /

devtmpfs        980M  80K  980M   1% /dev

tmpfs           991M     0 991M   0% /dev/shm

tmpfs           991M 9.5M  981M   1% /run

tmpfs           991M     0 991M   0% /sys/fs/cgroup

/dev/sda1       253M 136M  118M  54% /boot

tmpfs          199M     0 199M   0% /run/user/0

/dev/loop0       73K  71K     0 100% /app/logs


分区满了:清理,删除。


删除源文件

[root@oldboyedu /app/logs]# rm -f nginx.log

结果:

i_link=1

i_count=1



ctrl+c 中断进程调用文件

结果:

i_link=1

i_count=0



删除硬链接文件

[root@oldboyedu /app/logs]# rm -fnginx_hard.log

结果:

i_link=0

i_count=0


[root@oldboyedu /app/logs]# df -h

Filesystem      Size Used Avail Use% Mounted on

/dev/sda3        19G 1.9G   18G  10% /

devtmpfs        980M  80K  980M   1% /dev

tmpfs           991M     0 991M   0% /dev/shm

tmpfs           991M 9.5M  981M   1% /run

tmpfs           991M     0 991M   0% /sys/fs/cgroup

/dev/sda1       253M 136M  118M  54% /boot

tmpfs           199M     0 199M   0% /run/user/0

/dev/loop0       73K  14K   54K  21% /app/logs


软链接:

本质是快捷方式 指向原文件实体,本身和原文件是不同的文件

目录

必会面试题:

软链接和硬链接的区别?

                        第十章特殊符号

[if !supportLists]第4章 [endif]通配符知识与实践

[if !supportLists]4.1 [endif]通配符

[if !supportLists]4.1.1 [endif]基本含意

通配符就是键盘上的一些特殊字符,实现某些特殊的功能

例如可以用*来代表所有模糊查找系统中的文件

[if !supportLists]4.1.2 [endif]适用范围

命令行中普通命令或者脚本编程中。

[if !vml]

[endif]

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,445评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,889评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,047评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,760评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,745评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,638评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,011评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,669评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,923评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,655评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,740评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,406评论 4 320
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,995评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,961评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,023评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,483评论 2 342

推荐阅读更多精彩内容