kvm 快捷键

kvm 快捷键 在图形模拟时,我们可以使用下面的这些组合键: Ctrl-Alt-f 全屏 Ctrl-Alt-n 切换虚拟终端’n’.标准的终端映射如下: n=1 : 目标系统显示 n=2 : 临视器 n=3 : 串口 Ctrl-Alt 抓取鼠标和键盘在虚拟控制台中,我们可以使用Ctrl-Up, Ctrl-Down, Ctrl-PageUp 和 Ctrl-PageDown在屏幕中进行移动. 在模拟时,如果我们使用`-nographic’选项,我们可以使用Ctrl-a h来得到终端命令: Ctrl-a h 打印帮助信息 Ctrl-a x 退出模拟 Ctrl-a s 将磁盘信息保存入文件(如果为-snapshot) Ctrl-a b 发出中断 Ctrl-a c 在控制台与监视器进行切换 Ctrl-a Ctrl-a 发送Ctrl-a

2011-12-12 · 1 min · 42 words · -

Debian的pre-up、up、post-up、pre-down、down、post-down

Debian的pre-up、up、post-up、pre-down、down、post-down pre-up 网卡启用前的动作 up 启用时候的动作 post-up 启用后的动作 pre-down 关闭前的动作 down 关闭时动作 post-down 关闭后动作

2011-12-11 · 1 min · 13 words · -

linux ebtables

linux ebtables linux 以太网桥防火墙 ebtables. 2.4以后的内核才能支持ebtables Ebtables即是以太网桥防火墙,以太网桥工作在数据链路层,Ebtables来过滤数据链路层数据包。 ebtables的功能和语法和iptables的类似,只是iptables是在ip层对数据包进行过滤和NAT的,而ebtables则是在mac层实现类似功能。最近在做虚拟机数据包流量监控的工作,需要用到ebtables。 ebtables主要用于switch,而iptables主要用于router (当然,他们都可以在host上使用,不过都不是重点) 从功能上来讲,没有明显的界限,一些基本的功能两者都能实现但侧重点不同,ebtables侧重于layer2,iptables侧重于layer3 (可增加layer7扩展) 2.6内核内置了Ebtables,要使用它必须先安装Ebtables的用户空间工具 (ebtables-v2.0.6) ,安装完成后就可以使用ebtables来过滤网桥的数据包。 参照用户实际要求,设置ebtables规则如下: 1:对所有的数据包默认通过 2:分清楚源地址和目的地址和源端口和目的端口 3:对TCP,UDPP数据包分别过滤 Ebtables使用规则如下: ebtables [-t table] -[ADI] chain rule-specification [match-extensions] [watcher-extensions] -t table :一般为FORWARD链。 -ADI: A添加到现有链的末尾;D删除规则链 (必须指明规则链号) ;I插入新的规则链 (必须指明规则链号) 。 –delete -D chain rulenum : delete rule at position rulenum from chain sudo ebtables -t nat -D POSTROUTING 1 -P:规则表的默认规则的设置。可以DROP,ACCEPT,RETURN。 -F:对所有的规则表的规则链清空。 -L:指明规则表。可加参数,-Lc,-Ln -p:指明使用的协议类型,ipv4,arp等可选 (使用时必选) 详情见/etc/ethertypes -ip-proto:IP包的类型,1为ICMP包,6为TCP包,17为UDP包,在/etc/protocols下有详细说明 -ip-src:IP包的源地址 -ip-dst:IP包的目的地址 -ip-sport:IP包的源端口 -ip-dport:IP包的目的端口 -i:指明从那片网卡进入 -o:指明从那片网卡出去 /*******************************/ 简单配置规则如下: #!/bin/bash ...

2011-12-11 · 1 min · 118 words · -

Apt-get, aptitude 命令对比

Apt-get, aptitude 命令对比 出自Guoshuang Wiki http://wiki.guoshuang.com/Apt-get_%E5%92%8C_aptitude_%E5%91%BD%E4%BB%A4%E5%AF%B9%E6%AF%94%E5%8F%82%E8%80%83 Apt-get commands Aptitude commands apt-get install package aptitude install package install package 安装软件包 apt-get install package--reinstall reinstall package 重新安装 apt-get -f install force install 强制安装 apt-get remove package aptitude remove package remove package 删除软件包 apt-get remove package--purge aptitude purge package remove package, include configuration files 删除软件及其配置文件 apt-get autoremove auto remove unused packages 自动删除没用的软件包 apt-get update aptitude update update the list of available packages 升级软件更新列表 apt-get upgrade aptitude upgrade upgrade packages 升级软件包 apt-get dist-upgrade aptitude dist-upgrade upgrade to a new release 升级到下一个发行版 apt-get build-dep package install build dependency 安装编译依赖库 apt-get source package download source 下载源代码 apt-get clean && apt-get autoclean aptitude clean && aptitude autoclean remove unused package files 删除没用的软件包 apt-cache search package aptitude search package search packages 在 cache 中搜索软件包 apt-cache show package get more information 显示软件包信息

2011-12-11 · 1 min · 133 words · -

Debian的运行级别

Debian的运行级别 转自: http://dagai.net/archives/569 最近在看王旭的《debian标准教程》,讲的真的是很广,但很浅,就运行级别这一小段,让老夫琢磨了好几天,也就明白debian的运行级别与redhat系的那些不一样,在centos中,runlevel 5就是图形界面,3是文本界面,而在debian中,runlevel 2-5都是多用户状态,这几个级别一样的,怎么设置这些服务的状态呢,centos有ntsysv和chkconfig啊,王旭在书中也就提到了rcconf这个命令,弄了半天弄得莫名其妙,到处搜啊搜的,终于发现,原来debian下还有个比chkconfig更好用的sysv-rc-conf。 先说说debian的系统运行级别 可以运行runlevel查看系统的运行级别,runlevel命令显示上次的运行级别和当前的运行级别,第一个为"N"的时候表示没有上次的运行级别。 0 系统停机状态 1 单用户或系统维护状态 2-5 多用户状态 6 重新启动 至于S和s是给单用户模式来用的。 可以用init 加数字来切换系统的运行级别,默认系统下2-5这几个运行级别状态是一样的,切换运行级别根本不会有什么变动。 这时候可以运行rcconf来关闭服务,这个rcconf居然还没有,用aptitude install rcconf安装它,这个rcconf与centos下的ntsysv差不多,这里取消或选取某个服务,将同时改变2-5级别的状态。 那老夫想把这个debian的运行级别改成跟centos差不多咋搞?这时候就要请上sysv-rc-conf了,sysv-rc-conf默认也没装,装上它,运行sysv-rc-conf,界面很简单,横着列出了所有的级别,纵向列出了所有的服务,不是有那么多中括号嘛,用方向键移到相应服务的相应级别,按空间选中或取消,这样,老夫就移到gdm上,234级别都取消掉,只保留5的,然后改一下inittab文件,把默认运行级别由2改为3,这样就跟centos一样3是文本界面5是图形界面了。 sysv-r-conf可以按ctrl+n和ctrl+p下翻和上翻,也可以按-来停止某个服务或按=/+来启动某个服务,设置完按q退出即可。 至于怎么把程序加入到服务,update-rc.d。 下面是一些常见的系统服务: acpi-support 高级电源管理支持 acpid acpi 守护程序.这两个用于电源管理,非常重要 alsa 声音子系统 alsa-utils anacron cron 的子系统,将系统关闭期间的计划任务,在下一次系统运行时执行。 apmd acpi 的扩展 atd 类似于 cron 的任务调度系统。建议关闭 binfmt-support 核心支持其他二进制的文件格式。建议开启 bluez-utiles 蓝牙设备支持,关掉没啥 bootlogd 启动日志。开启它 cron 任务调度系统,建议开启 cupsys 打印机子系统。 dbus 消息总线系统(message bus system)。非常重要 dns-clean 使用拨号连接时,清除 dns 信息。 evms 企业卷管理系统(Enterprise Volumn Management system) fetchmail 邮件用户代理守护进程,用于收取邮件 gdm gnome 登录和桌面管理器。 ...

2011-12-11 · 1 min · 212 words · -

CentOS 与 RHEL 的区别

CentOS 与 RHEL 的区别 CentOS是Community ENTerprise Operating System的简称,我们有很多人叫它社区企业操作系统,不管你怎么叫它,它都是Linux操作系统的一个发行版本。 CentOS并不是全新的Linux发行版,倘若一说到Red Hat这个大名,大家似乎都听过。在Red Hat家族中有企业版的产品,它是Red Hat Enterprise Linux (以下称之为RHEL) ,CentOS正是这个RHEL的克隆版本。RHEL是很多企业采用的Linux发行版本,需要向Red Hat付费才可以使用,并能得到付过费用的服务和技术支持和版本升级。CentOS可以像RHEL一样的构筑Linux系统环境,但不需要向Red Hat付任何的产品和服务费用,同时也得不到任何有偿技术支持和升级服务。 Red Hat公司的产品中,有Red Hat Linux (如Redhat8,9) 和针对企业发行的版本Red Hat Enterprise Linux,都能够通过网络FTP免费的获得并使用,但是在2003年的时候,Red Hat Linux停止了发布,它的项目由Fedora Project这个项目所取代,并以Fedora Core这个名字发行并提供给普通用户免费使用。Fedora Core这个Linux发行版更新很快,大约半年左右就有新的版本发布。目前的版本是Fedora Core 6,这个Fedora Core试验的韵味比较浓厚,每次发行都有新的功能被加入到其中,得到的成功结果将被采用道RHEL的发布中。虽说这样,频繁的被改进更新的不安定产品对于企业来说并不是最好的选择,大多数企业还是会选择有偿的RHEL产品 (这里面有很深的含义,比如说企业用Linux赚钱,赚到的钱回报给企业,资金在企业间流通,回报社会,提高服务水准等) 。 在构成RHEL的大多数软件包中,都是基于GPL协议发布的,也就是我们常说的开源软件。正因为是这样,Red Hat公司也遵循这个协议,将构成RHEL的软件包公开发布,只要是遵循GPL协议,任何人都可以在原有的软件构成的基础上再开发和发布。CentOS就是这样在RHEL发布的基础上将RHEL的构成克隆再现的一个Linux发行版本。RHEL的克隆版本不只CentOS一个,还有White Box Enterprise Linux和TAO Linux 和Scientific Linux (其他的这些都没听说过,是吧?) 。 虽然说是RHEL的克隆,但并不是一模一样,所说的克隆是具有100%的互换性 (真的么?) 。但并不保障对应RHEL的软件在CentOS上面也能够100%的正常工作。并且安全漏洞的修正和软件包的升级对应RHEL的有偿服务和技术支持来说,数日数星期数个月的延迟情况也有 (其实也没看出来多慢) 。 CentOS的特点 在CentOS的全称里面我们可以看到Enterprise OS,也就是说企业系统,这个企业系统并不是企业级别的系统,而是它可以提供企业级应用所需要的要素。 例如: 稳定的环境 长期的升级更新支持 保守性强 大规模的系统也能够发挥很好的性能 CentOS满足以上的要素,满足上面要素的发行版还有Fedora 。Fedora和CentOS非常的相像,但是对CentOS来说,Fedora提供更多的新的功能和软件,发布更新快等特点,这样在稳定性和管理方面就增加了很多工作。企业所需要的系统环境应该是,高效稳定的系统环境,一次构建后能够长期使用的系统环境,所以Fedora那样的频繁更新发布的系统环境并不对应企业的应用。另一方面,CentOS却能够满足以上企业的需要,在众多的RHEL的克隆版本中,CentOS是很出众很优秀的。 CentOS 与 RHEL 的区别 其实为什么有 CentOS? CentOS 与 RHEL 有什么关系? RHEL 在发行的时候,有两种方式。一种是二进制的发行方式,另外一种是源代码的发行方式。 ...

2011-12-11 · 1 min · 192 words · -

debian自动加载磁盘分区

debian自动加载磁盘分区 Linux下面有个加载分区的配置文件,/etc/fstab 里面的分区标识是使用分区的UUID来分别的,在ubuntu下面可以使用命令: sudo blkid 来查看具体各个分区的UUID 然后在/etc/fstab文件中加上自己的加载分区的相应命令: UUID=e06ae965-4a0f-4448-8281-9b2bac150c07 /home/bing/android ext4 default 0 3 由于此处是挂载到/home目录的,不知道能不能成功加载, 上面的那个命令会出现下面的问题: Error mounting: mount exited with exit code 1: helper failed with: mount: only root can mount /dev/sda8 on /home/bing/android 网上查了一下,所以把上面的命令改为: UUID=e06ae965-4a0f-4448-8281-9b2bac150c07 /home/bing/android ext4 auto,user,rw 0 3 这样好像是可以的,,, 记一下,防止忘记了。。。 最新的动态,应该使用下面命令加载系统的时候,会出现一个问题,那就是这个分区可以读写,但是不能执行程序,, 连root用户都没有权限执行程序,应该是指定了user这个群组了,,, UUID=e06ae965-4a0f-4448-8281-9b2bac150c07 /home/bing/android ext4 auto,user,rw 0 3 所以办法也是行不通的, 后来再检查的时候才发现原先那条加载命令写错了(应该是defaults),汗,,,, 换成下面的可以加载了,也可以读写执行了,, UUID=e06ae965-4a0f-4448-8281-9b2bac150c07 /home/bing/android ext4 defaults 0 2 第一列: label 第二列: 挂载点 第三列: 分区的文件系统 第四列: 文件系统挂载选项,看附件啦 第五列: 是否被dump作用。0代表不要做dump 备份,1代表要每天进行dump的动作。 2 也代表其它不定日期的dump备份动作,通常这个数值不是0就是1啦! 第六列: 是否以fsck检查分区 (开机时候检查分区) 0为不检查,1为开机的时候检查,2为在稍后的时间检查 ...

2011-12-10 · 1 min · 85 words · -

set -x

set -x set指令能设置所使用shell的执行方式,可依照不同的需求来做设置 -a 标示已修改的变量,以供输出至环境变量。 -b 使被中止的后台程序立刻回报执行状态。 -C 转向所产生的文件无法覆盖已存在的文件。 -d Shell预设会用杂凑表记忆使用过的指令,以加速指令的执行。使用-d参数可取消。 -e 若指令传回值不等于0,则立即退出shell。 -f 取消使用通配符。 -h 自动记录函数的所在位置。 -H Shell 可利用"!“加<指令编号>的方式来执行history中记录的指令。 -k 指令所给的参数都会被视为此指令的环境变量。 -l 记录for循环的变量名称。 -m 使用监视模式。 -n 只读取指令,而不实际执行。 -p 启动优先顺序模式。 -P 启动-P参数后,执行指令时,会以实际的文件或目录来取代符号连接。 -t 执行完随后的指令,即退出shell。 -u 当执行时使用到未定义过的变量,则显示错误信息。 -v 显示shell所读取的输入值。 -x 执行指令后,会先显示该指令及所下的参数。 +<参数> 取消某个set曾启动的参数。

2011-12-10 · 1 min · 42 words · -

linux网络的热插拔

linux网络的热插拔 auto eth0:开机自动启动eth0,不管有沒有插上网线. 如果开机没有插上网线,系统也会让dhclient3去设定,这样只有等超时才能继续开机。 如果设为allow-hotplug eth0就不会出现上述情况,先不插网线,开机后再插网线也可以。但是在debian 里用/etc/init.d/networking restart后会出现网卡不能启动,要用ifup eth0 才行.

2011-12-06 · 1 min · 10 words · -

网桥

网桥 作者: kendo(http://www.skynet.org.cn/) 第一部份 源码框架 一、网桥原理 传统的中继器,如HUB,是一个单纯的物理层设备,它将每一个收到的数据包,在其所有的端口上广播,由接收主机来判断这个数据包是否是给自己的。这样,网络资源被极大的浪费掉了。 网桥之所以不同于中继器,主要在于其除了有中继的作用外,还有一个更重要的作用,就是学习MAC地址,然后根据每个数据包的目的MAC与自身端口的对应,从关联端口发送数据,而不完全地在整个网段中进行广播。所以,网桥的实现中,有两个关键点: 学习MAC地址,起初,网桥是没有任何地址与端口的对应关系的,它发送数据,还是得想HUB一样,但是每发送一个数据,它都会关心数据包的来源MAC是从自己的哪个端口来的,由于学习,建立地址-端口的对照表 (CAM表) 。 每发送一个数据包,网桥都会提取其目的MAC地址,从自己的地址-端口对照表(CAM表)中查找由哪个端口把数据包发送出去。 网桥的功能在延长网络跨度上类似于中继器,然而它能提供智能化连接服务,即根据帧的终点地址处于哪一网段来进行转发和滤除。网桥对站点所处网段的了解是靠"自学习"实现的。 当使用网桥连接如图2所示的两段LAN时,网桥对来自网段1的MAC帧,首先要检查其终点地址。如果该帧是发往网段1上某一站的,网桥则不将帧转发到网段2,而将其滤除;如果该帧是发往网段2上某一站的,网桥则将它转发到网段2。这表明,如果LAN1和LAN2上各有一对用户在本网段上同时进行通信,显然是可以实现的。因为网桥起到了隔离作用。可以看出,网桥在一定条件下具有增加网络带宽的作用。 网桥的存储和转发功能与中继器相比有优点也有缺点,其优点是: .使用网桥进行互连克服了物理限制,这意味着构成LAN的数据站总数和网段数很容易扩充。 .网桥纳入存储和转发功能可使其适应于连接使用不同MAC协议的两个LAN。 因而构成一个不同LAN混连在一起的混合网络环境。 .网桥的中继功能仅仅依赖于MAC帧的地址,因而对高层协议完全透明。 .网桥将一个较大的LAN分成段,有利于改善可靠性、可用性和安全性。 网桥的主要缺点是: .由于网桥在执行转发前先接收帧并进行缓冲, 与中继器相比会引入理多时延。 .由于网桥不提供流控功能,因此在流量较大时有可能使其过载, 从而造成帧的丢失。 网桥的优点多于缺点正是其广泛使用的原因。 网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。网络1 和网络2 通过网桥连接后,网桥接收网络1 发送的数据包,检查数据包中的地址,如果地址属于网络1 ,它就将其放弃,相反,如果是网络2 的地址,它就继续发送给网络2.这样可利用网桥隔离信息,将同一个网络号划分成多个网段 (属于同一个网络号) ,隔离出安全网段,防止其他网段内的用户非法访问。由于网络的分段,各网段相对独立 (属于同一个网络号) ,一个网段的故障不会影响到另一个网段的运行。 网桥可以是专门硬件设备,也可以由计算机加装的网桥软件来实现,这时计算机上会安装多个网络适配器 (网卡) 。 网桥的功能在延长网络跨度上类似于中继器,然而它能提供智能化连接服务,即根据帧的终点地址处于哪一网段来进行转发和滤除。网桥对站点所处网段的了解是靠"自学习"实现的,有透明网桥、转换网桥、封装网桥、源路由选择网桥。 当使用网桥连接两段LAN 时,网桥对来自网段1 的MAC 帧,首先要检查其终点地址。如果该帧是发往网段1 上某一站的,网桥则不将帧转发到网段2 ,而将其滤除;如果该帧是发往网段2 上某一站的,网桥则将它转发到网段2,这表明,如果LAN1和LAN2上各有一对用户在本网段上同时进行通信,显然是可以实现的。 因为网桥起到了隔离作用。可以看出,网桥在一定条件下具有增加网络带宽的作用。 网桥的存储和转发功能与中继器相比有优点也有缺点,其优点是: 使用网桥进行互连克服了物理限制,这意味着构成LAN 的数据站总数和网段数很容易扩充。 网桥纳入存储和转发功能可使其适应于连接使用不同MAC 协议的两个LAN,因而构成一个不同LAN 混连在一起的混合网络环境。 网桥的中继功能仅仅依赖于MAC 帧的地址,因而对高层协议完全透明。 网桥将一个较大的LAN 分成段,有利于改善可靠性、可用性和安全性。 网桥的主要缺点是: 由于网桥在执行转发前先接收帧并进行缓冲,与中继器相比会引入更多时延。由于网桥不提供流控功能,因此在流量较大时有可能使其过载,从而造成帧的丢失。 网桥的优点多于缺点正是其广泛使用的原因。 网桥工作在数据链路层,将两个LAN连起来,根据MAC地址来转发帧,可以看作一个"低层的路由器" (路由器工作在网络层,根据网络地址如IP地址进行转发) 。 远程网桥通过一个通常较慢的链路 (如电话线) 连接两个远程LAN,对本地网桥而言,性能比较重要,而对远程网桥而言,在长距离上可正常运行是更重要的。 网桥与路由器的比较 ...

2011-12-04 · 1 min · 193 words · -

STP

STP http://hghhghwh.blog.163.com/blog/static/1338973120118413725683/ STP (Spanning Tree Protocol) 是生成树协议的英文缩写。 该协议可应用于环路网络,通过一定的算法实现路径冗余,同时将环路网络修剪成无环路的树型网络,从而避免报文在环路网络中的增生和无限循环。 STP定义在 IEEE 802.1D 中,是一种链路管理协议,它为网络提供路径冗余同时防止产生环路。为使以太网更好地工作,两个工作站之间只能有一条活动路径。网络环路的发生有多种原因,最常见的一种是有意生成的冗余 - 万一一个链路或交换机失败,会有另一个链路或交换机替代。 STP的基本原理是,通过在交换机之间传递一种特殊的协议报文 (在IEEE 802.1D中这种协议报文被称为"配置消息") 来确定网络的拓扑结构。配置消息中包含了足够的信息来保证交换机完成生成树计算。 技术原理: STP的基本思想就是生成"一棵树",树的根是一个称为根桥的交换机,根据设置不同,不同的交换机会被选为根桥,但任意时刻只能有一个根桥。由根桥开始,逐级形成一棵树,根桥定时发送配置报文,非根桥接收配置报文并转发,如果某台交换机能够从两个以上的端口接收到配置报文,则说明从该交换机到根有不止一条路径,便构成了循环回路,此时交换机根据端口的配置选出一个端口并把其他的端口阻塞,消除循环。当某个端口长时间不能接收到配置报文的时候,交换机认为端口的配置超时,网络拓扑可能已经改变,此时重新计算网络拓扑,重新生成一棵树。 功能介绍: 生成树协议最主要的应用是为了避免局域网中的网络环回,解决成环以太网网络的"广播风暴"问题,从某种意义上说是一种网络保护技术,可以消除由于失误或者意外带来的循环连接。STP也提供了为网络提供备份连接的可能,可与SDH保护配合构成以太环网的双重保护。新型以太单板支持符合ITU-T 802.1d标准的生成树协议STP及802.1w规定的快速生成树协议RSTP,收敛速度可达到1s。 但是,由于协议机制本身的局限,STP保护速度慢 (即使是1s的收敛速度也无法满足电信级的要求) ,如果在城域网内部运用STP技术,用户网络的动荡会引起运营商网络的动荡。目前在MSTP 组成环网中,由于SDH保护倒换时间比STP协议收敛时间快的多,系统采用依然是SDH MS-SPRING或SNCP,一般倒换时间在50ms以内。但测试时部分以太网业务的倒换时间为0或小于几个毫秒,原因是内部具有较大缓存。SDH保护倒换动作对MAC层是不可见的。这两个层次的保护可以协调工作,设置一定的"拖延时间"(hold-off),一般不会出现多次倒换问题。

2011-12-04 · 1 min · 28 words · -

shell, bash, csh, sh, ksh, dash, zsh

‘shell, bash, csh, sh, ksh, dash, zsh’ https://blog.csdn.net/lina_acm/article/details/51815080 Linux中的shell有多种类型,其中最常用的几种是Bourne shell (sh) 、C shell (csh) 和Korn shell (ksh) 。三种shell各有优缺点。Bourne shell是UNIX最初使用的shell,并且在每种UNIX上都可以使用。Bourne shell在shell编程方面相当优秀,但在处理与用户的交互方面做得不如其他几种shell。Linux操作系统缺省的shell是Bourne Again shell,它是Bourne shell的扩展,简称Bash,与Bourne shell完全向后兼容,并且在Bourne shell的基础上增加、增强了很多特性。Bash放在/bin/bash中,它有许多特色,可以提供如命令补全、命令编辑和命令历史表等功能,它还包含了很多C shell和Korn shell中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。 shell 脚本第一行以 !/bin/bash 开头, 表示由/bin/bash负责解释. !/bin/sh !/bin/csh !/usr/bin/perl !/bin/php !/bin/expect 都是脚本常用的开头。 ! 用来指定解释脚本的程序,可以是 Shell,也可以是其他程序 有一个非常奇怪的名字,叫shbang line !叫做Magic number 按照下面的方式来解释执行shell脚本 如果shell脚本的第一个非空白字符不是"#",则它会使用Bourne shell。 如果shell脚本的第一个非空白字符是"#",但不以"#!“开头时,则它会使用C shell。 如果外壳脚本以”#!“开头,则” #!“后面所跟的字符串就是所使用的shell的绝对路径 名。Bourne shell的路径名称为/bin/sh ,而C shell则为/bin/csh。 sh (Bourne Shell) : 由Steve Bourne开发,各种UNIX系统都配有sh。 csh (C Shell) : 由Bill Joy开发,随BSD UNIX发布,它的流程控制语句很像C语言,支持很多Bourne Shell所不支持的功能: 作业控制,命令历史,命令行编辑。 ...

2011-12-04 · 1 min · 134 words · -

kvm 磁盘

kvm 磁盘 http://forum.ubuntu.org.cn/viewtopic.php?f=65&t=302055 固定大小虚拟磁盘效率最高 虚拟磁盘效率最大决定因素在于碎片,而非格式。通常用的动态大小磁盘映像虽然灵活,但其效率自然不如固定大小。以往很多人因创建固定磁盘费时费力而直接使用物理磁盘,不仅有相当风险,且有不便之处,也未必能满足所需功能。 xfs 和 NTFS 早已支持空间预分配,但 ext 系列直到 ext4 才支持该功能。现如今,ext4 已然稳定。用 fallocate 命令在其上创建固定大小的 raw 格式映像甚为简单,创建速度与 qemu-img 创建的稀疏文件无异,瞬间完成。比如: fallocate -l 15G disk1.img virtio 提高的效率是什么效率 直接给 qemu 用 -hda 指定硬盘,谁用谁知道,慢如蜗牛不说,还能听见磁头辛勤地哀鸣,心痛不?网上有人说 cache=writeback ,没错,这是关键,速度快了不说,也不用再担心磁头累跨了。还有人说 if=virtio ,更有甚者 virtio 与 writeback 不可兼得,晕不?其实 virtio 节省的只不过是 CPU 模拟设备所需的运算时间,并不能降低磁盘访问,只有 writeback 才是关键。当然,若你愿意完全可两者并用, if=virtio,cache=writeback 没有任何问题。所谓有问题只不过是拿那已安装的 Windows 来更改设备造成的。 virtio 安装 Windows 小问题 对于新磁盘映像,用 if=virtio 安装 WindowsXP/2003 加载驱动后,依然会碰到找不到某某文件问题。因为一个 bug 没错,但也不能指望微软修正,设法绕过吧。 随便弄张 Linux LiveCD 启动,用 fdisk /dev/vda 为其分区 (一定要 fdisk 而非 cfdisk ,其它未试) ,全部大小只用于一个主分区,指定分区 ID 标志为 0x0b 。再用 mkfs.vfat /dev/vda1 创建文件系统。重新启动 Windows 安装便可绕过上述 bug 。 ...

2011-12-04 · 1 min · 125 words · -

debian wlan0 wpa/psk

debian wlan0 wpa/psk 1.添加wpa-psk支持,在debian下是这个插件wpasupplicant apt-get install wpasupplicant 可查看debian wiki [code] http://wiki.debian.org/WiFi/HowToUse#wpa_supplicant 2.修改/etc/network/interfaces项,如下: [code] iface wlan0 inet dhcp wpa-driver wext wpa-ssid DFERG wpa-proto WPA wpa-pairwise TKIP wpa-group TKIP wpa-key-mgmt WPA-PSK wpa-psk fcb3717c5f66e893d9010a6872436b34686618a3e8fa2833d56bb98b41be5c8d 3.最关键的WPA-PSK项,之前一直无法连接,经google,原来此处不能写入明文密码,需要通过wpa-passphrase转换的,如下: [code] wpa_passphrase <your_essid> <your_assic_key> 例如: ```bash wpa_passphrase DFERG 100200300b network={ ssid="DFERG" #psk="100200300b" psk=fcb3717c5f66e893d9010a6872436b34686618a3e8fa2833d56bb98b41be5c8d } 原文地址: http://hi.baidu.com/tanmeng_sino/blog/item/8b3526f5781d65e77709d735.html

2011-12-03 · 1 min · 48 words · -

debian 网络配置

debian 网络配置 /etc/network/interfaces #wlan auto wlan0 iface wlan0 inet dhcp wpa-ssid "xxxx" wpa-psk "xxxx" 话说Debian系的网卡配置跟Redhat系很不一样,Redhat是放在/etc/sysconfig/network-scripts目录下 面的一大堆文件里面,要修改?你一个一个文件来过吧。Debian系的则是存在/etc/network/interfaces文件里面,无论有多少块网 卡,统统扔在这个文件里。下面就来看一下这个文件的内容。 首先,一个基本的配置大概是下面这个样子: 1 auto lo 2 iface lo inet loopback 3 4 # The primary network interface 5 auto eth0 6 iface eth0 inet static 7 address 192.168.0.42 8 network 192.168.0.0 9 netmask 255.255.255.0 10 broadcast 192.168.0.255 11 gateway 192.168.0.1 上面的配置中, 第1行跟第5行说明lo接口跟eth0接口会在系统启动时被自动配置; 第2行将lo接口设置为一个本地回环 (loopback) 地址; 第6行指出eth0接口具有一个静态的 (static) IP配置; 第7行-第11行分别设置eth0接口的ip、网络号、掩码、广播地址和网关。 再来看一个更复杂点的: ...

2011-12-03 · 2 min · 358 words · -

linux 网络命令

linux 网络命令 iwconfig 和 iwpriv。iwconfig 用于配置一些比较 general 的功能,如 ESSID、AP 的 MAC 地址、mode、频道、速率等。和 ifconfig 类似,不加任何参数的时候显示 /proc/net/wireless 的内容;而 iwpriv 则配置比较 private 的内容,和各个网卡相关的东西,可以用 -a 获得所有可以执行的命令。下面是这些命令的说明: iwevent 显示 wireless 事件,主要是驱动程序或者配置更新的事件。 iwgetid 获得当前连接网络的信息,相对于 iwconfig 更适合写脚本使用。 iwlist 用于显示无线网络的各种信息,通过 scaning 网络中 AP 获得。 iwspy 用于获取无线网络某些节点上的统计信息。 1.查看网卡型号: lsmod | grep iw 2.查看网卡信息: iwconfig 查看附近可用的无线接入点 (AP) iwlist wlan0 scan ifconfig wlan0 up ifconfig wlan0 down

2011-12-03 · 1 min · 56 words · -

kvm 参数

kvm 参数 -bios file 指定虚拟机使用的BIOS,file指定BIOS文件路径 -smp n[,cores=cores][,threads=threads][,sockets=sockets][,maxcpus=maxcpus] 模拟一个有n个cpu的smp系统,可以简单的指定n为一个数值,或者分别指定socket数,core数/socket,线程数/core -m megs 指定虚拟机使用的内存数量,可以使用M或G后缀 -rtc [base=utc|localtime|date][,clock=host|vm][,driftfix=none|slew] 指定虚拟机使用的时间,linux客户机使用-rtc base=utc,clock=host,windows客户机使用-rtc base=localtime,clock=host -net nic,model=virtio,macaddr=52-54-00-12-34-01 -net tap,ifname=tap0 桥接网络,客户机网络接口通过tap接口桥接到主机网络,使用的tap接口名为tap0,由/etc/kvm/kvm-ifup来动态配置tap0接口。model=virtio指定虚拟机网卡使用半虚拟化驱动,如果有多个虚拟客户机同时运行则必须指定macaddr为一个独一无二的值,否则会出现mac地址冲突。如果通过主机的/etc/network/interfaces来静态配置tap接口,则此处应在-net tap接口处附加两个另外的参数script=no,downscript=no -drive file=debian.img,if=virtio,index=0,media=disk,format=qcow2,cache=writeback 指定客户机使用的硬盘驱动器,if=virtio指定使用半虚拟化驱动,index=0指定该硬盘为接口的第一个驱动器,media=disk指定为硬盘驱动器,如果是光盘则为media=cdrom。format=qcow2为硬盘格式 (raw/qcow2) ,以创建磁盘镜像时的格式为准。旧式指定第一个硬盘驱动器的参数为-hda debian.img,已经不再推荐使用。 -drive file=debian.iso,index=2,media=cdrom或者-hdc debian.iso 指定光盘驱动器,debian.iso为使用的光驱映像文件 -fda file 指定软盘驱动器,file为软磁盘镜像 -no-fd-bootchk 客户机启动时不检查软盘驱动器,加速客户机启动 -boot [order=drives][,once=drives][,menu=on|off] ‘drives’: floppy (a), hard disk (c), CD-ROM (d), network (n) 指定引导顺序,c为第一个硬盘驱动器,d为第一个光盘驱动器 -boot order=c -vnc :0 将虚拟机的视频输出重定向到vnc端口,通过vnc viewer可以连接到虚拟机的视频输出 error:Could not initialize SDL(No available video device) - exiting add the parameters -vga std -k en-us -vnc :1 ...

2011-12-03 · 1 min · 122 words · -

Virtio

Virtio 半虚拟化驱动Virtio Virtio是KVM/Linux的I/O虚拟化框架,以增强KVM的IO效率,是与其他虚拟化平台的半虚拟化(Paravirtualized)类似的东西,主要应用于磁盘设备和网络接口设备。主流的linux发行版已经默认支持Virtio,如果客户机是linux则无需其他设置,直接可以使用Virtio设备,但是如果客户机是windows,则需要在客户机安装Virtio设备驱动,甚至在windows开始安装之前需要提前加载块设备驱动。windows Virtio驱动可从Fedor

2011-12-03 · 1 min · 4 words · -

chown 更改文件拥有者

chown 更改文件拥有者 如何更改一个文件的拥有者呢?很简单。既然改变用户组是change group,那么改变拥有者就是change owner (改变拥有者) ,这就是chown这个命令的用途。要注意的是,用户必须是已经在系统中,也就是在/etc/passwd这个文件中有记录的用户名称才可以更改。 chown的用途很多,还可以直接修改用户组的名称。如果要将目录下的所有子目录或文件同时更改文件拥有者的话,直接加上-R的参数即可。下面我们来看看语法与范例。 chown [-R] 账户名称 文件或目录 chown [-R] 账户名称:用户组名称 文件或目录 参数: -R : 进行递归的持续更改,即将同子目录下的所有文件、目录都更新问这个用户组。通常用在更改某一目录的情况。 范例: chown root:root install.log # 按UID改owner chown -R 200:200 /root/foo 我们知道如何改变文件的用户组与拥有者了,那么什么时候要使用chown或chgrp呢?或许你你会觉得奇怪,但是,确实有时候需要更改文件的拥有者。最常见的例子就是将文件复制给其他人,我们使用最简单的cp来进行说明: [root@linux ~]#cp 源文件 目的文件 假设今天要讲.bashrc文件复制成为.bashrc_test,并给bin这个人,您可以这样做: [root@linux ~]# cp .bashrc .bashrc_test [root@linux ~]#ls –al .bashrc* -rw-r-r- 1 root root 24343 Jun 23 08:33 .bashrc -rw-r-r- 1 root root 24343 Jun 23 08:33 .bashrc_test 怎么办?.bashrc_test还是属于root所有,即使将文件拿给bin用户了,他仍然无法修改,所以必须修改这个文件的拥有者与用户组

2011-12-03 · 1 min · 64 words · -

qemu basic, kvm 参数

qemu basic, kvm 参数 qemu-img create To set up your own guest OS image, you first need to create a blank disc image. QEMU has the qemu-img command for creating and manipulating disc images, and supports a variety of formats. If you don’t tell it what format to use, it will use raw files. The “native” format for QEMU is qcow2, and this format offers some flexibility. Here we’ll create a 3GB qcow2 image to install Windows XP on: ...

2011-12-03 · 1 min · 200 words · -