apache2 可以設定 特定資料夾 在瀏覽時需要輸入 帳號密碼

1.
在要認證的資料夾下新增「.htaccess」
其內容如下
AuthType Basic
AuthName "需要認證之資料"                                              # " "可行修改
AuthBasicProvider file
AuthUserFile /home/smalldd/WWW_auth/passwd           # 存放帳號密碼檔案的位置
Require user smalldd                                                              # 可以接受之帳號



2.
建立存放帳號密碼之檔案
htpasswd -c /home/smalldd/WWW_auth/passwd smalldd
接著會詢問帳號之密碼



連上apache2 看設定是否正確
設定正確會跳出認證對話框,且帳號密碼輸入後,即可登入

smalldd 發表在 痞客邦 留言(0) 人氣()

今天研究 Serial99.com 的機碼 VBScript
這機碼的 VBS 會把 IE 的首頁改掉,網址的 prefix 修改
Windows 的 「關機」按鈕、「執行」關閉,「工作管理員」、「登錄檔編輯器」也會被關閉

修改原程式,使程式原本的目的變更,使之變成清除原本寫入的機碼
以下為 VBScript 的程式內容,若要使用,直接複製至一文字檔,並將副檔名修改成 .vbs 即可


Set LDANN = WScript.CreateObject("WScript.Shell")
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Internet Explorer\Main\\Start Page", "about:blank","REG_SZ"
LDANN.RegWrite "HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\\Start Page", "about:blank","REG_SZ"
LDANN.RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\URL\Prefixes\\www","http://","REG_SZ"
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\\HideFileExt","00000000","REG_DWORD"

LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Internet Explorer\Main\\Window Title", "","REG_SZ"
LDANN.RegDelete "HKCU\SOFTWARE\Microsoft\Internet Explorer\Main\\Window Title"
LDANN.RegWrite "HKLM\Software\Policies\Microsoft\Internet Explorer\Control Panel\\HomePage","00000000","REG_DWORD"
LDANN.RegDelete "HKLM\Software\Policies\Microsoft\Internet Explorer\Control Panel\\HomePage"
LDANN.RegWrite "HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel\\HomePage","00000000","REG_DWORD"
LDANN.RegDelete "HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel\\HomePage"
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\\DisableTaskMgr", "0","REG_SZ"
LDANN.RegDelete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\\DisableTaskMgr"
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoRun", "0","REG_SZ"
LDANN.RegDelete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoRun"
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoLogOff", "0","REG_SZ"
LDANN.RegDelete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoLogOff"
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoFind", "0","REG_SZ"
LDANN.RegDelete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoFind"
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoRecentDocsMenu", "0","REG_SZ"
LDANN.RegDelete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoRecentDocsMenu"
LDANN.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoClose", "0","REG_SZ"
LDANN.RegDelete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\\NoClose"

WScript.Echo "清除 serial99.com 註冊之機碼"

smalldd 發表在 痞客邦 留言(0) 人氣()

動態配置二維陣列不外乎都是利用下面這種方式
int i;
int data_height, data_width;
int **data;
p = new int*[data_height];
for(i = 0; i < data_height; i++)
    data[i] = new int[data_width];



可惜這種方式在釋放記憶體空間的時候就必須
for(i = 0; i < data_height; i++)
    delete [] data[i];
delete [] data;



不是很方便,且不能使用
memset(data[0], 0, sizeof(int)*data_height*data_width);
初始值為 0
以及用 memcpy() 複製值至另一個陣列


因此參考了程式設計俱樂部 記憶體配置問題 此篇文章
改寫原本用 malloc 動態配置二維陣列的方式
使用 new 的方式建立二維陣列
void* new2d(int h, int w, int size)
{
    register int i;
    void **p;

    p = (void**)new char[h*sizeof(void*) + h*w*size];
    for(i = 0; i < h; i++)
    {
        p[i] = ((char *)(p + h)) + i*w*size;
    }

    return p;
}


因此就可以用這 function
動態建立二維陣列
data = (int **)new2d(data_height, data_width, sizeof(int));


為了增加閱讀方便,以及撰寫程式的方便
在程式前頭增加
#define NEW2D(H, W, TYPE) (TYPE **)new2d(H, W, sizeof(TYPE))

更新記錄:
2011/01/22 01:07

便可簡化剛剛動態配置二維陣列寫法
data = NEW2D(data_height, data_width, int);


此外此種動態配置記憶體的方法在釋放記憶體也比之前寫法方便多
delete [] data;
就可以釋放記憶體

smalldd 發表在 痞客邦 留言(2) 人氣()

1.
修改 vsftpd 設定檔
sudo vim /etc/vsftpd.conf

將以下 兩個指令給予生效
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list



2.
編輯可瀏覽其他資料夾使用者
sudo vim /etc/vsftpd.chroot_list
寫上想賦予此權限的使用者帳號



3
重置 vsftpd.
sudo /etc/init.d/vsftpd restart



4.
若想要使用者具有寫入檔案的能力,可以這樣玩
vsftpd 是根據檔案的系統權限來判斷登入的使用者是否具有讀取寫入的權限
將資料夾的群組權限增加寫入的功能
在將想寫入的使用者增加資料夾的所屬群組
便可利用群組權限來寫入檔案
例:

vsftpd 的 anonymous 資料夾在 /home/ftp
ftp 資料夾所屬群組為 nogroup
我想讓user具有寫入此資料夾的權限

1)
變更 ftp 資料夾群組寫入權限
sudo chmod -R g+w ftp

2)
將 user 所屬群組增加資料夾的群組
sudo usermod -a -G nogroup user

備註: user 使用者包含在 vsftpd.chroot_list 中

smalldd 發表在 痞客邦 留言(0) 人氣()

為了將 http://domain/ 下直接以資料夾 ftp 方式 連到主機上 ftp 資料夾位置
也就是想讓 http://domain/ftp 等同於 ftp://domain/

主機上安裝 vsftpd
其預設的 anonymous 資料夾為 /home/ftp
因此 http 上是無法看到 /home/ftp 資料夾的內容

作法是將 apache2 的 site 設定檔中加入 url alias

1.
編輯default site 設定檔
sudo vim /etc/apache2/sites-available/default


2.
在最後一行 </VirtualHost>前加入
Alias /ftp /home/ftp
<Directory /home/ftp>
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>


由以上可知此的設定是要讓
http://domain/ftp 會直接讀取 /home/ftp 裡的資料夾與檔案

有一點要說明
官方文件檔談到
Alias /ftp/ /home/ftp

Alias /ftp /home/ftp
是不同的
多了一個 "/"
當輸入 http://domain/ftp 時,就不會自動轉換路徑
除非輸入為 http://domain/ftp/
因此將尾巴的 "/" 去掉是對於轉換是比較好的作法


3.
使 apache2 讀取設定檔
sudo /etc/init.d/apache2 reload

smalldd 發表在 痞客邦 留言(0) 人氣()

學士:(指得到學位的人)
bachelor

學士學位:
bachelor degree
B.S. degree

碩士:(指得到學位的人)
master

碩士生:
MS student
M.S. student
master student

碩士學位:
MS degree
M.S. degree
master degree
master's degree

博士:(指得到學位的人)
doctor

博士生:
PhD student
Ph.D. student
doctoral student

博士學位:
PhD degree
Ph.D. degree
doctoral degree

博士候選人:
Ph.D. candidate
doctoral candidate

博士後研究:
postdoc
postdoctoral student

研究生:
graduate student
postgraduate student

smalldd 發表在 痞客邦 留言(2) 人氣()

1.
安裝vsftpd
sudo apt-get install vsftpd


2.
vsftpd 設定檔修改
local_enable=YES              # 讓本機端使用者可以遠端 ftp 登入
write_enable=YES              # 給予登入使用者寫入的權限
local_umask=022               # 寫入檔案的預設權限遮罩
chroot_local_user=YES     # 限制使用者的根目錄為自己的家目錄


另外可設定ftp banner 橫欄資訊
ftpd_banner=Welcome to smalldd ftp service



3.
使變更設定檔生效
sudo /etc/init.d/vsftpd restart


smalldd 發表在 痞客邦 留言(0) 人氣()

1.
安裝 samba
sudo apt-get install samba

2.
先停止服務,設定設定檔
sudo /etc/init.d/samba stop

3.
設定 samba 設定檔
sudo vim /etc/samba/smb.conf

4.
設定分享資料夾在 smb.conf
在尾端加入
[SHARE]
    path = /var/lib/share         ;分享路徑
    browseable = yes            ;是否可瀏覽
    read only = no                   ;唯讀
    create mask = 0644        ;檔案遮罩
    directory mask = 0755    ;資料夾遮罩

5.
啟動 samba 服務
sudo /etc/init.d/samba start

6.
建立帳號密碼
sudo smbpasswd -a <帳號>

※若想直接分享,不需帳號密碼
在 smb.conf 中 security 設定更改成
security = share


簡單網芳分享完成

smalldd 發表在 痞客邦 留言(0) 人氣()

ubuntu 7.10 上 compiz 特效管理套件預設是不安裝的。
小弟弟為了玩立體桌面,必須安裝特效管理套件,才能變更桌面特效。
以下是安裝桌面特效管理套件的指令。

sudo apt-get install compizconfig-settings-manager

接下來就是進到管理畫面
「System」->「Preferences」->「Advanced Desktop Effects Settings」

設定想要的特效吧!

smalldd 發表在 痞客邦 留言(0) 人氣()

為了比較容易找英文的資料,所以小弟弟都是用英文介面。
但是中文輸入法例如:scim,在英文介面不是預設就安裝且啟用。
故本文是紀錄小弟弟怎麼在英文介面的ubuntu上安裝中文輸入法。

1.
安裝im-switch和scim-chewing,apt-get會自動安裝相依性套件,故我只要選擇我一定要安裝的套件。
sudo apt-get install scim-chewing im-switch

2.
將scim設定為主要輸入法
im-switch -z all_ALL -s scim

3.
重置圖形介面
Ctrl + Alt + BackSpace

搞定!

smalldd 發表在 痞客邦 留言(0) 人氣()