freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

linux下基于用戶的虛擬主機(jī)的設(shè)計與實(shí)現(xiàn)(已修改)

2025-05-21 20:12 本頁面
 

【正文】 一、需求分析: 1 引言 為了使每個學(xué)生有一個展示自我的平臺,學(xué)校在 web 服務(wù)器上開通注冊通道,學(xué)生可以在網(wǎng)站上注冊個人賬戶,在注冊的過程中,可以檢測用戶名是否已存在。如果存在,則不能注冊。用戶注冊成功后,系統(tǒng)會自動為此用戶創(chuàng)建一個系統(tǒng)用戶賬戶,賬戶名和密碼為用戶注冊時填寫的用戶名和密碼,為了使有限的資源能夠充分的利用,學(xué)校規(guī)定為每個用戶分配 50M 的空間。用戶可以使用此用戶名和密碼通過 ssh 遠(yuǎn)程連接進(jìn)行文件的上傳和下載,將個人主頁上傳到用戶自己的 web 目錄,以供互聯(lián)網(wǎng)用戶訪問。為了將來系統(tǒng)管理員排錯方便,每 次建立新用戶必須產(chǎn)生一個日志記錄。所有新用戶的 web 空間必須單獨(dú)放置在一個專用磁盤空間中(即使用 Vmware 新添加一塊磁盤)。所有新建用戶的個人 WEB 空間每隔一周自動備份,以備不測之需。 2 運(yùn)行環(huán)境 Linux 操作系統(tǒng), Apache, php 網(wǎng)頁瀏覽器 3 主要功能總體描述 在注冊的過程中,可以檢測用戶名 ,包含用戶名的文件有兩個,一個為 /ect/passwd,一個為 /tmp/userpass,首先檢測 /etc/passwd 文件中的用戶名,如果用戶輸入的用戶名在 /etc/passwd中存在,則不能注冊。 如果不存在,則檢測 /tmp/userpass 文件中是否已存在,如果存在,則不能注冊,如果不存在,則將用戶的用戶名和密碼追加重定向到 /tmp/userpass 文件中。安排cron 任務(wù),每隔 10 分鐘運(yùn)行增加用戶腳本( ),為 /tmp/userpass 文件中的注冊的用戶創(chuàng)建系統(tǒng)用戶賬戶,賬戶名和密碼為用戶注冊的用戶名和密碼,為了使有限的資源能夠充分的利用,學(xué)校規(guī)定為每個用戶分配 50MB 空間。用戶可以使用此用戶名和密碼通過 ssh 遠(yuǎn)程連接進(jìn)行文件的上傳和下載,并將文件上傳到用戶自己的目錄 4 流程示意圖 該頁面為用戶注冊首頁面,程序源碼已提供,該文件可以放置在 Apache 默認(rèn)的主目錄/var//html/下,如果 Apache 支持 PHP,即可顯示該網(wǎng)頁內(nèi)容。 2 5 用戶檢測 shell 腳本功能需求 檢測用戶輸入的用戶名是否有重名現(xiàn)象,有則返回 1,否則返回 0(注意:若更改返回參數(shù),必須更改 源碼中相關(guān)代碼,建議不要更改)。 需要針對兩個文件進(jìn)行檢測: /etc/passwd(系統(tǒng)已存在的用戶)和 /tmp/userpass(一分 鐘內(nèi)其他人注冊,但還沒有添加到系統(tǒng)中去的賬戶)。如果上述任何一個文件中發(fā)現(xiàn)有與用戶輸入相同的用戶名時,馬上返回 1。 該 shell 腳本名字為: ,權(quán)限為 755。 警告并退出 環(huán)境搭建 警告并退出 注冊頁面的開發(fā)( ) 用戶打開 web 注冊頁面 用戶點(diǎn)擊“ check” 調(diào)用 檢測用戶是否已存在 將 用 戶名 和密 碼追 加 到/tmp/userpass 文件中 是 否 檢測用戶名是否為空 否 提示用戶名可用 是 用戶點(diǎn)擊“ summit” 用戶 名或口令是否為空 是 否 調(diào)用 檢測用戶是否已存在 是 否 提示成功注冊用戶,十分鐘后可以進(jìn)行登陸 3 6 自動添加用戶腳本功能需求 首先檢查 /tmp/userpass 文件,該文件如果為空就不做任何處理,如果非空,就逐行處理其中內(nèi)容。 逐行讀取并處理 /tmp/userpass 的各行內(nèi)容,然后向系統(tǒng)中添加相關(guān)的賬戶,并在賬戶的主目錄中創(chuàng)建 public_html 文件夾(作為用戶的 web 主目錄) 每個新注冊的用戶最大的磁盤使用空間限定在 50MB。 每次處理完 /tmp/userpass 文件以后,清空其中已經(jīng)處理過的內(nèi)容。 7 其他功能需求 系統(tǒng)每隔 1 分鐘執(zhí)行一次自動添加用戶腳本操作。 Vmware 中為 Linux 虛擬機(jī)新建一個磁盤,并對其進(jìn)行分區(qū)格式化(要求格式化為 ext3文件系統(tǒng)),然后掛載到 /home,最后對其啟用磁盤配額,最大額度為 50MB。 二、 實(shí)現(xiàn)過程: 1 環(huán)境的搭建與服務(wù)器的配置 安裝虛擬機(jī)與操作系統(tǒng)。此處用的是 與 Linux 操作系統(tǒng) 安裝必要軟件,包括 apache、 php。 服務(wù)器相關(guān)配置。設(shè)置防火墻,解除對 、 ssh 的限制,關(guān)閉 selinux(會限制訪問)。為服務(wù)器配置固定 IP(此處為 )。在系統(tǒng)服務(wù)中,將 crond、 d、 sshd 設(shè)置為開機(jī)啟動。 2 硬盤掛載與磁盤配額的設(shè)置 關(guān)閉虛擬機(jī),在 VMware 中添加一塊硬盤。點(diǎn)擊“ VM” — “ Settings” — “ Add” — “ Hard Disk”,根據(jù)提示向?qū)砑佑脖P 。新建的硬盤,為 SCSI, 1GB。如下圖: 啟動虛擬機(jī),在 linux 系統(tǒng)下使用 fdisk – l 命令查看 /dev/sdb 是否添加成功,如果成功,則使用 fdisk /dev/sdb 命令來為 sdb 硬盤創(chuàng)建分區(qū)。( np1回車 回車 pw) 4 為 /dev/sdb1 分區(qū)創(chuàng)建文件系統(tǒng): /dev/sdb1 為了使用 /dev/sdb1 分區(qū),將其掛載到 /home 目錄下面: mount /dev/sdb1 /home 在開機(jī)時自動掛載 /dev/sdb1,將其記錄加入 /etc/fstab 中。即將下述記錄添加到 /etc/fstab中 ,命令: vi /etc/fstab /dev/sdb1 /home ext3 defaults,usrquota,grpquota 0 0 如下圖: 使用 mount o remount /home 重新加載 /home 分區(qū)。 使用 mount 查看分區(qū)情況。顯示如下: /dev/sdb1 on /home type ext3 (rw,usrquota,grpquota) 重新啟動電腦 ,命令: reboot 創(chuàng)建磁盤配額,在 Shell 腳本 中統(tǒng)一設(shè)置 3 功能的實(shí)現(xiàn) 在 /var//html/文件夾創(chuàng)建文件夾 useradd。 創(chuàng)建用戶組 users, GID 為 510 groupadd g 510 users 5 創(chuàng)建文件 。代碼如下: !DOCTYPE html PUBLIC //W3C//DTD XHTML Transitional//EN html xmlns= head meta equiv=ContentType content=text/html。 charset=utf8 / titleUser Register/title /head body style=fontsize:28px。 form action=./ method=post name=info table width=640 border=15 align=center bgcolor=3399FF tr td colspan=2 align=center New User /td /tr tr tdName:/td tdinput type=txt name=user_name //td /tr tr tdPassword:/td tdinput type=password name=user_pwd //td /tr tr td colspan=2 align=center input name=submit type=submit value=Submit / input name=reset type=reset value=Reset / /td /tr /table /form ?php $user=$_POST[user_name]。 $password=$_POST[user_pwd]。 if($_POST[39。submit39。]){ //檢驗用戶 名密碼是否為空,若存在空值,彈出警告 if(strlen($user)==0 || strlen($password)==0){ echo(script type=39。text/javascript39。 alert(39。UserName or password can not be null!39。)。/script)。 } 6 //如果用戶名密碼不為空,繼續(xù)執(zhí)行,判斷 /etc/passwd 與 newUserList 文件中是否存在此用戶名 else{ //執(zhí)行腳本 ,并 把用戶名傳值過去 $userCheck = bash ./ $user。 $result = exec($userCheck)。 if($result==000){ //返回值為 000,表示用戶已經(jīng)存在,彈出警告用戶已存在 echo(script type=39。text/javascript39。 alert(39。UserName is exist!Please another one39。)。/script)。 } else{ //沒有返回值 ,說明沒有重復(fù)的用戶名,可以注冊 $file=fopen(./newUserList,39。a+39。)。//打開 newUserList,并把用戶名及密碼寫入中間以“ :”隔開 fwrite($file,$user.:.$password.\n)。 fclose($file)。 //寫入成功后,提示用戶名與密碼 echo User register success!Please remeber you
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1