2012年10月13日星期六

修改分區標簽

先講ext2/3/4,建立分區時其實可以指定分區標簽的:
$ sudo mkfs.ext4 -L "LABEL" /dev/sdz99
如果想日後修改分區標簽,最簡單的就是用e2label
$ sudo e2label /dev/sdz99 "NEW_LABEL"
還有個tune2fs可以用的,具體自行研究。

想修改FAT文件系統的標簽一樣可以:
$ sudo dosfslabel /dev/sdz99 "NEW_LABEL"
要修改xfs的話則用:
$ sudo xfs_admin -L "NEW_LABEL" /dev/sdz99
xfs還有提供一堆有用的工具,比如:
xfs_fsr可以做線上重組,對一個已掛載的分區做碎片重組
xfsdump備份整個分區,可以做增量備份和分割備份。
好像ext4也有提供一些類似的工具

SEO: partition label xfs ext3 ext4 fat ntfs

2012年10月9日星期二

SSH反向連接

#!/bin/bash

function line()         {
while [ ! -f /tmp/stop ];
do ssh -o ExitOnForwardFailure=yes -R 4334:localhost:22 user@remotehost.com "while netcat -zv localhost 4334; do sleep 300; done";
sleep 5;
done
}

line &


ssh有個很好用的能力,就是建立反向連接。
之前有講過ssh的tunnel,反向連接有點類似但是方向相反。
先看代碼:
$ ssh -N -L 4334:localhost:4334 user@remotehost.com &
這樣就可以把localhost的4334port反向連接到remotehost的4334,有點神奇的。
向remotehost4334port建立的連接等同於連接到localhost

2012年10月8日星期一

Socket programming好容易

先來看一段代碼:
exec 3<>/dev/tcp/www.fedora.org/80 &
echo -e "GET /
" >&3
cat <&3

bash可以用這種形式:/dev/tcp/<hostname>/<port>建立tcp連接,但只限用exec執行。
(因為實際上並不存在這個文件)
3<>這個其實是定義一個file descriptor,號碼是3
可以讀取又可以寫入
然後可以用&3當成普通檔案讀寫
因為www.fedora.org在80port跑的是http server,給它傳一個GET就會返回首頁容
可以用bash做基於明文的tcp socket programming

熱門文章