源碼編譯安裝、rsync同步操作滚局、inotyfy同步操作居暖、數據庫基礎、ln軟連接

源碼編譯安裝

 scp /linux-soft/1/tools.tar.gz root@192.168.4.7:/root

將真機tools的tar包拷貝并傳輸到192.168.4.7虛擬機的root目錄下

ls /root

查看root目錄下是否有真機拷貝過來的tools.tar.gz包

tar -tf /root/tools.tar.gz

查看tools.tar.gz包的內容

tar -xf /root/tools.tar.gz -C /

釋放tar包到 / 根目錄下

tar -xf /tools/inotify-tools-3.13.tar.gz -C /usr/local #tar解包

釋放tar包到/usr/local目錄下(習慣)

yum -y install gcc make #安裝開發(fā)工具gcc與make

安裝開發(fā)工具gcc軟件包和make軟件包

rpm -q gcc make

查看開發(fā)工具軟件包是否已安裝

cd /usr/local/inotify-tools-3.13

切換/usr/local/inotify-tools-3.13源碼配置文件目錄(inotify-tools-3.13可提供文件/目錄監(jiān)控工具inotifywait)

./configure #配置

運行源碼目錄下configure腳本

./configure  --help

查看configure腳本幫助

./configure --prefix=/opt/myrpm

運行腳本以后要指定安裝到哪個目錄下(-- prefix=安裝目錄藤肢,不會自動創(chuàng)建目錄)

ls Makefile

列出當前目錄下的子文件太闺,查看有沒有安裝Makefile文件

 make  #編譯

生成可執(zhí)行的二進制程序文件(放在內存中)

make install  #安裝

編譯安裝,將編譯好的文件復制安裝到目錄


  • 步驟1:安裝開發(fā)工具gcc與make嘁圈,釋放源代碼至指定目錄
  • 步驟2:tar解包省骂,釋放源代碼至指定目錄
  • 步驟3:./configure 配置,指定安裝目錄/功能模塊等選項
  • 步驟4:make 編譯最住,生成可執(zhí)行的二進制程序文件
  • 步驟5:make install 安裝钞澳,將編譯好的文件復制到安裝目錄

總結

編譯安裝inotify-tools軟件包
  • 釋放inotify-tools-3.13.tar.gz源碼包
  • 配置 ./configure
  • 編譯make、安裝make install

rsync 同步操作

rsync [選項...] 源目錄 目標目錄

  • 同步與復制的差異
    1. 復制:完全拷貝源到目標
    2. 同步:增量拷貝涨缚,只傳輸變化過的數據
sync操作選項
選項 解析
-n 測試同步過程轧粟,不做實際修改
--delete 刪除目標文件夾內多余的文檔
-a 歸檔模式,相當于-rlptgoD
-v 顯示詳細操作信息
-z 傳輸過程中啟用壓縮/解壓
本地同步
mkdir   /mydir  /todir

創(chuàng)建兩個目錄

cp /etc/passwd    /mydir

將/etc/passwd用戶信息文件拷貝到/mydir目錄下

touch   /mydir/1.txt

在/mydir目錄下創(chuàng)建個叫1.txt的文件

ls /mydir

查看/mydir目錄里有沒有創(chuàng)建的1.txt文件

rsync  -av  /mydir  /todir

用rsync同步下數據(源數據沒有加/脓魏,將同步整個文件夾)

ls   /todir

查看/todir目錄下是否同步成功

rsync   -av  /mydir/   /todir

用rsync同步數據(源數據有/兰吟,同步文件夾下的數,在源數據后面加上/斜杠代表當前目錄

ls   /todir

查看/todir目錄是否同步成功

touch   /mydir/2.txt

在源數據/mydir目錄下創(chuàng)建個2.txt文件

rsync -av   /mydir/    /todir

用rsync同步數據轧拄,/mydir是源數據揽祥,/todir是目標,把源數據文件夾下的數據同步到目標文件夾下

ls   /todir

查看下/todir目錄是否同步成功

echo  123  >  /mydir/1.txt

輸出123到源數據下的1.txt文件里

rsync -av   /mydir/    /todir

用rsync同步數據檩电,/mydir是源數據拄丰,/todir是目標,把源數據文件夾下的數據同步到目標文件夾下

ls   /todir

查看/todir目錄下的文件是否同步成功

rsync  -av  --delete   /mydir/   /todir/

--delete刪除目標目錄下多余的數據(文件或目錄)俐末,源數據不變料按,用rsync同步數據

ls   /mydir/

查看源數據/mydir目錄是否發(fā)生改變

ls   /todir/

查看目標/todir目錄是否發(fā)生改變

touch   /todir/a.txt

在目標目錄里創(chuàng)建文件

ls  /todir/

查看是否創(chuàng)建成功

rsync  -av  --delete  /mydir/   /todir/

用rsync同步數據

ls   /todir/

查看目標目錄/todir是否同步數據發(fā)生變化

ls   /mydir/

查看/mydir源數據目錄是否發(fā)生變化


遠程同步
  • 與遠程的 SSH目錄保持同步
  1. 下行:rsync [...] user@host:遠程目錄 本地目錄下載(將另一臺虛擬機的數據同步到本地)
  2. 上行:rsync [...] 本地目錄 user@host:遠程目錄上傳(將本地的數據同步到另一臺虛擬機)
  • 虛擬機A的/mydir目錄的內容與虛擬機B的/opt進行同步
rsync  -av  --delete    /mydir/    root@192.168.4.207:/opt   #虛擬機A

將本地的/mydir源數據共享給4.207主機的/opt目錄下進行同步數據

ls /opt/    #虛擬機B

查看虛擬機B是否同步成功

實時數據同步
  • 虛擬機A的/mydir/目錄的內容與虛擬機B的/opt進行同步
  • 實現ssh無密碼驗證(公鑰與私鑰)
ssh-keygen  #虛擬機A

生成密鑰

ls  /root/.ssh/ #虛擬機A

id_rsa(私鑰)

id_rsa.pub(公鑰)

known_hosts(記錄曾經遠程管理過的機器)

查看.ssh里生成的公鑰和私鑰

ssh-copy-id     root@192.168.4.207  #虛擬機B

將公鑰傳遞給虛擬機B

rsync  -av  --delete   /mydir/    root@192.168.4.207:/opt

將本地的/mydir源數據共享給4.207主機的/opt目錄下進行同步數據

inotifywait基本用法

inotifywait  [選項]  目標文件夾
常用命令選項
選項 | 解析
---|---
-m | 持續(xù)監(jiān)控(捕獲一個事件后不退出)
-r | 遞歸監(jiān)控、包括子目錄及文件
-q | 減少屏幕輸出信息
-e | 指定監(jiān)視的 modify卓箫、move载矿、create、delete烹卒、attrib 等

書寫shell腳本(了解)

  • 腳本:可以運行一個文件闷盔,實現某種功能
  • 中文:新建用戶zhangsan shell: useradd zhangsan
  • 死循環(huán):while循環(huán)
    while 條件
    do
    重復執(zhí)行的事情
    done
vim   /etc/rsync.sh

在/etc目錄下新建個rsync.sh以.sh為結尾的文件并且寫入內容

while   /opt/myrpm/bin/inotifywait    -rqq    /mydir/
do
    rsync -a  --delete   /mydir/    root@192.168.4.207:/opt
done

在rsync文件里寫入while循環(huán),條件為監(jiān)控數據的更改旅急,重復執(zhí)行的事情為同步數據逢勾,只要一同步數據監(jiān)控數據就會監(jiān)聽

chmod   a+x    /etc/rsync.sh

賦予執(zhí)行權限

/etc/rsync.sh   &

運行腳本程序,將程序放入后臺

jobs  -l

查看后臺進程并顯示PID

kill  17707

停止腳本

數據庫服務基礎

  • 數據庫:存放數據的倉庫
  • 在數據庫系統(tǒng)中藐吮,有很多的數據庫溺拱,在每一個庫中有很多的表格
常見的關系型 數據庫管理系統(tǒng)
微軟 SQL Server
IBM DB2
甲骨文 Oracle逃贝、MySQL
社區(qū)開源版 MariaDB
部署MariaDB 數據庫系統(tǒng)
yum  -y  install   mariadb-server

安裝MariaDB軟件包

systemctl   restart    mariadb

啟用mariadb服務

MariaDB基本使用
  • Linux系統(tǒng)的管理指令不能使用
  • 所有的數據庫系統(tǒng)指令都必須以 ; 結尾
  • 數據庫系統(tǒng)的指令大部分不支持tab補全
mysql

進入數據庫系統(tǒng)

create  database  nsd01;

創(chuàng)建nsd01數據庫

show  databases;

查看所有數據庫

drop   database   nsd01;

刪除數據庫nsd01

show  databases;

查看所有數據庫

exit;

退出數據庫系統(tǒng)

mysql

進入數據庫系統(tǒng)

use  mysql;

切換到mysql數據庫

show   tables; 

查看當前庫中所有表格

show   databases; 

查看所有數據庫

use  test;

切換到test數據庫

exit;

退出數據庫系統(tǒng)

為數據庫系統(tǒng)管理員設置密碼
  • mysqladmin [-u用戶名] [-p[舊密碼]] password '新密碼'
    • 數據庫系統(tǒng)管理員:對于數據庫系統(tǒng)有最高權限,名字為root迫摔,能夠登陸數據系統(tǒng)的用戶信息有mysql庫中user表進行儲存
    • Linux系統(tǒng)管理員: 對于Linux系統(tǒng)有最高權限沐扳,名字為root,能夠登陸Linux系統(tǒng)的用戶信息/etc/passwd進行儲存
mysqladmin  -u   root       password     '123'

指定root用設置密碼為123

mysql  -u   root   -p

交互式進行登錄

mysql  -u   root    -p456

非交互式進行登錄

mysqladmin  -u   root    -p123       password    '456'

已知舊密碼修改新密碼

mysql  -u  root    -p456

非交互式進行登錄

mysql   -u   root    -p456

進入數據庫系統(tǒng)

create  database  nsd01;

創(chuàng)建nsd01數據庫

show  databases;

查看所有數據庫

exit;

退出數據庫系統(tǒng)

傳遞備份好的數據文件users.sql到虛擬機A中
  • 點擊真機root選擇其他位置句占,輸入連接到服務器ftp地址172.96.8.78進入2104把users.sql拖動到真機的root下
ls  /root

查看root下是否有users.sql文件

scp /root/users.sql root@192.168.4.7:/root

把users.sql文件以root的身份拷貝到4.7虛擬機的root下

恢復數據到數據庫
mysql -u root    -p456    nsd01   <  /root/users.sql

把users.sql文件恢復到mysql的nsd01倉庫

mysql  -u  root   -p456

非交互式進行登錄

MariaDB [(none)]> use nsd01;   

切換到數據庫nsd2104

MariaDB [nsd01]> show tables;

查看當前庫有哪些表格

+-------------------+
| Tables_in_nsd01 |
+-------------------+
| base              |
| location          |
+-------------------+
表格操作
  • 增(insert) 刪(delete) 改(update) 查(select)

–表字段沪摄、表記錄

編號 姓名 住址

1 Dc 東村

2 Tc 西村

查(select)
  • 格式: select 表字段,表字段辖众,…… from 庫名.表名;
select   *   from   base;

查看base所有表字段內容

select   *   from   location;

查看location所有表字段內容

use  test;

切換到test倉庫

select   *   from    nsd01.base;

在另外一個倉庫查看base表格里的所有表字段內容加上指定要查看的倉庫

use  nsd01;

切換到nsd01倉庫

select   id,name    from     base;

查看指定的表字段

select  *   from    base    where   password='456';

查看指定的密碼為456

select  *    from   base    where   id='4';

查看指定的id為4

select  *  from  base    where  id='4'  and   password='123';

查看指定的id為4并且查看指定的密碼為456

select  *  from base    where  id='4'  or   password='123';

查看指定的id為4或查看指定的密碼為456

增(insert)
  • insert 表名 values (‘值’,‘值’,‘值’);
MariaDB [nsd01]> insert   base  values('10','dc','789');

添加id為10卓起,名字為dc,密碼為789

MariaDB [nsd01]> insert   base  values('11','tcc','369');

添加id為10凹炸,名字為dc戏阅,密碼為789

MariaDB [nsd01]> select   *   from base ;

查看base所有表字段內容

改(update)
  • update 表名 set 表字段=‘新值’ where 表字段=’值’;
select   *  from  base ;

查看base所有表字段內容

update   base   set   password='8888'    where   id='1';

修改base表格的password密碼為8888和id為1啤它,如果不指定id的話奕筐,會把所有的密碼覆蓋掉全部改為8

select  *  from   base ;   

查看base所有表字段內容

update  base   set   password='9999'    where   id='2';

修改base表格的password密碼為9999和id為2,如果不指定id的話变骡,會把所有的密碼覆蓋掉全部改為9

select  *  from   base ;

查看base所有表字段內容

刪(delete)
delete   from   base   where     id='4' ;

刪除base表格里指定的id為4

select   *   from   base ;

查看base所有表字段內容

delete   from   base   where     id='3' ;

刪除base表格里指定的id為3

select   *   from   base ;

查看base所有表字段內容

制作鏈接 (連接)文件(制作快捷方式)
  • 格式:ln -s /路徑/源數據 /路徑/快捷方式的名稱 #軟鏈接
ln  -s    /etc/sysconfig/network-scripts/   /ns

把network-scripts改成ns离赫,快捷方式為ns(軟連接)

ls   /

查看根目錄下是否有ns快捷方式

ls   -l   /ns

查看鏈接文件的詳細信息

touch   /ns/haha.txt

在快捷方式里創(chuàng)建文件

touch   /ns/maohehaozi.txt

在快捷方式里創(chuàng)建文件

touch   /ns/shukehebeita.txt

在快捷方式里創(chuàng)建文件

ls   /etc/sysconfig/network-scripts/

查看ns快捷方式的根文件目錄里是否有在快捷方式里創(chuàng)建的文件

  • 軟連接優(yōu)勢:可以針對目錄與文件制作快捷方式
  • 軟連接缺點:源數據消失,快捷方式失效
  • 格式:ln /路徑/源數據 /路徑/快捷方式的名稱 #硬鏈接
rm  -rf   /opt/*

刪除/opt目錄下的所有文件及目錄

echo  123   >   /opt/A.txt

輸入123追加到A.txt并生成文件

ln  -s   /opt/A.txt    /opt/B.txt   

軟鏈接

ln    /opt/A.txt    /opt/C.txt

硬鏈接

ls    /opt/ 

查看opt目錄下的文件及目錄

cat    /opt/B.txt

查看opt目錄B文件里的內容

cat    /opt/C.txt 

查看opt目錄C文件里的內容

rm  -rf   /opt/A.txt

刪除主文件A

ls   /opt/

列出opt目錄下的子文件

cat  /opt/B.txt

查看opt目錄B文件里的內容塌碌,報錯秉继,因為主文件已經被刪除

cat   /opt/C.txt

查看opt目錄C文件里的內容虽缕,保留內容

  • 硬鏈接優(yōu)勢:源數據消失经伙,快捷方式仍然有效
  • 硬鏈接缺點:只能針對文件制作快捷方式拘荡,不支持支持跨分區(qū)
  • 加上-s就是軟鏈接,不加-s就是硬鏈接接剩。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末切厘,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子懊缺,更是在濱河造成了極大的恐慌疫稿,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,378評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鹃两,死亡現場離奇詭異遗座,居然都是意外死亡,警方通過查閱死者的電腦和手機俊扳,發(fā)現死者居然都...
    沈念sama閱讀 94,970評論 3 399
  • 文/潘曉璐 我一進店門员萍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人拣度,你說我怎么就攤上這事。” “怎么了抗果?”我有些...
    開封第一講書人閱讀 168,983評論 0 362
  • 文/不壞的土叔 我叫張陵筋帖,是天一觀的道長。 經常有香客問我冤馏,道長日麸,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,938評論 1 299
  • 正文 為了忘掉前任逮光,我火速辦了婚禮代箭,結果婚禮上,老公的妹妹穿的比我還像新娘涕刚。我一直安慰自己嗡综,他們只是感情好,可當我...
    茶點故事閱讀 68,955評論 6 398
  • 文/花漫 我一把揭開白布杜漠。 她就那樣靜靜地躺著极景,像睡著了一般。 火紅的嫁衣襯著肌膚如雪驾茴。 梳的紋絲不亂的頭發(fā)上盼樟,一...
    開封第一講書人閱讀 52,549評論 1 312
  • 那天,我揣著相機與錄音锈至,去河邊找鬼晨缴。 笑死,一個胖子當著我的面吹牛峡捡,可吹牛的內容都是我干的击碗。 我是一名探鬼主播,決...
    沈念sama閱讀 41,063評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼棋返,長吁一口氣:“原來是場噩夢啊……” “哼延都!你這毒婦竟也來了?” 一聲冷哼從身側響起睛竣,我...
    開封第一講書人閱讀 39,991評論 0 277
  • 序言:老撾萬榮一對情侶失蹤晰房,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后射沟,有當地人在樹林里發(fā)現了一具尸體殊者,經...
    沈念sama閱讀 46,522評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,604評論 3 342
  • 正文 我和宋清朗相戀三年验夯,在試婚紗的時候發(fā)現自己被綠了猖吴。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,742評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡挥转,死狀恐怖海蔽,靈堂內的尸體忽然破棺而出共屈,到底是詐尸還是另有隱情,我是刑警寧澤党窜,帶...
    沈念sama閱讀 36,413評論 5 351
  • 正文 年R本政府宣布拗引,位于F島的核電站,受9級特大地震影響幌衣,放射性物質發(fā)生泄漏矾削。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,094評論 3 335
  • 文/蒙蒙 一豁护、第九天 我趴在偏房一處隱蔽的房頂上張望哼凯。 院中可真熱鬧,春花似錦楚里、人聲如沸断部。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽家坎。三九已至,卻和暖如春吝梅,著一層夾襖步出監(jiān)牢的瞬間虱疏,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評論 1 274
  • 我被黑心中介騙來泰國打工苏携, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留做瞪,地道東北人。 一個月前我還...
    沈念sama閱讀 49,159評論 3 378
  • 正文 我出身青樓右冻,卻偏偏與公主長得像装蓬,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子纱扭,可洞房花燭夜當晚...
    茶點故事閱讀 45,747評論 2 361

推薦閱讀更多精彩內容