寫得蠻好的linux學習筆記(二)

vi一般用法
一般模式              編輯模式                  指令模式
h
               a,i,r,o,A,I,R,O             :w 保存
j
                進入編輯模式                :w! 強制保存
k
                dd 刪除光標當前行           :q! 不保存離開
l
                ndd 刪除n                 :wq! 保存後離開
0
移動到行首        yy 複製當前行                :e! 還原原始檔
$
移動到行尾        nyy 複製n                  :w filename 另存爲
H
屏幕最上          p,P 粘貼                     :set nu 設置行號
M
屏幕中央          u 撤消                      :set nonu 取消行號
L
屏幕最下          [Ctrl]+r 重做上一個動作       ZZ 保存離開
G
檔案最後一行      [ctrl]+z 暫停退出            :set nohlsearch   永久地關閉高亮顯示
/work
向下搜索                                   :sp 同時打開兩個文檔
?work
向上搜索                                   [Ctrl]+w 兩個文檔設換
gg
移動到檔案第一行                              :nohlsearch    暫時關閉高亮顯示

認識SHELL
alias   
顯示當前所有的命令別名      alias lm="ls -al"   命令別名    unalias lm 取消命令別名
type     
類似which
exprot   
設置或顯示環境變量
exprot PATH="$PATH":/sbin
添加/sbinPATH路徑
echo $PATH   
顯示PATH路徑
bash     
進入子程序
name=yang    
設定變量
unset name   
取消變量
echo $name   
顯示變量的內容
myname="$name its me"   &   myname='$name its me'    
單引號時$name失去變量內容
ciw=/etc/sysconfig/network-scripts/    
設置路徑
env     
列出所有環境變量
echo $RANDOM   
顯示隨意產生的數
set     
設置SHELL
PS1='[\u@\h \w \A #\#]\$ '    
提示字元的設定
   [root@linux ~]# read [-pt] variable     -----------
讀取鍵盤輸入的變量
  
參數:
   -p
:後面可以接提示字元!
   -t
:後面可以接等待的『秒數!』
declare   
聲明 shell 變量
ulimit -a  
顯示所有限制資料
ls /tmp/yang && echo "exist" || echo "not exist"
意思是說,當 ls /tmp/yang 執行後,若正確,就執行echo "exist" ,若有問題,就執行echo "not exist"
echo $PATH | cut -d ':' -f 5      
:爲分隔符,讀取第5段內容
export | cut -c 10-20     
讀取第1020個字節的內容
last | grep 'root'   
搜索有root的一行,[-v]反向搜索
cat /etc/passwd | sort   
排序顯示
cat /etc/passwd | wc     
顯示『行、字數、字節數』

正規表示法
[root@test root]# grep [-acinv] '
搜尋字串' filename
      
參數說明:
       -a
:將 binary 檔案以 text 檔案的方式搜尋資料
       -c
:計算找到 '搜尋字串' 的次數
       -i
:忽略大小寫的不同,所以大小寫視為相同
       -n
:順便輸出行號
       -v
:反向選擇,亦即顯示出沒有 '搜尋字串' 內容的那一行!
grep -n 'the' 123.txt    
搜索the字符 -----------搜尋特定字串      
grep -n 't[ea]st' 123.txt   
搜索testtaste兩個字符---------利用 [] 來搜尋集合字元
grep -n '[^g]oo' 123.txt    
搜索前面不爲goo-----------向選擇 [^]
grep -n '[0-9]' 123.txt
搜索有0-9的數字
grep -n '^the' 123.txt
搜索以the爲行首-----------行首搜索^
grep -n '^[^a-zA-Z]' 123.txt
搜索不以英文字母開頭
grep -n '[a-z]$' 123.txt   
搜索以a-z結尾的行---------- 行尾搜索$
grep -n 'g..d' 123.txt    
搜索開頭g結尾d字符----------任意一個字元 .
grep -n 'ooo*' 123.txt    
搜索至少有兩個oo的字符---------重複字元 *
sed   
文本流編輯器    利用腳本命令來處理文本文件
awd   
模式掃描和處理語言
nl 123.txt | sed '2,5d'  
刪除第二到第五行的內容
diff    
比較文件的差異
cmp     
比較兩個文件是否有差異
patch   
修補文件
pr      
要打印的文件格式化


帳號管理
/etc/passwd   
系統帳號信息
/etc/shadow   
帳號密碼信息    MD5 32位加密
    
在密碼欄前面加『 * 』『 ! 』禁止使用某帳號
/etc/group    
系統羣組信息
/etc/gshadow
newgrp   
改變登陸組
useradd & adduser   
建立新用戶 ---------> useradd -m test 自動建立用戶的登入目錄
          useradd -m -g pgroup test --------->
指定所屬級
/etc/default/useradd  
相關設定
/etc/login.defs       UID/GID
有關的設定
passwd   
更改密碼 -----------> passwd test
usermod  
修改用戶帳號
userdel  
刪除帳號 ----------->userdel -r test
chsh     
更換登陸系統時使用的SHELL   [-l]顯示可用的SHELL;[-s]修改自己的SHELL
chfn     
改變finger指令顯示的信息
finger   
查找並顯示用戶信息
id       
顯示用戶的ID -----------> id test
groupadd  
添加組
groupmod  
usermod類似
groupdel  
刪除組
su test   
更改用戶   su -    進入root,且使用root的環境變量
sudo      
以其他身份來執行指令
visudo    
編輯/etc/sudoers      加入一行『 test ALL=(ALL) ALL
           %wheel ALL = (ALL) ALL              
系統裏所有wheel羣組的用戶都可用sudo
           %wheel ALL = (ALL) NOPASSWD: ALL     wheel
羣組所有用戶都不用密碼NOPASSWD
       User_Alias ADMPW = vbird, dmtsai, vbird1, vbird3        
加入ADMPW
       ADMPW ALL = NOPASSWD: !/usr/bin/passwd, /usr/bin/passwd [A-Za-z]*, \
       !/usr/bin/passwd root     
可以更改使用者密碼,但不能更改root密碼 (在指令前面加入 ! 代表不可)
PAM (Pluggable Authentication Modules,
嵌入式模組)
who & w    
看誰在線                    
last       
最近登陸主機的信息
lastlog    
最近登入的時間    讀取 /var/log/lastlog
talk       
與其他用戶交談
write      
發送信息    write test   [ctrl]+d 發送
mesg       
設置終端機的寫入權限    mesg n 禁止接收     mesg y
wall       
向所有用戶發送信息    wall this is q test
mail       
mail  
/etc/default/useradd   
家目錄默認設置

quota      顯示磁盤已使用的空間與限制     quota -guvs ----->秀出目前 root 自己的 quota 限制值
           quota -vu  
查詢
quotacheck  
檢查磁盤的使用空間與限制     quotacheck -avug ----->將所有的在 /etc/mtab 內,含有 quota 支援的 partition 進行掃瞄
             [-m]
強制掃描
     quota
一定要是獨立的分區,要有quota.userquota.group兩件文件,/etc/fstab添加一句:
     /dev/hda3 /home ext3 defaults,usrquota,grpquota 1 2
     chmod 600 quota*        
設置完成,重啓生效
edquota   
編輯用戶或羣組的quota [u]用戶,[g]羣組,[p]複製,[t]設置寬限期限
           edquota -a yang       edquota -p yang -u young ----->
複製   
quotaon   
開啓磁盤空間限制     quotaon -auvg -------->啟動所有的具有 quota filesystem
quotaoff  
關閉磁盤空間限制     quotaoff -a -------->關閉了 quota 的限制
repquota -av    
查閱系統內所有的具有 quota filesystem 的限值狀態

Quota 從開始準備 filesystem 的支援到整個設定結束的主要的步驟大概是:
1
、設定 partition filesystem 支援 quota 參數:
由於 quota 必須要讓 partition 上面的 filesystem 支援才行,一般來說, 支援度最好的是 ext2/ext3
其他的 filesystem 類型鳥哥我是沒有試過啦! 啟動 filesystem 支援 quota 最簡單就是編輯 /etc/fstab
使得準備要開放的 quota 磁碟可以支援 quota 囉;
2
、建立 quota 記錄檔:
剛剛前面講過,整個 quota 進行磁碟限制值記錄的檔案是 aquota.user/aquota.group
要建立這兩個檔案就必須要先利用 quotacheck 掃瞄才行喔!
3
、編輯 quota 限制值資料:
再來就是使用 edquota 來編輯每個使用者或羣組的可使用空間囉;
4
、重新掃瞄與啟動 quota
設定好 quota 之後,建議可以再進行一次 quotacheck ,然後再以 quotaon 來啟動吧!


開機流程簡介
1
、載入 BIOS 的硬體資訊,並取得第一個開機裝置的代號;
2
、讀取第一個開機裝置的 MBR boot Loader (亦即是 lilo, grub, spfdisk 等等) 的開機資訊;
3
、載入 Kernel 作業系統核心資訊, Kernel 開始解壓縮,並且嘗試驅動所有硬體裝置;
4
Kernel 執行 init 程式並取得 run-level 資訊;
5
init 執行 /etc/rc.d/rc.sysinit 檔案;
6
、啟動核心的外掛模組 (/etc/modprobe.conf)
7
init 執行 run-level 的各個批次檔( Scripts )
8
init 執行 /etc/rc.d/rc.local 檔案;
9
、執行 /bin/login 程式,並等待使用者登入;
10
、登入之後開始以 Shell 控管主機。

/etc/rc.d/rc3.d,S開頭的爲開機啓動,K開頭的爲關閉,接着的數字代表執行順序

GRUB vga設定
彩度\解析度 640x480 800x600 1024x768 1280x1024   bit
    256        769      771      773       775      8 bit
   32768       784      787      790       793     15 bit
   65536       785      788      791       794     16 bit
   16.8M       786      789      792       795     32 bit


./configure   
檢查系統信息       ./configure --help | more 幫助信息
make clean    
清除之前留下的文件
make          
編譯
make install  
安裝

rpm -q ----->查詢是否安裝             rpm -ql ------>查詢該套件所有的目錄
rpm -qi ----->
查詢套件的說明資料       rpm -qc[d] ----->設定檔與說明檔
rpm -ivh ---->
安裝                    rpm -V -------->查看套件有否更動過
rpm -e ------>
刪除                    rpm -Uvh ------->升級安裝
--nodeps ----->
強行安裝                --test ----->測試安裝
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章