目前分類:電腦和網際網路 (51)

瀏覽方式: 標題列表 簡短摘要

※本機資料同步

  1. rsync  -av  --delete  /home/momo  /tmp/backup
                                            備份來源            備份地點
  2. touch  /home/momo/1.txt
  3. rsync  -av  --delete  /home/momo  /tmp/backup

※遠端資料夾同步

rsync  -ave  ssh  --delete  /home/momo  root@192.168.1.216:/tmp/backup

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※製作 ext2  格式的影像檔

  1. 建立空白的檔案
    dd  if=/dev/zero  of=/ext2.bin  bs=1M  count=20

  2. 將影像檔和loop 設備bind 在一起

奔騰兔 發表在 痞客邦 留言(0) 人氣()

http://learn.24hropen.net

    ※增量型備份

  1. 建立備份

    image

    -g  /log/backup.log                                              產生備份記錄檔案及指定記錄檔存放路徑

    -zcvf  /root/bak/backup1.tar.gz  /momo              指定備份檔案的存放路徑以及檔案,並指定要備份的目錄

  2. 備異

    image

    進行第二次備份時用同一個log 檔案,tar 指令會自動備份有增量的檔案

  3. ※差異型備份

  1. 第一次完整備
    image

  2. 第二備份

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※使用SLES 內建之System backup

  1. Sysrtem Backup
    image
  2. 建立新的備份Profile

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※模組可以被使用的方式

  • ldd  /usr/bin/print          可以顯示指令所需要的模組以及模組的路徑

image

  1. 放在 /lib  或 /usr/lib 下
  2. 設定變數LD_LIBRARY_PATH
    export  LD_LIBRARY_PATH=/root

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※容量的壓縮

  1. gzip                       壓縮檔案
    gunzip                   解壓縮檔案

奔騰兔 發表在 痞客邦 留言(0) 人氣()

  1. 壓縮目錄
    tar  -zcvf  hello-1.0.tar.gz  hello-1.0/image
  2. 將原始檔複製到  /usr/src/packages/SOURCES

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※  http://www.ntfs-3g.org

image

image

 

※安裝ntfs-3g

  1. 解開壓縮檔案
    tar  -zxvf  ntfs3g
  2. 看說明文件

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※rpm  的資料庫檔案 放置於 /var/lib/rpm/packages  ,SLES 預設會自動備份此資料庫於/var/adm/backup/rpmdb ,若原始的package 損壞時可以透過此備份檔還原。

  • rpm  -qa                                               例出系統所有已安裝套件
  • rpm  -q  套件                                      列出指定的套件
  • rpm  --rebuilddb                                重置rpm DB 檔案(/var/lib/pachages)及重建索引檔
  • rpm  -e  套件名稱                              移除套件
  • rpm   -i  套件名稱                             安裝指定的套件
  • rpm    -i  --force  套件名稱            強製重新安裝已安裝過的套件
  • rpm    -i  --nodeps  套件名稱         強製安裝套件並且略過相依性
  • rpm   -f 套件名稱                              升級曾經安裝過的套件
  • rpm   -u 套件名稱                             升級安裝過的套件,若未安裝過則直接安裝
  • rpm   -e  名稱 –allmatches             移除套件相同的全部套件
  • rpm   -qa  “套件名稱*”                查詢套件是否安裝(可搭配-p 查詢未安裝的套件資訊)
  • rpm   -qi  套件名稱                            查詢套件資訊(可搭配-p 查詢未安裝的套件資訊)
  • rpm   -ql  套件名稱                           查詢套件安裝的路徑(可搭配-p 查詢未安裝的套件資訊)
  • rpm   -qd  套件名稱                         查詢套件說明文件(可搭配-p 查詢未安裝的套件資訊)
  • rpm   -qc  套件名稱                         查詢安裝套件的設定檔位置(可搭配-p 查詢未安裝的套件資訊)
  • rpm   -qf  檔案名稱                         查詢某一檔案屬於何套件安裝
  • rpm   -qp  --filesbypkg  *.rpm | grep   模組名稱               查詢模組可於那個套件安裝

※從備份檔還原資料檔

  1. gunzip  -c  /var/adm/backup/rpmdb/pack日期.gz  >  /var/lib/rpm/packages
  2. 重整資料庫    rpm  --rebuilddb

※使用PGP Key 檢查下載套件是否有被竄改

  • rpm  --import  *.asc              加入下載套件的PGP Key
  • rpm  --checksig  套件名稱       用PGP Key 檢查套件的完整性
  •  image
  •  
  • rpm  -qai “gpg-pubkey*” | grep  “關鍵字” –B  10   移除key 「(-B  10)找到值後往前10行」 
  • rpm   -e  gpg-pubkey-Version-Release
  • image
  •  
  • rpm  -V 套件名稱            驗證已經安裝過後的套件有無被修改

mknod  設備檔  類型  主編號  次編號

mknod  /dev/hdc  b  22  0

 

※建立封裝檔案

  1. 安裝gcc 套件
  2. 撰寫原始碼
    mkdir  hello-1.0

奔騰兔 發表在 痞客邦 留言(0) 人氣()

  • Mar 24 Tue 2009 20:16
  • 核心

※系統開機的時侯會讀取kernel 的參數以及initrd 內的設定,此方式為的是減少核心太大,將其它需要載入的

設定放置於initrd 中

image

※核心參數

vga=0x314                800x600 解析度

image

vga=0x317             1024x768 解析度

s 或1                             單人模式

init =/sbin/init  1                          替換init進入不同的模式1~7

※使用密碼保護,修改開機核心參數時需要輸入密碼

  1. 啟動滑鼠剪貼
  2. service gpm restart
  3. 產生密碼:
    grub-md5-crypt
  4. 修改開機選單
  5. vi  /boot/grub/menu.lst
    password 123(密碼)

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※設定syslog記錄檔伺服器

  1. vi  /etc/syslog.conf                    修改設定檔
  2. 加入:local1.*         /var/log/local1.txt                將記錄存到指定的檔案中            

                local2.*         root                                      顯示記錄給root

                local3.*        root,momo                            顯示記錄給root以及mom       
                local4.*        *                                        顯示記錄給所有的人
  3. 重新啟動Syslog
  4. logger  -p  local1.info  hello1                                測試log訊息

 

※設定syslog-ng 記錄檔伺服器

  1. 修改設定檔
    vi  /etc/syslog-ng/syslog-ng.conf
    加入
    filter  f_ftp  { facility ( ftp ) } and  level ( info ) ;  };
    destination  d_ftp  { file(“/var/log/ftp.log”); };

    log { source(src);  filter(f_ftp);};   destination(d_ftp);  };

  2. 重新啟動伺服器

            service syslog  restart

     3.    logger  -p  ftp.info  hello               測試log訊息

 

※替換syslog-ng 為syslog

  1. service syslog stop
  2. vi  /etc/sysconfig/syslog
    SYSLOG_DAEMON=〃syslogd〃    
  3. service syslog start

※記錄檔輪轉備份

     1.產生設定檔案:(每天輪轉一次, 共三份)

    vi  /etc/logrotate.d/ftp

/var/log/ftp.log{

daily (每日更新記錄檔)

dateert(以日期為副檔名)

notifempty(如果記錄檔為空不備份)

missingok(記錄檔如果不存在,不顯示錯誤)

olddir  路徑 (備份路徑)

maxage  天數  (記錄檔備份保留天數)

copytruncate  (拷貝並清除記錄檔,若沒有設定,則記錄仍會存到複製的檔案)

size=1024k  (如果size超過1024k也會進行備份)

 

rotate 3   (產生三份輪轉)

}

  2.手動測試:

logrotate  /etc/logrotate.conf                 手動驅動logrotate

logroate  -f  /etc/logrotate.conf                             強制logrotate

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※觀察系統開機訊息

  • dmesg
  • more  /var/log/boot.msg     

※系統主要記錄檔

  • tail  /var/log/message                即時產生系統的log 狀況記錄檔
  • tail  /var/log/mail                            郵件記錄檔
  • last                                                      可以顯示曾經登入成功的帳號以及現在正在登入中的帳號(/var/log/wtmp)
  • w                                                          可以顯示現在正在登入中的帳號(/var/run/utmp)
  • lastlog                                    可以顯示帳號最後一次登入的時間(/var/log/lastlog)

※常見的核心及系統資訊

  • /proc/cpuinfo                           檢視CPU資訊
  • /proc/devices                           檢視設備資訊
  • /proc/interrupts                       檢視中斷資訊
  • /proc/partitions                        檢視硬碟分割區資訊
  • /proc/mounts                            檢視掛載資訊

※hwinfo 可以檢視硬碟完成資訊

  • hwinfo  --short  --usb                     針對USB顯示簡短資訊
  • hwinfo  --short  --block                 針對磁碟機顯示簡短資訊
  • hwinfo  --short  --network             針對網路顯示簡短資訊
  • hdparm                                                  可以檢視及調整硬碟的參數以及進行硬碟的測試
  • hdparm  -t  /dev/sda                          可以檢視硬碟的讀取時間
  • hdparm  -T  /dev/sda                         可以檢視硬碟cache的讀取時間

※iostat   可以取得CPU及磁碟資訊

yast  -i            安裝systat套件

  • iostat  -c            只檢視cpu的資訊
  • iostat  -d           只檢視磁碟機的資訊
  • iostat  -d  /dev/sdb  3  5    只檢視磁碟機/dev/sdb的資訊每3秒共5次
  • lspci                                 顯示pci 介面卡資訊
  • lspci  -v                            顯示pci介面卡詳細資訊
  • lspci  -tv                           顯示pci介面卡樹狀詳細資訊
  • siga                                 收集系統資訊後可以透過w3m 觀看
  • sitar                                  收集系統資訊後可以透過w3m 觀看
  • uptime                             顯示開機時間,線上人數及平均負載
  • uname                              顯示OS 資訊
  • netstat                               顯示網路資訊
  • netstat  -a                         顯示tcp資訊
  • netstat  -u                         顯示udp資訊
  • netstat  -l                          顯示目前listeing資訊,伺服器
  • netstat  -n                         不要進行名稱解析
  • netstat  -p                         顯示process資訊

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※Cron  個人排程

vi  /var/spool/cron/帳號(排程檔)

  • crontab  -L      例出個人排程
  • crontab  -e      編輯個人排程
  • crontab  -r      移除個人排程

※系統排程 cron

  *      *    *    *   *      momo          touch /tmp/1.txt

分鐘    小時    天     月    週       執行身份       指令

排程設定檔二選一

  • /etc/crontab      
  • /etc/cron.d/排程檔     

※將執行檔放到指定目錄

  • /etc/hourly      每小時
  • /etc/daily      每天
  • /etc/weekly      每週
  • /etc/monthy      每個月

範例:

*/10  *  *  *   *        每隔十分鐘

30   8,9,10  *  *   *        8點半、9點半、10點半

30    8-10  *  *   *        8點半、9點半、10點半

30   1  *  *   0    /sbin/reboot     每個星期天早上1點30分定時重開機

 

※ at 排程

service  atd restart          啟動at 排程功能

※ at 使用者

  • at  -l                         列出at的排程
  • at  -d  編號              刪除特定編號at
  • at  時間                    設定at 排程

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※設定名稱解析

  • vi  /etc/resolv.conf               名稱解析的設定檔,修改完後立即生效

例:nameserver  168.95.1.1

  • vi /etc/HOSTNAME        修改主機名稱
  • vi  /etc/hosts                     設定主機別名

 

 

奔騰兔 發表在 痞客邦 留言(0) 人氣()

Process      程序/行程

  • pstree                        以樹狀結構顯示所有正在執行的程序
  • pstree    -h                 hightlight 目的程序
  • pstree    -c                 不要折疊相同名稱的程序
  • pstree    -p                 顯示程序的PID

※程序

  • ctrl + z                    暫停目前前景執行的工作
  • ctrl  +  c                  中止前景執行的工作
  • jobs                          列出所有目前的工作(前景、背景、暫停)的工作以及工作編號
  • fg  %工作編號            恢復暫停的工作到前景中
  • bg  %工作編號           恢復暫停的工作到背景中
  • kill  %工作編號          將執行的工作刪除
  • kill  pid                           中止指定編號的程序
  • killall  程序名稱            中止符合名稱的所有程序
  • kill  -l                          可以顯示kill 的傳送信號
  • image
  •  
  • 常用的信號:
  • kill  -15     中止程序訊息給程式由程序自行結束工作(預設值)
  • kill  -19      暫停程序
  • kill  -18      恢復程序
  • kill  -1      對於一般的程序較果如同kill  -15,若對於Services 的話即為重新啟動Services
  • kill  -2      送出ctrl+c 中止程序,對應用程式
  • kill  -9     透過核心方式送出中止訊息,強制結束程序

※顯示終端機下的程序

  • ps                            顯示目前終端機下的執行程序
  • ps  x                       顯示目前帳號下相關所有執行中的程序,包合其它的終端機
  • ps  a                       顯示所有終端機下的執行程序
  • ps  ax                     顯示所有的執行程序
  • ps  -u  帳號         顯示指定帳號所執行的程序
  • ps  l                         顯示詳細資料
  • ps  u                       以使用者為導向顯示詳細的資訊
  • ps  f                       顯示各程序的父子關系

※設定程序的執行優先權

  • nice  -n  優先值(19 ~ -20)  指令
  • 例:nice  -n  -10 dd if=/dev/zeo  of=/dev/null bs=1 count=1000
  • renice  優先值  PID  變更執行中的的Nice 值
  • 例:renice  -15  編號

※nice 值會繼承父程序的值,一般的帳號在執行程序時只能設定的比原來慢

※top 指令

  • top
  • 常用按鍵
  • F            選擇排 序項目
  • f             選擇欄位
  • r             renice
  • k            傳送信號
  • u            指定使用者
  • q           結束top
  •  
  • 常用選項
  • top  -n  次數     指定top執行的次數
  • top  -b               可以指行批次模式
  • 例:top  -n  3  -b  >  /tmp/top.txt           可以將top的內容轉存

※管理伺服器

  1. 直接執行script  例:/etc/xinetd.d/network restart
  2. 透過service 執行script  例:service network restart
  3. 透過捷徑執行script   例:rcnetwork restart

※Cron 排程

  • crontab  -l  列出排程
  • crontab  -e  編輯排程
  • 分   時  天  月  星期
  • crontab  -r  移除排程

奔騰兔 發表在 痞客邦 留言(0) 人氣()

  • ifconfig  -a           顯示所有的網卡,包含未啟用的
  • ifup  eth0             啟用eth0 網路卡
  • ifdown  eth0         停用eth0網路卡
  • ifconfig  eth0  網路位置  netmask 遮罩       暫時設定網路IP位置

※路由設定

  • route  -n      以不要名稱解析的方式 顯示目前系統的路由
  • image
  • route  add  -net  168.95.1.0  netmask  255.255.255.0  gw  192.168.1.1   手動增加一個網段及路由
  • route  add  default  gw  xxx.xxx.xxx.xxx          手動設定系統的預設路由
  • ip  address  show                      查看網路資訊
  • ip  link  show                           查看啟用資訊 
  • ip  link  set  eth0  up                 啟用eth0
  • ip  link  set  eth0  down             停用eth0

※設定名稱解析

  • vi  /etc/resolv.conf               名稱解析的設定檔,修改完後立即生效

例:nameserver  168.95.1.1

  • vi /etc/HOSTNAME        修改主機名稱
  • vi  /etc/hosts                     設定主機別名

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※原來的Linux權限分為「擁有者、群組、其它人 」加上ACL後可以擴充權限系統「指定帳號、指定群組」

 

※設定檔案ACL

  • getacl  檔案               檢視檔案的ACL設定

image

  • 設定ACL  設定
  • setfacl  -m user:帳號:rwx  檔案名稱         

image

  • setfacl  -x  權限  檔案       刪除指定的ACL
  • setfacl  -x user:momo  /tmp/root.txt           刪除指定的ACL
  • setfacl  -b /tmp/root.txt             刪除全部的ACL
  • setfacl  -m mask::設定(rwx)  檔案       設定最大有效值,mask值為大於其它user 的值
  • image

 

※設定目錄ACL

  • setfacl  -d  -m  user:momo:r  /tmp/dir1          設定dir1 的ACL 並指定momo可以讀取,以後如果在目錄下產生的檔案,則為依照目錄的ACL
  • image
  •  
  • setfacl  -d  -m  user::rwx,group::rw,other::r  /tmp/dir1   
  • image
  • 若依照以上的設定,則在目錄下產生的檔案權限如下:
  • 擁有者  rwx
  • 群組  rw
  • 其它人 r
  • momo r

※ACL 的備份和還原

  • getfacl  檔案  >  acl檔案                  將檔案的ACL 存放到指定的檔案中
  • 例:getfacl /tmp/root.txt  >  acl.txt
  • setfacl  -M  acl.txt  檔案                  將備份的ACL設定附加到檔案的ACL中
  • setfacl  --set-file  acl.txt  檔案         將備份的ACL設定置換到檔案的ACL中
  • getfacl  -R /tmp/dir1  >  acl.txt                將整個目錄的ACL備份
  • setfacl  --restore  acl.txt                           將備份的ACL回復ACL設定,執行時須在該目錄中執行

奔騰兔 發表在 痞客邦 留言(0) 人氣()

  • su  -c  指令              切換身份並執行指令,通常給管理者使用
  • sudo  指令                切換身份並執行指令,可以讓一般使用者使用管理者權限執行指令,不需提供管理者密碼

※將sudo 改為root開放管理權限,使用者不需知道管理密碼:

  1. vi  /etc/sudoers                  
  2. 修改設定檔,並將 Defaults targetpw    設定註解
  3.                                  ALL ALL=(ALL) 
  4. image
  5. 加入一行  momo  ALL=(root)  /sbin/service  network  restart

                             momo  ALL=(root)  NOPASSWD:/sbin/service  network  restart       執行sudo指令時不需輸入密碼

             帳號  可使用的終端機=(欲sudo的帳號也可以為ALL)  欲執行的完整執行檔路徑或執行檔加參數  

             帳號  可使用的終端機=NOPASSWD:(欲sudo的帳號也可以為ALL)  欲執行的完整執行檔路徑或執行檔加參數  

     6.    momo 測試

          sudo  /sbin/service network restart

image

     7.    sudo  -l        可以檢視目前使用者可以使用的sudo指令

image

   8.   sudo  -k      將輸入密碼的有效期限清除,預設為5分鐘

  9.   讓momo 一般帳號使用service 指令管理network

vi  /etc/sudoers

momo  ALL=(root)  sbin/service  network  *

10    設定service  sshd不可以執行,其它可以執行:

momo  ALL=(root)  sbin/service  network  *,!service sshd *

奔騰兔 發表在 痞客邦 留言(0) 人氣()

  • Mar 05 Thu 2009 21:25
  • PAM

/etc/nologin            如果系統有此檔案,則使用者無法登入,並可以加入文字訊息

※PAM 的參考文件

/usr/share/doc/packages/pam

 

※PAM 的設定檔語法

  • auth          認證
  • account    帳戶資訊
  • password     變更密碼
  • session         操作期間

※PAM 的參數

以/etc/pam.d/login 為例

\image 

  • required         必要 (全部檢查後告知成功或失敗)
  • requisite          必要  (一旦失敗,立即結束)
  • optional          選項    (成功或失敗不影響結果)
  • sufficient    首要/特別   (一旦成功,不再檢查其它設定)

※例:要讓User  不需輸入密碼就可以登入

修改/etc/pam.d/login 設定中的include 的模組

image

 

vi  /etc/pam.d/common-auth    加入參數「nullok」則可以將帳號的密碼刪除(空密碼)就可以不用輸入密碼登入

若將  auth     required    pam_unix2.so   整行註解的話,系統中所有的使用者都不需密碼就可以登入

image

 

※設定讓特定的帳號不可登入

修改 /etc/pam.d/login

加入

auth  required  pam_listfile.so  item=user  file=/etc/user.deny  sense=deny  onerr=succeed

image

建立資料檔  /etc/user.deny

加入不可登入的帳號,則檔案內的使用者無法登入

 

※設定帳號於特定時間不能或可以登入

修改 /etc/pam.d/login

加入

auth  required  pam_time.so

修改time.so 設定檔

/etc/security/time.conf 設定檔

加入

login;終端機;帳號;Al0800-1700

image

 

※設定帳號登入錯誤次數並可以鎖定帳號

修改 /etc/pam.d/login

加入

auth           required  pam_tally.so  per_user

account       required  pam_tally.so

 

image

  • faillog         可以顯示目前有那些帳號登入的錯誤次數

image

  • faillog  -m  3          可以將faillog 的最大loging 錯誤次數修改為3
  • faillog   -r jack            可以將指定帳號的登入錯誤次數reset

奔騰兔 發表在 痞客邦 留言(0) 人氣()

※設定Quota (磁碟機配額)

vi  /etc/fstab

修改  /dev/md0  /mdeia/raid  ext2  defaults,usrquota,grpquota  0  0

重新掛載

mount  -o remount /dev/md0

安裝軟體

yast –i quota

建立資料檔會產生aquota.users 和aquota.group

quotacheck  -aug   或 quotacheck  -ug  /media/raid

啟動quota

 image

quotaon  -aug  或 quotaon  -ug  /mdeia/raid

repquota  -ag    查看所有配額設備,群組態for管理者

quota  -u     查看自已帳號的Quota狀態

quota  -g        查看自已群組Quota的狀態

edquota  -u  帳號      設定使用者磁磚配額

edquota  -g  群組       設定群組配額

edquota  -u  -t      設定使用者grace 時間

edquota  -g  -t      設定群組grace 時間

edquota  -p  帳號1  -u   帳號2                   複製使用者帳號群組Quota 設定給另一個使用者

edquota  -p  群組1  -g  群組2                   複製群組的Quota 設定給另一個群組

※建立帳號的時侯同時設定好Quota 設定

/usr/sbin/useradd.local

加入以下指令

echo $1

edquota  -p  帳號  -u  $1

奔騰兔 發表在 痞客邦 留言(0) 人氣()

1 23