Gentoo Linux 開發員 User-Mode Linux 測試指南
這邊指的 UML 是指 User-Mode Linux, 就是在 Linux 上架構一套 Linux.
有點類似 vmware. 就是在電腦上模擬一台電腦.
正好看到~ 趕快記下來~ :)
Open Source 在推廣的時後總是有個最大的問題.
就是文件都是英文, 使用者介面也是英文. 造成很多人不敢進入.
在推廣的人也極力在翻譯, 找人幫忙翻譯 等等.
甚至也開發了一些好用的工具來斜助翻譯. ex: 原真 的 翻譯工具、 翻譯字辭大全
不過 我發現到最主要的問題在於. 有很多有心人事想要幫忙..
但是 都不知道有哪些需要被翻譯. 該如何進入. 該如何回覆...
現在簡單列幾個站, 若有人能幫忙. 比較有個頭緒: (若有錯請指正)
KDE
Chinese Linux Documentation Project - 如何參與
The Linux Documentation Project
很多人會問說. 為何會沒辦法apt-get install Java, Mplayer 來用.
以下都是轉錄而來, 來源已不可考(忘記在哪了)
好像是官方文件寫的吧.. XD
原因如下:
Debian 沒有 Java / mplayer 整合,是因為和自由軟體的理念有衝突。
Debian 本身受制於 Debian Social Contract (Debian 社會契約),只有完全免費、自由使用的軟體才會包進Debain 內。
這份Social Contract的嚴格程度,甚至連GNU Free Documentation Licence 也不能通過……
雖然是這樣子. 不過還是有人私下打包這些 pkg.
只要於 sources.list 加入 以下就可以了
mplayer:
deb http://marillat.free.fr/ unstable main
deb ftp://ftp.nerim.net/debian-marillat/ unstable main
http://www.princessleia.com/MPlayer.html
java:
http://www.debian.org/doc/manuals/debian-java-faq/
http://yamaguch.sytes.net/~tora/debian/java.html
SAX和DOM是處理XML兩種模式也算最基礎的..
來比較一下 兩者之差異性 及 使用的時機 吧~ :)
http://www2.tw.ibm.com/developerWorks/tutorial/content/xml/t20031007.html
Google Technology Overview
很不錯的文章.. 一定要花點時間仔細看看 :)
Google 的 技術說明. 看起來各大搜尋引擎基本運作都差不多~
但是通常結果總是會有些差異... -.-|||
(注意一下瀏覽器設定. 會依設定看到中文版或英文版)
本文最新版本於 RSS 2.0 標準
RSS 2.0 specification
Blog: RSS 2.0 Specification
看自己寫的 RSS 符不符合標準.
驗證: Feed Validator for Atom and RSS
A9 自製的 Search RSS 1.0
OpenSearch
OpenSearch RSS 1.0
參考一下中文版的東東~ 不過比較舊了點~
資源描述架構模型暨語法規格書
小記:
以下是必要的..
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:product="http://tw.yahoo.com">
<channel>
<title>This is Title</title>
<link>http://tw.yahoo.com/</link>
<description>Search results for \"".iconv_str($p, $eo)."\"</description>
<item>
item 裡面要加什麼都隨意. 不過要用<product:tagname>包起來</product:tagname>
</item>
</channel>
</rss>
在 <?xml version="1.0" encoding="UTF-8"?> 下面 加
<?xml-stylesheet href="http://blog.plogworld.org.tw/styles/rss.css" type="text/css"?>
就可以看到比較有格式的 RSS 2.0 的產物~ :)
要特別注意 <item> 裡面包的東西.
一定要有 <title> 或 <description>>
而且 title, description 不能用 <product:title>、<description>..
一定只能用 <title> 和 <description>
Perl 說明文件
要查 Perl 內建的 function, 就到 Perldoc 去看.
點 Perl Functions 就可以看到了.
平常命令列下 可以下 perldoc -f localtime,
或 perldoc -q keyword 查看所需要的 function.
其它進階的 module, CPAN 這些一樣都在 Perldoc 尋寶吧 :)
現在已經慢慢步入 XHTML + CSS 的天下了..
Html 已經不敷使用了.. 看了 Yahoo! 的首頁就應該要能夠了解..
CSS 真是太強大了.. 不過看起來還得花不少時間來學~
最少.. 還是先將 XHTML 學起來好了~ :p
以下轉載自: XHTML 1.0 網頁設計需知
並做一些小小的修正.
本篇是翻譯自 Casey Kochmer 的「USING XHTML IN JSP, ASP AND PHP WEB SITES」一文。因該文原網址已遺失,我只貼上我之前看完後稍加整理的部份。
原則:
1. HTML 標籤統一用小寫,千萬別動到大寫英文字母。
ex. 錯誤的示範:
2. 別亂擺 HTML 標籤。有的瀏覽器還是可以看到正確內容,但在 XHTML 中可是會出問題的。
ex. 錯誤的示範:
3. 所有屬於該標籤的屬性,其指定值一定要加雙引號。
ex. 錯誤的示範:
4. 所有的標籤都是封閉性的。
ex. 錯誤的示範:
寫法:
第一行要是這個標籤(選用, 可不加): (註)
這個標籤將告訴瀏覽器這個網頁是如何描述 XHTML 規格。有下列三種:
2. 第二行一定要用 <html> 這個標籤,並在裡面加上 xmlns 這個屬性。
例子:
3. 在 XHTML 中一定要加入 <title> 這個標籤。
例子:
4. <form>標籤一定要有一個 action 屬性,指定接收資料的網頁。
例子:
5. 關於網頁上與樣式∕排版有關的標籤,如 <font>、<center> 等等都不該再使用,改以 CSS 語法設定。
6. 所有文字內容都要包在標籤內。
例子:
7. 所有行內標籤內都不能含有區塊標籤。
例子:
超鏈結標籤<a>是個行內標籤,不能將區塊標籤<table>給包起來。
8. 所有的 <img> 標籤都要有個 title 屬性,作為圖檔的說明。例子:
9. 所有的 <style> 標籤都要有 type 屬性。
例子:
10. 以前的 HTML 語法允許屬性的指定值單獨存在,現在不行了。要使用這個指定值,就用同名的指定值當作屬性。
例子:
在以前(HTML 4.01 規格)中,這樣做時會出現一個已經勾選的 check box(勾選框),但在 XHTML 中我們要改成這樣:
11. 使用 <script> 標籤時最好將 script 內容另外以檔案呼叫進來。
例子:
svn 電子書
Subversion Book, Traditional Chinese Edition
Version Control with Subversion
S5: Simple Standards-based Slide Show System
It's a Simple Standards-based Slide Show System
網路上現在很多人在報告都是直接連到自己放的網址.
然後直接點選就下一頁, 下一頁. 很像 powerpoint. 超方便的.
大概就是直接套這個程式來用的吧?..
Opera Show Documentation: Opera Show Format 1.0
s5 的 "主程式" 應該就是 slides.js 吧. 找個時間用用. 非常實用的工具.
(據 penk 大大所言: perl 的 spork 或 TKslide 好像也能做到)
一些相關資訊(軟體)
TKSLIDE - TKIRBY的投影片系統
TKSLIDE : tkirby's Slide System
投影片空手道 — 北腿篇
outline2html 的模組化用法
SPIP - Simple Presentations In Perl
Enable Gmail POP
Gmail: Help Center
Setting -> Forwarding and POP -> 選 Enable POP for all mail 就可以了
pop: pop.gamil.com
smtp: smtp.gmail.com
pop 的 username 要填 username@gmail.com
smtp 要設 995 port
Gimp 的一些教學手冊參考連結.
以下連結取自 不讓PhotoShop專美於前的Gimp
GIMP Documentation (official docs)
Gimp範例教學
GOT--用GIMP畫CG
使用GIMP為數碼照片制作精美像框
MovableType的Comment Spam
先繼續用 blacklist, 有空再來搞這個~ :)
spam 真煩.... :(
MT 防止垃圾留言的新方法
這個方法看起來是最好加的~ 而且似乎還真的蠻好用的~ :p
由 Windows 轉換到 Linux 需準備事項
這篇文章寫的很不錯~ 在轉換時要注意的東西就如下~
第一點~~ 就是先教你如何備份自己在 Windows 的資料.
再來就是測試看看 硬體支援 是如何.. 再下去就.... 直接轉載一下好了~ :p
很適合想轉換但是不太敢換的人看. 事實上換成 Linux 可以很安全又順利~ :)
以下轉載自: 由 Windows 轉換到 Linux 需準備事項
I.開始之前
II.硬體支援
III.選擇套件
IV.正式安裝(1)
IV.正式安裝(2)
V.中文化(輸入法)
VI.軟體應用
VII.如果你一定要付錢......
突然想到 來將一些程式語言、Script 教學文件搜集一下~
UNIX 相關資料 - 裡面就有相當多不錯的資料~
AWK Tutorial Guide
SED 手冊
DevGuru JavaScript Index
Shell 設計入門
Regular Expression 簡介
其它特殊:
Shell 真假值判斷
PHP 利用imagemagick來作縮圖
ADODB 中文手冊
Smarty 入門
SMARTY TEMPLATE 和 PHPLIB 比較
我用smarty的不用counter的方式
===========================
非常感謝 chuany 的提醒~ 已修復錯誤連結~~~ 感激不盡~~ :)
只要是 UTF-8 的檔案. Windows 都會在檔案前面偷偷加些怪東西..
那怪東西就叫 BOM(Byte Order Mark).
(萬國碼檔案簽名 BOM (Byte Order Mark, U+FEFF))
而 BOM 就會造成很多的問題.
後來發現到要在 Windows 中 存個沒有 BOM 的東西還不是那麼容易的.
以下幾個方法可以試試.
1. 用 gVim 就可以了
2. Editplus
- Document -> Permanent Settings ->
Files -> Do not add Byte Order Mark to UTF-8 files 勾選
3. 其它 Unicode Editor
以 iptables 架設 SME 防火牆
防火牆的基本觀念. 和 iptables 有哪些參數可以設定.
該如何設定. iptables 跟 Netfilter 的溝通~ 等等 都寫的很清楚 :)
如果還是懶得看 試試 用 firestarter 來保護您的工作站! 這個好了.
以下轉載自: 以 iptables 架設 SME 防火牆
由於 Internet 的普及和連接的成本下降, 很多企業都已經把辦公室網絡接上 Internet 去了。 而當各企業正享受著 Internet 所帶來的商機和方便的同時, 亦為企業本身帶來各種的危機。 從一些貪玩小孩的入侵, 到大規模的網蟲 (NetWorm) 爆發。 企業的系統無時無刻面對著各種挑戰。 一但系統被入侵, 所損失的往往多於能從 Internet 中所得到的。 所以我們必需要有一個防禦的機制來保護企業內的資料和財產, 免受外來的種種攻擊。 而當中最為普及的技術便是『防火牆』(Firewall)。
從網絡保安而言, 防火牆通常會用作內部網絡對外連接的唯一通道。 如此一來, 防火牆便成為了一個網絡關卡, 所有進出內部網絡的交通都必先經過防火牆的檢查和過濾, 防止入侵者接近內部的資源。
而防火牆是根據網絡管理員預先定下的規則 (Rules) 來過濾網絡交通。 而這些規則便是整個防火牆的靈魂、內部網絡的守衛。 在制定這些規則時, 大都是圍繞著以下幾個範籌而定:
* 誰〔不〕能進出網絡
* 什麼〔不〕可以進出網絡
* 資料〔不〕可以傳到那裡去
* 用什麼方法才〔不〕可進出網絡
1 封包過濾 (Packet Filters)
封包過濾是透過檢測網絡封包的標頭 (Header) 資料是否符合管理員所定下的規則, 而決定是否讓其通過。 這些標頭資料包括了:
* 來源/目的地的位址 (Address)
* 來源/目的地的通訊埠 (Port)
* 通訊協定 (Protocol)
使用封包過濾的好處是其系統和應用程式中立性 (Operating Sytem & Application-neutral), 對於在內部網絡的客端程式不須作任可更改便可提供保謢。 而本文將會介紹的 防火牆亦是封包過濾式的。
2 應用層閘道 (Application Gateway)
應用層閘道式的防火牆, 主要是在客端和伺服器之間加上『代理伺服器』(Proxy Server) 而達成。 如此一來, 網絡間的連線得變成兩個部驟: 首先是客端和代理伺服器連線, 然後經過過濾後才由代理伺服器和真實的伺服器連線。
但是使用應用層閘道式的防火牆, 往往須要更改客端程式的設定來佩合。 這對於一般的用家 (End-user) 來說, 並不如封包過濾般方便。
要把 iptables 運用得當, 就先要理解 Netfilter 處理封包的機制。
之前提及過防火牆是透過一系列的規則而建成, 而每個規則都包含了一個對封包的描述 (Match) 和 一個處置動作 (Target)。 每當封包符合規則中的描述時, 核心便會對封包進行相應的處置動作。 而在 Netfilter 的角度中, 這些規則是記錄在不同的鏈 (Chain) 中, 而鏈又會被歸納到不同的規則表 (Table) 中。
封包會根據它在核心中不同的層次和狀態, 被送到一個或多個規則表和鏈中, 並和當中的每個規則作對比並執行相應的動作。 iptables 的功用就是讓管理員管理各個規則表和鏈中的規則。
filter
這個規則表是最常用的規則表, 也是 iptables 的預設的規則表。 所有對封包進行過濾的規則都是加進這個規則表的鏈中。 這個規則表中有三個預設的鏈, 分別是: INPUT (給目的地是本機的封包), FORWORD (給途經本機的封包), OUTPUT (給由本機所發出的封包)
nat
這個規則表主要是給予系統 網路位址轉換 (Network Address Translation) 的功能。顧名思義, 網路位址轉換就是把封包標頭的位址和通訊埠的資料更改。 這個功能主要的用處是:
Internet 連線分享。 即使只得一個可用的 Internet 位址, 也可把整個內部網絡的電腦接上 Internet。
隱蔽內部網絡的存在。 縱然有足夠的 Internet 位址可用, 但基於保安的理由我們有時會不希望其他人知到企業內部網絡的存在。 運用網路位址轉換就可把所有內部網絡對外的通訊轉換成看似是同一位址所發出的封包一樣。
服務轉向 (Forwording )。 當有伺服器置於防火牆後, 但又須要對外提供時, 便可以把目的地位址是防火牆的封包轉向到真實的伺服器。這個規則表中有三個預設的鏈, 分別是: PREROUTING (給所有進入本機而未經路由處理 (Routing Decision)的封包), POSTROUTING (給所有經過路由處理而目的地不是本機的封包), OUTPUT (給由本機所發出的封包)
mangle
這個規則表用來更改封包的一些屬性 (Properties), 這個規則表中有四個預設的鏈, 分別是: PREROUTEING, INPUT, FORWARD , OUTPUT 和 POSTROUTING。
Table 是所用的是個規則表
Chain 指明是用規則表中的哪一個鏈
Operation 是對鏈中的規則所進行的動作, 例如:增加,移除,清空 等
Match 是一個對封包的描述, 例如:來源地址及通訊埠
Target 是處置動作, 例如:ACCEPT, DROP, LOG等
有了基本的認識後, 我們便開始架設防火牆。 我們假設企業A 有一個 Internet 連線和足夠的合法 Internet 位址給所有電腦使用。 而企業A 只希望員工使用 WWW 和 FTP。
我們可以跟著以下的步驟制作一個 Shell Script, 來架設防火牆。
設定網絡參數和載入相關的核心模組
$INTERNAL_NET=X.X.X.X/24 # Local LAN Subnet
$INTERNAL_NIC=eth0 # Local LAN interface
$EXTERNAL_NET=Y.Y.Y.Y/8 # Internet Subnet
$EXTERNAL_NIC=eth1 # Internet interface
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ipt_state
-F 動作會清除所指定的鏈中的所有規則, 如果沒有指明鏈則規則表中所有的鏈都會被清空。
/sbin/iptables -t filter -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F
-X 動作會移除指定規則表中所有由用者增加的鏈
/sbin/iptables -t filter -X
/sbin/iptables -t nat -X
/sbin/iptables -t mangle -X
-P 動作會設定所指定的鏈的預設政策。 當一個封包進入鏈後, 但沒有規則能符合這個封包的資料和狀態時, 核心會以鏈的預設政策去處理該個封包。
每一個良好的防火牆的預設政策都應設為 DROP。 正所謂寧枉無縱, 預設拒絕所有封包, 然後才讓真正有用封包通過。 能使防火牆更為堅固。
/sbin/iptables -t filter -P INPUT DROP
/sbin/iptables -t filter -P OUTPUT DROP
/sbin/iptables -t filter -P FORWARD DROP
如要查看一部主機是否在線, 最簡單的方法是使用 ping 指令。 如果不想被 ping, 可以設定 Netfilter 不回應 ICMP 封包
/sbin/iptables -t filter -A INPUT -p icmp --icmp-type echo-requested -j DROP
/sbin/iptables -t filter -A OUTPUT -p icmp --icmp-type echo-reply -j DROP
/sbin/iptables -t filter -A FORWARD -p icmp --icmp-type echo-requested -j DROP
/sbin/iptables -t filter -A FORWARD -p icmp --icmp-type echo-reply -j DROP
IP Spoofing 是把外來的封包假裝成是內部網絡所發出的, 試途讓防火牆誤認而允許其進入內部網絡。 而要防止 IP Spoofing, 我們只須要過濾那些從 Internet 進入而聲稱來源地址是內部網絡的封包便可。
/sbin/iptables -t filter -A INPUT -i $EXTERNAL_NIC -s $INTERNAL_NET -j DROP
/sbin/iptables -t filter -A FORWARD -i $EXTERNAL_NIC -s $INTERNAL_NET -j DROP
網絡掃描是利用一些不正常而又合法的封包去檢測伺服器所提供的服務和取得一些系統資訊。 亦有入侵者用這些封包企途繞過防火牆去入侵內部網絡, 所以必需過濾。
/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags ALL ALL -j DROP
/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags ALL NONE -j DROP
/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
要允許瀏覽 Internet 網頁, 我們須要允許封包從內部網絡傳送到 Web Server 去, 並同時要允許封包從 Web Server返回內部網絡。
/sbin/iptables -t filter -A FORWARD -p tcp -s $INTERNAL_NET -d 0/0 --dport 80 -j ACCEPT
/sbin/iptables -t filter -A FORWARD -p tcp -s $INTERNAL_NET -d 0/0 --dport 443 -j ACCEPT
要允許封包從 Web Server返回內部網絡, 有兩個方法設定。 其一是利用狀態性機制去自動判斷相關的封包:
/sbin/iptables -t filter -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
其次是加上相應的規則:
/sbin/iptables -t filter -A FORWARD -p tcp -d $INTERNAL_NET -s 0/0 --sport 80 ! --syn -j ACCEPT
/sbin/iptables -t filter -A FORWARD -p tcp -d $INTERNAL_NET -s 0/0 --sport 443 ! --syn -j ACCEPT
利用狀態性機制去自動判斷的好處是, 只須設定一次就能和其他規則分享使用 (象以下的 DNS 和 FTP), 能減少規則的數量,方便管理。
DNS 是主機名稱和 IP 位址互換的服務, 如果過濾了 DNS 查詢, 用戶便不能用主機名稱 (如:http://www.linuxpilot.net ) 來瀏覽網頁, 而是要直接用 IP 位址 (如: http://203.194.196.187)。
/sbin/iptables -t filter -A FORWARD -p udp -s $INTERNAL_NET -d 0/0 --dport 53 -j ACCEPT
如果已有固定的 DNS 伺服器, 可以以下規則去限制只可以查詢指定的 DNS 伺服器:
$DNSSRV=202.181.230.106 # IP Address of the DNS Server
/sbin/iptables -t filter -A FORWARD -p udp -s $INTERNAL_NET -d $DNSSRV --dport 53 -j ACCEPT
大部份的 Internet 服務的設定基本上和之前的大同小異, 讀者可以嚐試自行設定。 但可惜的是 FTP 不只用一個通訊埠來進行資料傳送, 而是要用兩個。 更甚的是其中一個通訊埠是次次不同的, 根本不可能預先在防火牆中設定。
有幸的是 Netfilter 所提供的狀態性機制能解決這個問題。 由於 FTP 的第二個通訊埠的連線, 是透過在埠21已建立的連線來建立, 所以可以利用狀態性機制去允許所有由已建立的連線所衍生出來的連線。
/sbin/iptables -t filter -A FORWARD -p tcp -s $INTERNAL_NET -d 0/0 --dport 21 -j ACCEPT
最後, 開設一個通道給管理員以 SSH 連線到防火牆修改設定。 不然的話, 每當有設定要修改時, 管理員便要親身登入防火牆修改了。
/sbin/iptables -t filter -A INPUT -i $INTERNAL_NIC -s $INTERNAL_NET --dport 22 -j ACCEPT
最後的步驟
當設計好所有的規則和相應的 Script 後, 把所有的 Script 集合起來製成一個 Shell Script, 然後於 /etc/rc.d/rc.local 中加入執行該 Script 的命令。 這樣每次系統啟動時便會自動啟動防火牆。
Internet 連線分享
雖然以上的防火牆是基於有足夠的合法位址而設計, 但只須多加一規則便可以讓內部網絡以一個合法位址分享Internet 連線。
如果獲得一個固定的合法位址, 可以用:
$FIREWALL_IP=y.y.y.z # IP Address that can connect to Internet
/sbin/iptables -t nat -A POSTROUTING -o $EXTERNAL_NIC -s $INTERNAL_NET -j SNAT –to $FIREWALL_IP
如果位址是動態分佩的話, 則用:
/sbin/iptables -t nat -A POSTROUTING -o $EXTERNAL_NIC -s $INTERNAL_NET -j MASQUERADE
其實以上兩個規則,都是叫核心把由內部網絡所發出的封包內的來源位址, 先轉成防火牆的合法位址再送出 Internet。 只不過用 MASQUERADE 方法時, 因為要顧及動態位址分佩, 所以會比 SNAT 多用一點 CPU 資源。
Linux 加上 Netfilter 的強大功能, 給予中小企一個低成本的防火牆的解決方案。 以保障企業的資源。 以上的範例雖已包含了一般防火牆的功能, 但單靠 Netfilter 是未能杜絕所有的入侵 (例如: 電郵病毒)的。 所以系統管理員仍是要綜合各種網絡保安的工具一起, 發揮最大的效能。
作者Isaac Chau
原文在 LinuxPilot 第 15 期刊登
PowerOp's blog - 無差別瀏覽 -- 一個網路使用者的努力
這篇的內容很不錯~ 想要達成讓所有網站都能符合標準.
才能夠讓所有瀏覽器都可以讀取~ 雖然這是一件非常困難的任務.
裡面也有講了大概的計劃流程. 只是不曉得現在有沒有在運作了.
以下轉載自 PowerOp's blog - 無差別瀏覽 -- 一個網路使用者的努力
在下面有些不錯的參考教學網站.
Dive Into Accessibility - 在 30 天內打造更具親和力的網站
->一邊看故事,一邊學習。
網絡標準轉換(或怎樣輕易地改進您的網站)
->概念性的文件
無障礙全球資訊網建置準則1.0版教學課程
->教學課程囉
行政院研考會的"無障礙網路空間服務網"
->政府也不是完全沒注意到這個題目啦。"無障礙"其實比我談的更廣,還考慮了視障聽障等等的朋友。
===============
額外附加:
除了標準外. 還要把網站設計的好用點~
提高Web 設計的可讀性 (web design readability)
點點看上面網址. 滑鼠 點"女性" 那兩個字. 就知道差別了.
(其中一個一定要點小圓圈的小點. 另一個只要點到字就做切換了)
無障礙網頁開發:規範及技術手冊
Digital Radio Mondiale
數位權利管理(PDF)
因應微軟 DRM廠商備戰
這篇一定要好好看 企業文件保全防身術 有以下內容
- Day 1: 機密文件被竊的五種可能
- Day 2: 打擊文件偷渡的四種選擇
- Day 3:搶救關鍵報告的三項要訣
如果有讀研究所. 相信這會是個不錯的主題. :)
DRM 要實行也是要小心~
微軟Media Player遭利用散播間諜軟體
- 西班牙安全廠商熊貓軟體公司(Panda Software)上週警告表示,很顯然有數家公司正利用微軟Media Player中的數位版權管理(DRM)工具欺騙使用者下載間諜軟體和病毒。哈佛大學的研究人員Ben Edelman證實了這些檔案的存在。
關於big5碼的荒謬事
原來 Big5 的名稱 是這樣子來的~ :)
以下轉載自 關於big5碼的荒謬事
BIG5之所以叫BIG5,原因之一是由台灣五家電腦公司於一九八四年所共同訂定推動,其中包括宏碁。BIG5只能容納一萬三千多個漢字,相對於國字整理小組整理出的七萬多個字,根本不夠用,雖然像黃大一這類的人士以激烈文字反對,但也敵不過五家電腦公司。好笑的是,當初訂出來的BIG5碼連宏碁的「碁」都打不出來,造成一點尷尬。後來增訂才加進「碁」這個字。打不出游錫「方方土」或陶「吉吉」,活該他們當年沒去開電腦公司。
以下轉載自 計算機概論
# Big5 碼名稱的由來:民國72年左右,個人化的微電腦已在台灣逐漸推廣使用,電腦套裝軟體也開始在國內外盛行, 當時電腦界有鑑於電腦軟體的五大主流(文書處理、電子試算表、繪圖、資料庫與通訊)是很有發展空間, 也是普及資訊應用非常重要的研發方向,因此,五家國內的電腦大廠聯合欲順應潮流設計大型套裝軟體(命名「五大軟體」)來達成這項重大歷史任務, 然而,開發軟體之前先得解決電腦處理中文的問題,再者,中文內碼更是這一切的根本,所以先行製訂的中文內碼,取其名「Big5 碼」。
# 中文內碼常用字是先以筆劃、再以部首為序,所以當中文資料(常用字)要以筆劃多寡排序時,只需依其內碼排序即可。
網頁唯美派 6 -- 製作「我的最愛」圖示
新兩隻老虎-- 下載 eBook「如何應考成為 Adobe 認可專家」& 「無廢話 XML」
以下網址有簡單的製作該注意的事.. 和簡單的製作方法~
網址前的小圖
Shih-Hsien's BLOG » 加上專屬的 logo 吧!
加入 favicon.ico 的語法: <link rel="shortcut icon" href="favicon.ico">
favicon.ico 要 16 x 16 大小的圖片.
要分析 access.log 前.. 稍微查一下 access.log 的 格式.. :)
搜尋一下 "Apache Log Format"...
Apache HTTP Server - Log Files(Log Files)
Module mod_log_config(格式定義)
由以上網址抓取來一些需要的資訊:
Combined Log Format
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
CustomLog log/acces_log combined
Ex:
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08 [en] (Win98; I ;Nav)"
Custom Log Formats
%...a: Remote IP-address
%...A: Local IP-address
%...B: Bytes sent, excluding HTTP headers.
%...b: Bytes sent, excluding HTTP headers. In CLF format
i.e. a '-' rather than a 0 when no bytes are sent.
%...c: Connection status when response was completed.
'X' = connection aborted before the response completed.
'+' = connection may be kept alive after the response is sent.
'-' = connection will be closed after the response is sent.
%...{FOOBAR}e: The contents of the environment variable FOOBAR
%...f: Filename
%...h: Remote host
%...H The request protocol
%...{Foobar}i: The contents of Foobar: header line(s) in the request
sent to the server.
%...l: Remote logname (from identd, if supplied)
%...m The request method
%...{Foobar}n: The contents of note "Foobar" from another module.
%...{Foobar}o: The contents of Foobar: header line(s) in the reply.
%...p: The canonical Port of the server serving the request
%...P: The process ID of the child that serviced the request.
%...q The query string (prepended with a ? if a query string exists,
otherwise an empty string)
%...r: First line of request
%...s: Status. For requests that got internally redirected, this is
the status of the *original* request --- %...>s for the last.
%...t: Time, in common log format time format (standard english format)
%...{format}t: The time, in the form given by format, which should
be in strftime(3) format. (potentially localized)
%...T: The time taken to serve the request, in seconds.
%...u: Remote user (from auth; may be bogus if return status (%s) is 401)
%...U: The URL path requested, not including any query string.
%...v: The canonical ServerName of the server serving the request.
%...V: The server name according to the UseCanonicalName setting.
Apache Core Features
上述網址是 apache設定檔 中文版..
<Files ~ "\.inc$">
Deny from all
</Files>
所有目錄下的 *.inc 都不給讀取.( 不給 Broswer 讀取 )
不過 apache 好像預設本來就不會讓 .inc 的讀取.. XD
從 BBS 看來的.. 感謝 lloyd 大大的分享
超邪惡軟體 BitlBee - An IRC to other chat networks gateway
在 moto 也看到轉載了 :)
以下完整轉載自 超邪惡軟體 BitlBee - An IRC to other chat networks gateway
※ 本文轉錄自 [Linux] 看板
發信人: lloyd huang
標 題: 超邪惡軟體 BitlBee - An IRC to other chat networks gateway
發信站: KaLUG (Tue Dec 21 12:42:18 2004)
轉信站: SayYa!ctu-reader!ctu-peer!news.nctu!news.netfront.net!not-for-mail
Origin: 61-64-98-154-adsl-chu.static.so-net.net.tw
續 " xchat 的好伙伴 dircproxy -- IRC Proxy 的好工具 " 現在又再度挖到了
另一個超邪惡工具 BitlBee - An IRC to other chat networks gateway
你正在為公司關閉 MSN ICQ AIM 對外連線而苦惱嗎? 或者你實在無法喜歡 Linux
Unix 上 MSN ICQ AIM 的工具,又或者你超級愛用 IRC client 而希望利用你慣用
的 IRC client 來連結 MSN ICQ AIM 呢?
這時候你就需要這個超邪惡軟體 BitlBee 來幫助你達成你所要的功能。
------------------------------------------------------------------------
bitlbee - An IRC to other chat networks gateway
This program can be used as an IRC server which forwards everything you
say to people on other chat networks: Jabber, ICQ, AIM, MSN and Yahoo.
------------------------------------------------------------------------
簡譯如下:
bitlbee 是個 IRC server, 可以透過它轉送訊息給其他使用 Jabber, ICQ, AIM, MSN
以及 Yahoo message 的使用者,直接使用你慣用的 IRC Client 工具,無須更動你在
IRC 上的使用習慣,而訊息也只會個別的傳送給單一使用者。你只需要
-------------------------
usernam 你所要聊天的訊息
-------------------------
這樣就可以直接傳送給對方,而無需要理會對方是使用什麼樣的 network chat 工具。
當然你也可以直接用 /msg username message 開一個一對一的 chat room , 這樣連
打 username 都可以省了。
緣起:
早先在 IRC 上 moto 正在為了他們公司將要關閉 MSN ICQ 的對外連線苦惱。而在尋求
其他類似 dircproxy -- IRC proxy 提供給 MSN ICQ 使用的 proxy。
幾個禮拜過去了,不小心逛大街,晃到了 http://gslin.org/?p=214
看到了這個邪惡到爆的軟體 BitlBee http://www.bitlbee.org/
並且學到了一句很有意思的黑話 "審查砲彈 (screenshot)" ,讓我們審查 BitlBee
的砲彈吧。 http://www.bitlbee.org/main.php/screenshots.html
我目前的作法:
IRC Client 使用 XChat, IRC Proxy 使用 dircproxy , 加上 BitlBee 跟其他非 IRC
的使用者交談,我目前只測試過 AIM (AOL), MSN, ICQ。
安裝:
我是 debian Fan, 所以目前安裝在 debian serage 上,使用的版本為 BitlBee 0.91。
BitlBee 可採用 inetd or standalone,debian 預設使用 inetd。
#> apt-get install bitlbee
選擇你要使用的 port number ,利用更動 port number 可以躲避公司的防火牆 NAT,我是
額外在加上 IRC Proxy 躲避 NAT 並且利用它來紀錄連線交談 log。
xchat 連接你的 irc port number (Note : xchat 編碼請使用 utf8)
一進入 bitlbee ,它會開啟一個 channel 取名為 #bitlbee ,並且有兩個 user 一個是
你 另一個是 channel root ,並告訴你打 help 看一下線上說明文件,help quickstart
,help quickstart2,help quickstart3 ....
使用方法簡述如下:
---------------------------------------
一開始請註冊並輸入密碼如下
register 密碼
下次連線啟用帳號時則
identify 密碼
MSN AIM ICQ ... 帳號管理使用,你想跟 MSN 的人交談廢話當然要申請 MSN 帳號, AIM I
CQ
都一樣。bitlbee 只是幫助你利用 IRC 的方式轉訊息而已。
MSN 啟用帳號
account add msn MSN帳號 MSN密碼
ICQ 啟用帳號
account add oscar ICQ帳號 ICQ密碼 login.icq.com
AOL 啟用帳號
account add oscar AOL帳號 AOL密碼 login.oscar.aol.com
連線 (其實你離開後在登入利用 identify 密碼,就會自動連接你個別的帳號了。)
account on
聊天
xxx-username 你要打的訊息..
Note : 你聊天的訊息只針對單一使用者,所以要講話之前要針對特定 username
不過請善用
開個一對一 chat room. 也可以。
其他的部份請自己去看 help
------------------------------------------------------------------------
實際使用起來中文會有亂碼不會動。沒關係 open source 不會動自己改。
下載 source , 解開, 找一個檔案 protocols/nogaim.c 改一行就會動了。
在 1001 行
if( g_strncasecmp( set_getstr( irc, "charset" ), "none", 4 ) != 0 &&
do_iconv( set_getstr( irc, "charset" ), "UTF-8"........
msg = buf ;
改成
msg = msg ;
沒錯,它有幫我們試圖轉換 charset,但原因不名,可能取不到或是不知道 charset
在 1001 行
if( g_strncasecmp( set_getstr( irc, "charset" ), "none", 4 ) != 0 &&
do_iconv( set_getstr( irc, "charset" ), "UTF-8"........
msg = buf ;
改成
msg = msg ;
沒錯,它有幫我們試圖轉換 charset,但原因不名,可能取不到或是不知道 charset
所以轉錯了。不管反正這種在不了解架構下改的 dirty hack patch 人家也不可能會收
,反正我能動就好。
make ; cp bitlbee /usr/sbin/bitlbee
好啦沒了,祝你使用愉快!!
Tutorial for building J2EE Applications using JBOSS and ECLIPSE
不懂這個跟 EJB 有什麼關係?..
EJB 轉載自 EJB的種類及用處
EJB 依照特性的不同,區分為幾種。
1 Session Bean:主要的目的是讓程式開發者將邏輯層抽離,這些「邏輯」通常就是一個應用程式中的Business Logic,在整個系統開發中佔有相當重要的一部份。系統開發者可以多加利用Session Bean,將複雜的邏輯放在 Session Bean 的Method中。
1.1 Stateful Session Bean:可以記錄呼叫者的狀態,因此通常來說,一個使用者會有一個相對應的 Stateful Session Bean 的實體(Instance)。
1.2 Stateless Session Bean:也是邏輯元件,但是他卻不負責記錄使用者狀態,也就是說當使用者呼叫 Stateless Session Bean 的時候,EJB Container 並不會找尋特定的 Stateless Session Bean 的實體來執行這個 method。
2 Entity Bean:它的角色是主要是資料元件,主要目的在於提供資料,讓系統開發人員直接將Entity Bean 當作程式中所要用到的資料;至於 Entity Bean如何存取一個Relational Databse或LDAP,就可以作為另外一項獨立的事情。
2.1 Bean-Managed Persistence(BMP):由名稱上就可以直接了解到BMP是由Bean自行維護資料的一致。`而Bean從資料庫取得資料後,BMP 中需要自行宣告欄位來存放這些資料,相關的 JDBC 語法等程式,也都須要自行撰寫。適用於開發人員想要完全控制 BMP 的資料存取行為時。
2.2 Container-Managed Persistence(CMP):相對於BMP,CMP是由 EJB Container 負責維護資料。撰寫 CMP 的程式設計師並不需要撰寫大多數的 JDBC 語法,通常只需要撰寫Deployment Description,就可以產生 CMP ;實際上的程式碼是 EJB Container在Deploy EJB 的時候所產生。CMP似乎有助於快速開發系統(大部份的工作都交給EJB Container了嘛),但是須要配合使用支援 CMP 的Application Server,而截至目前為止,每一家不同Application Server對CMP 的支援程度也不大相同。
3 Message Driven Bean:主要的目的在於反應 Message Queue 中的事件,當 Message Queue 中有訊息傳入時,Message Driven Bean 可以被觸發,做出對應的反應;所以Message Driven Bean可以說是主動反應,而不是「呼叫某個Method」這樣的方式被動觸發。
其中 Session Bean 與Entity Bean在 EJB 規格 1.x 的時候就已經存在了,而 Message Driven Bean 則出現在 EJB 2.0 的規格中。
Tutorial for building J2EE Applications using JBOSS and ECLIPSE
Enterprise JavaBeans 的主架構(Architecture)。乃是一種組件架構, 它提供企業來發展與配置企業層次的應用程式; 該應用程式是屬於物件導向的分散式應用程式
jboss 是application server(像tomcat)
File -> Account -> Rss News & Blogs
Account Name: 自己取(或就叫做 RssReader好了)
再來就 Finish 囉!
然後對自己新跑出來的 RssReader 按右鍵選 Manage Subscriptions..
再按 Add
將網址 rss 或 rdf 輸入進去..
有以下這個選項
Show the article summary instead of loading the web page
勾選的話.. 他會將網頁上的 html 碼全部濾掉.. 就是只看純文字就是了..
而且不會全部都抓.. 都只抓前面 90 個字.. 然後點選後會自己開瀏覽器再去看..
(內容上面有 Website 的網址可以點)
PS: 對已經設好的 Tsung's Blog 按右鍵 -> Properties
可以調 Default CharacterEncoding: Unicode (UTF-8)
現在應該大部份的 RSS 都是以 UTF-8 為主才是
Mozilla 擴充套件中文化的小教學
事實上原本是想要找如何制作 firefox extension 的教學..
找到這個也算是符合我要的需求了~~ :p
找這個最主要的目的是要修改 StockTicker 0.5.2 的這個 Extensions 的套件..(作者)
因為他抓的都是美國的股市.. 想要改成抓台灣股市的方式~~ :p
主要的關鍵點在於..
了解了 .xpi 和 .jar 就是 .zip
其它一切都好解決了~~ :)
美國股市 http://finance.yahoo.com/q?s=$
台灣股市 http://tw.stock.yahoo.com/q/q?s=$
把網址修改一下.. 改完自己壓縮起來.. 再將檔名改為 .xpi 後..
拉到 firefox 上就可以掛上去了.. :)
Yahoo 翻譯網頁這個功能蠻有趣的~
只要搜尋到英文網頁.. 在旁邊會有個"翻譯網頁" 的 link.
點那個就會將網頁翻成中文~~~
而且翻譯頁的右上角還有 Yahoo!搜尋語言工具 可以把想要的網址翻成各種語言.
但是如果我想要將自己的網頁翻成英文呢?
http://202.43.196.230/language/translatedPage?
tt=url&lp=zt_en&.intl=tw&text=http%3A%2F%2Fblog.longwin.com.tw
注意一下 lp , .intl, text 這三個參數就可以將自己的網頁轉成各種語系了 ~ :)
如果有一天你要帶外國朋友去夜市,
你應該怎麼解釋夜市裡琳瑯滿目的美食呢?
以下轉載自 英文大考驗 -台灣小吃篇
看板: Food
回上頁
發信人: mouw.bbs@zoo.ee.ntu.edu.tw (起司蛋糕的真面目), 看板: Food
標 題: 英文大考驗 -台灣小吃篇
發信站: 不良牛牧場 (Wed Feb 28 22:59:20 2001)
轉信站: Ptt!warpnews!SimFarm
以下資料僅供參考
夜市是台灣的一種非常特殊的文化,現在已經變成外國觀光客
必去的一個景點。如果有一天你要帶外國朋友去夜市,
你應該怎麼解釋夜市裡琳瑯滿目的美食呢?
早 餐~
燒餅 Clay oven rolls
油條 Fried bread stick
韭菜盒 Fried leek dumplings
水餃 Boiled dumplings
蒸餃 Steamed dumplings
饅頭 Steamed buns
割包 Steamed sandwich
飯糰 Rice and vegetable roll
蛋餅 Egg cakes
皮蛋 100-year egg
鹹鴨蛋 Salted duck egg
豆漿 Soybean milk
米漿 Rice & peanut milk
飯 類~
稀飯 Rice porridge
白飯 Plain white rice
油飯 Glutinous oil rice
糯米飯 Glutinous rice
滷肉飯 Braised pork rice
蛋炒飯 Fried rice with egg
地瓜粥 Sweet potato congee
麵 類~
餛飩麵 Wonton & noodles
刀削麵 Sliced noodles
麻辣麵 Spicy hot noodles
麻醬麵 Sesame paste noodles
鴨肉麵 Duck with noodles
鵝肉麵 Goose with noodles
鱔魚麵 Eel noodles
烏龍麵 Seafood noodles
榨菜肉絲麵 Pork , pickled mustard green noodles
蚵仔麵線 Oyster thin noodles
板條 Flat noodles
米粉 Rice noodles
炒米粉 Fried rice noodles
冬粉 Green bean noodle
湯 類~
魚丸湯 Fish ball soup
貢丸湯 Meat ball soup
蛋花湯 Egg & vegetable soup
蛤蜊湯 Clams soup
蚵仔湯 Oyster soup
紫菜湯 Seaweed soup
酸辣湯 Sweet & sour soup
餛飩湯 Wonton soup
豬腸湯 Pork intestine soup
肉羹湯 Pork thick soup
花枝湯 Squid soup
花枝羹 Squid thick soup
甜 點~
愛玉 Vegetarian gelatin
糖葫蘆 Tomatoes on sticks
長壽桃 Longevity Peaches
芝麻球 Glutinous rice sesame balls
麻花 Hemp flowers
雙胞胎 Horse hooves
冰 類~
綿綿冰 Mein mein ice
麥角冰 Oatmeal ice
地瓜冰 Sweet potato ice
紅豆牛奶冰 Red bean with milk ice
八寶冰 Eight treasures ice
豆花 Tofu pudding
果 汁~
甘蔗汁 Sugar cane juice
酸梅汁 Plum juice
楊桃汁 Star fruit juice
青草茶 Herb juice
點 心~
蚵仔煎 Oyster omelet
棺材板 Coffin
臭豆腐 Stinky tofu
油豆腐 Oily bean curd
麻辣豆腐 Spicy hot bean curd
天婦羅 Tenpura
蝦片 Prawn cracker
蝦球 Shrimp balls
春捲 Spring rolls
雞捲 Chicken rolls
碗糕 Salty rice pudding
筒仔米糕 Rice tube pudding
紅豆糕 Red bean cake
綠豆糕 Bean paste cake
豬血糕 Pig's blood cake
糯米糕 Glutinous rice cakes
蘿蔔糕 Fried white radish patty
芋頭糕 Taro cake
肉圓 Taiwanese Meatballs
水晶餃 Pyramid dumplings
肉丸 Rice-meat dumplings
豆干 Dried tofu
其他:
當歸鴨 Angelica duck
檳榔 Betel nut
--
熱吻之後~
請刷牙 ..
--
Origin:<不良牛牧場> zoo.ee.ntu.edu.tw (140.112.18.36)
Welcome to SimFarm BBS -- From : [h148.s140.ts30.hinet.net]
回上頁
批踢踢實業坊
哪些網頁不想被搜尋引擎抓到的話~~~ 就要設定 robot.txt..
參考如下網址
http://www.robotstxt.org/wc/norobots.html
如果要 範例的話.. 就各大網站找 robot.txt 來看看吧.. XD
Perl and Multiple-Byte Characters
Perl 對於處理 Multiple-Byte(ex: UTF-8) 的介紹文件 :)
中文環境教學.. 裡面有講到不少重要關念.
FreeBSD Chinese HOWTO 中文環境
由 堃(方方土) 探討 Big5e 編碼
漢字處理
Unicode FAQ.
UTF-8 and Unicode FAQ中譯版
UTF-8 and Unicode FAQ for Unix/Linux
CNS11643中文全字庫 CNS 這個站的字碼查詢功能非常好用~ :)
Ascii 和 Unicode 字碼表
Chinese Japanese Korean Characters in Unicode
Big 5 Listing converted into UTF-8
ASCII tabel
Unicode table
Microsoft Windows Codepage : 950 (Traditional Chinese Big5)
中文資訊交換碼(CCCII)
Unicode Home Page
在 Big5 模式 要寫出 特殊字(堃)..
在 php 要寫 echo "堃";
Html 模式直接 寫 堃 就會出來 堃 字了 ~ :)
還蠻不錯的.. 直接轉成繁體版記下來~~~ :)
沒想到功能還有有這麼一堆... 附檔名也是...
一直只記得常用的而已... XD
轉載自: GCC常用命令描述
作者:wstruecolor
unix下開發常用的編譯工具gcc,我對於gcc的瞭解知道的很少,
一般用到的也就是gcc -o xx xx.cpp
今天翻了一下gnu的gcc manual 花了點時間總結了一下,
給大家分享一下!呵呵,希望對大家有幫助.
這裏介紹一下gcc的常用命令選項(可以參考gnu gcc manual).
1. gcc 支援的語言.
GCC 全稱是GNU Compiler Collection ,包含一些主要編譯器支援語言 C, C++, Objective-C, Java, Fortran, and Ada的編譯.
2.gcc 命令選項
當執行gcc的時候通常會經過四個處理過程,preprocessing, compilation, assembly and linking .可以通過加不同的選項來中止到某個過程.
a.總的選項.
-c -S -E -o file -pipe -pass-exit-codes
-x language -v -### --help --target-help --version
編譯器編譯檔要經過四個階段,如上所述.是按順序來進行的.
編譯器根據輸入檔的尾碼來決定進入哪個階段的處理過程:
file.c c 檔要經過豫處理.
file.i c原始檔案不必進行豫處理。
file.ii c++原始檔案不必進行豫處理。
file.h c/c++豫編譯頭檔.
file.cc
file.cp
file.cxx
file.cpp
file.CPP
file.c++
file.C c++原始檔案要經過豫處理.
file.hh
file.H c++頭檔轉換為豫處理頭檔.
file.s
Assembler code.
file.S
Assembler code which must be preprocessed
-x language =========選項是為了指定語言告訴gcc 檔是什麼語言的,
不必要缺省的尾碼識別.
languge 可以是:
c c-header cpp-output
c++ c++-header c++-cpp-output
objective-c objective-c-header objc-cpp-output
assembler assembler-with-cpp
ada
f77 f77-cpp-input ratfor
java
treelang
-x none 用尾碼識別,關閉語言識別.
-c 只是編譯不連接,生成的都是目標檔. .c, .i, .s ==> .o
-S 只是編譯不進行彙編,生成彙編代碼. .c, .i ==>.s
-E 只是進行豫編譯,不做其他處理.
-o file 把輸出檔輸出到file裏.
-v 列印出編譯器內部編譯的各個過程的命令行資訊.和編譯器的版本.
-### 同上,但是不真正執行命令.
-pipe 編譯器編譯時各個階段的資訊是保存到暫存檔案的,如果你不想
用暫存檔案的話可以通過管道也行.這個命令選項就用上了.不過有些系統不支援.
編者注:無雙網友補充
還有其他的選項 如-On(n=1,2,3) -arch=pentium4 這些用於優化的
-g用於調試的
還有prof支援的 可以判斷程式的運行效率
版權聲明:CSDN是本Blog託管服務提供商。如本文牽涉版權問題,CSDN不承擔相關責任,請版權擁有者直接與文章作者聯繫解決。
真是有趣的一套軟體~~~ :D
轉載自 讓網管發狂--softEther--將公司網宿網變成"我的芳鄰"...日本禁用!
這是一個大學一年級學生編的軟體,名叫SoftEther。
此軟體簡而言之,就是類比乙太網卡的工作順序,甚至可以類比HUB功能
使用tunnel特性,實現VPN的功能。
使得系統把此軟體完全無礙的識別成一塊網卡
有了這個東西,可以不再買VPN 路由器,而可以從Internet訪問自家LAN的目標
軟體網址 : http://www.softether.com/jp/
下載連結:http://www.softether.com/jp/download/SoftEtherBeta3.zip
以下完整 轉載自 讓網管發狂--softEther--將公司網宿網變成"我的芳鄰"...日本禁用!
「softether...啥麼碗糕?...」:
去年年底,日本不少IT媒體都報導了一個免費軟體的公開。
這是築波大學一年級學生登游大自編的軟體,名叫SoftEther。
此軟體簡而言之,就是類比乙太網卡的工作順序,甚至可以類比HUB功能
使用tunnel特性,實現VPN的功能。
使得系統把此軟體完全無礙的識別成一塊網卡 ....
---- 四月份的 Download及電腦王 雜誌都有介紹.
--------------------------------------------------------------
神奇的SoftEther
昨晚,無意間發現這個日本人寫的程式
我只能佩服這個作者,實在是蠻天才的,竟然可以想出這個idea
http://www.softether.com/jp/
基本上,這是個clinet/server軟體,而他的clinet端是一個虛擬的網路卡
只要設好了server (virtual hub), 任何clinet連上去後,彼此間就成區域網路了
所以,如果你公司的區網,如果被firewall擋死了,
但你卻想從別處連到你公司的電腦,怎麼辦?
簡單,先在家裡設好server,讓公司的電腦連上
然後任何同時連上的其他電腦,就會像區網一樣看到公司的電腦, 神奇吧!
利用https的tunneling跟bridging,公司的資源就像是在你手中的一樣囉!
看到這,世界上的網管不知道會不會想哭?
如果你有興趣,去googling一下,有一些大陸人有寫介紹, 或是這裡 :
http://www.pczone.com.tw/showthread.php?threadid=117255
-------------------------------------------------------------------------------
SoftEther(虛擬網卡) Beta3
這是一個大學一年級學生編的軟體,名叫SoftEther。
此軟體簡而言之,就是類比乙太網卡的工作順序,甚至可以類比HUB功能
使用tunnel特性,實現VPN的功能。
使得系統把此軟體完全無礙的識別成一塊網卡
有了這個東西,可以不再買VPN 路由器,而可以從Internet訪問自家LAN的目標
主要思路是:
1)在OSI Level2(資料連結層)上軟體類比網路通訊,把物理層的通訊內容封包到TCP Package裏去(軟體類比Ethernet)
2)把自己的通訊包變成SSL Session,用HTTPS協議穿越Internet,甚至混過Firewall(128bit RC4)
然而,此後沒兩天,日本資訊處理事業協會(IPA,負責日本Internet運營管理/安全的機構)就要求這個築波大學學生停止公開此程式,理由自然也很簡單:有了這個東西,可以毫不誇張地說,所有的Firewall保護下的LAN都要面臨重大的安全性挑戰了,因為只要內網中有一台機器通過此軟體虛擬成 LAN網卡,就可以通過Internet毫無障礙地訪問內網........恐怖
上述思路中,第一條並不能成為合法的罪名 , 只有第二條,成為勉強的藉口。
但禁令維持了僅有三四天,IPA就不得不同意此人再次公開下載的主頁。
經歷了這麼一場風波,SoftEther名氣更大。 有興趣的朋友不妨下載一個玩玩
安裝這個,需要你有LAN的管理權。
比如自己家的LAN,就可以安上一個,來實現從Internet訪問自家Server的功能;
再來通俗的介紹一下吧!
這東西說白了,就是用來打破一般用的那些防火牆限制的東西。 使內網和Internet可以相互自由訪問
具體舉幾個例子來說吧!
比如你的公司有防火牆,只能http/https出去,外面的人無論是FTP也好,TELNET也好,都別想進到你們公司的內網裏面來,更別指望能找到你的機器接續了。
所以,回了家想要從家裏的寬頻上操作辦公室的電腦,就是不可能的,對吧?
但有了這個東西,我們來看看如何把這種“mission impossible”變為可能!
1)在自己的機器上安裝這個軟體,然後再定義一個虛擬HUB,定義上用戶/密碼,並把家裏這台機器掛上Internet位址
2)在辦公室的機器上安裝這個軟體,然後接續家裏的虛擬HUB,這個軟體就成了一枚動態的(Runtime)虛擬網卡。
3)從自己家裏就可以訪問這台辦公室的機器拉(走的是HTTPS協議,看到的是LAN)
如果你還不甘心,還要貪婪地想要從家裏連接辦公室別的網路資源,也好說,在辦公室那台你自己的機器上,把辦公室的物理LAN和step 3)接好的那個虛擬網卡所在LAN之間架設網橋(bridge),就可以從家裏一直訪問到辦公室所有資源啦!
這bridge,在WinXP/Win2K3都是有內置功能的。可惜Win2K稍微麻煩一些......
補充一件重要的事情!
這個軟體裝好後,在HUB管理畫面裏,可以看到一個默認的“通用HUB”,
這個虛擬HUB,就是設在築波大學的 . 有了這個,你就可以確認自己的安裝是否成功;
但我奉勸大家試驗連接這個之前,千萬千萬要慎重:
因為世界所有人裝上這個軟體,都會有接續這個虛擬HUB的傾向;如果你也接上去,就已經和成百上千的人同在一個LAN下了!!(那個虛擬LAN裏,一直保持著至少有數十台機器.....小心遭到駭客攻擊哦!)
不過,有了這麼一台虛擬HUB,這個軟體的另一個功能也就發揮出來了:你所受限制的任何internet協議,經由這個虛擬HUB,都不再受限制......
1)比如你所在的公司,不許使用QQ,只要接上這個虛擬HUB,就立即能用了,呵呵呵
2)又比如你所在的國家地區,有啥不能訪問的網站,都不用擔心訪問不了了,呵呵呵
1)和2),都是通過HTTPS封包走出去/走進來的,所以你那裏的網路只要能通過HTTPS協定,就可以搞定!
有了這個東西,可以不再買VPN 路由器,而實現從Internet訪問自家LAN的目標
我試過,用它,可以突破限制的IP位址。 我的qq的IP也成了日本的了。
建議各位在打號修正檔漏洞之後安裝使用此軟體。因為你已經把你的機器放到了一個網際網路範圍的區域網路內。
安全第一。
我裝上試了。預設連線到了日本的這個預設的虛擬hub。然後從網路芳鄰中發現自己處在了一個大區域網路內……
軟體網址 : http://www.softether.com/jp/
下載連結:http://www.softether.com/jp/download/SoftEtherBeta3.zip
劍與盾的無盡遊戲
結果只有兩種
1.真的納入管理,最有效的辦法就是封死防火牆,所有的服務都要走 Proxy 出去
然後,因為某些人的試圖尋求方便,造成大家不便
2.不管 --- 然後,真的變成系統防禦漏洞,哪一天來個大淪陷,魚死網破
不過,非常感謝訊息的轉知
(下次規劃網路時,會把各辦公室獨立成一個個 vlan ,雖然可能較麻煩,但是可以縮小影響範圍)
當網頁開了十幾個 Tab 時,要關掉是百般不捨...
把那十幾個 Tab 儲存下來的話~~ 就要裝這個 Plugin 啦 ~~ :)
用法:
上面選單列會出現一個 Tab 的選項
Lod Tab Session(Alt + L) -> Save Current Session(Ctrl + Shift + T)
還可以同時 Reload 全部的Tab頁面唷!!(不過要小心自己電腦撐不撐的住)
其它功能太多.. 就算了吧.. XD
不過另一個缺點是.. 原本對 連結 按右鍵, 開 tab.. 會自動在背景抓...
現在都會自動跳到那一個 tab 再抓資料...
不得已的方法就是.. Ctrl 按著. 再直接左鍵點選就會 開在背景自己抓了 .. :)
取自 MozBackup 正體中文站
MozBackup 是一個備份和還原 Mozilla, Mozilla Firefox, Mozilla Thunderbird 和 Netscape 等軟體個人設定檔的程式。可以協助您備份郵件,書籤和其他相關資料。並且是完全免費。
Mozilla@Taiwan :: 首頁
真是太棒了.. :)
Google Preivew
firefox plugin 主要是用在 Google Search result 的網頁..
在 result 出現的網站會出現小縮圖(snapshot(thumbshots))..
而這 Plugin 主要用的就是 thumbshots.org 的縮圖。
(Firefox 右下角會出現 GP 字樣. 點一下就不會顯示縮圖)
ex: Google Search "Amazon coffee" 或 Yahoo Search "stock YHOO"
Windows 版本的縮圖 Plugin MoreGoogle 原公司Download
而想要讓 thumbshots.org 幫你的網站做縮圖.. 有 兩種方法...
1. Dynamic Integration
2. Thumbshots Attribution
Mmm... 第一種方法要註冊(而且好像還要有什麼條件).. 太麻煩了~~~ :)
所以第二種方法好像是直接放 Link 的圖片(我放在網站最左下角)..
然後直接在左下角打
URL: http://blog.longwin.com.tw
Name: Tsung
E-Mail: 就輸入 E-Mail.
這樣子好像就可以了.. 如果幾天後沒看到.. 我就把這圖片移掉 -.-|||
Mmm.... 沒出現 .. 移掉.... :)
突然發現到他有 Favorite Search Engine 的投票.
Favorite Search Engine Result
這是直接連到結果去的... Mmm.... Yahoo 加油~~~ XD
用 nmap 查詢一下自己開放了哪些 port...
以防在 iptables 設定時沒設到... 把不該擋的 port 給擋掉就很尷尬囉~~~
而且也看一下有沒有不是自己開放的 port (抖)....
轉載自 Linux Center 電子報
想要確定自己的linux開放了哪些網路服務埠, 該怎麼做?
可以使用nmap這個指令
ex.
$>nmap localhost
Starting nmap V. 3.00 ( www.insecure.org/nmap/ )
Interesting ports on myLinux (127.0.0.1):
(The 1593 ports scanned but not shown below are in state: closed)
Port State Service
22/tcp open ! ; ssh
23/tcp open telnet
25/tcp open smtp
139/tcp open netbios-ssn
Nmap run completed -- 1 IP address (1 host up) scanned in 2 seconds
執行後會列出目前使用中的服務資料. 包涵埠號, 狀態及服務名稱.
請避免偵測網路上的其他電腦, 以免被認為有入侵電腦的意圖喔.
想要手動設定網路卡連線模式, 該怎麼做?
可以試試看ifport,
usage: ifport interface [auto|10baseT|10base2|aui|100baseT|##]
ifport可以設定網路卡的連線模式有 auto, 10baseT, 10base2,aui, and 100baseT等幾種. 主要是方便系統管理員, 針對無法自動設定正確網路連線模式的網路卡, 改用指定方式設定.
Gmailfs 拿來當自己系統的 hd... 會有什麼感想呢??... :p
看起來主要重點是
#
Download gmailfs.tar.gz. After untarring, copy gmailfs.py to somewhere easily accessible (for example, /usr/local/bin/gmailfs.py).
Copy mount.gmailfs to /sbin/mount.gmailfs. This is a modified version of mount.fuse distributed with FUSE 1.3.
再 mount 即可..
mount.gmailfs /usr/local/bin/gmailfs.py /mnt/gmailfs -o username=gmailuser, password=gmailpass, fsname=zOlRRa
kernel 要有支援 fusk 的 module (檔案格式)...
不過 看要 fuck 的 module 時還要再 make 一次kernel....
先暫時放棄這 1G 好了... XD
-----
實作:
mount -t gmailfs /usr/local/bin/gmailfs.py /mnt/gmailfs/ -o
username=userid,password=passwd
本文最新網址位於 查詢自己的英文名字
若有人有需要查詢自己英文名字, 可到新的頁面下面留言,
我會以回覆留言的方式回覆, 若有需要以信箱回覆, 請直接將 E-Mail 告知. :)
中文名字要如何轉成英文名字.
原來是外交部有定義..
拼音對照表
中文譯音使用原則
要注意的是 "國音第二式", "WG" 不能混用..
Subversion 版本控制(Version Control with Subversion)
O'Reilly 電子書 Version Control with Subversion
有各種版本.. pdf, html, xml 等.
中文版 Version Control with Subversion
Version Control with Subversion 中文版
中文版文件的其它參考 Better CVS: Subversion
另一種CVS : svk 分散式版本控制之道
Newzilla - 用svk做協同文件編輯
svk 簡易使用(pdf)
其它參考:
送禮自用兩相宜的「版本控制系統」
How To Use SVK
/etc under svk(用 svk 來管理 /etc)
大陸人翻譯的... 很實用的東西...
在翻譯 vim 的文件還特別開了 sf.net 來當專案管理..
英文主站 中文主站
Vim Wiki
Vim Help Vim Usr_toc
本來只是想說要找 Regular Express 的一些快速參考的文件來看看..
沒想到不小心發現了 Study-area 的一份教學文件..
寫的太棒了... :)
轉錄 Regular Express 進來快速參考用.. :)
深入探討的內容轉載自 Script大集合
以下內容轉載自 Script大集合
基本字元表示
字元,就是單一一個英文字母的處理。先來個基本的字元
* . 代表任意"一個"字元除了換行newline字元不過awk可以match換行記住
* ? 代表"前面"字元出現0次或1次
* + 代表"前面"字元出現1次以上 1 2 3 4 ... 不出現return false
* * 代表"前面"字元出現0次以上 0 1 2 3 ...
這邊初學者比較常犯的錯誤是在shell下的wildcard * 的習慣,以為只要給個* 就代表所有字元,其實是 ? + * 都要前面搭配 . 來使用才能代表任意字元
* ^ 代表行首
* $ 代表行尾
* \ 脫逃字元(escape)取消特定字元的涵義用的
這邊比較要注意的是字在行首起頭的^,行尾的$,與在行中的case分屬不同 的regular express,小心有的程式會把這三種當成不同的regular express, 這會不一樣喔。不過有的不會。
* /^#/ 有#在一行的第一字元時 就還回TRUE
* /^bag/ bag在行首的行
* /bag$/ bag結尾的行
* /bag/ bag在中間的行 不過有的程式處理沒有這麼嚴格像sed
* /b.g/ 表示bag beg bug都行
* /b\.g/ 表示b.g
* /^..g/ 表示行首bag beg bug xxg都符合 但一定要三個字母
* /^.*g/ 表示行首有任何字元的然後有個g的都可以還回true
* /beg*/ be, beg, begg, beggg, .......
* /beg+/ beg, begg, beggg, begggg, ......
* / */ 空白字元也行
字元處理 - 括號與範圍表示
* [ ] []內的任一"單一字元"符合就還回TRUE
* [^ ] []的反效果 不含[]內的任一單一字元 還回true, 所以這邊^在[]內有不同的意義
* [1-10] -號在[]內可以表示一段範圍不用打到手酸死, 所以如果要表示-號必須放在第一或最後字元
* w{n,m} 連續字元出現表示法
比用 /.../好用 跟LATEX中的table的用法很像,表示有"連續"符合 w字元出現''連續'' n次到m次
都會還回TRUE
* 0{3,} 0至少出現3次 -> /xxxx000xxxxxx/
在字串下{} ()是表示真的這些字元的,不像[ ]會被regular express當成一種運算,所以不要忘了用脫逃字元 變成\{ \} \( \)。
字串處理 - 不同括號表示
一些字串的處理上
* ( ) Group operator
* (str1|str2|str3) str1或者str2或者str3
() 與 |是extend的regular expression 只有一些軟體如egrep才有支援。所以在用軟體的regex 時必須知道他能處理的regex能力。
* & 表示找到的字串
* \1 \2 \3 ... 代表s///中前面用括號\(\)括起來的字串, 這通常也是找到的字串,不過&只有一個, 用 \1 \2 \3 可以有很多個。
\1 表第一個括號內字串
\2 表第二個括號內字串
通常\1 \2 \3是用來對match到的字串還要再處理時用的
/[Yy]es/ Yes 和 yes
/80[23]?86/ 8086 80286 或者80386
/[A-Za-z0-9]/ 字元可以有這樣的連續表示法
/compan(y|ies)/ company companies
/0\{3,\}/ 表示0要出現三次以上
s/.*/(&)/ 將原本的行加上括號( )
s/\(str1\) \(str2\)/\2 \1/ 把兩個字串對調 注意\1 \2的用法
其中& \1 \2 \3 ...這些常用在代換(substitue)中
注意括號在前面有不同意義,所以必須用\來escape。
今天看文章才發現...
原來使用 alt 在 mozilla 無法顯示出小字.. 是用錯了..
該用 title 才對...
alt 是用在圖片無法顯示的時後出現的文字..
title 才是正規的.. :)
參考自 摩托學園討論區-[問題]html img alt 屬性
學習 Perl 要看的書原來是有順序的....
O'Reilly Perl系列書籍建議閱讀順序
O'Reilly Perl系列書籍建議閱讀順序(圖)
不過那些書都有點貴... 沒學過的就先看看 線上版 的入門.. 有興趣再深入學習吧 :)
線上版 Perl 入門
英文版教材
Perl Documentation
-- perlre - Perl regular expressions
-- Perl Manpage
轉載自 檔案系統的維護
針對檔案對系統架構的解說..
當檔案系統出問題時,會有以下的可能性
1 檔案系統的容量不足。
2 檔案系統的inode不足。
3 檔案系統損毀。通常可能是因為系統當機、跳電或是硬體(特別是硬碟)損毀所造成。
該如何知道並解決呢?.. 就要好好看看這篇文章了..
轉載自 檔案系統的維護
專欄作者:楊協龍
發表日期:2004-08-06
版權聲明:本文經作者授權,版權屬作者所有。
以系統管理的角度來說,維護檔案系統的正常運作是必要的工作。這項工作並不困難,但是卻常常被忽略,以致於問題發生時,系統已經瀕臨癱瘓,而造常龐大的傷害及維護成本。檔案系統的問題,通常是隨著時間的過去,而產生了下列的問題: *檔案系統的容量不足。 *檔案系統的inode不足。 *檔案系統損毀。通常可能是因為系統當機、跳電或是硬體(特別是硬碟)損毀所造成。
檔案系統的維護(一)
以系統管理的角度來說,維護檔案系統的正常運作是必要的工作。這項工作並不困難,但是卻常常被忽略,以致於問題發生時,系統已經瀕臨癱瘓,而造常龐大的傷害及維護成本。檔案系統的問題,通常是隨著時間的過去,而產生了下列的問題:
1. 檔案系統的容量不足。
2. 檔案系統的inode不足。
3. 檔案系統損毀。通常可能是因為系統當機、跳電或是硬體(特別是硬碟)損毀所造成。
事實上,第三種狀況很難預防,只能在平時多備份檔案系統,保住重要資料。另一方面,只要平常能多檢查檔案系統的狀況,前兩種狀況是可以避免的。以下會針對如何檢查檔案系統的剩餘容量與剩餘inode數來作一個介紹。要注意的是,講到檔案系統的容量與inode時,這裡的檔案系統是指每個磁碟切割(partition)格式化之後,各自產生的檔案系統;而不是組合各檔案系統,用來供整個系統使用的檔案系統。
檔案系統會影響到整個系統的運作,通常是發生在檔案系統無法新增檔案的時候,而發生的原因可能就是檔案系統容量不足,或是inode 不夠。inode是一種資料結構,用來代表硬碟上的檔案。每個檔案系統在產生出來的時候,就會預設一定數量的inode,而這個數量就是在這個檔案系統上,可以擁有的最大檔案數。因為這個數字通常很大很大,而你可能從來沒有新增過這麼多檔案,所以也從來沒有遇過這樣的問題。不過,沒有遇過不代表不會發生,如果當某個檔案系統裡的檔案太多,你還是有可能遇到這樣的問題。
想知道目前檔案系統中,容量和inode的使用情況,可以使用df這個命令。這個命令是用來顯示所指定檔案系統的使用情況。如果所指定的是檔案或目錄,則顯示的目標是包含該檔案或目錄的檔案系統。如果沒有指定,則會顯示 /etc/fstab 中所有已經mount進來的檔案系統裝置。
如果希望顯示的單位是容易閱讀的M (megabytes)或G (gigabytes),還可以加上-h 這個參數。如果要顯示的是inode的使用情況,則必須加上 –i 這個參數,否則會顯示容量的使用情況。
常用的用法如下:
# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda2 5036316 1967720 2812764 42% /
/dev/hda1 101089 9324 86546 10% /boot
/dev/hda5 4348416 203440 3924084 5% /home
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda2 4.9G 1.9G 2.7G 42% /
/dev/hda1 99M 9.2M 85M 10% /boot
/dev/hda5 4.2G 199M 3.8G 5% /home
# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/hda2 640000 105260 534740 17% /
/dev/hda1 26104 41 26063 1% /boot
/dev/hda5 552704 1183 551521 1% /home
# df -h -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/hda2 625K 103K 523K 17% /
/dev/hda1 26K 41 26K 1% /boot
/dev/hda5 540K 1.2K 539K 1% /home
# df /home
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda5 4348416 203440 3924084 5% /home
如果有不夠的是檔案系統的容量,可以試著殺掉一些不必要的檔案,來釋放一些容量。另外就是可以考慮將一些平常很少用到,卻又佔掉很大空間的檔案,視需要備份之後,移出檔案系統。但如果是inode不足的話,除非能一口氣殺掉很大數量的檔案,否則建議你還是長痛不如短痛,花些時間重新產生一個更多inode的檔案系統,好好地將檔案系統作個完整的調整吧。
Mozilla Firefox 程式發開專用的 Plugin...
還蠻不錯的. 可以直接調整 800x600 看一堆頁面的資訊.. Table 的劃分..
還有一堆雜七雜八的東西.. 總之.. 裝了就知道他的好 :)
Firefox Extensions
Web Developer 開發Web常用工具
LiveHTTPHeaders 看Header的工具(Tools-> Live Http Headers)
上傳 nicetitle.css, nicetitle.js 到目錄下..
然後加入
<!-- Add by Tsung -->
<style type="text/css"><!--
@import url("nicetitle.css");
--></style>
<script type="text/javascript" src="nicetitle.js"></script>
即完成.
看 Pear DB.php 正好看到一個折疊的功能(一直以為這是書籤的功能).. 覺得超強的...
就仔細找了一下.. 又發現了這個好站...
大家來學 Vim
大家來學VIM(一個歷久彌新的編輯器)
轉載自 手動折疊
轉載一些比較會用到的..
zfap 將游標所在處的那個段落折疊成一行。
zf7G 自游標所在處至全文第 7 行折疊起來。
:3,9fold 將第 3 行至第 7 行折疊起來。
5zF 將游標所在處起算 5 行的內容折疊起來。
也可以將所要折疊的部份以 Shift+v 標記起來,然以按 zf 就會將標記的內容折疊起來。
折疊的操作
zo 將游標所在處的折疊打開。open。
zc 將游標所在處已打開的內容再度折疊起來。close。
zr 將全文的所有折疊依層次通通打開。reduce。
zm 將全文已打開的折疊依層次通通再折疊起來。more。
zR 作用和 zr 同,但會打開含巢狀折疊(折疊中又還有折疊)的所有折疊。
zM 作用和 zm 同,但對於巢狀折疊亦有作用。
zi 這是個切換,是折疊與不折疊指令間的切換。
zn 打開全文的所有折疊。fold none。
zN 這是 zn 的相對指令,回復所有的折疊。
那這個 zn 和 zR 不是都一樣嗎?不是的,zR 的作用於 foldlevel 這個設定項,是控制折疊的層次,而 zn 則是作用於 foldenable 這個設定項,他是不管層次的,只有全關或全開。當然,所得到的結果有許多情形下是一樣的,但裡子不一樣,這在寫 Vim script 時得小心分辨。
通常,游標在折疊處向左或向右移的話,折疊也會自動打開。在進入編輯模式,例如按 i 或 o,這是也會自動打開折疊。
其他的複製、刪除及替換等動作還是可以和一般正常文稿一樣的操作,例如 dd 就會刪掉一整個折疊,yy 會複製一整個折疊,p 會貼上一整個折疊。把整個折疊就當做是一行就行了。
以縮行為依據
:set foldmethod=indent 就會依縮行來折疊,本來預設是 :set foldmethod=normal。請注意,此時手動折疊的設定會被停止無法使用。
以下轉載自 set 功能設定
fileformat(ff)
這是寫入檔案時置放 EOL(end of line) 的形式
dos 是以 0D 0A 來斷行。
unix 是以 0A 來斷行。
mac 是以 0D 來斷行。
預設以各系統平檯而定,在 Linux 當然是 unix 形式。
fileformats(ffs)
可指定多個,會依載入的檔案形式來調整 ff。
例如 :set ffs=unix,dos ff=unix
則預設為 unix 格式,但如讀入的是 dos 格式的檔案,會自動調整
為 dos 格式,這樣存檔時就會以 dos 格式存檔(狀態列會顯示)。
。此時如要改成 unix 格式,可 set ff=unix 然後存檔就會轉成
unix 格式,反之亦然。
‧如果不這樣設,也就是您不管 ff 或 ffs 都設成 unix,那讀入 dos 格式的檔案時在每行尾會出現 ^M 這個字元(就是 0D 啦!)這時縱使 :set ff=unix 也來不及了!只好 :%s/^M//g 來消去這個 ^M。ㄟ,還記得怎麼替換嗎?就是把 ^M 換成沒有啦!而且 ^M 怎麼打出來的還記得吧!翻一翻前面的單元吧!
‧Hey,你怎麼知道是 0D 呀!好吧!告訴您一個密秘,您把游標移到 ^M 那個位置,然後按 ga 在狀態列就會顯示 10,16,8 進位的值。其它的字元也是可以如此顯示。a 就是 ascii 的意思。但這是 vim 的擴充功能,elvis 沒有。
‧elvis 縱使載入 dos 格式的檔案,也是會自動把 ^M 隱藏起來。
在你想切換十六進位碼的地方按 ga 就會在最下面出現十六進位的碼唷 :)
整頁面成十六進位的碼
:%!xxd
還原.
:%!xxd -r
下面這行可以讓 term 中的vi 使用滑鼠輔助
:set mouse=a
在貼程式碼時如果發現到整個程式碼都往右移的話..
整個讓他自己再重新排列的快速鍵是 =ggG
gg 到最上面, G 到最下面.
或用 v 去 make 起來後, 直接按 = 就可以把要重排那段重新排列.
以下的是文字檔的排列方式.
簡單重排功能
:ce(nter) 本行文字置中。注意是冒號命令!
:ri(ght) 本行文字靠右。
:le(ft) 本行文字靠左。所謂置中、靠左右,是參考 textwidth(tw) 的設定。如果 tw 沒有設定,預設是80,就是以 80 個字元為總寬度為標準來置放。當然您也可以如 sw 一樣馬上重設。
gqap 整段重排,或 gqip,在段落中位何地方都可以使用。和中文的配合見下述。
gqq 本行重排。
gqQ 全文重排,是以游標所在處的段落開始重排至檔尾。以空白行為段落的間隔。
gq3q => 重排三行
gq2ap => 重排兩個段落
gq5j => 重排游標以下五行(別忘了 j 是向下移動,5j 就是向下移動五行,包括游標所在處就是六行)
現在在檔案中要刪掉 第 33-44 行.
在 vi 裡面要這樣下
:33,44d
想要在make 後把那些行數都前面都加 tab
make後 按 "shift + >" 就可以了.
10行到12行兩次縮排
:10,12>>
小小一行,受用無窮(將code轉換成html)
:runtime! syntax/2html.vim
去除DOS 產生的文字檔^M
1. cat dosfile | col -b > unixfile
2. vim dosfile
:s/^V^M//g
^V^M 意思就是 Ctrl+V and Ctrl+M 照這樣子按. 就會出現 ^M 了~
全部取代
:1,$s/^V^M//g
=========================================
關於 vim 如果字太長會自動被斷行.
但是又很想按個下就到要到的地方. 那到底該怎麼弄呢??
最簡單的作法是 按g 再按 j (或向下鍵) 就可以向下,同理. 按g 再向上就是向上的.
而有另一種作法. 寫 map.
:map j gj
:map k gk
意思是 我每次按 j 就等於是按 gj 的意思.(就是按 g 再按下的意思)
map 很好用.. 甚至可以用來做 gcc compile 快速鍵等等的... :p
=========================================
平常都是
:sp filename 會橫項切割兩個視窗來開檔案
:vsp filename 是直項切割視窗.
但是不想要切割視窗又想能同時編輯兩個檔案怎麼辦呢?
這時後就用 :e 了.
:e filename 會在另一個視窗新開一個 filename.
而要切換只要 :e # 或最簡單的就是 ^6 (Ctrl + 6) 就可以切換囉.
:sp 視窗放大縮小可以用
Ctrl-w +(放大)
Ctrl-w -(縮小)
Ctrl-w _(放到最大)
Ctrl-w =(回復各一半)
:vsp 視窗放大縮小可用
Ctrl-w |(放到最大)
Ctrl-w =(回復各一半)
=========================================
ggyG 可以複制全部的內容
=========================================
若 for() {
} 現在在 "}" 這邊, 想要看他對應到上面哪個 "{"
就按 % 就可以看到對應的 括號了.
=========================================
幾乎所有的 OS 及軟體都設定 Tab 就是 8 個字元長,這已經是個公認值,您硬要去改變它的話恐怕帶來許多不便,但實際上關於程式風格,許多人又認為 8 個字元太長了,幾個巢狀迴圈下來就需折行,反而不方便。因此 vim 體貼您,內建了 softtabstop 的功能,就是由 vim 來代您製造出一個假的 Tab,實際上是空白字元組成的 Tab。
set softtabstop=4
set shiftwidth=4
這樣會由 4 個空白字元取代一個 Tab,您按 Tab 鍵 vim 就跳 4 格,需注意的是,如果您按了三次 Tab 鍵,那就是一個實際的 Tab 加上四個空白字元,可不是 12 個空白字元喔!是混合 Tab 及 space 的。
問題來了!那我要按真正的 8 字元的 Tab 時怎麼辦?簡單,還記得怎麼按特殊字元嗎? Ctrl-v Tab 或 Ctrl-v I 就可以了,那就是如假包換的 8 字元長之 Tab。當然,您按兩次 Tab 不就得了!:-)
tab 按連按兩次. 就是 tab 而不是空白了.(再找找有沒有什麼是永遠一定是空白的)
=========================================
u 是回復. 但是回復過頭該怎麼辦?
^r 就可以囉 :)
x 是刪除後面的字元. 想刪除前面的.
就用 X
=========================================
=========================================
=========================================
轉載自 Tom 硬體指南 儲存冠軍
依下列兩種來分類.
1. 可用的RAID層級
2. 資料安全性vs.效能
轉載主要抓這兩部份.. 因為很重要又需要用到.. 所以趕快留下來..
其它參考連結
RAID.edu - RAID Levels - RAID Level 0 - RAID 0
What is RAID? - A Word Definition From the Webopedia Computer Dictionary
High Performance SCSI & RAID: What is RAID ?
可用的RAID層級
首先我們應該先分辨「真正的」RAID模式和那些你得減少花費的。一般的RAID層級為0、1、0+1、3和5。只有最後兩種才能提升效能同時增進資料安全性。
RAID 0
許多人不認為Level 0算是真正的RAID模式之一,因為它在資料安全性上的風險很大。RAID 0不僅是將資料儲存在兩台以上的磁碟機、也就是所謂的等量儲存磁帶(很像是條拉鍊一樣)。作法是將所有磁碟機的儲存空間合併,並藉由將資料分散至所有的磁碟機上以提高效能,因此它可以進行平行讀取。
然而它沒有容錯能力,一旦有一台磁碟機損毀將導致所有資料遺失。
RAID 1
Mode 1剛好與Mode 0相反是為了增加資料安全性。在這裡所有的資料就是鏡射到第二部磁碟機上。
這並不會比單一磁碟機來得快,但提供了極佳的資料安全性。及使一台磁碟機掛了,系統還是能繼續運作。
RAID 0+1
這個模式結合了我先前描述過的兩個模式。首先用兩台磁碟機建立一個等量磁碟組。這個等量磁碟組的資料將同時被寫進另一個陣列中,如果主要陣列損毀它可繼續運作。
RAID 3, 5
RAID層級3和5通常只有SCSI的RAID配接卡。從三台磁碟機起跳,高階RAID控制器採用具備檢查位元的智慧型演算法,將資料分散至所有可用的磁碟機上。RAID 3用一台磁碟機儲存奇偶檢查值的資訊,而RAID 5則是將它交替儲存在所有磁碟機上,提供更好效能。RAID Level 5已經成為精密伺服器的主要模式。需要更多這方面的資訊請參閱IBM網站上的RAID Overview。他們對RAID模式5有很實用的解說。
資料安全性vs.效能
相較於伺服器安裝RAID是為了保護資料免於受硬體損壞影響,家庭使用者的焦點主要則放在能增加多少效能。雖說RAID 3或RAID 5具有極佳的容錯能力和非常快速的傳輸率及存取,真正架設起來卻所費不貲:首先你至少要有三台SCSI的硬碟(通常都是用5或6台)。其次某些類型的控制器是在你買得起的硬體當中最為昂貴的。
他本身的高價位說明了為何RAID模式3和5在大眾市場中不被接受。家庭使用者通常不會只是為了提升其磁碟子系統的速度,而跑去買半打的硬碟外加一個500美元控制器。相反的,RAID 0和1則成為大多數使用者所採用的熱門模式。
稍後你會發現,用四台磁碟機並不會比兩台磁碟機的傳輸效能好多少,不過這可以確保在整個傳輸過程中,最小傳輸速度仍能維持相當快速。
Unix is a Four Letter Word
要把 vi 學好, 將這個站的 vi 完整看完應該就不會有什麼問題了才是...
簡略的翻一翻.. 覺得非常完整.. 只可惜是英文的就是了...
不過自己稍微測試一下.. 再加上簡單的英文看一看.. 應該不會有什麼問題才是..
以下兩個是上面同樣的連結, 只是把 vi 特別強大的一小部份抓出來而已.. :)
vi Shall Command
Vi Search and Replace
Google Zeitgeist(時代精神?)
可以看到 Google 做的搜尋統計...
還有使用哪種系統去連他....
Mmm.... Linux 現在使用率居然比 Windows 95還低 -.-|||
主站 下載安裝
翻譯的實在很棒.. 非常棒的 Firefox Extensions.
點選他的下載安裝檔 xpi .. 安裝後重新啟動 Firefox,
再由 View -> Tools -> Customers -> 有個"同文", 把這個拉到上面工具列 ..
就可以選簡體轉繁體, 繁體轉簡體等的轉換了 ...
IE 版本的在深入探討~~~
下載處 : ALiBaBar
下載安裝完後, 於 IE 瀏覽器上按右鍵,
選擇 ALiBaBar, 就會出現繁簡轉換的選項可以按了...
還蠻不錯用的.. 而且還支援其它, 像 MyIE2 等等的.....
Squid 想當然的就是架設 Proxy 的軟體...
但是平常都用 Debian apt-get 一下....
要啟動關閉就直接 /etc/init.d/squid start 和 stop 就好了 ...
沒想到自己 make 出來的 啟動 和 關閉 這麼難用... XD
(都用 kill 關閉.. 好像不太正規)
啟動 /usr/local/squid/sbin/squid
關閉 /usr/local/squid/sbin/squid -k shutdown
紀錄檔更換 /usr/local/squid/sbin/squid -k rotate (看你想要多久更新一次記錄檔)
另外的在下面再記錄..
/usr/local/squid/bin/RunCache : 利用 squid.conf 設定檔案的內容來啟用 squid
/usr/local/squid/bin/RunAccel : 利用 Squid 來加速 自己的 Web Server
簡單說就是將自己的 Apache 前面加個 Proxy.
如果要用 RunAccel, 就用 RunAccel 來取代 RunCache 了...
RunCache 就可以不用使用了...
鳥哥啟動的方法:
su nobody -c "/usr/local/squid/bin/RunCache &"
su nobody -c "/usr/local/squid/bin/RunCache &" > /dev/null 2>&1
screen 是個非常好用的工具(Linux, BSD.. 等).
這個網址有很詳細的教學 screen 簡介
下面將一些重點部份轉貼過來..
使用 screen
在命令列下打 screen 就會進入 screen 的天地:
% screen
注意,所有 screen 的指令都是以 Ctrl 鍵加上 a 鍵開始的,在之後以 C-a 代表,C-a c 代表按住 Ctrl 鍵不放再按 a 鍵,然後放開按 c 鍵;而 C-a C-c 代表按住 Ctrl 鍵不放再按 a 鍵,然後放開後再按住 Ctrl 鍵不放按 c 鍵。
開啟,關閉,切換
C-a c 或 C-a C-c 開啟新的視窗,並同時切換到這個新的視窗
C-a n 或 C-a C-n 或 C-a (space) 切換到下一個視窗(0->1 1->2 ...)
C-a p 或 C-a C-p 切換到上一個視窗(1->0 2->1 ...)
C-a C-a 切換到上一個顯示過的視窗(不是照順序切換)
C-a 0 切換到第 0 個視窗
C-a (1..9) 切換到第 (1..9) 個視窗
C-a w 或 C-a C-w 會列出目前所開啟的視窗
0$ tcsh 1$ tcsh 2*$ tcsh 3$ tcsh
有星號 "*" 的表示目前顯示中的視窗,之後的 tcsh 代表這個視窗的 title ,預設是以開啟時的 shell 名稱
C-a K 關閉所有的視窗並退出 screen
C-a ' 或 C-a " 會出現 "Switch to window:" 字樣,輸入號碼後就可切到該視窗
單一視窗使用中的指令
C-a C 清除目前的視窗內容
C-a d 或 C-a C-d 脫離(detach)目前的 screen ,並放到背景執行(不管開了幾個視窗),下面會再提到
C-a D D 強力脫離,除了放到背景執行外,並自動 logout
C-a C-g 虛擬嗶聲(visual bell)的切換,可以在畫面上顯示訊息代表一般的嗶聲
C-a H 紀錄目前視窗所有顯示過的東西(檔名為 screenlog.n n 為視窗號碼)
C-a i 或 C-a C-i 顯示目前視窗的資訊
(11,24)/(80,24)+1000 +(+)flow -ins -org +wrap +app -log -mon +r G0 [BBBB]
C-a l 或 C-a C-l 重繪視窗,如果有字顯示亂掉了可以用這個指令
C-a m 或 C-a C-m 或 C-a (enter) 可以顯示最近一次顯示過的訊息
C-a t 或 C-a C-t 顯示系統的時間及主機名稱還有負載
C-a v 顯示版本資訊
C-a x 或 C-a C-x 如果你要暫時離開目前位置又不想先 logout ,那可以用這個來鎖住 screen
C-a S 將營幕畫面暫停
C-a q (C-a S 暫停) 的 回復
C-a ? 線上求助畫面
複製/卷軸 模式
按下 C-a [ 就可以進入 複製/卷軸 模式(只有在目前視窗才算,其他視窗照常)基本上跟 vi 很像:
h, j, k, l 分別為向左,向下,向上,向右移動一格(或是一行)
0 移到該行最左邊
^ 與 $ 分別移到該行最左邊及最右邊的非空白字元
w 以字為單位往前移動並移到字首
b 以字為單位往後移動並移到字首
e 以字為單位往前移動並移到字尾
C-b 向上捲一頁
C-f 向下捲一頁
C-u 向上捲半頁
C-u 向下捲半頁
/ 與 ? 向下或向上尋找字串
(space) 第一次按下到第二次按下的區域會被複製到暫存區內
(ESC) 離開 複製/卷軸 模式
接著按下 C-a ] 便可以把剛剛存到暫存區內的內容複製出來。
善用 screen
前面提到當按了 C-a d 脫離了 screen 後,會回到沒有執行 screen 時的狀態,但是同時在之前 screen 裡每個視窗內在跑的 process (不管是前景或背景執行的)仍然繼續執行,即使 logout 也不會有影響。所以你可能接著離開身邊的電腦,然後跑出去喝個水,或者另外找個舒服的地方坐下來再接著剛剛的工作。
好,當你重新登入(login)之後,要怎麼接回剛剛的 screen 呢?重打 screen 只會讓電腦另外又開個 screen 給你,你所要做的事就是加些參數:
screen -ls 顯示目前個人所有的 screen
% screen -ls
There are screens on:
1188.ttyp4.SungSung (Attached)
76920.ttypq.SungSung (Detached)
2 Sockets in /tmp/screens/S-AlanSung.
上面的 Attached 表示你現在連接的 screen ,而 Detached 則表示沒有連接的,最後則是共有多少個 screen 數量
screen -r 就是重新回到(resume)screen 裡,如果你只有開一個 screen ,那只要簡單地打
% screen -r
就沒問題了,但是像上面那個,如果你有了兩個以上的 screen ,這樣就有問題了
% screen -r
There are several screens on:
1188.ttyp4.SungSung (Detached)
76920.ttypq.SungSung (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
如它的訊息所述,你可以加上它的 process id 或是使用的 tty 加上主機名來決定要接回那一個 screen 。假設在這裡我們要接回 process id 為 1188 的那一個,就打
% screen -r 1188
或
% screen -r ttyp4
或
% screen -r ttyp4.SungSung
或
% screen -r 1188.ttyp4.SungSung
都可以
screen -d 假設現在自己的電腦突然當機,或是網路突然斷了一時連不上去,等到好了之後,想要接回來原來的 screen 卻發現
% screen -r
There is a screen on:
1188.ttyp4.SungSung (Attached)
There is no screen to be resumed.
這時候 -d 這個參數就派上用場了,讓你可以控制某個 screen 脫離(detach),接著再加上 -r 把這個 screen 接手回來
% screen -d
[1188.ttyp4.SungSung detached.]
% screen -r
或直接
% screen -d -r
screen -wipe 有時候不小心跳電了,這時候重開機後當然也不會有 screen 留著,但是由於 screen 會有紀錄所有的 screen ,因為雖然舊的沒有了,可是還是有紀錄在,因此這個指令就是把廢棄不用的 screen 給"擦拭乾淨"(wipe)
There are screens on:
69103.ttyp5.SungSung (Removed)
529.ttyp0.SungSung (Detached)
1 socket wiped out.
1 Socket in /tmp/screens/S-AlanSung.
會用了上面所介紹的功能,你可以現在進入 bbs ,進入聊天室跟人聊天或是在上面發表文章到一半,發現計中要關門了,你可以從容的 detach ,回家之後再連回來 attach ,繼續剛剛的話題或發表文章,而對方可能根本沒發覺。只要你連線的主機不當機,那電話線或網路再怎麼不穏都不必怕斷線。
如果你需要更多詳細的資料,可以善用線上手冊(manual pages)或是 info 這個指令
% man screen
% info screen
Ctrl + a, k kill 掉這個 screen
Ctrl + a , A 可以編寫這個 screen 的名稱
Ctrl + a , " 會進入一個頁面讓你切換視窗
Ctrl + [ 會進入複製模式. 跟用 vi 一樣. hjkl 去控制方向, ctrl + b, f, u 可以上下捲頁.
screen -S irssi
screen -r 就會出現 7389-irssi
screen -r irssi 就可以進去了
轉貼自:
vi指令說明(完整版)
為了怕不見... 所以先貼過來存好... :)
vi指令說明(完整版)
.vi 的操作模式
==============
vi 提供兩種操作模式:輸入模式(insert mode)和指令模式(command mode)
。當使用者進入 vi 後,即處在指令模式下,此刻鍵入之任何字元皆被視為
指令。在此模式下可進行刪除、修改等動作。若要輸入資料,則需進入輸入
模式。
.輸入模式
=========
如何進入輸入模式
a (append) 由游標之後加入資料。
A 由該行之末加入資料。
i (insert) 由游標之前加入資料。
I 由該行之首加入資料。
o (open) 新增一行於該行之下供輸入資料之用。
O 新增一行於該行之上供輸入資料之用。
如何離開輸入模式
《ESC》 結束輸入模式。
.指令模式
=========
游標之移動
h 向左移一個字元。
j 向上移一個字元。
k 向下移一個字元。
l 向右移一個字元。
0 移至該行之首
$ 移至該行之末。
^ 移至該行的第一個字元處。
H 移至視窗的第一列。
M 移至視窗的中間那列。
L 移至視窗的最後一列。
G 移至該檔案的最後一列。
+ 移至下一列的第一個字元處。
- 移至上一列的第一個字元處。
( 移至該句之首。 (註一)
) 移至該句之末。
{ 移至該段落之首。 (註二)
} 移至該段落之末。
nG 移至該檔案的第 n 列。
n+ 移至游標所在位置之後的第 n 列。
n- 移至游標所在位置之前的第 n 列。
<Ctrl><g> 會顯示該行之行號、檔案名稱、檔案中最末行之行號、游標
所在行號佔總行號之百分比。
註一:句子(sentence)在vi中是指以『!』、『.』或『?』結束的一串字。
註二:段落(paragraph)在vi中是指以空白行隔開的文字。
.視窗的移動
===========
<Ctrl><f> 視窗往下捲一頁。
<Ctrl><b> 視窗往上捲一頁。
<Ctrl><d> 視窗往下捲半頁。
<Ctrl><u> 視窗往上捲半頁。
<Ctrl><e> 視窗往下捲一行。
<Ctrl><y> 視窗往上捲一行。
.刪除、複製及修改指令介紹 (此單元較少使用)
=========================
d(delete)、c(change)和y(yank)這一類的指令在 vi 中的指令格式為:
Operator + Scope = command
(運算子) (範圍)
運算子:
d 刪除指令。刪除資料,但會將刪除資料複製到記憶體緩衝區。
y 將資料(字組、行列、句子或段落)複製到緩衝區。
p 放置(put)指令,與 d 和 y 配和使用。可將最後delete或yank的資
料放置於游標所在位置之行列下。
c 修改(change)指令,類似delete與insert的組和。刪除一個字組、句
子等之資料,並插入新鍵資料。
範圍:
e 由游標所在位置至該字串的最後一個字元。
w 由游標所在位置至下一個字串的第一個字元。
b 由游標所在位置至前一個字串的第一個字元。
$ 由游標所在位置至該行的最後一個字元。
0 由游標所在位置至該行的第一個字元。
) 由游標所在位置至下一個句子的第一個字元。
( 由游標所在位置至該句子的第一個字元。
{ 由游標所在位置至該段落的最後一個字元。
} 由游標所在位置至該段落的第一個字元。
整行動作
dd 刪除整行。
D 以行為單位,刪除游標後之所有字元。
cc 修改整行的內容。
yy yank整行,使游標所在該行複製到記憶體緩衝區。
.刪除與修改
===========
x 刪除游標所在該字元。
X 刪除游標所在之前一字元。
dd 刪除游標所在該行。
r 用接於此指令之後的字元取代(replace)游標所在字元。
如: ra 將游標所在字元以 a 取代之。
R 進入取代狀態,直到《ESC》為止。
s 刪除游標所在之字元,並進入輸入模式直到《ESC》。
S 刪除游標所在之該行資料,並進入輸入模式直到《ESC》。
.搬移與複製
==========
利用 delete 及 put 指令可完成資料搬移之目的。
利用 yank 及 put 指令可完成資料複製之目的。
yank 和 delete 可將指定的資料複製到記憶體緩衝區,而藉由 put 指令
可將緩衝區內的資料複製到螢幕上。
例:
搬移一行 ‧在該行執行 dd
‧游標移至目的地
‧執行 p
複製一行 ‧在該行執行 yy
‧游標移至目的地
‧執行 p
.指令重複
=========
在指令模式中,可在指令前面加入一數字 n,則此指令動作會重複執行 n
次。
例:
刪除10行 ‧10dd
複製10行 ‧10yy
‧游標移至目的地
‧p
指標往下移10行 ‧10j
.取消前一動作(Undo)
===================
即復原執行上一指令前的內容。
u 恢復最後一個指令之前的結果。
U 恢復游標該行之所有改變。
.搜尋
=====
在vi中可搜尋某一字串,使游標移至該處。
/字串 往游標之後尋找該字串。
?字串 往游標之前尋找該字串。
n 往下繼續尋找下一個相同的字串。
N 往上繼續尋找下一個相同的字串。
.資料的連接
===========
J 句子的連接。將游標所在之下一行連接至游標該行的後面。
若某行資料太長亦可將其分成兩行,只要將游標移至分開點,進入輸入模式
(可利用 a、i等指令)再按《Enter》即可。
.環境的設定
===========
:set nu 設定資料的行號。
:set nonu 取消行號設定。
:set ai 自動內縮。
:set noai 取消自動內縮。
自動內縮(automatic indentation)
在編輯文件或程式時,有時會遇到需要內縮的狀況,『:set ai』即提供自
動內縮的功能,用下例解釋之:
‧vi test
‧(進入編輯視窗後)
this is the test for auto indent
《Tab》start indent ← :set ai (設自動內縮)
《Tab》data
《Tab》data
《Tab》data ← :set noai (取消自動內縮)
the end of auto indent.
‧註:<Ctrl><d> 可刪除《Tab》字元。
.ex指令
=======
讀寫資料
:w 將緩衝區的資料寫入磁碟中。
:10,20w test 將第10行至第20行的資料寫入test檔案。
:10,20w>>test 將第10行至第20行的資料加在test檔案之後。
:r test 將test檔案的資料讀入編輯緩衝區的最後。
刪除、複製及搬移
:10,20d 刪除第10行至第20行的資料。
:10d 刪除第10行的資料。
:%d 刪除整個編輯緩衝區。
:10,20co30 將第10行至第20行的資料複製至第30行之後。
:10,20mo30 將第10行至第20行的資料搬移至第30行之後。
字串搜尋與取代
s(substitute)指令可搜尋某行列範圍。
g(global)指令則可搜尋整個編輯緩衝區的資料。
s指令以第一個滿足該條件的字串為其取代的對象,若該行有數個滿足該條
件的字串,也僅能取代第一個,若想取代所有的字串則需加上g參數。
:1,$s/old/new/g 將檔案中所有的『old』改成『new』。
:10,20s/^/ / 將第10行至第20行資料的最前面插入5個空白。
:%s/old/new/g 將編輯緩衝區中所有的『old』改成『new』。
.恢復編輯時被中斷的檔案
=======================
在編輯過程中,若系統當掉或連線中斷,而緩衝區的資料並還未
被寫回磁碟時,當再度回到系統,執行下列指令即可回復中斷前
的檔案內容。
%vi -r filename
.編輯多個檔案
=============
vi亦提供同時編輯多個檔案的功能,方法如下:
%vi file1 file2 ..
當第一個檔案編修完成後,可利用『:w』將該緩衝區存檔,而後
再利用 『:n』載入下一個檔案。
執行
=============
:!ls
:!php abc.php
可以直接執行程式
:sh
可以直接到 shall 模式
Gvim 超強的 plugin
http://insenvim.sourceforge.net/
看看他的 Screen shots
http://insenvim.sourceforge.net/screen_shots.htm
讓 Gvim 寫程式就像在用 Virsual C++ 的感覺一樣!!
使用 FTP 將一些 DOS文件 傳送到unix下時,經常會看見每行檔後面有個 ^M 的字元,
有兩個簡單的方法可以取消它。
1. 用"vi"打開此文件,在Command mode下敲入::%s/^V^M //g
2. 在UNIX SHELL下輸入:
sed 's/^V^M//g' foo > foo.new
參考自 : linux newbie FAQ
(這篇文章有許多常見問題和小技巧,還蠻不錯的唷!!) (以下轉繁體後轉貼過來)
以下轉貼自 linux newbie FAQ
(只是將上述網址轉成繁體而已)
一 、Linux學習指導,相當不錯的linux入門的文章
希望朋友們看到有關linux入門方面比較不錯的文章請跟以下這個貼子:http://www. linuxforum.net/forum/showthreaded.php?Cat=&Board=newbie&Number=158189&page=1
&view=collapsed&sb=5&o=31&part=這裏已有“無涯子=muyu”老版主提供的一篇入門級
的文章
http://www.yesky.com/20010829/194313.shtml
二、linux常見問題解答
1.什麼是LINUX?
LINUX是一個可獨立運作的POSIX相容作業系統,它也包含了SYS V和BSD的功能。它
完全是獨之發展的,所以其中沒有任何有版權問題的代碼。LINUX可以在符合GNU Publi
c License的情況下自由傳播。它的核心是由芬蘭人Linus Torvalds (torvalds@kruuna
.helsinki.fi)所寫。
2.LINUX的版本
Linux的版本號分成兩部分:內核和發行套件版本。很多人常常把內核的版本號和發
行套件版本號弄混了,實際上內核的版本號是Linus領導下的開發小組開發的內核的版本
號。(通常,內核版本序號是偶數表示是穩定的版本,奇數序號是不穩定的測試版本)
3.LINUX的標準發音
ftp:/Linux.cis.nctu.edu.tw/pub/kernel/SillySound/english.au,這是Linux本
人的Linux發音的音效檔案,應該是最權威的。
4.怎樣自己製作boot disk
rdev /vmlinuz /dev/hda1 (其中/dev/hda1 是系統根掛接點的分區)
dd if=vmlinuz of=/dev/fd0
5.LILO出錯資訊意義
沒有資訊 LILO沒有安裝或者安裝LILO的分區沒有被啟動
LI LILO第一部分被載入,第二部分出錯。一般由於LILO定位錯誤或者試用了錯誤的boo
t.b文件。
LIL LILO第二部分開始載入,但是沒有從map檔中成功讀取descriptor tables。
LIL? LILO第二部分在錯誤的地方載入,原因同“LI”。
LIL- descriptor table 錯誤,或者是改變了boot.B檔卻沒有重新安裝LILO。
LILO LILO的所有部分都安裝完畢。
10101010 如果用戶的分區情況改變卻沒有重新安裝LILO,LILO開機時就會出現1010現象
。這是用軟碟開機重新運行LILO就可以修復。另外用戶超頻的時候也有可能出現這種情
況。
6.如何反安裝LILO
用DOS啟動,執行FDISK /MBR就可以重寫主引導記錄,覆蓋LILO。
在Linux下執行 lilo –u /dev/hda (其中/dev/hda 是lilo安裝的位置)
7.如何在LINUX下看WIN95長檔案名
確定核心支援VFAT檔系統,然後改/etc/fstab中的選項,例如:mount –t vfat
/dev/hda1 /dos這樣就可以看win95長檔案名了。
8.顯示彩色目錄及檔列表
用ls --color -F,參數--color指示用彩色顯示,參數-F會在檔/目錄名後加一個
字元來指示它的類別。建議初學者用man
ls看看詳細資訊。比如用-l參數列出檔/目錄的絕大部分資訊(長格式顯示);用-a參數
列出所有檔;包括首字元為"."的隱含文件;用-N參數不處理檔案名直接顯示,這樣在
中文環境下就可以顯示中文檔案名了。還要注意ls與其他命令搭配使用可以生出很多技
巧(最簡單的如"ls -l |
more")。為了方便起見,你可以編輯/etc/bashrc或自己家目錄(home)下的.bashrc,加入
一行:
alias ls="ls --color -F -N" 重新運行一下bash會立即生效,如果加在/etc/bashrc裏
則對所有使用bash shell的用戶有效。如果使用的是其他的shell,則去找對應的配置文
件。注意不是/etc/aliases檔,那是sendmail
的別名配置檔。ls顯示的顏色是可以修改的,請參考"Colours with Linux terminal
s",裏面有個shell腳本可以顯示所有的ANSI顏色。你可以去看一下/etc/DIR_COLORS或
$HOME/.dir_colors,要注意兩個檔的作用範圍不同。
9.複製子目錄及子目錄下的所有檔
在用cp時加上-r參數,如"cp -r /mnt/floppy/* /usr/local/"要參考的重要參數是
-f –s。
10.檔/目錄改名
簡單地用move命令移到新名字下即可。例如"mv /usr/oldname /usr/newname"。
11.怎樣刪除一個目錄下的所有檔和子目錄及子目錄下的所有檔
rm -rf /tmp/example
12.怎樣顯示檔的類型
用file命令,比如"file /bin/mount","file xxx.gz","file netscape","file in
itrd.img"等等。相關的配置檔在/etc/magic或者/usr/share/magic
13.查找命令檔的路徑
比如你要查找mount命令的具體路徑,可以用type mount 、whereis mount,這個命
令還可以找出與這個命令檔相關的檔如manuals page。
14.查找文件
使用find命令,比如:
find /usr -name XF86* 在/usr目錄下(包含子目錄)查找名字前四個字母為XF86的檔
find . -name netscape –print 在當前目錄下(包含子目錄)查找名為netscape的檔
find /home –nouser 在/home目錄下查找沒有用戶屬主的檔(用戶帳號被刪除但有遺
留文件)
find /var -newer test 在/var目錄下查找比test檔日期更新的檔
find命令有很多參數,注意用man命令查看。
更快速的查找檔是使用locate,第一次使用locate之前用updatedb來更新檔/目
錄名資料庫。它把檔/目錄資訊寫到資料庫中,以後查找起來就特別的快。updatedb放
在crontab中而且缺省配置是在半夜自動執行。locate存在輕微的安全性問題,因為普通
用戶可以用它來取得自己不
能訪問的目錄/檔的部分資訊。
15.快速調出歷史命令
可以用上下游標鍵來調出歷史命令,然後用左右游標鍵移動並可編輯命令行。
詳細情況請見下面貼子(有其他想法可跟其貼!)http://www.linuxforum.net/fo
rum/showthreaded.php?Cat=&Board=newbie&Number=155520&page=&view=&sb=&o=
16.關於rpm的小技巧
1)安裝rpm包時顯示進度:用-vh參數,如rpm -ivh ipchains-1.3.6-1.i386.rpm,
如果用glint或xrpm則不必。
2)直接通過ftp來安裝rpm包:如rpm -i ftp://ftp.xxx.xxx
3)校驗所有的rpm包,查找丟失的檔:rpm -Va
4)查找一個檔屬於哪個rpm包:例如:rpm -qf /usr/bin/who
5)列出一個rpm包的描述資訊:例如:rpm -qpi mon-0.37j-1.i386.rpm
6)列出一個rpm包的檔資訊:例如:rpm -qpl mon-0.37j-1.i386.rpm
17.使用軟碟/光碟等移動介質
因為Linux下沒有A盤D盤的概念。你需要把軟碟/光碟設備上的檔系統安裝到Linu
x目錄樹上的一個點上,稱之為安裝點(mount point),通常是一個目錄。安裝Linux後會
有個缺省的安裝點/mnt,在它下面還有/mnt/floppy和/mnt/cdrom。你可以用mount -t
ext2 /dev/fd0
/mnt/floppy <--把Linux檔系統格式的軟碟安裝上來
單用mount而不跟任何參數可以顯示已經安裝的檔系統,或者查看/etc/mtab檔初學
者還經常問到如何格式化磁片,在Linux裏概念有些不同,稱之為製作檔系統(make f
ilesystem)應該用mkfs命令,由於現在的Linux都使用ext2格式,最好直接使用mke2fs,
比如mke2fs
/dev/fd0、mke2fs /dev/hdb2等等。如果要對軟碟低級格式化,則可以用fdformat,而
硬碟在出廠時已經格式化,無須低級格式化(那是危險的)。檢查檔系統則用e2fsck,
如e2fsck -av /dev/fd0。
18.列出一個目錄佔用的空間
du或du -s或du -k ,du -S | sort -n 可以迅速發現哪個目錄是最大的。用df可以
看到已安裝的檔系統的空間大小及剩餘空間大小。quota -v查看用戶的磁碟空間資訊
,如果你用quota限制了用戶空間大小的話。
19.命令補起(TAB鍵的妙用)
很多shell都有這個功能:
1. 只需輸入檔或目錄名的前幾個字元, 然後按TAB鍵,如無相重的,完整的檔案名立
即自動在命令行出現;如有相重的,再按一下TAB鍵,系統會列出當前目錄下所有以這幾個
字元開頭的名字.例如cd /mnt/cd 自動補起為 cd /mnt/cdrom。
2. 在命令行下,只需輸入例如"m",再連續按兩次TAB鍵,系統將列出所有以"m"開頭的命
令,(包括自定義的Bshell命令函數),對查找某些記不清楚的命令特有用.例如輸入"ftp"
,將查到ftp, ftpcount, ftpwho, ftpshut等本不熟悉的命令。
20.讓grep搜尋檔及所有子目錄下的檔裏的內容
例如搜尋ZhXwin下所有C原代碼中的"Chinput"(試試取消下行的-q參數):
find /download/ZhXwin -name *.c -exec grep -q -s Chinput {} \; -print
查找所有檔則可以用:find . -type f -exec grep -s chinese {} \; -print 。如
果喜歡圖形介面,KDE帶的kfind很不錯。
21.查看啟動時的log資訊
首先去查看/etc/syslog.conf檔,找到對應的檔。
通常在SlackWare下為/var/adm/messages,在Redhat下為 /var/log/messages。
這些檔可能會很大,要注意備份和刪除。
22.產生一個以當日日期為尾碼的檔
file=`date '+%m%d'` | touch todayis.$file
注意定義file變數中的“`”不是“ '”,而是左上角數字鍵1傍邊那個(左單引號)
。
23.利用Find命令改變所有權
想要改變當前目錄下所有檔的所有權,可以這樣:
find . -exec chown OWNER.[GROUP] {} \; (Solaris)
find . -exec chown -R OWNER.[GROUP] {} \; (Linux)
24.取消^M字元
當你FTP一些DOS文件到unix下時,你經常會看見每行檔後面有個討厭的^M 字元,
有兩個簡單的方法可以取消它。用"vi"打開此文件,在Command mode下敲入::%s/^V^M
//g ,或者,在UNIX SHELL下敲入:
sed 's/^V^M//g' foo > foo.new。
25.KDE是什麼?
KDE是 K桌面環境,是由 Matthias Ettrich 在 1996年啟動的一個計畫。KDE的目
標是在 Unix作業系統和用戶間建立良好的介面。簡而言之,KDE將Unix帶至桌面!
26.KDE是自由軟體?
是, KDE是遵守GNU的自由軟體。在LGPL下所有KDE庫都允許開發KDE桌面的程式,所
有KDE應用程式得到GPL許可,KDE使用 Qt C++ 跨平臺工具包,有各自的授權。簡而言之
, Qt的授權允許你免費使用Qt來開發 X Windows下的軟體,只要你的原始代碼也自由地
被使用。
如果你希望你的原始代碼不允許修改,你必須獲得Qt的商業授權。你能從Troll Tech w
eb site找到更多有關Qt資訊 和它的授權.如果你懷疑授權,請與Troll Tech web site接
觸。
KDE和 Qt是可以通過 CD方式免費獲得,運行時無任何費用。
27.在KDE中的K代表什麼?
不表示任何東西。簡單地說是 K桌面環境,就象X窗戶系統中的X.。
28.KDE能在哪一個平臺上工作?
KDE是所有Unix的桌面環境。大部分KDE開發者使用Linux,KDE平滑地跑在各式各樣
的系統上。如果你使用的是Unix變體或不使用GNU開發工具如gcc,你也許要修改源代碼
。
可運行KDE的系統有Linux Solaris FreeBSD IRIX HP-UX。
29.KDE是視窗管理程式嗎?
不, KDE不是視窗管理程式。KDE包含一個採用非常先進技術的視窗管理程式稱KWM,
KDE是成熟的完整的桌面環境(IDE)。KDE提供完全桌面環境,包括檔管理程式、視窗管
理程式、幫助系統、配置系統、不可數的工具和正在增加的應用程式。
30.KDE是CDE, Windows 95或 MacOS克隆嗎?
不, KDE不是克隆。特別地,KDE不是CDE或Windows克隆。在KDE開發者已經和正在收
集所有存在的桌面環境的最好特性的時候,KDE是真正的,唯一的環境。
31.Linux發佈裏有 KDE嗎?
是的,主要的Linux分佈已經包含 KDE。Happy Linux包含KDE。
32.如何檢查正在使用的 KDE的版本?
看 KDE控制中心。如果沒有 KDE的版本號,它肯定是1.0。另一個差別是在面板 'K'
字,在1.0中,它是黑白的3D K,在1.1中,它是在輪子上面的白色K。
33.KDE需要Qt
對KDE1.0,你需要Qt庫1.33或更高的版本。對KDE1.1,你需要Qt庫1.42或更高的版
本。但是不要下載Qt 2.0或更高版本。如果你想自己編譯KDE,你也需要頭檔。在
http://www.troll.no/dle有免費資源。你需要的libgr一般包括在大部分發佈內。請務
必確認你本地的loopback設備正確設置。
34.Qt是什麼?
Qt是建造使用者介面的C++基類庫。它提供大多數widgets、功能表、按鈕、sliders等
等。Qt是一個跨平臺庫,寫的代碼可在Unix編譯,也可在 Windows編譯。
35.為什麼KDE用Qt?
Qt是一個非常複雜工具包,他提供所有的現代用戶介面。Qt由C ++寫成,允許使用
object oriented development,…據我們看來沒有比它更好的工具可以…。所有KDE開
發者同意如果沒有Qt在如此短的時間不可能建造kde。
36.CVS是什麼?
它是Concurrent Versions System的縮寫字。它是版本控制系統,以RCS (修訂版控
制系統)為基礎,但是提供更多機能。它用於維護項目的原始代碼。它將保持多個版本的
東西,允許遠端存取最近原始代碼。
37.怎樣快速退出Xwindow?
Xwindow基本不會出現真正的死機(起碼我沒見過),如果出現無法運行的情,可以
用ctrl+alt+
backspace退出視窗返回到命令行模式。
38.怎樣轉換虛擬終端?
在字元模式下用alt+左方向鍵(或右方向鍵) 可以順序切換各個虛終端,也可以
用alt加F1到6直接切換到各個虛終端。
在X Window模式下可以用ctrl+alt+F1(F1-F6)切換到各個虛終端,ctrl+alt+F7切換回
窗口。
39.在X Window做文字處理應使用哪個軟體?
在命令行模式下輸入kedit命令就可啟動文字處理軟體,其功能類似於Win98的寫字板
。
三、 有關在linux中執行halt關機命令後出現的一些困惑見下:
Q:halt命令後,系統執行到system halted 時死在那裏了,這是什麼原因啊?(或有這
樣問題的---“我的linux是RedHat7.0,每次關機總關不掉主機電源,該怎麼辦呀?”也
可參看下麵的)
A:實際上按照你所說的情況,不算是死機。因為你看到了system haled.....這表明
是完全退出了linux作業系統!
就象我們在WIN98裏一樣(沒有支援高級電源管理的情況下,會出現一個“你現在可以安
全關閉電腦了”),而linux默認沒有這個提示而已,這時你可以按一下主機上的電源
按鈕來關機關掉電源!一切OK。 不過你為了達到你所希望的,你可以用以下命令: ha
lt -p 或者poweroff 。
也可以通過修改:/etc/rc.d/init.d/halt中的有關“halt“ 為”halt -p“ 。 這樣
你只要用halt就可以在關機時關掉主機上的電源
如果你有其他的想法和不同的觀點可以跟以下的貼子:
1,http://www.linuxforum.net/forum/showthreaded.php?Cat=&Board=newbie&Numb
er=163283&page=0&view=collapsed&sb=5&o=31&part=
2.http://www.linuxforum.net/forum/showthreaded.php?Cat=&Board=newbie&Num
ber=138471&page=&view=&sb=&o=
四、開始選擇用軟碟啟動linux的朋友,在丟了或損壞了軟碟時,而Lilo 沒在 MBR上,
Linux 還能啟動嗎?
請有這方面需要的朋友看下面這個貼子,或跟其貼!
http://www.linuxforum.net/forum/showthreaded.php?Cat=&Board=newbie&Number
=162862&page=0&view=collapsed&sb=5&o=31&part=
五、有關環境變數的查看、設定、刪除
1. 查看環境變數的設定值
語法:setenv 查看所有環境變數的設定值。
語法:echo $NAME 顯示指定的環境變數NAME的設定值。
例如:
echo $PRINTER 顯示環境變數PRINTER 的設定值。
2. 設定環境變數
語法:setenv NAME word
例如:
setenv PRINTER sp 設定環境變數PRINTER 為sp。
3. 刪除環境變數
語法:unsetenv NAME
例如:
unsetenv PRINTER 刪除環境變數PRINTER的設定值。
六、linux下是否有病毒的討論見下:(歡迎談談個人看法!)
http://www.linuxforum.net/forum/showthreaded.php?Cat=&Board=newbie&Numbe
r=160462&page=1&view=collapsed&sb=5&o=31&part=
七、關於啟動xwindow時如何自行選擇gnome或kde?
方法有以下幾種:
1.redhat7.1安裝時默認啟動為命令操作狀態,啟動時默認為gnome,可是有時候想用kd
e,在用戶根目錄下編輯.xinitrc,加上一條命令startkde即可。如果還要用gnome的話
,只要把.xinitrc刪掉就可以了。
2.可以直接修改$HOME/.xinitrc
如果啟動gnome
.xinitrc檔內容應該這樣寫:
exec gnome-session
如果啟動KDE
.xinitrc檔內容應該這樣寫:
exec startkde
3.use command:
switchdesk GNOME
4.在terminal運行:
switchdestop kde
或者
在x-windows下運行:
switchdestop
然後選一個wm
八、怎樣使linux啟動進入時不直接進入X-WINDOWS介面?
改/etc/inittab文件,將有“id:5:initdefault:”這一行中的,把數字5改成3
即可
九、linux 與SVR4 or 4.3BSD有何關係? 請見以下貼子:http://www.linuxforum.net/
forum/showthreaded.php?Cat=&Board=newbie&Number=162987&page=1&view=collapsed
&sb=5&o=31&part=
十、在linux中如何設置系統時間? 參照以下文章:http://www.linuxforum.net/foru
m/showthreaded.php?Cat=&Board=newbie&Number=159079&page=3&view=collapsed&sb=
5&o=31&part=
十一、關於swap分區的大小討論!
請參加:::http://www.linuxforum.net/forum/showthreaded.php?Cat=&Board=newb
ie&Number=158857&page=3&view=collapsed&sb=5&o=31&part=
十二、在沒有正常關機的情況下,而後開機時報告檔系統錯誤,要運行什麼fsck?如
何使用fsck?
你在shell命令提示符下:打 fsck命令。格式是:fsck /dev/hda? (針對ext2格式
的檔也可以用e2fsck) 它還可以帶一些參數見下:
(詳細請用: man fsck)
fsck的參數
-f
即使磁片看起來無需檢查也強制執行。默認情況下,只有當檔系統“骯髒”時才需要
進行檢查。或者說,只
有當檔系統沒有正確卸載(dismount)、或者使用了一定的時間、系統重新啟動一定
次數後才需要進行檢查。
-p
整理檔系統,自動修正所有可以安全地更正且不會導致資料丟失的問題。
-y
對所有問題回答yes。它的效果是:自動修正所有發現的問題,即使那些可能導致資料丟
失的問題也要修正。
-b block
指定檔系統備用superblock的位置。在極其罕見的情況下,即當主superblock被損壞
而檔系統主要部分仍
完整的情況下,該選項的作用將是非常大的。備用superblock通常位於8193、13685等位
置,創建檔系統時mkfs將輸出
該信息。
有一點很重要,那就是在檢查完檔系統後,如果對該檔系統做了任何糾正,就應該
立即重新啟動系統(當
然,一般情況下,不能在檔系統被安裝時檢查它)。例如,如果e2fsck報告對檔系統
的錯誤作了些糾正的話, 就應該立即用shutdown-r命令確保重新啟動系統,這使得當e
2fsck修改了檔系統後,系統能重新同步讀檔系統的資訊。
與fsck相關的內容歡迎參加下面貼子討論:http://www.linuxforum.net/forum/showth
readed.php?Cat=&Board=newbie&Number=154205&page=&view=&sb=&o=
Mozilla Firefox 提供了相當方便的快速鍵:
Ctrl+L 快速切換到網址列
Ctrl+K 切換到搜尋列
Ctrl+T 能開啟一個新的分頁
Ctrl+S 可以儲存目前的頁面
因為搜尋常會用到,而 Firefox 右上角的搜尋又特別好用。
但是就是 Google 的搜尋特別麻煩,每次都是 http://www.google.com/,
在想要找中文網頁時就很麻煩,今天研究時才發現,那右上角只是個簡單的小檔案,
以下我們深入再來小小探討一下如何修改吧!!
現在先以修改為主,說明在最下面再來說。(Windows 版的也一樣)
將 http://www.google.com/ 修改成 http://www.google.com.tw/
步驟如下:
1. vi /usr/lib/mozilla-firefox/searchplugins/google.src
(自己去找自己 firefox 的位置的 searchplugins 目錄, 此為 debian預設)
2. 大約第 7 行的位置
action="http://www.google.com/search"
修改成
action="http://www.google.com.tw/search"
存檔即可
這樣子就完成了。
再來來稍稍解說一下吧!
詳細請參考 Firefox Search Plugin Documentation
在 searchplugins 目錄中的就是右上角的搜尋所能使用的東西,寫法很簡單。
最主要就是兩個檔案(以 google 為例)
1. google.src (主要設定檔就是這個)
2. google.gif (搜尋列旁邊的小圖就是這個)
最簡單的修改方法就是自己複製一份(改檔名),去修改*.src 內容的 name 和 action,
然後 queryEncoding、queryCharset 下面的編碼改一下,
這樣子就可以有自己想要的 Plugin 囉!
當然這是基礎,深入點的要自己去看想要的搜尋引擎(字典)的 Source,
看他需要哪些變數值,記得傳進去就可以囉!
mplayer 抓字幕檔進入, 設定使用的字型
gmplayer -vo x11 -zoom -unicode
mplayer -vo x11 -subcp cp950 -sub Taxi3.srt Taxi3.avi
mplayer -vo x11 -subcp cp950 -font /usr/share/fonts/truetype/arphic/bsmi00lp.ttf -sub Taxi3.srt Taxi3.avi
mplayer -vo x11 -subcp cp950 -font /usr/share/fonts/truetype/arphic/bkai00mp.ttf -sub Taxi3.srt Taxi3.avi
gmplayer 快轉時不出現中間的那列(片長)
vi $USER_HOME/.mplayer/gui.conf
osd_level = "0"
改為 0 則不出現, 1 則出現
1 一般使用者指令 (General Commands)
2 系統呼叫 (System Calls)
3 函式庫中的函式 (Subroutines)
4 裝置及裝置的驅動程式 (Special Files)
5 設定檔的格式 (File Formats)
6 遊戲 (Games)
7 Macros and Conventions
8 系統維護及系統管理指令 (Maintenance Commands)
9 Kernel Interface
n New Commands
Ex:
man ls
man 1 ls
man k cp
rsync 可以近端, 遠端的備份資料..
非常方便..
不過現在還沒有時間弄這個.. 看到好文章.先留下來比較保險.. :p
以下文章取自 rsync 異地備援 心得筆記
rsync 異地備援 心得筆記
主機的備分問題一直是粉多人的煩惱之一
在這裡使用 rsync 這個套件 來作兩台電腦的資料備份
環境說明
server (需要備份的主機.目前運作中的機器) :
O/S:Redhat 9.0
ip : 192.168.0.2
user : root
欲備份目錄 : /test (實驗用.預設沒有此目錄請自行建立)
client (遠端存放備份的機器.不提供服務只備份資料) :
O/S:Redhat 9.0
ip : 192.168.0.253
user : root
存放資料目錄 : /test (實驗用.預設沒有此目錄請自行建立)
分兩個部分來做
server 部分:
1.首先檢查有沒有rsync 套件 (Redhat 預設都會裝)
#rpm -q rsync
rsync-2.5.5-4
2.開啟rsync的服務並檢查狀態
#chkconfig rsync on
#chkconfig rsync --list
rsync 開啟
client 部分:
為了使用SSH加密傳輸且不需要輸入密碼
1.#cd /root/.ssh (進入到/root/.ssh/ 目錄下)
2.#ssh-keygen -d (產生ssh的公鑰和私鑰)
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa): (產生到何處.按Enter 就可以了)
Enter passphrase (empty for no passphrase): (要不要設定passwd.避免問我們按Enter 就可以了)
Enter same passphrase again: (再按一次Enter)
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/id_dsa.pub.
此時目錄下會產生公鑰id_dsa.pub和私鑰id_dsa
現在要把id_dsa.pub丟到192.168.0.2 並且更名為 authorized_keys
3.#scp id_dsa.pub 192.168.0.2:/root/.ssh/authorized_keys
root@192.168.0.2's password:
id_dsa.pub 100% |*****************************| 613 00:00
試試看 ssh 到server 應該就不用輸入密碼了
4.#ssh 192.168.0.2
#exit (記得離開)
5.#cd /usr/local/bin (要寫一個shell script 在 /usr/local/bin下 故先到此目錄下)
#vi sync
rsync -avlR --delete -e ssh 192.168.0.2:/test /
(把192.168.0.2下面的 /test 目錄 備份到本機上的 / , 因為備份會產生test這個資料夾.所以本機上設定為/)
(讓/test => /test 而不是 /test => /test/test)
參數意義如下﹕
-a, --archive
It is a quick way of saying you want recursion and want to preserve almost everything.
-v, --verbose
This option increases the amount of information you are given during the transfer.
-l, --links
When symlinks are encountered, recreate the symlink on the destination.
-R, --relative
Use relative paths. 保留相對路徑...才不會讓子目錄跟 parent 擠在同一層...
--delete
是指如果Server端刪除了一文件,那客戶端也相應把這一文件刪除,保持真正的一致。
-e ssh
建立起加密的連接。
6.#chmod 700 sync 只讓root 可以使用
7.#./sync (執行sync這個script.........此時你就會發現兩台電腦的/test是同步的呢^_^)
參考文件
小弟的心得是參考以下的文件來製作
http://www.adj.idv.tw/server/linux_rsync.php
http://www.fanqiang.com/a6/b7/20010908/1305001258_b.html
http://phorum.study-area.org/viewtopic.php?t=15553&highlight=rsync
http://linux.tnc.edu.tw/techdoc/rsync.htm
Java Applet For Mozilla 參照這頁先將 Applet for mozilla 裝好後..
再
cp /usr/lib/mozilla/plugins/* /usr/lib/mozilla-firefox/plugins/
就搞定了.. 簡單~~ :)
vi 實在是個非常棒的編輯器... 功能太強大了...
而且非常方便又好用... 沒有它實在是綁手綁腳的... 唉...
我的 .vimrc 如下
syntax on
set expandtab
set shiftwidth=4
set softtabstop=4
set tabstop=4
set number
set cindent
set autoindent
這些在平常寫程式時很好用唷.. :)
# 自動判斷 big5 或 utf-8 會自動換編碼(Linux 設以下設定)
兩種方法:
1.
" 檔案存檔會存成utf-8編碼
"set fileencoding=utf-8
"
" 以下四個設下去. vim 編出來都是 utf-8 編碼的.
set fileencoding=utf-8
set fileencodings=big5,utf-8
set termencoding=big5
set enc=utf-8
" iconv -f big5 -t utf8 file.big5
2.
if has("multi_byte")
let $LANG="zh_TW.UTF-8"
set encoding=utf-8
setglobal fileencoding=big5
set fileencoding=big5
set bomb
set termencoding=big5
set fileencodings=utf-8,big5,euc-jp,gbk,euc-kr,utf-bom,iso8859-1
else
echoerr "Sorry, this version of (g)vim was not compiled with multi_byte"
endif
其它還有非常多功能.. 就下面再說囉.. :)
開啟顏色
syntax on
syntax off 關閉
" 將註解由深藍色變綠色
" hi Comment ctermfg=Green
" 搜尋到的字加 hilight
set hlsearch
" 將註解由深藍色變淺藍色
highlight Comment ctermfg=darkcyan
highlight Search term=reverse ctermbg=4 ctermfg=7
highlight Normal ctermbg=black ctermfg=white
一個tab鍵空四格, 以空白代替(按兩個 tab 就等於是 tab)
set expandtab
set shiftwidth=4
set softtabstop=4
set tabstop=4
自動縮排
:set cindent
:set autoindent
:set cindent 取消
:set noautoindent 取消
:set noci 取消
數字行數
:set number (:set nu)
:set nonumber (:set nonu)
搜尋後不出現彩色make
:nohl
字首加字
:1,$s/^/#/g 在全部行首加上 #
:1,$s/\home\//g 將從頭到尾有/home/ 的字刪掉
字串取代
:1,$s/mysql_query\(\$sql\);/mysql_query(\$sql\) or die\(mysql_error\(\)\):/g
第一行取代到最後一行 1,$
編輯備份檔
vi -r filename
編輯一次兩個視窗
:new
Ctrl + w 切換視窗(Ctrl+w兩次, 或 Ctrl+w+ 上下鍵)
:e [tab]或filename開檔案編輯
編輯遠端ftp
:e ftp://url/filename
不自動換行
:set nowrap (一行太長會自動換到下一行)
輸入顏色
^[ 是 ESCAPE 鍵,
在 vi中, 先按 Ctrl-V 再按ESC就會出現了
shell 模式本來都是使用 bash.
若要改用 vi 來當預設的環境的話.
則在 .bashrc 最上面加入 set -o vi 即可.
(esc i 則進入 insert 模式, j.k 可以用上一次指令, 下一次指令)
若想要讓其它檔名可以支援 .php 的顏色設定
mkdir ~/.vim
vi filetype.vim
內容如下:
" my filetype file
if exists("did_load_filetypes")
finish
endif
augroup filetypedetect
au! BufRead,BufNewFile *.ros setfiletype php
augroup END
這樣子就可以把 .ros 用 .php 的顏色設定
今天突然想到.. 想要把 MT 的版面弄漂亮一點...
於是來找找 Styles...
找到了http://www.movablestyle.com/ 這邊..
mac matrix modern-Lines plan-blue 這四類都很棒.. :)
不過.. 為了美觀. 且字要看的清楚為原則的情況下...
還是 mac 的最好了.. (最原先的 Clean 也是很不錯啦. 不過單調了點)
預設 Style http://www.movabletype.org/default_styles.shtml
mac 的安裝...
unzip style-site.zip
將解壓出來的兩個檔案移到 MT 的 Html 目錄下即可.
不過我是覺得將 style-site.css 用編輯器叫出.
再貼到 MT 裡面去更換模版.. 再重建會比較好..
(我是用這種方式啦)
圖檔放到 MT 的 Html 目錄下就可以了...
# wget --user-agent="Mozilla/4.0 (compatible; MSIE 5.00; Windows 98)" http://home.pchome.com.tw/net/tetralet/Files/Firefly.tar.bz2.jpg
# mv Firefly.tar.bz2.jpg Firefly.tar.bz2
# dpkg -i libfontconfig1_2.2.92-1_firefly_i386.deb
# dpkg -i fontconfig_2.2.92-1_firefly_i386.deb
# dpkg -i libfreetype6_2.1.7-1_firefly_i386.deb
# dpkg -i libxft2_2.1.2-5_firefly_i386.deb
# dpkg -i libpango1.0-common_1.2.5-2.1_firefly_i386.deb
# dpkg -i libpango1.0-0_1.2.5-2.1_firefly_i386.deb
或參考 螢火蟲論壇 來自己制作也可以.
安裝完後. 重新設定fontconfig
dpkg-reconfigure fontconfig
(全部選 NO)
再來重新進入 Xwindow 後.
開啟 Mozilla 設定字型
Proportional: Serif 16
Serif: MingLiU
Sans-serif: MingLiU
Cursive: MingLiU
Fantasy: MingLiU
Monospace: MingLiU 16
Minimum font size: None
再開網頁瀏覽看看吧.. :)
設定 Gnome 的應用程式字型
$ gnome-control-center
選 字型
PMingLiU 10
PMingLiU 12
PMingLiU 12
PMingLiU 10
即可
若要用回官方版
apt-get install libfontconfig1/unstable
apt-get install fontconfig/unstable
apt-get install libfreetype6/unstable
apt-get install libxft2/unstable
apt-get install libpango1.0-0/unstable
apt-get install libpango1.0-common/unstable
其中的 unstable 請視您需求或更改為 testing。
照前一篇安裝好 Java 後...
於 .bashrc 中設 /usr/local/j2re1.4.2_01/plugin/i386/ns610-gcc32/
就是為了 讓 Java Applet 能跑....
現在是 已經裝好 Java(於 /usr/local/j2re1.4.2_01/), 且 .bashrc 也設好了..
步驟如下
# cd /usr/lib/mozilla/plugins
# ln -s /usr/local/j2re1.4.2_01/plugin/i386/ns610-gcc32/libjavaplugin_oji.so libjavaplugin_oji.so
基本上做完這兩步 Java Applet 就沒有問題了.. 但是會發現中文字會變"框框"或"亂碼"的問題..
於是要設定 Java Applet 來解決亂碼問題... 步驟如下..
# cd /usr/local/j2re1.4.2_01/lib/
# wget http://people.debian.org.tw/~asho/java/font.properties.zh_TW
這樣子之後 mozilla 開啟就有中文的 Java Applet 了...
wget http://people.debian.org.tw/~asho/java/font.properties.zh_TW
上述wget 的路徑.. 是參照到下面這篇(感謝阿信大大的提供)
http://moto.debian.org.tw/viewtopic.php?t=1996&highlight=java+applet+%E4%BA%82%E7%A2%BC
阿信提供 font.properties.zh_TW ... 解決中文亂碼問題.. 大感謝....
可參考
http://moto.debian.org.tw/viewtopic.php?t=1996&highlight=java+applet+%E4%BA%82%E7%A2%BC
於 source.list 中加入
deb http://www.stud.uni-karlsruhe.de/~ude2 debian/
再如下
apt-get update; apt-get install mpkg-j2sdk java-common
不過我還是習慣自己的方法...
先到 http://java.sun.com 下載
會下載到 j2re-1_4_2_04-linux-i586.bin
# cd /usr/local
# chmod +x j2re-1_4_2_04-linux-i586.bin
# ./j2re-1_4_2_04-linux-i586.bin
再來 YES.... 就會安裝完.. 再設定
$ vi .bashrc
export PATH="$PATH:/usr/local/j2re1.4.2_04/bin:/usr/local/j2re1.4.2_04/plugin/i386/ns610-gcc32/:"
就可以使用了 .. :)
在.mplayer/config
加入sub-fuzziness=1可以自動載入字幕
subcp=cp950
unicode=yes
subfont-text-scale=3
mplayer指令與參數
-font 字型檔位置
-vo video output 格式
-sub 字幕檔
-unicode -subcp cp950 字幕編碼
本文最新網址位於 apt用法教學
apt 實在非常的強大.. 最麻煩的套件相依性幫我們處理的非常好...
而且會讓人越來越懶.. XD
來看看他的用法吧.. :)
apt-get upgrade => 軟體升級
apt-get dist-upgrade => 系統升級
更詳細可見 http://tavi.debian.org.tw/SoftwareUpgrading
=======
apt-get
=======
1.apt-get update
更新套件資訊,要升級之前,最好都先執行一次本指令和 Server 端的資訊同步
一下
2.apt-get check
檢查你系統上套件的相依性狀況
3.apt-get dist-upgrade 和 apt-get upgrade
執行整個升級動作,建議用 apt-get dist-upgrade 比較好
4.apt-get install 套件名稱
安裝某一個套件及其相關的套件
如 apt-get install xcin
這樣就會幫您安裝好 xcin 了,連 libtabe 也會一併幫您安裝好
5.apt-get remove 套件名稱
移除某套件,和 rpm -e 功能一樣,同時還會幫您把相關的套件一併移除
6.apt-get source 套件名稱
抓回 source rpm
例: apt-get source --compile zhcon
抓回 source rpm 並編譯成 binary rpm
--compile 參數就如同 rpm -ba 一般
7.apt-get clean
刪除下載回來的檔案
=========
apt-cache
=========
1.apt-cache showpkg
顯示套件資訊
例: apt-cache showpkg zhcon
2.apt-cache stats
顯示相關的統計資訊
3.apt-cache dump
顥示 cache 中每個套件的簡短資訊
4.apt-cache unmet
檢查所有未符合相依性的相關資訊
5.apt-cache show
顯示套件資訊,同 rpm -qi 一般
6.apt-cache search
尋找檔案
例: apt-cache search zhcon
7.apt-cache depends
顯示套件的相依性
例: apt-cache depends zhcon
8.apt-cache pkgnames
尋找符合的套件名稱
例: $ apt-cache pkgnames openss
openssh-askpass
openssl096
openssl-perl
openssl095a
openssl-python
openssh-clients
openssl-devel
openssh-askpass-gnome
openssh
openssl
openssh-server
==========
apt-config
==========
1.apt-config dump
顯示目前的設定狀態
shift+alt+i 、
shift+alt+o 。
shift+alt+. .
shift+alt+, ,
shift+alt+; ;
shift+alt+' :
shift+alt+h 「
shift+alt+j 」
shift+alt+f 『
shift+alt+g 』
shift+alt+m ─
shift+alt+l │
shift+alt+p ﹖
雖然沒有在用 Office.. 還是以防萬一.. 先記起來放... :p
OpenOffice.org 使用技巧
http://ooo.tnc.edu.tw/modules/tadbook2/index.php?op=view_one_book&book_sn=2
OpenOffice.org V.S. MS Office
http://ooo.tnc.edu.tw/modules/tadbook2/index.php?op=view_one_book&book_sn=4
取自:
http://free.tnc.edu.tw/modules/news/article.php?storyid=905