顯示具有 Linux 標籤的文章。 顯示所有文章
顯示具有 Linux 標籤的文章。 顯示所有文章

2014年5月30日

sftp 使用自訂之 private key

由於最近要登入一台新的 FTP server,之前某同事已申請過此 FTP server 的程式用帳號密碼,因為時效很趕的關係,所以跟同事拿了他程式帳號的 private key,準備在另一台主機採用 key 交換的方式利用相同 FTP 帳號(不需輸入密碼登入 FTP server),研究了一下,要選擇自訂的 private key 指令如下:
sftp -o IdentityFile=/your/private/key user@sftpserver

這樣就可以不破壞原來主機上的使用者原本的 private key 下(或根本沒有這個使用者帳號),利用 key 交換方式登入另一台主機
P.S. Perl 的 SFTP 模組建議採用 Net::SFTP::Foreign

2012年8月15日

快速尋找 Linux Process 並刪除

以前的方法

ps -ef | grep httpd
然後再去 kill pid


新發現的方法

pgrep httpd 可以直接取得 pid 不用再 grep
pkill 可以直接接  process name, 不用使用 pid


2011年7月4日

[Linux] 去除空白行

以下每種方法都可行~

$ grep -v '^$' file
$ grep '.' file
$ sed '/^$/d' file
$ sed -n '/^$/!p' file
$ awk NF file
$ awk '/./' file

2011年4月25日

Linux 切換使用者出現 "/bin/bash : No such file or directory"

[root@VOIP bin]$ su - cvs
Password:
su: /bin/bash : No such file or directory

問題:Linux 切換使用者出現 "/bin/bash : No such file or directory"

檢查該使用者也有 home 目錄,/bin/bash 檔案也都在權限也沒問題,後來爬文找出原因是系統的 /etc/passwd 在該使用者那行多了看不出來的空白,解決方法如下

解法:
vim /etc/passwd 檔案,把 cvs 使用者那行最後面多餘的空白都殺掉,存檔,再切換就可以了

2011年4月15日

iptables 防火牆設定備份及復原

iptables configuration backup / restore

備份設定檔
iptables-save > /root/iptables.conf

還原設定檔
iptables-restore < /root/iptables.conf

2011年3月16日

利用 Tar 備份且排除不想備份的目錄或檔案

想要進行目錄備份, 但是目的目錄中有一個子目錄很大且裡面是過時的 log 資料,於是找了些資料找到解法,情況如下

要備份的目錄是 wtl
不想要備份的是 wtl 裡面的 upgrade 子目錄

於是我們加上參數 --exclude=不想要備份的目錄名稱,如果某個檔案不想備份也可以在此加入完整路徑及檔名

最後的 tar 指令如下

tar zcvf wtl_backup.tgz --exclude=wtl/upgrade wtl/

這樣就不會將 upgrade 目錄備份進來了

2010年10月29日

VMware 各大 Linux images 下載網站

可在此網站下載各 Linux distribution 的 ISO 配合 VMware player 就可進行體驗或測試囉~

2010年5月24日

增加 Linux 的路徑

增加 /sbin 目錄至現行路徑 (path)

PATH="$PATH":/sbin

2009年6月12日

備份及刪除log時,出現 Argument list too long

在壓縮備份log的時候,使用 ls -al 200905*.log來看檔案,居然出現Argument list too long的錯誤,此時可用 find 來解決:

先進入該目錄

法1
# 產生 file list
find . -name '200905*.log' > fileList.txt

# 執行 tar 指令來壓縮並指定來源
tar zcvf 200905.tgz --files-from fileList.txt

法2
# 利用 pipe
find . -name '200905*.log' -print | tar zcvf 200905.tgz --files-from -

刪除時也出現相同訊息 Argument list too long 無法刪除,此時可利用 xargs 指令
find . -name '200905*' | xargs rm

這樣就可以刪掉了~

2009年4月24日

Linux裝機後hostname設定 - CentOS

裝機後主要要做的事情,目前想到的是設定防火牆還有hostname以及DNS

在設定hostname部分:

Linux 及 FreeBSD 修改主機名稱同樣使用 hostname 指令即可

例如:hostname taiwanwolf
這樣重新連線後,提示符號下就會變成
[root@taiwanwolf ~]

但這樣重開機後,還是會變回
[root@localhost ~]

為了系統下次啟動時也能自動使用新 hostname,需要作以下修改

vi /etc/sysconfig/network

把 hostname 部分改成新的名稱

P.S
Debian 為 /etc/hostname
FreeBSD 為 /etc/rc.conf

在設定DNS部分:
編輯 vim /etc/resolv.conf
內容如下
nameserver 139.175.252.16
nameserver 139.175.55.244
存檔即可

看你最常下的前10名指令~

FreeBSD或Linux等都適用
history | awk '{print $2}' | awk 'BEGIN {FS="|"} {print $1}'|sort|uniq -c | sort -rn | head -10

head -10 就是前10名,可自行修改數字

2009年4月7日

利用dd指令遠端備份為ISO檔及還原成硬碟 (Linux, Unix, Solaris等適用)

遠端備份A(主機)的硬碟為ISO檔並儲存到B(File Server)的/backup目錄下

備份成ISO檔並丟到File Server:
Step1:SSH進入到欲備份的A主機下指令 (Linux)
Step2:dd if=/dev/hda | gzip -9 -c | ssh taiwanwolf@fileserver_ip dd of=/backup/hda.img.gz

Solaris 大概像以下的語法
/usr/local/bin/dd if=/dev/dsk/c1t0d0s2 | /usr/local/bin/gzip -9 -c | /usr/local/bin/ssh taiwanwolf@fileserver_ip /bin/dd of=/backup/c1t0d0s2.img.gz

從遠端File Server的ISO檔還原到本機硬碟
Step1:從一台裝上硬碟的Server, SSH進入到B(File Server)
Step2:ssh taiwanwolf@fileserver_ip zcat /backup/hda.img.gz | dd of=/dev/hda


如果該還原主機沒有作業系統,可採用 knoppix 之類的LiveCD來開機, 再綁上IP即可進行還原或備份

2009年2月26日

[Linux] 沒有固定IP的人,如何利用動態域名架站

本文適用於有浮動IP的使用者,例如一般的ADSL用戶應該都有很多組的浮動IP,利用動態 DNS 的對應,讓你可以像具有固定IP一樣的效果,卻不用花半毛錢~

作業系統:Linux 或 FreeBSD均適用
DDNS提供者:

首先請先上 dyndns 網站去申請一組免費的 Domain name

然後安裝 dyndns 的dns client在網頁伺服器上
yum -y install ddclient

安裝完畢後,編輯設定檔如下 vim /etc/ddclient/ddclient.conf
(假設申請的 domain name是 taiwanwolf.dyndns.com)


daemon=600
cache=/tmp/ddclient.cache
pid=/var/run/ddclient.pid
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
login=您申請 dyndns 的登入帳號
password=您申請 dyndns 的登入密碼
protocol=dyndns2
server=members.dyndns.org
mx=taiwanwolf.dyndns.com
wildcard=YES
taiwanwolf.dyndns.com

之後再去 vim /etc/rc.local,加上下面這行把它設成開機啟動
/usr/sbin/ddclient

這樣就每隔600秒就會把你伺服器的IP,跟你的Domain name作同步,之後使用者只要在瀏覽器上打 http://taiwanwolf.dyndns.com 就可以連到你的網站了!

2009年2月2日

查看 Linux 系統資訊常用指令

lspci -v => 檢查系統 PCI 介面的各項裝置
lsusb => 檢查系統USB介面的裝置
lsscsi => 檢查系統SCSI介面的裝置
cat /proc/cpuinfo => 顯示CPU的資訊
cat /proc/meminfo => 顯示記憶體的資訊
free => 顯示記憶體的相關資訊
dmidecode => 查看硬體的相關資訊
hdparm -i /dev/hda => 硬碟的各項資訊
dmesg => Linux Kernel 運作過程當中所顯示的各項訊息記錄
uname -a => 顯示Linux系統資訊
cat /proc/version => 查看 Linux 核心
cat /etc/issue => 查看 Linux 系統版本
smartctl -a /dev/sda => 查看硬碟詳細資訊及型號