virtualbox配置共享文件
一、安装增强功能套件
二、配置windows上的共享文件夹,如图:
三、将共享文件夹mount到Linux虚拟机的mount point,比如/mnt:
mount -t vboxsf win_h /mnt
四、扩展vdi文件的大小
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe modifyhd d:\Linux-Desktop.vdi
--resize 80000
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
C:\Program Files\Oracle\VirtualBox>
但是查看D:\Linux-Desktop。vdi没有改变。测试失败。不得不重新创建一个虚拟硬盘。
===========================================================================================
ssh原理
hostA生成公钥-密钥对:
在任意路径下执行:ssh-keygen -t rsa
该命令会创建/home/$USER/.ssh目录(如果没有的话),在.ssh目录下生成id_rsa和id_rsa.pub共2个文件(如果是ssh-keygen -t dsa,则生成id_dsa和id_dsa.pub)。
在hostB的/home/$USER/.ssh目录下,创建空文件authorized_keys(如果没有的话),将hostA的id_rsa.pub的内容添加到authorized_keys文件.
hostA通过ssh向hostB发起连接,hostB生成一个随机数,并用hostA的公钥加密,发送给hostA,hostA用自己的密钥解密,并将结果传给hostB,hostB确认无误后,允许hostA建立连接。
ssh -l inst1 192.168.155.150 "hostname;echo '\n this is `hostname`'"
cat /etc/ssh/sshd_config
#PermitRootLogin yes
#ClientAliveInterval 300
==========================================================================================
iostat -x -m
小技巧:你知道iostat是从哪里得到IO相关信息的吗?使用strace命令能跟踪到答案:
shell> strace -eopen iostat open("/proc/diskstats", O_RDONLY)
util是设备的利用率(1s内多少时间用于处理IO)。如果它接近100%,通常说明设备能力趋于饱和(并不绝对,比如设备有写缓存)。有时候可能会出现大于100%的情况,这多半是计算时四舍五入引起的,但如果是磁盘阵列等多盘系统,因为具有并发IO操作的能力,也会出现大于100%的情况。
svctm是平均每次请求的服务时间。从源代码里可以看出:(r/s+w/s)*(svctm/1000)=util。举例子:如果util达到100%,那么此时svctm=1000/(r/s+w/s),假设IOPS是1000,那么svctm大概在1毫秒左右,如果长时间大于这个数值,说明系统出了问题。不过前面已经说过在磁盘阵列等多盘系统中util可能出现偏大的情况,所以svctm相应的也可能偏大。
await是平均每次请求的等待时间。这个时间包括了队列时间和服务时间,也就是说,一般情况下,await大于svctm,它们的差值越小,则说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。
avgqu-sz是平均请求队列的长度。毫无疑问,队列长度越短越好。
说明:svctm参数在未来某个版本的iostat会被删除,详见官方文档。
iostat有顺序IO,随机IO之分
任何I/O操作都需要一定的时间,而且这些时间对于硬盘来说是确定的,它包含磁盘旋转的延时RD(rotation delay)和磁头搜索时间DS(disk seek)。RD由磁盘转速(RPM)决定。RD是磁盘旋转一周所需时间的一半。如RPM为10000.
RPS=RPM/60=166
1/166=0.0006=6ms 磁盘旋转一周要6毫秒
RD=6ms/2=3ms
磁盘平均搜索时间是3ms,数据传输的平均延时是2ms,这样一次I/O操作的平均时间是:
3ms+3ms+2ms=8ms
IOPS=1000/8=125 这块磁盘的每秒IO数(IOPS)为125。所以对于10000RPM的磁盘来说它所能承受的IO操作在IOPS在120~150之间。如果系统的I/O请求超过这个值,就会使磁盘成为系统的瓶颈。
对与系统而言有两种不同种类的I/O压力,连续I/O和随机I/O。
连续I/O常常出现在企业级数据库这样的应用中,需要连续的读取大量数据。这种系统的性能依靠它读取和移动数据的大小和快慢。我们用iostat来监控,会发现rKB/s,wKB/s会很高。
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
/dev/sda 0.00 12891.43 0.00 105.71 0.00 106080.00 0.00 53040.00 1003.46 1099.43 3442.43 26.49 280.00
从输出我们看到w/s=105,wKB/s=53040.所以53040/105=505KB per I/O.
对于随机I/O的系统来说性能的关注点不在搜传输数据的大小和速度,而是在磁盘的IOPS。这类系统的I/O请求比较小但是数量很大,如Web服务器和Mail服务器。他们的性能主要依赖每秒钟可处理的请求数:
# iostat -x 1
avg-cpu: %user %nice %sys %idle
2.04 0.00 97.96 0.00
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
/dev/sda 0.00 633.67 3.06 102.31 24.49 5281.63 12.24 2640.82 288.89 73.67 113.89 27.22 50.00
从输出我们看到w/s=102,wKB/s=2640.所以2640/102=23KB per I/O.因此对于连续I/O系统来说我们要关注系统读取大量数据的能力即KB per request.对于随机I/O系统我们注重IOPS值.
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。