FreeBSD學(xué)習(xí)筆記
發(fā)布時間:2008-09-08 18:49:24 作者:佚名
我要評論
1、進入單用戶模式
BOOT: /kernel -s
就進了單用戶了, 然后/sbin/mount -rw /把/設(shè)置成可寫
然后 vipw把root口令置空
2、開機自動fsck硬盤
fsck_y_enable="YES"
3、FreeBSD彈出光驅(qū)
cdcontol->Eject
4、OpenBSD彈出光驅(qū)
eject /dev/rcd0c
1、進入單用戶模式
BOOT: /kernel -s
就進了單用戶了, 然后/sbin/mount -rw /把/設(shè)置成可寫
然后 vipw把root口令置空 2、開機自動fsck硬盤
fsck_y_enable="YES" 3、FreeBSD彈出光驅(qū)
cdcontol->Eject
4、OpenBSD彈出光驅(qū)
eject /dev/rcd0c 5、BSD下增加帳號
pw useradd hanyang -g wheel -s /usr/local/bin/bash 6、觀察網(wǎng)絡(luò)流量
systat -if 1 7、添加IP地址和網(wǎng)關(guān)
vi /etc/rc.conf
ifconfig_bge0="inet 61.135.152.35 netmask 255.255.255.0"
ifconfig_bge1="inet 172.16.152.35 netmask 255.255.255.0"
defaultrouter="61.135.152.1" /sbin/ifconfig bce0 inet 192.168.0.1 netmask 255.255.255.255 8、手動添加默認網(wǎng)關(guān)
route add default new_gateway
route change default new_gateway 9、freebsd中設(shè)置時區(qū)命令為:
tzsetup 10、查看打開的端口
bsd下:sockstat -l
linux:netstat -anp|grep LISTEN 11、bsd 新內(nèi)核無法啟動
你可以在系統(tǒng)啟動進行10計數(shù)的時候按Enter以外的任何鍵, 接著鍵入unload命令,再鍵入boot kernel.old
或是執(zhí)行/boot/loader 12、查看硬件信息
cat /var/run/dmesg.boot |grep CPU
sysctl hw.model 13、關(guān)掉NFS服務(wù)
vi /etc/rc.conf
增加
nfs_server_enable="NO"
nfs_client_enable="NO"
portmap_enable="NO"
################################################
###### BSD 的防火墻ipfw語法 ######
################################################
ipfw show
ipfw add deny/allow all from 10.210.136.47 to any
ipfw -f flush
ipfw delete 表號 #Add by jinshuai to forbid IP 2006-01-26
# # # # # /data1/apache2/logs/forbid_bsd.pl
1 2 # # # /sbin/ipfw -f flush
1 8 # # # /sbin/ipfw -f flush
################################################
###### FreeBSD上使用磁盤命令行工具 #######
################################################
播客squid服務(wù)器( DELL 1950,4塊73G 2.5寸SAS盤,每塊盤單獨做raid0)bsd系統(tǒng)下更換硬盤步驟:
一、確認現(xiàn)場準備工作已經(jīng)完成,可以隨時更換故障,然后通知服務(wù)器所屬負責(zé)人,確認服務(wù)器可以關(guān)機后,就遠程關(guān)機,然后通知現(xiàn)場更換硬盤
二、等現(xiàn)場更換好硬盤,并做完成riad后,執(zhí)行下面操作:
1、#初始化新磁盤mfid3是指id=3的硬盤,可以根據(jù)實際情況做相應(yīng)調(diào)整
dd if=/dev/zero of=/dev/mfid3 bs=1k count=1
fdisk -BI mfid3
2、#加上標簽
disklabel -B -w -r mfid3s1 auto
3、# 現(xiàn)在編輯您剛才創(chuàng)建的磁盤分區(qū)
disklabel -e mfid3s1
刪除這一行:
a: 142078781 16 unused 0 0
然后在文件最下面添加下面這行:
d: 142078797 0 4.2BSD 2048 16384 28552
4、創(chuàng)建文件系統(tǒng)
newfs /dev/mfid3s1d
5、修改fstab,mount新加的硬盤
vi /etc/fstab
/dev/mfid3s1d /data3 ufs rw 2 2
6、掛載硬盤
mount -a ################################################
###### 內(nèi)核可使用的內(nèi)存不足引起的自動重啟 ######
################################################
設(shè)置方法是減少接收和發(fā)送緩沖區(qū)的內(nèi)存的大小,需要做如下設(shè)置:
vi /etc/sysctl.conf
net.inet.tcp.msl=2000
net.inet.tcp.sendspace=32768
net.inet.tcp.recvspace=8192
net.inet.tcp.recvbuf_max=32768
net.inet.tcp.sendbuf_max=131072 修改完后手工執(zhí)行
sysctl net.inet.tcp.msl=2000
sysctl net.inet.tcp.sendspace=32768
sysctl net.inet.tcp.recvspace=8192
sysctl net.inet.tcp.recvbuf_max=32768
sysctl net.inet.tcp.sendbuf_max=131072 vi /boot/loader.conf (這兩個選項有可能已經(jīng)設(shè)置)
kern.ipc.nmbclusters=0
vm.kmem_size_scale="2"
net.inet.tcp.sendspace="16384"
net.inet.tcp.recvspace="8192"
net.inet.tcp.sendbuf_max="131072" 刪除loader.conf與sysctl.conf重復(fù)的行
################################################
###### 添加ftp賬號 ######
################################################
which proftpd
修改proftpd.conf添加賬號
查看21端口是不是inetd啟動的
sockstat -l
vi /etc/inetd.conf
重啟inetd服務(wù)
killall -HUP inetd ################################################
###### BSD下關(guān)閉sendmail ######
################################################
sh /etc/rc.sendmail stop
killall -9 sendmail
chmod 0 /usr/libexec/sendmail/sendmail
mv /etc/rc.sendmail /etc/rc.sendmail.old vi /etc/rc.conf
sendmail_enable="NONE"
sendmail_submit_enable="NONE"
sendmail_outbound_enable="NONE" ################################################
###### BSD安裝qmail ######
################################################
mkdir /var/qmail
mkdir /var/qmail/alias pw groupadd nofiles
pw groupadd qmail
pw useradd alias -g nofiles -d /var/qmail/alias -s /sbin/nologin
pw useradd qmaild -g nofiles -d /var/qmail -s /sbin/nologin
pw useradd qmaill -g nofiles -d /var/qmail -s /sbin/nologin
pw useradd qmailp -g nofiles -d /var/qmail -s /sbin/nologin
pw useradd qmailq -g qmail -d /var/qmail -s /sbin/nologin
pw useradd qmailr -g qmail -d /var/qmail -s /sbin/nologin
pw useradd qmails -g qmail -d /var/qmail -s /sbin/nologin pw useradd admin -g wheel
cd /home/hanyang
tar xvfz ./qmail-1.03.tar.gz
patch -d ./qmail-1.03 < qmail-103.patch
patch -d ./qmail-1.03 < qmail-maildir++.patch
tar zxvf qmail-smtpd-auth-0.31.tar.gz
cd qmail-smtpd-auth-0.31
cp base# README.auth ../qmail-1.03
patch -d ../qmail-1.03 < auth.patch
################################################
bsd下修改配置文件支持串口為 115200輸出
################################################
echo '-Dh -S115200' >/boot.config
echo 'kern.ipc.nmbclusters=0'>>/boot/loader.conf
echo 'comconsole_speed="115200"'>>/boot/loader.conf
echo 'console="comconsole"'>>/boot/loader.conf
echo 'boot_multicons="YES"'>>/boot/loader.conf
echo 'boot_serial="YES"'>>/boot/loader.conf
echo 'vm.kmem_size_scale="2"'>>/boot/loader.conf
echo 'net.inet.tcp.sendspace="16384"'>>/boot/loader.conf
echo 'net.inet.tcp.recvspace="8192"'>>/boot/loader.conf
echo 'net.inet.tcp.sendbuf_max="131072"'>>/boot/loader.conf vi /etc/ttys
注釋掉ttyd0 /ttyd1,增加:
ttyd0 "/usr/libexec/getty std.115200" vt100 on secure
ttyd1 "/usr/libexec/getty std.115200" vt100 on secure
################################################
FreeBSD下的系統(tǒng)監(jiān)控工具
################################################
1 使用SNP Watch監(jiān)控用戶
參考How to Monitor Users with SNP Watch.
watch命令使用snp設(shè)備來監(jiān)視某個tty的數(shù)據(jù)的輸入輸出, 因此首先要保證內(nèi)核調(diào)入snp模塊, 所以, 在內(nèi)核配置中加入
pseudo-device snp 4
watch常用使用方式如下
監(jiān)視用戶的tty, 不需要使用任何參數(shù), 只需要指定tty
# who
jerry ttyv4 5 18 13:40
# watch ttyv4
監(jiān)視并控制用戶的tty, 需要加上參數(shù)`-W', 并指定tty
# who
jerry ttyv4 5 18 13:40
# watch -W ttyv4
watch的快捷鍵如下
CTRL+G = 退出
CTRL+W = 清屏
CTRL+X = 選擇需要監(jiān)視tty
2 使用smartmontools監(jiān)視硬盤狀態(tài)
SMART (SFF-8035i)是硬盤生產(chǎn)商們建立的一個工業(yè)標準, SFF-8035i工業(yè)標準經(jīng)過ATA-3, ATA-4, 到了ATA-5, 加入了一個錯誤信息日志(error log)和一系列硬盤自測SMART命令. 這個標準就是在硬盤上保存一些跟執(zhí)行情況, 可靠程度, 讀找錯誤率等屬性的數(shù)據(jù), 所有屬性都有一個1字節(jié)(大小范圍 1-253)的標準化值, 還包含另一個1字節(jié)的關(guān)鍵階段值, 如果屬性中某個數(shù)據(jù)接近小于或達到關(guān)鍵階段值,那么硬盤就很可能會在不久出現(xiàn)嚴重的讀寫問題, 至少也是超過它的設(shè)計使用極限了, 這時應(yīng)該做系統(tǒng)完全備份了.
SMART適用于IDE和SCSI硬盤, 如果硬盤支持SMART標準, 就可以使用smartmontools來 監(jiān)視硬盤的狀態(tài), smartmontools的安裝如下
# cd /usr/ports/sysutils/smartmontools
# make all install clean
# echo 'smartd_enable="YES"' >> /etc/rc.conf
# echo '/dev/sda1 -H -m mymailbox@mymachine' > /usr/local/etc/smartd.conf
# /usr/local/etc/rc.d/smartd.sh start
上面設(shè)置smartd在發(fā)現(xiàn)錯誤后發(fā)送郵件通知, 此外還可以根據(jù)需要定期測試硬盤, 查看其是否有錯誤,
具體設(shè)置可以參見/usr/local/etc/smartd.conf.sample
還可以通過smartctl來查看和測試硬盤, 常用命令如下:
查看硬盤是否支持SMART標準
# smartctl -i /dev/sda1
查看硬盤的健康狀況
# smartctl -H /dev/sda1
查看硬盤錯誤日志
# smartctl -l error /dev/sda1
進行硬盤自檢
# smartctl -l selftest /dev/sda1
終止硬盤自檢
# smartctl -X /dev/sda1 ################################################
###### BSD的虛擬磁盤技術(shù) ######
################################################
去掉開機自動加載虛擬磁盤并mount到/var,網(wǎng)上有資料說:
It seems that you have set "varmfs=YES" in you /etc/rc.conf or /var is not popular writable
然后按照下面的操作就可解決。
vi /etc/rc.conf
varmfs="NO"
populate_var="NO" # mdconfig -a -t swap -s 30M
這就會在虛擬內(nèi)存中申請30M空間,并創(chuàng)建虛擬磁盤,使用的虛擬設(shè)備為第 一個md設(shè)備md0,如果系統(tǒng)中的md0設(shè)備已經(jīng)被占用,那么mdconfig就依序向后尋找下一個空余的md設(shè)備,并創(chuàng)建它。由于mdconfig能自 動創(chuàng)建新的設(shè)備,這樣就解決了在內(nèi)核配置文件指定偽設(shè)備數(shù)量的問題。
也可以使用-u指定使用的md偽設(shè)備的序號,例如下列命令將創(chuàng)建md10,并使用它作為虛擬磁盤設(shè)備:
# mdconfig -a -t swap -s 30M -u 10
上面的命令都是使用虛擬內(nèi)存空間作為數(shù)據(jù)存儲空間,是由swap參數(shù)指定的。同樣,使用mdconfig也能從內(nèi)核空間中創(chuàng)建虛擬磁盤,此時-t指定的存儲類型參數(shù)為malloc,這告訴內(nèi)核使用內(nèi)核的MALLOC方法申請內(nèi)存。
# mdconfig -a -t malloc -s 30M
這種方法就相當于老的md設(shè)備的申請內(nèi)存的方法,但顯然更為靈活,因為可以在具體使用過程中申請內(nèi)存和設(shè)備,這是因為FreeBSD 5.0的內(nèi)核允許更靈活的使用MALLOC內(nèi)存申請方式。當然,一般還是主要使用swap申請?zhí)摂M空間的內(nèi)存。
由于mdconfig和偽設(shè)備md將完全代替vnconfig和偽設(shè)備vn,那么使用mdconfig也能創(chuàng)建使用文件作為虛擬磁盤的與vn兼容的方式,這需要指定存儲類型參數(shù)為vnode,并使用 -f指定具體的存儲數(shù)據(jù)的物理文件名字。
# mdconfig -a -t vnode -f imagefile -s 30M
在使用mdconfig配置好虛擬磁盤之后,就可以使用disklabel、newfs、mount等管理虛擬磁盤。而在不需要這些虛擬磁盤的時候,就可以卸載相應(yīng)的文件系統(tǒng),并使用mdconfig刪除指定的磁盤等。
# mdconfig -l
使用參數(shù)”-l”,則mdconfig列出系統(tǒng)中所有的虛擬磁盤設(shè)備。
# mdconfig -d -u 0
為了刪除指定了磁盤,需要使用”-d"參數(shù),而使用"-u 0”則指定刪除序號為0的虛擬磁盤,即md0。
BOOT: /kernel -s
就進了單用戶了, 然后/sbin/mount -rw /把/設(shè)置成可寫
然后 vipw把root口令置空 2、開機自動fsck硬盤
fsck_y_enable="YES" 3、FreeBSD彈出光驅(qū)
cdcontol->Eject
4、OpenBSD彈出光驅(qū)
eject /dev/rcd0c 5、BSD下增加帳號
pw useradd hanyang -g wheel -s /usr/local/bin/bash 6、觀察網(wǎng)絡(luò)流量
systat -if 1 7、添加IP地址和網(wǎng)關(guān)
vi /etc/rc.conf
ifconfig_bge0="inet 61.135.152.35 netmask 255.255.255.0"
ifconfig_bge1="inet 172.16.152.35 netmask 255.255.255.0"
defaultrouter="61.135.152.1" /sbin/ifconfig bce0 inet 192.168.0.1 netmask 255.255.255.255 8、手動添加默認網(wǎng)關(guān)
route add default new_gateway
route change default new_gateway 9、freebsd中設(shè)置時區(qū)命令為:
tzsetup 10、查看打開的端口
bsd下:sockstat -l
linux:netstat -anp|grep LISTEN 11、bsd 新內(nèi)核無法啟動
你可以在系統(tǒng)啟動進行10計數(shù)的時候按Enter以外的任何鍵, 接著鍵入unload命令,再鍵入boot kernel.old
或是執(zhí)行/boot/loader 12、查看硬件信息
cat /var/run/dmesg.boot |grep CPU
sysctl hw.model 13、關(guān)掉NFS服務(wù)
vi /etc/rc.conf
增加
nfs_server_enable="NO"
nfs_client_enable="NO"
portmap_enable="NO"
################################################
###### BSD 的防火墻ipfw語法 ######
################################################
ipfw show
ipfw add deny/allow all from 10.210.136.47 to any
ipfw -f flush
ipfw delete 表號 #Add by jinshuai to forbid IP 2006-01-26
# # # # # /data1/apache2/logs/forbid_bsd.pl
1 2 # # # /sbin/ipfw -f flush
1 8 # # # /sbin/ipfw -f flush
################################################
###### FreeBSD上使用磁盤命令行工具 #######
################################################
播客squid服務(wù)器( DELL 1950,4塊73G 2.5寸SAS盤,每塊盤單獨做raid0)bsd系統(tǒng)下更換硬盤步驟:
一、確認現(xiàn)場準備工作已經(jīng)完成,可以隨時更換故障,然后通知服務(wù)器所屬負責(zé)人,確認服務(wù)器可以關(guān)機后,就遠程關(guān)機,然后通知現(xiàn)場更換硬盤
二、等現(xiàn)場更換好硬盤,并做完成riad后,執(zhí)行下面操作:
1、#初始化新磁盤mfid3是指id=3的硬盤,可以根據(jù)實際情況做相應(yīng)調(diào)整
dd if=/dev/zero of=/dev/mfid3 bs=1k count=1
fdisk -BI mfid3
2、#加上標簽
disklabel -B -w -r mfid3s1 auto
3、# 現(xiàn)在編輯您剛才創(chuàng)建的磁盤分區(qū)
disklabel -e mfid3s1
刪除這一行:
a: 142078781 16 unused 0 0
然后在文件最下面添加下面這行:
d: 142078797 0 4.2BSD 2048 16384 28552
4、創(chuàng)建文件系統(tǒng)
newfs /dev/mfid3s1d
5、修改fstab,mount新加的硬盤
vi /etc/fstab
/dev/mfid3s1d /data3 ufs rw 2 2
6、掛載硬盤
mount -a ################################################
###### 內(nèi)核可使用的內(nèi)存不足引起的自動重啟 ######
################################################
設(shè)置方法是減少接收和發(fā)送緩沖區(qū)的內(nèi)存的大小,需要做如下設(shè)置:
vi /etc/sysctl.conf
net.inet.tcp.msl=2000
net.inet.tcp.sendspace=32768
net.inet.tcp.recvspace=8192
net.inet.tcp.recvbuf_max=32768
net.inet.tcp.sendbuf_max=131072 修改完后手工執(zhí)行
sysctl net.inet.tcp.msl=2000
sysctl net.inet.tcp.sendspace=32768
sysctl net.inet.tcp.recvspace=8192
sysctl net.inet.tcp.recvbuf_max=32768
sysctl net.inet.tcp.sendbuf_max=131072 vi /boot/loader.conf (這兩個選項有可能已經(jīng)設(shè)置)
kern.ipc.nmbclusters=0
vm.kmem_size_scale="2"
net.inet.tcp.sendspace="16384"
net.inet.tcp.recvspace="8192"
net.inet.tcp.sendbuf_max="131072" 刪除loader.conf與sysctl.conf重復(fù)的行
################################################
###### 添加ftp賬號 ######
################################################
which proftpd
修改proftpd.conf添加賬號
查看21端口是不是inetd啟動的
sockstat -l
vi /etc/inetd.conf
重啟inetd服務(wù)
killall -HUP inetd ################################################
###### BSD下關(guān)閉sendmail ######
################################################
sh /etc/rc.sendmail stop
killall -9 sendmail
chmod 0 /usr/libexec/sendmail/sendmail
mv /etc/rc.sendmail /etc/rc.sendmail.old vi /etc/rc.conf
sendmail_enable="NONE"
sendmail_submit_enable="NONE"
sendmail_outbound_enable="NONE" ################################################
###### BSD安裝qmail ######
################################################
mkdir /var/qmail
mkdir /var/qmail/alias pw groupadd nofiles
pw groupadd qmail
pw useradd alias -g nofiles -d /var/qmail/alias -s /sbin/nologin
pw useradd qmaild -g nofiles -d /var/qmail -s /sbin/nologin
pw useradd qmaill -g nofiles -d /var/qmail -s /sbin/nologin
pw useradd qmailp -g nofiles -d /var/qmail -s /sbin/nologin
pw useradd qmailq -g qmail -d /var/qmail -s /sbin/nologin
pw useradd qmailr -g qmail -d /var/qmail -s /sbin/nologin
pw useradd qmails -g qmail -d /var/qmail -s /sbin/nologin pw useradd admin -g wheel
cd /home/hanyang
tar xvfz ./qmail-1.03.tar.gz
patch -d ./qmail-1.03 < qmail-103.patch
patch -d ./qmail-1.03 < qmail-maildir++.patch
tar zxvf qmail-smtpd-auth-0.31.tar.gz
cd qmail-smtpd-auth-0.31
cp base# README.auth ../qmail-1.03
patch -d ../qmail-1.03 < auth.patch
################################################
bsd下修改配置文件支持串口為 115200輸出
################################################
echo '-Dh -S115200' >/boot.config
echo 'kern.ipc.nmbclusters=0'>>/boot/loader.conf
echo 'comconsole_speed="115200"'>>/boot/loader.conf
echo 'console="comconsole"'>>/boot/loader.conf
echo 'boot_multicons="YES"'>>/boot/loader.conf
echo 'boot_serial="YES"'>>/boot/loader.conf
echo 'vm.kmem_size_scale="2"'>>/boot/loader.conf
echo 'net.inet.tcp.sendspace="16384"'>>/boot/loader.conf
echo 'net.inet.tcp.recvspace="8192"'>>/boot/loader.conf
echo 'net.inet.tcp.sendbuf_max="131072"'>>/boot/loader.conf vi /etc/ttys
注釋掉ttyd0 /ttyd1,增加:
ttyd0 "/usr/libexec/getty std.115200" vt100 on secure
ttyd1 "/usr/libexec/getty std.115200" vt100 on secure
################################################
FreeBSD下的系統(tǒng)監(jiān)控工具
################################################
1 使用SNP Watch監(jiān)控用戶
參考How to Monitor Users with SNP Watch.
watch命令使用snp設(shè)備來監(jiān)視某個tty的數(shù)據(jù)的輸入輸出, 因此首先要保證內(nèi)核調(diào)入snp模塊, 所以, 在內(nèi)核配置中加入
pseudo-device snp 4
watch常用使用方式如下
監(jiān)視用戶的tty, 不需要使用任何參數(shù), 只需要指定tty
# who
jerry ttyv4 5 18 13:40
# watch ttyv4
監(jiān)視并控制用戶的tty, 需要加上參數(shù)`-W', 并指定tty
# who
jerry ttyv4 5 18 13:40
# watch -W ttyv4
watch的快捷鍵如下
CTRL+G = 退出
CTRL+W = 清屏
CTRL+X = 選擇需要監(jiān)視tty
2 使用smartmontools監(jiān)視硬盤狀態(tài)
SMART (SFF-8035i)是硬盤生產(chǎn)商們建立的一個工業(yè)標準, SFF-8035i工業(yè)標準經(jīng)過ATA-3, ATA-4, 到了ATA-5, 加入了一個錯誤信息日志(error log)和一系列硬盤自測SMART命令. 這個標準就是在硬盤上保存一些跟執(zhí)行情況, 可靠程度, 讀找錯誤率等屬性的數(shù)據(jù), 所有屬性都有一個1字節(jié)(大小范圍 1-253)的標準化值, 還包含另一個1字節(jié)的關(guān)鍵階段值, 如果屬性中某個數(shù)據(jù)接近小于或達到關(guān)鍵階段值,那么硬盤就很可能會在不久出現(xiàn)嚴重的讀寫問題, 至少也是超過它的設(shè)計使用極限了, 這時應(yīng)該做系統(tǒng)完全備份了.
SMART適用于IDE和SCSI硬盤, 如果硬盤支持SMART標準, 就可以使用smartmontools來 監(jiān)視硬盤的狀態(tài), smartmontools的安裝如下
# cd /usr/ports/sysutils/smartmontools
# make all install clean
# echo 'smartd_enable="YES"' >> /etc/rc.conf
# echo '/dev/sda1 -H -m mymailbox@mymachine' > /usr/local/etc/smartd.conf
# /usr/local/etc/rc.d/smartd.sh start
上面設(shè)置smartd在發(fā)現(xiàn)錯誤后發(fā)送郵件通知, 此外還可以根據(jù)需要定期測試硬盤, 查看其是否有錯誤,
具體設(shè)置可以參見/usr/local/etc/smartd.conf.sample
還可以通過smartctl來查看和測試硬盤, 常用命令如下:
查看硬盤是否支持SMART標準
# smartctl -i /dev/sda1
查看硬盤的健康狀況
# smartctl -H /dev/sda1
查看硬盤錯誤日志
# smartctl -l error /dev/sda1
進行硬盤自檢
# smartctl -l selftest /dev/sda1
終止硬盤自檢
# smartctl -X /dev/sda1 ################################################
###### BSD的虛擬磁盤技術(shù) ######
################################################
去掉開機自動加載虛擬磁盤并mount到/var,網(wǎng)上有資料說:
It seems that you have set "varmfs=YES" in you /etc/rc.conf or /var is not popular writable
然后按照下面的操作就可解決。
vi /etc/rc.conf
varmfs="NO"
populate_var="NO" # mdconfig -a -t swap -s 30M
這就會在虛擬內(nèi)存中申請30M空間,并創(chuàng)建虛擬磁盤,使用的虛擬設(shè)備為第 一個md設(shè)備md0,如果系統(tǒng)中的md0設(shè)備已經(jīng)被占用,那么mdconfig就依序向后尋找下一個空余的md設(shè)備,并創(chuàng)建它。由于mdconfig能自 動創(chuàng)建新的設(shè)備,這樣就解決了在內(nèi)核配置文件指定偽設(shè)備數(shù)量的問題。
也可以使用-u指定使用的md偽設(shè)備的序號,例如下列命令將創(chuàng)建md10,并使用它作為虛擬磁盤設(shè)備:
# mdconfig -a -t swap -s 30M -u 10
上面的命令都是使用虛擬內(nèi)存空間作為數(shù)據(jù)存儲空間,是由swap參數(shù)指定的。同樣,使用mdconfig也能從內(nèi)核空間中創(chuàng)建虛擬磁盤,此時-t指定的存儲類型參數(shù)為malloc,這告訴內(nèi)核使用內(nèi)核的MALLOC方法申請內(nèi)存。
# mdconfig -a -t malloc -s 30M
這種方法就相當于老的md設(shè)備的申請內(nèi)存的方法,但顯然更為靈活,因為可以在具體使用過程中申請內(nèi)存和設(shè)備,這是因為FreeBSD 5.0的內(nèi)核允許更靈活的使用MALLOC內(nèi)存申請方式。當然,一般還是主要使用swap申請?zhí)摂M空間的內(nèi)存。
由于mdconfig和偽設(shè)備md將完全代替vnconfig和偽設(shè)備vn,那么使用mdconfig也能創(chuàng)建使用文件作為虛擬磁盤的與vn兼容的方式,這需要指定存儲類型參數(shù)為vnode,并使用 -f指定具體的存儲數(shù)據(jù)的物理文件名字。
# mdconfig -a -t vnode -f imagefile -s 30M
在使用mdconfig配置好虛擬磁盤之后,就可以使用disklabel、newfs、mount等管理虛擬磁盤。而在不需要這些虛擬磁盤的時候,就可以卸載相應(yīng)的文件系統(tǒng),并使用mdconfig刪除指定的磁盤等。
# mdconfig -l
使用參數(shù)”-l”,則mdconfig列出系統(tǒng)中所有的虛擬磁盤設(shè)備。
# mdconfig -d -u 0
為了刪除指定了磁盤,需要使用”-d"參數(shù),而使用"-u 0”則指定刪除序號為0的虛擬磁盤,即md0。
相關(guān)文章
Unix,BSD,Linux系統(tǒng)三者的區(qū)別小結(jié)
這篇文章主要介紹了Unix,BSD,Linux系統(tǒng)三者的區(qū)別小結(jié),需要的朋友可以參考下2023-05-03
一些朋友問小編FreeBSD如何添加硬盤?別擔(dān)心,今天小編就為大家分享FreeBSD添加硬盤的方法,希望對大家會有幫助,有需要的朋友一起去看看吧2017-04-06- 今天小編為大家?guī)淼氖荈reebsd PF 安裝使用詳解,希望對大家會有幫助,有需要的朋友一起去看看吧2017-04-06
FreeBSD下zfs: failed with error 6錯誤如何解決?
最近一些朋友問小編 FreeBSD下zfs: failed with error 6錯誤如何解決?今天小編要為大家?guī)淼氖?FreeBSD下zfs: failed with error 6錯誤的解決方法,有需要的朋友一起去看2017-04-06Unix文件系統(tǒng)和pwd命令實現(xiàn)詳解
今天小編要為大家?guī)淼氖荱nix文件系統(tǒng)和pwd命令實現(xiàn)詳解,希望對大家會有幫助,有需要的朋友一起去看看吧2017-04-01- 今天小編將為大家?guī)淼氖荱nix中的dot命令詳解!希望對大家會有幫助!有需要的朋友一起去看看吧2017-03-22
- 近日!一些朋友對于freebsd時間設(shè)置小節(jié)存在疑慮!下面小編將為大家?guī)淼氖莊reebsd時間設(shè)置小節(jié)詳解!希望對大家會有幫助!有需要的朋友一起去看看吧2017-03-19
- 今天小編要為大家?guī)淼氖莋rub2引導(dǎo)freebsd詳解!希望對大家會有幫助,有需要的朋友一起去看看吧2017-03-19
- 下面小編為大家?guī)淼氖荈reeBSD10安裝內(nèi)核源代碼方法講解!希望能夠幫助到大家!有需要的朋友一起去看看吧2017-03-19
FreeBSD下如何使GraphicsMagick支持中文字體?
最近一些朋友在問FreeBSD下如何使GraphicsMagick支持中文字體?今天小編為大家?guī)淼氖荈reeBSD下使GraphicsMagick支持中文字體的方法!有需要的朋友一起去看看吧2017-03-15


