3.18 課堂筆記

軟硬連接及文件刪除原理

文件屬性

[root@oldboyedu ~]# ls -lhi

total 32K

33631870 -rw-r--r--. 1 root root? ? ? 4 Mar 13? 2019 a.txt

一第二列結(jié)尾的. 是標(biāo)識selinux的符號

1畅买、selinux是什么乘综?

安全規(guī)則钉赁,讓Linux系統(tǒng)更安全的一套規(guī)則。

這個規(guī)則太嚴(yán)格了枪芒,一般的情況下都會關(guān)閉selinux。

自己開啟防火墻啊,用其他手段來實現(xiàn)同樣的安全目的抛蚁。

2、怎么關(guān)掉Selinux惕橙?

查看方法:

getenforce

臨時關(guān)掉:

setenforce

永久關(guān)閉:

vim /etc/selinux/config

SELINUX=disabled

Linux里防火墻

C6 iptables? C7 firewalld

作用:防護(hù)計算機(jī)瞧甩,防止被入侵。

檢查:systemctl status firewalld.service

開啟firewalld(C6 service iptables start 或者/etc/init.d/iptables start)

systemctl start firewalld.service

讓firewalld開機(jī)自啟動

systemctl enable firewalld.service

C6用法:chkconfig iptables off

C7就是一個命令systemctl

二.第三列 硬連接數(shù)

[root@oldboyedu ~]# ls -lhi

total 32K

33631870 -rw-r--r--. 1 root root? ? ? 4 Mar 13? 2019 a.txt

? ? ? ? ? ? ? ? ? 硬鏈接數(shù)

1弥鹦、什么是硬鏈接肚逸?

具有相同inode節(jié)點號的文件互為硬鏈接。

一個文件的兩個入口惶凝。

2.測試

創(chuàng)建硬鏈接:

ln 源文件 硬鏈接文件

a.文件硬鏈接

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

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

[root@oldboyedu /data]# ls -lirt

total 20

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

b.目錄硬鏈接

不支持人工創(chuàng)建目錄硬鏈接吼虎。

[root@oldboyedu /data]# ln oldboy oldgirl

ln: ‘oldboy’: hard link not allowed for directory

作用:

1、備份苍鲜,防止誤刪思灰。

軟鏈接:

本質(zhì)是快捷方式,指向源文件實體混滔,本身和源文件是不同的文件洒疚。

工作中為什么會使用軟鏈接。

第一個用途:

安裝軟件:/application/nginx-1.10

過半年:/application/nginx-1.20

導(dǎo)致一個問題坯屿,工作中油湖,開發(fā)等引用/application/nginx-1.10路徑。

安裝軟件:/application/nginx-1.10===>/application/nginx(讓開發(fā)用)

過半年:? /application/nginx-1.20===>/application/nginx(讓開發(fā)用)

第二個用途:

/etc/對應(yīng)的分區(qū)要滿了领跛,沒法放很多文件乏德,但是程序還想通過/etc/目錄訪問文件。

此時吠昭,我們可以把文件放入/opt/oldboy下喊括,然后做一個到/etc/oldboy的軟鏈接。

三.軟鏈接和硬鏈接的區(qū)別矢棚?

1.定義不同郑什。軟連接類似于快捷方式,硬鏈接與原文件有相同的inode可以指向數(shù)據(jù)block

2.創(chuàng)建方式不同蒲肋。硬鏈接:ln[原文件]蘑拯;軟連接:ln -s[原文件]

3.創(chuàng)建對象不同钝满。軟連接可以跨越文件系統(tǒng),對目錄和客戶創(chuàng)建的文件軟連接申窘,硬鏈接則不能

4.刪除軟連接文件弯蚜。對原文件和硬鏈接無影響

5.刪除文件硬鏈接。對原文件和軟鏈接文件無影響

6.刪除原文件偶洋。對硬鏈接讀取數(shù)據(jù)無影響熟吏,軟連接則失效

7.同時刪除原文件和硬鏈接。原文件會被刪除

8.硬鏈接原理類似于快照

四.Linux文件刪除原理:

1玄窝、靜態(tài)文件:沒有進(jìn)程或程序正在訪問的文件牵寺。

所有的硬鏈接數(shù)為0(i_link),即所有硬鏈接都被干掉了恩脂,包括自身帽氓。

硬鏈接的數(shù)量的代表變量符號i_link

rm -f oldboy.txt oldboy_hard_link

執(zhí)行完 其實文件也沒刪,關(guān)機(jī)停止運行俩块。

a.系統(tǒng)定時清理沒有文件名的inode黎休。

b.磁盤檢查會清理。

c.增加新文件時優(yōu)先占用沒有文件名的inode玉凯。

恢復(fù)的工具:debugfs,ext3grep等等势腮。

預(yù)防誤刪

多備份,操作前備份漫仆,異服務(wù)器和異地備份捎拯。

2、動態(tài)文件:有程序或進(jìn)程訪問的文件

刪除原理:

a.i_link為0? ? 所有硬鏈接刪除盲厌。

b.i_count為0? i_count是進(jìn)程調(diào)用文件的數(shù)量(引用計數(shù))署照。所有進(jìn)程調(diào)用都要停止取消。

3吗浩、實踐文件刪除原理

環(huán)境準(zhǔn)備建芙,命令集合如下:

mkdir -p /app/logs? ? ? ? ? ? ? ? ? ? ? ? ? #<==創(chuàng)建用于掛載的目錄。

dd if=/dev/zero of=/dev/sdc bs=8K? count=10? #<==創(chuàng)建指定大小的文件懂扼。

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

mount -o loop /dev/sdc /app/logs? ? ? ? ? ? #<==掛載。

df -h? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #<==檢查掛載結(jié)果阀湿。

實踐:

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

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

[root@oldboyedu /app/logs]# tail -f nginx.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

明明刪除了屡限,結(jié)果還是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

重來:

模擬進(jìn)程讀文件:

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

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

ln nginx.log nginx_hard.log

當(dāng)前:

i_link=2

i_count=1

模擬把文件變大炕倘,讓分區(qū)滿

[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

分區(qū)滿了:清理,刪除翰撑。

刪除源文件

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

結(jié)果:

i_link=1

i_count=1

ctrl+c 中斷 進(jìn)程調(diào)用文件

結(jié)果:

i_link=1

i_count=0

刪除硬鏈接文件

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

結(jié)果:

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

五.通配符知識:

1罩旋、基本含義

通配符簡單說就是鍵盤上的一些特殊字符啊央,可以實現(xiàn)某些特殊的功能,

例如涨醋,可以用*代表所有瓜饥,來模糊搜索系統(tǒng)中的文件。

2浴骂、范圍:通配符試用范圍是命令行中【普通命令】或腳本編程中乓土。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市溯警,隨后出現(xiàn)的幾起案子趣苏,更是在濱河造成了極大的恐慌,老刑警劉巖梯轻,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件食磕,死亡現(xiàn)場離奇詭異,居然都是意外死亡喳挑,警方通過查閱死者的電腦和手機(jī)彬伦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來伊诵,“玉大人单绑,你說我怎么就攤上這事〔苎纾” “怎么了搂橙?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長浙炼。 經(jīng)常有香客問我份氧,道長,這世上最難降的妖魔是什么弯屈? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任蜗帜,我火速辦了婚禮,結(jié)果婚禮上资厉,老公的妹妹穿的比我還像新娘厅缺。我一直安慰自己,他們只是感情好宴偿,可當(dāng)我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布湘捎。 她就那樣靜靜地躺著,像睡著了一般窄刘。 火紅的嫁衣襯著肌膚如雪窥妇。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天娩践,我揣著相機(jī)與錄音活翩,去河邊找鬼烹骨。 笑死,一個胖子當(dāng)著我的面吹牛材泄,可吹牛的內(nèi)容都是我干的沮焕。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼拉宗,長吁一口氣:“原來是場噩夢啊……” “哼峦树!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起旦事,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤魁巩,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后族檬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體歪赢,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年单料,在試婚紗的時候發(fā)現(xiàn)自己被綠了埋凯。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡扫尖,死狀恐怖白对,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情换怖,我是刑警寧澤甩恼,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站沉颂,受9級特大地震影響条摸,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜铸屉,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一钉蒲、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧彻坛,春花似錦顷啼、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至间驮,卻和暖如春躬厌,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背竞帽。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工烤咧, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留偏陪,地道東北人。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓煮嫌,卻偏偏與公主長得像,于是被迫代替她去往敵國和親抱虐。 傳聞我的和親對象是個殘疾皇子昌阿,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容