寫教學的最大目的是教會未來的自己

Fedora

tar 壓縮/解壓縮指令

參考資料:http://www.vixual.net/blog/archives/127

 

常用參數

  • -c 打包一個 tar 檔案
  • -x 解開一個 tar 檔案
  • -t 檢視 tar 檔案的內容
  • -z 使用 gzip 壓縮
  • -v 顯示建立 tar 檔案的過程
  • -P 使用絕對路徑
  • -f 指定 tar 檔案的檔案名稱 (此參數的後面必須接目標檔名)

常用語法

  • 建立壓縮檔
    tar -czvf 檔案名稱.tgz 來源檔案

    來源檔案 壓縮後,打包成一個名稱為 檔案名稱.tgz 的壓縮檔,來源檔案 可以是檔案或目錄。
    來源檔案 也可以有很多個,以空白字元分隔:

    tar -czvf 檔案名稱.tgz 來源檔案1 來源檔案2 ... 來源檔案n
  • 檢視壓縮檔的內容
    tar -tzvf 檔案名稱.tgz
  • 解開壓縮檔的檔案到目前的目錄
    tar -xzvf 檔案名稱.tgz
  • 複製目錄
    tar -cvf - 來源目錄 | tar -xvf -

Post to Twitter Post to Plurk Post to Facebook Send Gmail

MariaDB安裝教學

參考資料

1.http://tw.myblog.yahoo.com/jw!kg_rIFWTHgO4kRtDoy15QxVeWQ–/article?mid=32&next=30&l=f&fid=6

2.https://downloads.mariadb.org

3.http://www.oschina.net/translate/mariadb-vs-mysql-a-comparison

 

今天無意間在網路上 看到一篇文章說MariaDB 運作效率筆MYSQL 好,所以我就找了一下資料,詳細的比較說明可以看參考資料第三個連結。

MYSQL 有什麼缺點? 阿….目前最大的風險應該再於 MYSQL 目前被甲骨文收購,甲骨文本來就有在做資料庫方面的業務,MYSQL 什麼時候從開原變成閉原開始收費沒人知道,anyway 我就嘗試安裝了一下,反正沒差,當然我的網站流量也沒高到哪去,單純換好玩的

 

經過測試……基本上….完全相容於MYSQL,不需要做另外設定,指令完全相同,我看過他的安裝過程…..他根本就是置換了MYSQL 的運作核心,如果你不仔細看板號,你會以為是MYSQL 在運作

安裝過程 (UBUNTU版本,期他的請參考官網)

1.進入下列連結,選擇你的 作業系統、版號、mariabDB的版本

https://downloads.mariadb.org/mariadb/repositories/#mirror=uestc

目前有 5.5版和 10.0版,看介紹5.5版相容於MYSQL5.5版本 10.0版本 是基於5.5版加以改進相容MYSQL5.6版

如果不知道 詳細版本的

可以用 #cat /etc/issue 來查

2.把mariaDB放到apt-get 中,請詳確認版號,因為每個版本都不太一樣,我不小心把12.04和13.04搞混 就把apt-get炸了….

如果弄錯了請#sudo vim /etc/apt/source.list 最底下把內之前曾加的 deb…..刪除

#sudo apt-get install python-software-properties
#sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
#sudo add-apt-repository 'deb http://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/repo/5.5/ubuntu precise main'

 

3.apt-get 更新和安裝…

sudo apt-get update
sudo apt-get install mariadb-server

 

4.設定root密碼,和MYSQL 介面差不多,然後就enter 一路下去 搞定

 

5.  apache 重新啟動

#/etc/ini.d/apache2 restart

 

經過測試 wordpress 繼續正常運轉 phpMyadmin 也運作正常

 

Post to Twitter Post to Plurk Post to Facebook Send Gmail

網站備份 shell script 篇 FTP 版本

最近因為工作關係,同時要撰寫一個自動備份的shell script 透過crontab 的排成 定期替網站備份

然而我在今天發現一個令人恐怖的事情,就是我忽略的ftp 的傳輸方式有兩種(一個已經執行半年的腳本….他出錯了…)

一種是專門傳送純文字檔的ASCII 模式和 其他用的binary模式。

這兩種方式的最大差别在於ASCII 是一次一個byte 再傳送,接收端接收到後再重新組合,你可以想像成對方也開個空白檔案,在一個字一個字抄過去,那這有什麼問題呢?就是 再換行符號這種地方,會因為不同OS 的設定不同的情況下,做不同的轉換,這就有可能造成檔案變質的問題,而對於壓縮檔來說…..就真的很慘….。

那用 binary傳送文字檔呢?….定多就是換行的地方掛掉而已XD

 

以下是 經過修正後的腳本

也請大家保留 授權聲明

#!/bin/sh
# Copyright (c) 2012 Chong-Po Liao ([email protected])
#
#  This file is free software: you may copy, redistribute and/or modify it
#  under the terms of the GNU General Public License version 3 as published
#  by the Free Software Foundation.
#
#  This file is distributed in the hope that it will be useful, but
#  WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#  General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program.  If not, see 
#
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
echo 'back up start....'
t=$(date +%Y%m%d)
mysqldump -u帳號 -p密碼 資料庫名稱 > 網站位置/DB.sql
tar zcfp 壓縮檔的位置/webBackUp_$t.tar.gz  網站位置

cd 壓縮檔存放的資料夾位置

ftp -in FTPIP << !
user 帳號 密碼
binary
cd 要放的位置
put webBackUp_$t.tar.gz

quit
!

echo 'done..'

Post to Twitter Post to Plurk Post to Facebook Send Gmail

Linux 工作排程設定 crontab

這個只是單純 提醒自己的文章

有興趣請參觀鳥哥文

 

以下方法 確定在 FreeBSD 上可以使用

 

#cd /etc

#ee crontab //進入 crontab

//開始新增指令 請參考http://linux.vbird.org/linux_basic/0430cron.php#crontab

 

以下方法在 fedora,CentOS,ubuntu 都適用

#cd /etc

# vim crontab

這篇 真的只是筆記了….

Post to Twitter Post to Plurk Post to Facebook Send Gmail

vim 的取代置換功能「s」

( vi 也適用 應該吧…)

 

文章來源 http://chunchaichang.blogspot.com/2010/08/vim-s.html

 

在 前面我們所談的那些可以說是比較基本的東西,但是對於一份文件來說,光有前面所介紹的游標移動、刪除等等功能是不足夠的。面對一份文件我們通常會因為某些 緣故而使得我們必須去修改當中固定出現的字串樣式(pattern)成我們想要的樣子。最常遇到的就像中文文件的標點符號問題,或是 un*ix 和 DOS 文件格式之間轉換常會有個 ^M 結尾會讓人覺得很討厭,又或是我們想要把一份 HTML 格式的文件去除掉它的 HTML tag。
對於這些事情來說,拿中文標點符號置換這個很多編輯器都做得到,簡單地說如果想更動的 pattern 是一個固定的字串,那對於一般編輯器來說都不會太困難,但是對於具有固定格式,但字串內容卻不一定的該怎麼辦?就像要去掉 HTML 格式中的所有 HTML tag?這就是 vim 開始大顯身手的地方了。

今天我們不談別的其他指令,就光談在 vim 中的「 :s 」指令。小寫 :s 表示置換(substitute)的意思,不過通常你用 vim 下 :h :s 指令的時候會看到這樣的畫面:

 

Continue reading

Post to Twitter Post to Plurk Post to Facebook Send Gmail

檔案備分的好物~~lftp的 mirror功能

最近因為案子關係,在研究如何讓網站伺服器的資料和另一台備援機同步化

達到 在網站備攻擊癱瘓的時候可以馬上重啟

首先 我這部份的同步化,並沒有達到 零時差同步,指要求每週一次就可以了

 

這次 我使用的是lftp 這是FTP的 客戶端 軟體 我們要使用的是他的 mirror 指令

以下教學參考自

http://superstanwu.blog.ithome.com.tw/post/775/29721

http://www.thelinuxblog.com/linux-man-pages/1/lftp

 

1. 安裝lftp

Debain、UBuntu:#sudo  apt-get  install  lftp

Fedora、CentOS:#yum install lftp

2. 確認語系

#locale

3.用vim 或是其他文字編輯器 開啟backup.lftp

open [主機位置]

user [帳號] [密碼]

cd /Hosts/stanserv.com/i (在 FTP上 面的路徑)

mirror -R –only-newer –only-missing –parallel=2 [要備份的本地端目錄]

(想要多個資料夾 就在這邊增加)

exit

4. 執行

#lftp -f backup.lftp

5.完成 之後你可以用crontab -e 設定排程

 

參數說明 (不負責翻譯,有任何問題,請參考上面第二個參考網址)

參數 更詳細的參數 說明
-c –continue 續傳
-e –delete 遠端沒有的就刪除
  –delete-first 在傳輸新的前,先把舊的刪除
-s –allow-suid 根據遠端設定suid
  –allow-chown 設定擋案的所有者和群組
  –ignore-time 比對時忽略時間
  –ignore-size 比對時忽略大小
  –only-missing 沒有的檔案就下載
-n –only-newer 下載較新的
-r –no-recursion 忽略子目錄
  –no-symlinks 不創造symbolic links
-p –no-perms 不設定權限
  –no-umask 不使用 umask
-R –revers 反轉 ,就是指 本地和遠端的身分反轉,下載變上傳,備分到遠端
-L –defference 下載 symbolic links
-N –newer-then=[SPEC] 下載比指定時間新的檔案
  –order-then=[SPEC] 下載比指定時間舊的檔案
  –size-range=[RANGE] 下載在指定檔案大小範圍內的檔案
-P –parrel=[N] N條線程
  –use-pget[-n=N] 用pget來傳輸每個檔案
  –loop 重複 直到找到改變

後面看不懂 就不翻譯了

Post to Twitter Post to Plurk Post to Facebook Send Gmail

Fedora軟體安裝指令yum

最近又摸了一套Linux陣營的OS : Fedora   (每個老師用的OS 都不太一樣阿XD)

 

因為要安裝新的軟體

所以就開始摸索Fedora的安裝指令

說實在的……為何每套Linux在安裝軟體的方式都不太一樣呢?

不管了 進入正題

 

參考網址 :http://jerome.anyday.com.tw/archives/47   http://www.cnitblog.com/guopingleee/archive/2009/11/24/62791.html

 

Fedora的 安裝指應是 yum [參數] [軟體名稱]

yum update
更新套件, ex: yum update httpd,如果只有 yum update ,會更新所有已經安裝的套件。

yum search
搜尋套件,ex: yum search httpd*,會搜尋所有跟 httpd 有關的套件。

yum install
安裝套件,這裡的套件安裝,會考慮到相依性的問題。 ex: yum install httpd 

yum remove
移除套件,這裡的套件移除,也會考慮到相依性的問題。 ex: yum remove httpd

yum clean
清除安裝時下載的暫存套件原始檔案,位於 /var/cache/yum,因為這裡可以清除的項目很多,我最常用的是 yum clean all ,一次給他清掉 :p

yum list
列出套件名稱,用法常用有分以下幾種:

yum list updates
列出所有可以更新的套件

yum list installed
列出所有已安裝的套件

 

依照測試使用的經驗

這個指令十分方便

不論是軟體 還是 plug-in都可以輕鬆安裝

如果名稱大小寫打錯,還會告訴你

另外在指令後面放軟體名稱時,還可以一次放多個 讓他一起跑

十分方便

Post to Twitter Post to Plurk Post to Facebook Send Gmail

Ubuntu的壓縮指令測試與教學

本篇文章參考資料

http://linux.vbird.org/linux_basic/0240tarcompress.php\

http://blog.bs2.to/post/EdwardLee/4997

壓縮指令的部分 餐搞第一個鳥歌教學,但是我以理解過後較白化的說明方式,想要看詳細的自己點進去吧

 

最近剛好接了幾個跟備份有關的cass

所以就開始研究,一些linux 相關的壓縮指令,和其中的差別

 

Continue reading

Post to Twitter Post to Plurk Post to Facebook Send Gmail

Copyright © 2024. All Rights Reserved.

歡迎光臨
初音