2015年10月19日 星期一

linux 134 未完待續



134第一章節Automating Instal lation with Kickstart


Kickstart 他是一個腳本

Kickstart檔案通常放在 ftp或http站台上面

Kickstart檔案裡面設定檔#符號是註解

如果你要寫shell script用%百分比

第二章節USING REGULAR EXPRESSIONS

使用正則表達

文字編輯工具vim把檔案打開

grep是把關鍵字搜出來

less是把關鍵字列出來

重要這些語言都可以使用正規劃表示如Perl , Python , and C

一個很簡單的正規化表示假設你有一個樣本叫cat 如表在表中你會看到那些有關cat字

所以只要有寫cat的字都會被挑出來 主要是從一個字串裡面挑出c,a.t出來 而這三個之後再一起 意思就是說這些有關cat關鍵字會被祧出來這就是一個正規化表示




另外一種正規化表示如果在前面加上^cat代表你這個字眼開頭的那一行如果用$符號代表以某個字結尾的那一行

\代表跳脫符號

中括號包起來[ aou ]字代表三者選其一

grep是一個很常見也很常用的指令是一種強大的文本搜索工具,他最重要的功能就是進行字串資料的比對,然後將符合使用者需求的字串列印出來。

Grep參數還可用於



-i 不用管大小寫

-v 不符合的才挑出來符合的不挑

-r他如果有檔案或是裡面有資料夾檔案才去撈出來

-A<顯示行數> -- =<顯示行數> 顯示符合範本樣式的那一列之外,並顯示該行之後的內容。

-B<顯示行數> --=<顯示行數> 除了顯示符合樣式的那一行之外,並顯示該行之前的內容。

-e代表你有好多個樣板可以使用正則表達可以提供,將與邏輯或使用。

第三章節 Creating and Editing Text Files with vim

Vim

vi文書編輯器,此外,vim他是vi 的進階強化版

vim不但可以用不同顏色顯示文字內容,還能夠進行如 shell script,等程式編輯功能, vim 視為一種程式編輯器!

進入插入或取代的編輯模式
i, I
進入插入模式(Insert mode)
i
為『從目前游標所在處插入』,直到按下 ESC才能離開
 I 為『在目前所在列的第一個非空白字元處開始插入』
a, A
進入插入模式(Insert mode)
a
為『從目前游標所在的下一個字元處開始插入』
A 為『從游標所在列的最後一個字元處開始插入』
o, O
進入插入模式(Insert mode)
o
為『在目前游標所在的下一列處插入新的一列』
 O 為在目前游標所在處的上一列插入新的一列
r, R
進入取代模式(Replace mode)
r
只會取代游標所在的那一個字元一次
R會一直取代游標所在的文字,直到按下 ESC才能離開
[Esc]
退出編輯模式,回到一般指令模式中(常用)


第4章節 Scheduling Future Linux Tasks

at 是個可以處理僅執行一次就結束排程的指令,不過要執行 at 時, 必須要有 atd 這個服務

at後面接的是時間

atq查詢現在系統上面的工作時間所有該使用者

at -l 相當於 atq,列出目前系統上面的所有該使用者的 at 排程;

at -d 相當於 atrm ,可以取消一個在 at 排程中的工作;

at -c 可以列出後面接的該項工作的實際內容。

crontab 指的是每個星期做什事 他是有週期性的工作

設定的工作將會循環的進行下去! 循環的時間為分鐘、小時、每週、每月或每年等

crontab -l指的是你可以看到有多少crontab檔案在執行

crontab-r把crontab的工作去掉

crontab-e 編輯crontab的檔案

/tmp 暂存檔 放一下系統或應用的東西

tmpwatch指令可删除不必要的暂存文件

system-tmpfiles. 可以管理你的暫存檔

-atime檔案的最後存取時間

-mtime 檔案的最後修改時間

-ctime 檔案的狀態資訊最後修改的時間

第五章 Managing Priority o f Linux Processes

使用 jobs 就可以知道目前的背景中工作項目

nice 值可調整的範圍為 -20 ~ 19 ;

nice 是用來調整程序的執行優先順序

調整某個已經存在的 PID 的 nice 值:用 renice 指令。

ps :將某個時間點的程序運作情況擷取下來

查閱自己 bash 程序的『 ps -l 』

查閱所有系統運作的程序『 ps aux 』

top觀察程序的變化

PID :每個 process 的 ID

USER:該 process 所屬的使用者;

PR :Priority 的簡寫,程序的優先執行順序,越小越早被執行;

NI :Nice 的簡寫,與 Priority 有關,也是越小越早被執行;
%CPU:CPU 的使用率;

%MEM:記憶體的使用率;

TIME+:CPU 使用時間的累加;

第六章ACL

那 ACL他主要可以針對幾個項目:

使用者 (user):可以針對使用者來設定權限;

群組 (group):針對群組為對象來設定其權限;

預設屬性 (mask):還可以針對在該目錄下在建立新檔案/目錄時,規範新資料的預設權限;

其他人(other): 針對其他人擁有的權限

getfacl:取得某個檔案/目錄的 ACL 設定項目;

setfacl:設定某個目錄/檔案的 ACL 規範。

第七章 SELINUX

setenforce 指令是用來修改 SELinux 在執行中的模式,

getenforce 則是查詢 SELinux 目前所使用的模式。

執行「setenforce enforcing」或「setenforce 1」是把 SELinux 修改成 Enforcing 模式;

執行「setenforce permissive」或「setenforce 0」則是把 SELinux 修改成 Permissive 模式。



SELINUX:設定 SELinux 政策所使用的模式。

enforcing :強制啟用 SELinux。

permissive:只顯示警告訊息以替代強制啟用 SELinux。

disabled :停用 SELinux。

SELinux 之布林值

可執行「getsebool -a」指令來查看所有 SELinux 的布林值

指令 sestatus

查詢 SELinux 目前的狀態。

第9章Adding Disks, Partitions, and File Systems to a Linux System

blkid 列出裝置的 UUID 等參數

MBR 分割表請使用 fdisk 分割,

GPT 分割表請使用 gdisk 分割

partprobe 更新 Linux 核心的分割表資訊

lsblk 列出實際的磁碟分割狀態

mkfs 其實是個綜合指令而已

如果想要格式化為 ext4 可以使用 mkfs.ext4 這個指令

mount (檔案掛載)

umount (檔案卸載)

free 這個指令來觀察一下記憶體的用量

swapon –s列出目前使用的 swap 裝置有哪些

第10章Managing Logical Volume Management (LVM) Storage

pvcreate :主要建立PV的指令;

pvscan :搜尋目前系統裡面任何具有 PV 的磁碟;

pvdisplay :顯示出目前系統上面的 PV 狀態;

pvremove :將 PV 屬性移除。

vgcreate :就是主要建立 VG 的指令!

vgscan :搜尋系統上面是否有 VG 存在?

vgdisplay :顯示目前系統上面的 VG 狀態;

vgextend :在 VG 內增加額外的 PV ;

vgreduce :在 VG 內移除 PV;

vgchange :設定 VG 是否啟動 (active);

vgremove :刪除一個 VG !

lvcreate :建立 LV !

lvscan :查詢系統上面的 LV ;

lvdisplay :顯示系統上面的 LV 狀態!

lvextend :在 LV 裡面增加容量!

lvreduce :在 LV 裡面減少容量;

lvremove :刪除一個 LV !

lvresize :對 LV 進行容量大小的調整!

第11章 NFS(網路檔案系統)


NFS他是一個網路空間就是可以透過網路,讓不同的機器、不同的作業系統、可以彼此分享個別的檔案。

autofs使用與自動掛載

安全方法

None 指的是任何人都可以存取或寫入

sys系統帳號他是存取linux的權限讓你新增檔案跟資料夾的時候實用現在的身分跟群組的身分

Krb5是做驗證這個驗證方式是明碼的驗證

Krb5i 指的是你再送一些帳號的資料才會去做加密的驗證動作

Krb5p針對所以的連線要求也就是說你還沒有作帳號密碼之前的時候他就開始進行加密的驗證動作加密完之後,才開始作資料的驗證,驗證完之後才讓你存取資料。

第12章Accessing Network Storage with SMB

存取samba 檔案分享 可以把它當成網路上的芳鄰

CIFS格式他是Windows 系統 微軟把CIFS分享出來給linux使用

CIFS他就像『網路上的芳鄰』

13The Red H at Enterprise Linux 7 boot process
Grup2是開機管理程序
grup2 如果壞了可以下grup2 install
grup設定檔
/ etc / grub.d /
/ etc/default /grub
/boot / grub2/grub. cfg .

systemd 這個啟動服務的機制
systemctl 啟動服務
systemctl poweroff 關機服務
systemctl reboot 從開機服務

14firewalld
防火牆他是用來處理封包過濾

Default configuration of firewalld zones
zone
說明
trusted
所有網路連線都允許
home
他會把某一些東西去掉 只允許某一部份連線進入包含ssh , mdns, ipp - client , samba - client , or dhcpv6 - client
Internal
針對與同網域的主機只允許某一部份連線進入
work
只有被允許連線才能進入用於工作場合
public
只允許某一部份連線進入 ssh dhcpv6 - client
external
只有ssh可以用
dmz
對外部是開放狀態,對內部網路存取有限制的網路環境,只有被允許連線才能進入
block
阻擋所有進入的連線封包,以icmp回覆對方,只有從本機發出連線是被允許
drop
所以連入的封包都被丟棄,不回應任何資訊只會有網外的連線



2015年9月4日 星期五

liunx系統過程及服務紀錄及等級介紹


Identifying Automatically Started System Processes

w -f 看誰登進來登多久
Grep “model name” /proc/cpuinfo 查看你的CPU model 名稱相關資料
VIRT指的是有多少記憶體在虛擬機裡面使用
RES指的是實際的記憶體
S睡覺
R正在執行
Systemctl  –t help 查看Systemctl參數
Systemctl  status sshd.service查看目前的服務狀態
Active(running)指的是正在執行
Active(exited)指的是結束
Active(waiting)指的是正在等待一個事件
inactive指的是沒有在執行
enable開機有啟動
disable開機沒有啟動取消的意思
Static 他沒有被啟動但可能在重新啟動中 意思就是說不用去啟動enable會自動幫你啟動起來

Using systemctl to Manage Services
Systemctl 列出所有系統中的startup
Systemctl –type=service 列出所有有關service服務
Systemctl is-enabled sshd 查看sshd有沒有啟動
Systemctl  list-units –type=service列出所有service服務以單位列出來
Systemctl  restart sshd.service重新啟動sshd服務
Systemctl  stop sshd.service 停止sshd服務
SSH Key 
ssh-keygen產生2鑰匙
~/.ssh/id_rsa代表私鑰
~/.ssh/id_pub代表公鑰
/etc/ ssh/ sshd_config 表示Server設定檔
SSH Service Configuration
PermitRootLogin no 表示沒辦法從遠端登入系統
PermitRootLogin without-password 遠端登入不用密碼就可以登入了
systemd – journald and rsyslog.系統日誌及系統紀錄 
systemd – journald 他提供強化型的記錄管理服務包含核心及開機步驟流程、標準的輸入訊息

System Log
/var /log/messages存放一些大多數系統日誌訊息記錄在這裡。唯一的例外是身份驗證和電子郵件處理的訊息,不是存放在這裡
/var/log /secure存放一些安全驗證紀錄和錯誤相關消息
/var/log/maillog  存放mail的紀錄相關訊息
/var/log/cron存放週期性的工作的紀錄(cron是一種定時執行的程式)
/var/log /boot 存放開機流程紀錄


系統訊息等級



2015年8月31日 星期一

linux 介紹





chage  -d 改變日期 –M 90 就是說90天之後你要改密碼 –W 7 指的是倒數7–I  14過期後的14
chage –E 它是用來設定 帳號到期日他的設定 YYYY-MM-DD年月日

r 讀 當讀放在檔案的時候,可以讀檔案內容
當讀放在目錄的時候,可以讀目錄的內容就表示可以把目錄裡面的檔案列表列出來

w寫當寫放在檔案的時候,表示檔案的內容可以被寫入修改
放在目錄的時候,表示可以建立及刪除目錄檔案

x執行 當執行放在檔案的時候,表示檔案可以被執行
當執行放在目錄的時候,代表你可以在這個目錄地下做一下系統上的管理包含複製 移動 刪除 更改檔案名稱、更改檔案權限

這九個權限三個三個為一組的
所代表不同的意義

其中我們使用數字來代表各個權限,如下

r:4
w:2
x:1

改變權限, chmod
檔案權限的改變通常是使用chmod這個指令
改變所屬群組, chgrp
改變檔案擁有者, chown

set uid (or setgid)
setuid代表使用者特殊的權限
針對一般使用者會暫時用有權限
Setgid代表群組特殊的的權限
針對一般群組會暫時用有權限
umask遮掉權限
Chmod +R 參數代表持續變更,連同目錄下的所有檔案都會變更
大寫X用來取代小寫x權限
主要的功用就把可執行權限放在目錄
一般檔案室沒有放可執行權限
目綠上面放了可執行權限 代表意義 可以列出檔案名稱及檔案內容
小寫x代表目錄跟檔案都附於它可執行的權限 並不是每個檔案都執行的權限
所以就是要大寫X用來取代小寫x權限 

suspend暫停
Runnable 執行
代號R執行的代號
代號T是暫時停下來
Z X代表程式死掉了
代號KDS到表在睡覺時間長段不一樣

2015年8月21日 星期五

介紹指令用法

/指的根目綠
在根目錄地下有很多資料結構
其中bin指的是二進位可執行檔案
Sbin系統的可執行檔案
Usr是給使用者操作的一個目錄
home指的是一般使用者的家目錄
root是指管理者的家目錄
run是一個執行的目綠
tmp 暫存檔目錄
var是放一些記錄檔
dev 硬體設備的目錄
boot開機檔案目錄就是說你的系統Kernel的可執行檔案目錄都是放在這裡面
bin搬到一般使用者檔案目綠裡面去了
sbin也是搬到一般使用者裡面

同樣lib lib64搬到一般使用者裡面

uname –r 看你的Kernel 版本
linux 系統包含的檔案類型 ext4.XFS,BTRFS,GFS2
不包含的檔案類型VFAT NTFS HFS 需要額外裝套件
pwd 指令是列出現在所在的目錄位置
cd用來切換目錄 如果我要切換 到家目綠 就下cd /home
touch更改時間 比方說你的檔案前10天留下來所以你可以藉由touch指令去更改
ls 列出檔案名稱目綠
ls -l 列出檔案的名稱及詳細資料
ls -a列出所有的檔案包含隱藏檔
ls -R把目錄地下的東西都列出來
cd -回到之前的目錄
cd . 代表現在的目錄
cd ..回到上一層目錄
cp 複製
mv移動
mkdir 建立目錄
$執行的符號
host=$(hostname); echo $host前面是意思是說我要操作某一項變數後面echo呼叫環境變數
如果我要建立 mkdir music/Watched可能會出現錯誤訊息主要原因是因為你沒有music/Watched東西所以為了解決問題你要加上-p參數

rm -r刪除目錄
我先建立一個test檔案目錄
切換到testtouch test1
cp test1test2
mv test1可以改成test3


;分號代表前面指令結束
ls a*列出a開頭的檔案
ls *a*列出檔名當中有a開頭的檔案
ls [ac]*會列出ac開頭的檔案
ls ???? 列出檔案是4個字元
ls ????? 列出檔案是5個字元
Echo是一個用來呼叫的指令所以她並沒有建檔案如果要建檔案要用touch這個指令




2015年8月15日 星期六

基本指令

首先我們先下fdisk –l 看你的硬碟有幾顆

我有2第一顆硬碟是開機硬碟
我現在要對disk /dev/sdb 2顆進行切割
Fdisk 檔案切割指令
p是把你要進行(硬碟)disk /dev/sdb 列表列出來看
d是刪除
m這個指令是出現說明指令的用法
n他是可以產生一個全新的空間
Partition  type:裡面你會看到
Primary主要分割
extended延伸分割
Primary主要分割你會看到4feed自由空間
 w是寫入的意思

在終端機下head /etc/passwd 會列出前面10
如果你覺得太多你可以下 tail -n 3 /etc/passwd  列出3行出來如圖3

wc 這個指令是用來算數字讓你看在這個檔案裡面有幾行及幾個文字的字元
-l計算檔案內容總共有幾行。
-w計算檔案內容總共有幾個字。
-c計算檔案內容總共有多少 bytes,就是多少字元的意思。
History查看你之前下的指令歷史紀錄
C t rl+a就是把你所下的指令游標移到最前面
Ct r l+e就是把你所下的指令游標移到最後面
Ct rl+u全部刪除
Ct r l + k游標移到你所要刪除的地方
date +%R列出時間
date +%x列出年月日
date +%r列出現在的時間幾點幾分幾秒


 圖1

圖2



圖3