The NoteBook of EricKong

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  611 Posts :: 1 Stories :: 190 Comments :: 0 Trackbacks

#

VirtualBox是一款非常优秀的虚拟机程序,这里我先给大家大致讲解下VBox的网络配置及应用。

VirtualBox有四种网络模式,它们分别是:1NAT 网络地址转换模式、Bridged Adapter 桥接模式

internal 内部网络模式、4、Host-only Adapter 主机模式。下面我们分别对这四种网络模式进行分析解释:

一、NAT模式

NAT模式是最简单的实现虚拟机上网的方式,你可以这样理解:Vhost访问网络的所有数据都是由主机提供的,

vhost并不真实存在于网络中,主机与网络中的任何机器都不能查看和访问到Vhost的存在。

虚拟机与主机关系:

只能单向访问,虚拟机可以通过网络访问到主机,主机无法通过网络访问到虚拟机。

虚拟机与网络中其他主机的关系:

只能单向访问,虚拟机可以访问到网络中其他主机,其他主机不能通过网络访问到虚拟机。

虚拟机与虚拟机之间的关系:

相互不能访问,虚拟机与虚拟机各自完全独立,相互间无法通过网络访问彼此。

IP:10.0.2.15  网关:10.0.2.2  DNS:10.0.2.3

一台虚拟机的多个网卡可以被设定使用 NAT, 第一个网卡连接了到专用网 10.0.2.0,第二个

网卡连接到专用网络 10.0.3.0,等等。默认得到的客户端ip(IP Address)是10.0.2.15,

网关(Gateway)是10.0.2.2,域名服务器(DNS)是10.0.2.3,可以手动参考这个进行修改。

NAT方案优缺点:

笔记本已插网线时: 虚拟机可以访问主机,虚拟机可以访问互联网,在做了端口映射后(最后有说明),

主机可以访问虚拟机上的服务(如数据库)。笔记本没插网线时: 主机的“本地连接”有红叉的,

虚拟机可以访问主机,虚拟机不可以访问互联网,在做了端口映射后,主机可以访问虚拟机上的服务(如数据库)。

二、Bridged Adapter模式

网桥模式是我最喜欢的用的一种模式,同时,模拟度也是相当完美。你可以这样理解,它是通过主机网卡

,架设了一条桥,直接连入到网络中了。因此,它使得虚拟机能被分配到一个网络中独立的IP,所有网络

功能完全和在网络中的真实机器一样。

虚拟机与主机关系:

可以相互访问,因为虚拟机在真实网络段中有独立IP,主机与虚拟机处于同一网络段中,彼此可以通过各自IP相互访问。
虚拟机于网络中其他主机关系:
可以相互访问,同样因为虚拟机在真实网络段中有独立IP,虚拟机与所有网络其他主机处于同一网络段中,

彼此可以通过各自IP相互访问。

虚拟机于虚拟机关系:

可以相互访问,原因同上。

IP:一般是DHCP分配的,与主机的“本地连接”的IP 是同一网段的。虚拟机就能与主机互相通信。

笔记本已插网线时:(若网络中有DHCP服务器)主机与虚拟机会通过DHCP分别得到一个IP,

这两个IP在同一网段。 主机与虚拟机可以ping通,虚拟机可以上互联网。笔记本没插网线时:

主机与虚拟机不能通信。主机的“本地连接”有红叉,就不能手工指定IP。虚拟机也不能通过

DHCP得到IP地址,手工指定IP后,也无法与主机通信,因为主机无IP。这时主机的VirtualBox Host-Only Network

网卡是有ip的,192.168.56.1。虚拟机就算手工指定了IP 192.168.56.*,也ping不能主机。

三、Internal模式

内网模式,顾名思义就是内部网络模式,虚拟机与外网完全断开,只实现虚拟机于虚拟机之间的内部网络模式。

虚拟机与主机关系:

不能相互访问,彼此不属于同一个网络,无法相互访问。

虚拟机与网络中其他主机关系:

不能相互访问,理由同上。

虚拟机与虚拟机关系:

可以相互访问,前提是在设置网络时,两台虚拟机设置同一网络名称。如上配置图中,名称为intnet。
IP: VirtualBox的DHCP服务器会为它分配IP ,一般得到的是192.168.56.101,因为是从101起分的,也可手工指定192.168.56.*。
笔记本已插网线时:虚拟机可以与主机的VirtualBox Host-Only Network 网卡通信
这种方案不受主机本地连接(网卡)是否有红叉的影响。
第四种 Host-only Adapter模式
解释:
主机模式,这是一种比较复杂的模式,需要有比较扎实的网络基础知识才能玩转。可以说前面几种模式所实现的功能,在这种模式下,通过虚拟机及网卡的设置都可以被实现。
我们可以理解为Vbox在主机中模拟出一张专供虚拟机使用的网卡,所有虚拟机都是连接到该网卡上的,我们可以通过设置这张网卡来实现上网及其他很多功能,比如(网卡共享、网卡桥接等)。
虚拟机与主机关系
默认不能相互访问,双方不属于同一IP段,host-only网卡默认IP段为192.168.56.X 子网掩码为255.255.255.0,后面的虚拟机被分配到的也都是这个网段。通过网卡共享、网卡桥接等,可以实现虚拟机于主机相互访问。
虚拟机与网络主机关系
默认不能相互访问,原因同上,通过设置,可以实现相互访问。
虚拟机与虚拟机关系
默认可以相互访问,都是同处于一个网段。
虚拟机访问主机 用的是主机的VirtualBox Host-Only Network网卡的IP:192.168.56.1 ,不管主机“本地连接”有无红叉,永远通。
主机访问虚拟机,用是的虚拟机的网卡3的IP: 192.168.56.101 ,不管主机“本地连接”有无红叉,永远通。
虚拟机访问互联网,用的是自己的网卡2, 这时主机要能通过“本地连接”有线上网,(无线网卡不行)
通过对以上几种网络模式的了解,我们就可以灵活运用,模拟组建出我们所想要的任何一种网络环境了。
比如我想模拟出来一个一台主机,监控一个局域网上网情况的网络环境。
首先我开启了两台虚拟机vhost1与vhost2,当然如果硬件允许,我同样可以再增加vhost3、vhost4…
所有的vhost我都设置成internat内网模式,网络名称为intnal,网关为192.168.56.100,意思就是通过 192.168.56.100网卡上网。其中有一台vhost1我设置为双网卡,一张为内网模式(192.168.56.100),一张为网桥模式(192.168.1.101)。两张网卡设置双网卡共享上网
虚拟机之间为局域网,其中有一台虚拟机vhost1通过与外网相连,所有局域网中的虚拟机又通过vhost1来实现上外网。这样vhost1就可以监控整个虚拟机局域网上网情况了 

posted @ 2013-06-27 22:47 Eric_jiang 阅读(329) | 评论 (0)编辑 收藏

缺省是没有密码的,当然你也就没有办法使用root登录。

添加密码的方法为:启动后使用sudo su进入root权限,然后使用passwd进行密码设置,你设置的密码就是以后要使用的密码。
posted @ 2013-06-27 09:43 Eric_jiang 阅读(298) | 评论 (0)编辑 收藏

     摘要: 在centos中可以用kickstart进行装机自动化,也可以定制一些软件包,公司的需要的基础系统里面很多软件参数、选项、内核都经过优化,所以用kickstart装起来虽然方便但是后期调整很麻烦,所以打算换种方法,思路如下:    把经过优化的系统整体打包,做成一个原始的tar包,由于linux是文件系统,所以只要在新硬盘上划好分区好以后,解压打好的tar系统包就可以了,然后安...  阅读全文
posted @ 2013-06-23 20:57 Eric_jiang 阅读(381) | 评论 (0)编辑 收藏

使用qume软件安装CentOS 6.3-86的详细步骤:

步骤一:

win+r:打开运行,输入cmd,进入命令行模式:

2、进入qemu的目录:

cd "目标文件夹名"

例:

 3、使用qemu-img命令创建一个虚拟机文件

qemu-img create -f qcow centos.img 10G.

这是最简单的qemu-img的使用方式 ,创建一个10G的raw格式的虚拟硬盘镜像

create 参数表示创建

-f 参数表示创建文件格式,后边所带的子参数qcow 表示qemu镜像格式

linux.img为文件名称

4G为所创建虚拟机文件的上限大小,也就是虚拟机的硬盘大小

 

附:建立其他格式镜像的方法:

qemu-img.exe create -f qcow harddisk.qcow 10G

创建一个QCOW格式的硬盘硬盘镜像,这样的格式可以随使用的空间改变镜像的大小

qemu-img.exe create -f qcow2 harddisk.qcow2 10G

创建一个QCOW2格式的硬盘硬盘镜像,这样的格式可以使用VM快照

 

转化成其他格式文件的方法:

qemu-img.exe convert harddisk.img -O qcow harddisk.qcow

将raw格式的虚拟硬盘转换为qcow格式

qemu-img.exe convert -f raw harddisk.img -O qcow2 harddisk.qcow2

将raw格式的虚拟硬盘转换为qcow2格式

 下载地址:

http://mirrors.163.com/centos/6/isos/i386/CentOS-6.3-i386-LiveCD.iso

http://mirrors.163.com/centos/6.4/isos/i386/CentOS-6.4-i386-minimal.iso

4、qemu.exe -L . -m 1024 -hdacentos.img -cdrom CentOS-6.3-i386-LiveCD.iso -boot d

注:此处的镜像文件要放在qemu的目录下

-m 1024 为虚拟机分配1024MB内存

-hda filename.img 刚才 -创建的硬盘文件

-cdrom CentOS-6.3-i386-LiveCD.iso 为虚拟机的光驱中插入光盘 CentOS-       6.3-i386-LiveCD.iso

-boot d 虚拟机光盘启动

输入命令的截图:

 

 5、下面进行安装centos 6.3

将光标定位到Install,按下回车开始安装

基本就是点下一步的问题了,记住选好语言和时区,不然有点小麻烦的

安装的时候还有一点就是分区的问题,可以自行选择

 

使用所有空间:这个是对整个硬盘里的数据都进行清空,请慎重

替换现有的Linux:安装程序自动识别已有的Linux系统,并对应的将文件按已有的分区格式进行重新安装

使用剩余空间:指硬盘中还有没有被分区的扇区

创建自定义布局:指自行对硬盘进行分区操作,建议是对linux比较熟的人进行操作

6、第一次进入系统的配置

比较简单,无非是点击确定和设置用户账户和密码什么的

  

 7、登陆系统:

登陆界面:

主界面:

 

附:

如果每次想从文本界面启动,不想从图形化界面启动,可以做以下的改动

在/etc/inittab中,是把id:5:initdefault: 中的5改为3

或者

在机器正常启动完毕任何时候,按alt+ctrl+F1~F6切换到文本模式。

如果想从图形化界面启动:

在/etc/inittab中,是把id:3:initdefault: 中的3改为5

或者再开机的时候startx或者init 5,也能从文本界面启动到图形化界面

按alt+ctrl+F7切换到图形模式

posted @ 2013-06-23 19:15 Eric_jiang 阅读(433) | 评论 (0)编辑 收藏

Windows 下直接运行 Linux的Live CD版的方法

      一个偶然的机会,我发现.Live CD 版的Linux可以借助 qume在Windows下直接运行;方法是下载linux-tr127 下载地址http://www.orsoon.com/down.asp?id=1372&downid=8实 际上这个软件包是由tr127 用qume这个虚拟机制作的可在Windows下运行的虚拟Linux ;下载这个压缩包,解压之后可单击linux.bat这个文件,就可直接运行虚拟的Linux;但是这个自带的Linux功能太有限了.下面就是对它的改 造---偷天换日.你会发现在linux-tr127这个目录下有一个iso文件,它就是一个linux live cd的镜像文件,我们可以用其它linux发行版的Live CD版本的iso镜像文件替换这个iso文件的功能,来运行其它你喜欢的Linux版本,具体做法如下:
1.下载其它linux发行版的Live CD版本的iso镜像文件,这有个地址:
ftp://ftp.bioinformatics.org/pub/dnalinux/dna50p.iso
2.用文本编辑器打开linux.bat其内容如下:
REM Start qemu on windows.
@ECHO OFF

START qemu.exe -L . -m 128 -cdrom dsl.iso -enable-audio -localtime -user-net

CLS
EXIT
3. 这一步我们要做的就是,把dsl.iso换成你下载的iso文件名;如果你下载的iso文件在其它盘里也没关系,NTFS格式的盘也行.只要把路径加上就 行了,例如你的iso是c盘的TDdownload目录下的dna50p.iso那么你就用c:\TDdownload\dna50p.iso替换 dsl.iso
4.接下来就可以直接双击linux.bat运行你linux了
我试了两个版本的linux live cd 都没问题.


   这种方法是我遇到的在Windows下学习Linux的最简单的方法,比用VMware ,virtual pc来虚拟Linux要方便的多的多了.省去安装,特别是对新手来说,用此方法来学习Linux的门槛更低了.

2以下是 制作livecd的方法

我说的5步指5个步骤:
1). 系统环境准备;
2). 安装LiveCD创建工具;
3). 创建LiveCD ISO;
4). 把LiveCD ISO复制到存储器中,例如DVD,U盘;
5). 测试
开始之前,首先我们要了解LiveCD创建工具是怎样工作的:
In a nutshell, the livecd-creator program    

* Sets up a file for the ext3 file system that will contain all the data comprising the live CD   
* Loopback mounts that file into the file system so there is an
installation root    
* Bind mounts certain kernel file systems (/dev, /dev/pts, /proc, /sys, /selinux) inside the installation root   
* Uses a configuration file to define the requested packages and
default configuration options. The format of this file is the same as is used for installing a system via kickstart.   
* Installs, using yum, the requested packages into the installation
using the given repositories    
* Optionally runs scripts as specified by the live CD configuration
file.    
* Relabels the entire installation root (for SELinux)    
*Creates a live CD specific initramfs that matches the installed
kernel    
* Unmounts the kernel file systems mounted inside the installation
root    
* Unmounts the installation root    
* Creates a squashfs file system containing only the ext3 file
(compression)    
* Configures the boot loader    
* Creates an iso9660 bootable CD 
第1步,安装系统环境:
CentOS 5.2 Linux
第2步,安装LiveCD创建工具:
编辑/etc/yum.repos.d/centos-livecd.repo,加入如下的内容:
# Name: CentOS LiveCD repository 
[livecd] 
name = CentOS $releasever - LiveCD 
baseurl = http://www.nanotechnologies.qc.ca/propos/linux/centos-live/$basearch/live
enabled=1 
protect=0 
gpgkey = http://www.nanotechnologies.qc.ca/propos/linux/RPM-GPG-KEY-PGuay 
保存之后,就可以使用yum来安装必须的LiveCD创建工具了:
# yum install livecd-tools syslinux anaconda-runtime 
第3步,创建LiveCD ISO,我们需要编辑kickstart配置文件,附件中有两个参考的kickstart文件:
  • centos-livecd-minimal.ks: a minimalistic LiveCD
    centos-livecd-desktop.ks: the CentOS LiveCD
    可通过到官网https://projects.centos.org/trac/livecd/查看具体操作及内容下载
  • 首先在系统中创建LiveCD creator的工作目录:

     

    # mkdir /server/livecd 
    # cd /server/livecd

     

    把下载的ks-configure-file保存到目录/server/livecd中,下面就可以创建liveCD ISO了:

     

    # LANG=C livecd-creator --config=centos-livecd-minimal.ks --fslabel=CentOS-5.4-minimal

     

    成功后,就会产生一个CentOS-5.4-minimal.iso的文件.

     

    第4步,把LiveCD复制到USB中:

    插入你的U盘,当系统自动mount你的U盘后,检查你的U按mount的位置

     

    # LANG=C df -h 
    Filesystem                        Size    Used Avail Use% Mounted on 
    /dev/sda7                            25G    8.5G     15G    37% / 
    /dev/sda1                            99M     18M     76M    20% /boot 
    tmpfs                                1013M         0 1013M     0% /dev/shm 
    /dev/sdb1                         982M    8.0K    982M     1% /media/usbdisk 

     

    开始复制:

    # livecd-iso-to-disk CentOS-5.4-x86_64-LiveCD.iso /dev/sdb1 
    Verifying image... 
    /tmp/CentOS-5.4-x86_64-LiveCD.iso:     ad63c0a54086eb35e892d6e1292085e3 
    Fragment sums: 9e363badf4e9359c76ce8e324bdbd82847bed2dcc8e7e22ecbb2ddda2621 
    Fragment count: 20 
    Percent complete: 100.0%     Fragment[20/20] -> OK 
    100.0 
    The supported flag value is 0 
    The media check is complete, the result is: PASS. 

    It is OK to install from this media. 
    Already set up as live image.    Deleting old in fifteen seconds... 
    Copying live image to USB stick 
    Updating boot config file 
    Installing boot loader 
    USB stick set up as live image! 

     

    第5步,测试:插入U盘,重启电脑,选择U盘启动.

     

    如果使用Wimdows的朋友,请参考:http://www.pendrivelinux.com/usb-centos-5-live-install-via-windows/

    posted @ 2013-06-23 19:00 Eric_jiang 阅读(2500) | 评论 (0)编辑 收藏

    本软件包不需要安装绝对绿色只要解压后,运行linux.bat这个文件就可以了。

    qume是一个虚拟机软件。

    dsl.iso是一个极其精减但又不缺乏应用的linux livecd映像。

    尽管这个操作系统软件包很小不能体现出linux操作系统极其强大的功能,但

    麻雀虽小五脏俱全,它是一个完整的操作系统。这也恰恰体现出在linux高效

    的特性,也绝对能让习惯windows的用户尝一下鲜。

    本软件包使用很方便,不用安装不用重启,而且可以在Windows 98/NT/2000/XP/2003

    使用起来也很方便,不用复杂的配置,只要运行里面的一个文件就可以了。

    使用方法

    1 运行linux.bat这个文件,会弹出一个窗口,然后你按照窗口出现的英文提示操作

    便可。

    2 当你用鼠标操作这个虚拟机时,你会发现鼠标移不出虚拟机的窗口,没关系的只要

    你同时按下Ctrl+Alt就会把你的鼠标从虚拟机里放出来。

    3 如果你发现linux的桌面不能完全显示,请在linux桌面单击右键system--Xvesa,

    选择一个比你windows桌面小的分辨率,这样就可以看到一个完整的linux桌面了。

    4 如果你的linux不能上网,请根据你的实际情况作一下设置,在linux桌面单击右键

    system--net setup。

    5 在linux桌面单击右键Desktop--Styles可以选择左面风格,我很喜欢里面的Tree_

    and_Moon。

    qume基本参数

    #启动顺序为硬盘

    -boot c

    #cdrom的位置

    -cdrom dsl.iso

    #使用本地时间

    -localtime

    #使用128M内存

    -m 128

    #使用网络连接

    -user-net

    虚拟机使用声卡

    #-enable-audio263
    http://download.csdn.net/detail/u011070461/5636425

    posted @ 2013-06-23 18:51 Eric_jiang 阅读(587) | 评论 (0)编辑 收藏

    在做大型商务网站时,考虑到为了分担系统负担以及提高系统安全(毕竟Apache是一个非常成熟的WEB服务器)等原因,需要将WebLogic的HTTP Server分离,而使用Apache HTTP Server;这需要安装Apache-WebLogic插件来实现。当客户端请求静态页面时,使用Apache Server,而当客户端请求动态页面时,Apache Server通过插件来使用WebLogic Server;对于客户端来说,WebLogic Server是不可见的,但是却能通过插件来使用WebLogic Server的所有服务。

      目前WebLogic支持aix,hpux11,solaris,linux等操作系统,在weblogic/lib/linux目录(不同的操作系统对应不同的目录)下,有一个共享目标文件mod_wl.so,这个文件需要安装到Apache中,所以要求Apache必须支持DSO(Dynamic Shared Object);可以通过以下命令来检测你的Apache是否支持:

    Apache_home/bin/httpd -l

      如果在列出的模块名中有mod_so.c,那么你的Apache已经支持so模块,否则需要重新编译Apache,在编译Apache时,需要加以下两个参数:

    ./configure --enable-module=so --enable-rule=SHARED_CORE

      接下来是安装mod_wl.so模块,先进入weblogic/lib/linux(假设你的操作系统是linux),用以下命令安装mod_wl.so:

    perl APACHE_HOME/bin/apxs -i -a -n weblogic mod_wl.so

      以上命令执行完后会拷贝mod_wl.so文件到APACHE_HOME/libexec目录中,并在httpd.conf文件中自动增加一行:

    LoadModule weblogic_module libexec/mod_wl.so

      另外还可以在Apache的httpd.conf文件中设置Apache-WebLogic plug-in的参数,这些参数要包含在

    # 参数 值

      中,参数和值之间不能有等号;目前常用的参数有:

      1,WebLogicHost 域名:设置WebLogic主机的名字

      2,WebLogicPort 端口号:设置WebLogic主机的端口号

      3,ConnectTimeoutSecs 秒数:设置服务器连接超时秒数

      4,ErrorPage URL:如果Apache服务器不能请求WebLogic服务器,将转到你所设置的错误页面

      如果不设置以上的参数,也可以通过虚拟主机来实现,具体例子如下: #装载模块

    LoadModule weblogic_module libexec/mod_wl.so

      定位目录,这个目录必须和WebLogic Server中的放置.jsp文件的目录一致

      明确指定weblogic模块的操作者

    SetHandler weblogic-handler

      如果请求页面不存在所返回的错误页面

    ErrorPage http://www.weblogic-server.com/error.html

      客户段请求的动态文件,可增加

    MatchExpression *.jsp

      设置虚拟主机

    NameVirtualHost 10.1.1.6 #WebLogic Server的主机名和端口 WebLogicHost www.weblogic-server.com WebLogicPort 7001 #连接超时秒数 ConnectTimeoutSecs 30

      现在就可以先启动WebLogic Server再启动Apache Server,就可以测试你的JSP了:

    posted @ 2013-06-23 15:50 Eric_jiang 阅读(313) | 评论 (0)编辑 收藏

    一、JDK安装

    1、安装
    rpm -vih jdk-7u5-linux-x64.rpm
    2、设置
    理论上来说JDK装好了以后就可以正常使用了,但是为了我们日后使用的方便,需要设置一下环境变量。
    用文本编辑器打开/etc/profile
    # vi /etc/profile
    在最后加入以下几行:
    export JAVA_HOME=/usr/java/jdk1.7.0_05
    export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
    export PATH=$PATH:$JAVA_HOME/bin
    使设置生效
    # source  /etc/profile
    3、环境变量说明
    A、环境变量
    在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现“command not found”的提示内容。如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了。这涉及到环境变量PATH的设置问题,而PATH的设置也是在linux下定制环境变量的一个组成部分。
    B、变量简介
    Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。
    C、定制环境变量
    环境变量是和Shell紧密相关的,用户登录系统后就启动了一个Shell。对于Linux来说一般是bash,但也可以重新设定或切换到其它的Shell(使用chsh命令)。根据发行版本的情况,bash有两个基本的系统级配置文件:/etc/bashrc和/etc/profile。这些配置文件包含两组不同的变量:shell变量和环境变量。前者只是在特定的shell中固定(如bash),后者在不同shell中固定。shell变量是局部的,而环境变量是全局的。环境变量是通过Shell命令来设置的,设置好的环境变量又可以被所有当前用户所运行的程序所使用。对于bash这个Shell程序来说,可以通过变量名来访问相应的环境变量,通过export来设置环境变量。
    注:Linux的环境变量名称一般使用大写字母
    D、环境变量设置实例

    a、产看环境变量
    如查看$PATH环境变量
    # echo $PATH
    或者
    # $PATH
    b、设置一个新的环境变量
    # export MYNAME=”my name is kevin”
    # echo $MYNAME
    my name is Kevin
    c、修改已存在的环境变量
    # MYNAME=”change name to jack”
    # echo $MYNAME
    change name to jack
    d.使用env命令显示所有的环境变量
    # env
    HOSTNAME=localhost.localdomain
    SHELL=/bin/bash
    TERM=xterm
    HISTSIZE=1000
    SSH_CLIENT=192.168.136.151 1740 22
    QTDIR=/usr/lib/qt-3.1
    SSH_TTY=/dev/pts/0
    ……
    e、使用set命令显示所有本地定义的Shell变量
    $ set
    BASH=/bin/bash
    BASH_ENV=/root/.bashrc
    ……
    f、使用unset命令来清除环境变量
    $ export TEMP_KEVIN=”kevin”     #增加一个环境变量TEMP_KEVIN
    $ env | grep TEMP_KEVIN          #查看环境变量TEMP_KEVIN是否生效(存在即生效)
    TEMP_KEVIN=kevin #证明环境变量TEMP_KEVIN已经存在
    $ unset TEMP_KEVIN            #删除环境变量TEMP_KEVIN
    $ env | grep TEMP_KEVIN       #查看环境变量TEMP_KEVIN是否被删除,没有输出显示,证明TEMP_KEVIN被清除了。
    g、使用readonly命令设置只读变量
    注:如果使用了readonly命令的话,变量就不可以被修改或清除了。
    $ export TEMP_KEVIN ="kevin"      #增加一个环境变量TEMP_KEVIN
    $ readonly TEMP_KEVIN                  #将环境变量TEMP_KEVIN设为只读
    $ env | grep TEMP_KEVIN          #查看环境变量TEMP_KEVIN是否生效
    TEMP_KEVIN=kevin        #证明环境变量TEMP_KEVIN已经存在
    $ unset TEMP_KEVIN          #会提示此变量只读不能被删除
    -bash: unset: TEMP_KEVIN: cannot unset: readonly variable
    $ TEMP_KEVIN ="tom"        #修改变量值为tom会提示此变量只读不能被修改
    -bash: TEMP_KEVIN: readonly variable
    h、通过修改环境变量定义文件来修改环境变量
    需要注意的是,一般情况下仅修改普通用户环境变量配置文件,避免修改根用户的环境定义文件,因为那样可能会造成潜在的危险。
    $ cd ~                                  #到用户根目录下
    $ ls -a                                 #查看所有文件,包含隐藏的文件
    $ vi .bash_profile                #修改用户环境变量文件
    例如:
    编辑你的PATH声明,其格式为:
    PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
    你可以自己加上指定的路径,中间用冒号隔开。
    环境变量更改后,在用户下次登陆时生效。
    如果想立刻生效,则可执行下面的语句:$source .bash_profile
    需要注意的是,最好不要把当前路径”./”放到PATH里,这样可能会受到意想不到的攻击。
    完成后,可以通过$ echo $PATH查看当前的搜索路径。这样定制后,就可以避免频繁的启动位于shell搜索的路径之外的程序了。
    E、学习总结

    a、Linux的变量种类
    按变量的生存周期来划分,Linux变量可分为两类:
    1、永久的:需要修改配置文件,变量永久生效。
    2、临时的:使用export命令行声明即可,变量在关闭shell时失效。
    b、设置变量的三种方法

    1、在/etc/profile文件中添加变量【对所有用户生效(永久的)】
    用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。
    例如:编辑/etc/profile文件,添加CLASSPATH变量
    # vi /etc/profile
    export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
    注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效。
    2、在用户目录下的.bash_profile文件中增加变量【对单一用户生效(永久的)】
    用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。
    例如:编辑guok用户目录(/home/guok)下的.bash_profile
    $ vi /home/guok/.bash.profile
    添加如下内容:
    export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
    注:修改文件后要想马上生效还要运行$ source /home/guok/.bash_profile不然只能在下次重进此用户时生效。
    3、直接运行export命令定义变量【只对当前shell(BASH)有效(临时的)】
    在shell的命令行下直接使用[export变量名=变量值]定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。
    二、JBOSS安装

    1、安装
    安装在/usr/jboss目录中
    # cd /usr
    # mkdir jboss
    # cd jboss
    # tar -zxvf /root/jboss-as-7.1.1.Final.tar.gz
    2、环境配置
    # vi /etc/profile
    在最后加入以下几行:
    export JBOSS_HOME=/usr/jboss/jboss-as-7.1.1.Final
    export PATH=$PATH:$JBOSS_HOME/bin
    使设置生效
    # source /etc/profile
    3、启动及关闭JBoss

    a、启动JBoss

    standalone 模式:
    # standalone.sh &
    # standalone.sh --server-config=standalone-ha.xml &

    dmain 模式:
    # domain.sh
    # domain.sh --domain-config=domain-osgi-only.xml &

    b、关闭JBoss
    # jboss-cli.sh --connect command=/host=master:shutdown

    c、查看JBoss服务
    # ps -aux|grep jboss

    三、JBOSS配置

    1、外部访问设置
    JBoss默认是只允许本地访问,有就是只能通过127.0.0.1访问,需要改$JBOSS_HOME/standalone/configuration/standalone.xml或$JBOSS_HOME/domain/configuration/domain.xml文件,根据相应的启动模式修改配置文件。
    standalone:



    2、登录管理后台
    添加管理用户
    # add-user.sh
    根据提示操作

    3、域配置
    A、Master控制实例
    a、准备
    修改$JBOSS_HOME/domain/configuration/domain.xml文件:
            <server-group name="other-server-group" profile="full-ha">
                <jvm name="default">
                    <heap size="64m" max-size="512m"/>
                </jvm>
                <socket-binding-group ref="ha-sockets"/>
            </server-group>
    ==》
            <server-group name="other-server-group" profile="full-ha">
                <jvm name="default">
                    <heap size="64m" max-size="512m"/>
                </jvm>
                <socket-binding-group ref="full-ha-sockets"/>
            </server-group>
    原因:配置过程中这项配置会引起错误
    b、修改$JBOSS_HOME/domain/configuration/host.xml文件:
    <interfaces>  
    <interface name="management">  
    <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>  
    </interface>  
    <interface name="public">  
    <inet-address value="${jboss.bind.address: 127.0.0.1}"/>  
    </interface>  
    <interface name="unsecure">  
    <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>  
    </interface>  
    </interfaces>
    ==》
    <interfaces>  
    <interface name="management">  
    <inet-address value="${jboss.bind.address.management:192.168.0.204}"/>  
    </interface>  
    <interface name="public">  
    <inet-address value="${jboss.bind.address:192.168.0.204}"/>  
    </interface>  
    <interface name="unsecure">  
    <inet-address value="${jboss.bind.address.unsecure:192.168.0.204}"/>  
    </interface>  
    </interfaces>
    c、添加安全用户
    # add-user.sh
    用户名为Slava实例的$JBOSS_HOME/domain/configuration/host.xml文件host元素的name属性值
    <host name="slave205" xmlns="urn:jboss:domain:1.2">
    A、Slave实例
    a、删除$JBOSS_HOME/domain/configuration/domain.xml文件
    b、修改$JBOSS_HOME/domain/configuration/host.xml文件:
    <host name="slave205" xmlns="urn:jboss:domain:1.2">  
    <management>  
    <security-realms>  
    <security-realm name="ManagementRealm">  
    <server-identities>  
    <secret value="MTIzNDU2"/>//在Master实例中建立 slave205 访问用户的密码的Base64编码 
    </server-identities>  
    <authentication>  
    <properties path="mgmt-users.properties" relative-to="jboss.domain.config.dir"/>  
    </authentication>  
    </security-realm>  
    <security-realm name="ApplicationRealm">  
    <authentication>  
    <properties path="application-users.properties" relative-to="jboss.domain.config.dir" />  
    </authentication>  
    </security-realm>  
    </security-realms>  
    <management-interfaces>  
    <native-interface security-realm="ManagementRealm">  
    <socket interface="management" port="${jboss.management.native.port:9999}"/>  
    </native-interface>  
    </management-interfaces>  
    </management>  
    <domain-controller>  
    <remote host="192.168.0.204" port="9999" security-realm="ManagementRealm"/>  
    </domain-controller>  
    <interfaces>  
    <interface name="management">  
    <inet-address value="${jboss.bind.address.management:192.168.0.205}"/>  
    </interface>  
    <interface name="public">  
    <inet-address value="${jboss.bind.address:192.168.0.205}"/>  
    </interface>  
    <interface name="unsecure">  
    <inet-address value="${jboss.bind.address.unsecure:192.168.0.205}"/>  
    </interface>  
    </interfaces>  
    ……
    </host>
    posted @ 2013-06-23 15:42 Eric_jiang 阅读(1776) | 评论 (0)编辑 收藏

    安装tomcat6

    1yum install tomcat6 tomcat6-webapps tomcat6-admin-webapps

    启动tomcat6

    1service tomcat6 start

    停止tomcat6

    1service tomcat6 stop

    重启tomcat6

    1service tomcat6 restart

    按照以上方法安装tomcat6默认目录在/usr/share/tomcat6/下

    配置文件默认目录在/etc/tomcat6/下

    如果访问http://localhost:8080/访问不了那大多是防火墙经用了8080端口,解决方法如下:

    1iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
    2iptables -A OUTPUT -p tcp --sport 8080 -j ACCEPT
    posted @ 2013-06-23 15:29 Eric_jiang 阅读(3141) | 评论 (0)编辑 收藏

    安装MySQL。

    [root@sample ~]# yum -y install mysql-server  ← 安装MySQL
    [root@sample ~]# yum -y install php-mysql  ← 安装php-mysql

    配置MySQL

    [root@sample ~]#vim /etc/my.cnf  ← 编辑MySQL的配置文件

    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    # Default to using old password format for compatibility with mysql 3.x
    # clients (those using the mysqlclient10 compatibility package).
    old_passwords=1  ← 找到这一行,在这一行的下面添加新的规则,让MySQL的默认编码为UTF-8
    default-character-set = utf8  ← 添加这一行

    然后在配置文件的文尾填加如下语句:

    [mysql]
    default-character-set = utf8

    启动MySQL服务

    [root@sample ~]# chkconfig mysqld on  ← 设置MySQL服务随系统启动自启动

    [root@sample ~]# chkconfig --list mysqld  ← 确认MySQL自启动 
    mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off  ← 如果2--5为on的状态就OK

    [root@sample ~]#/etc/rc.d/init.d/mysqld start  ← 启动MySQL服务

    Initializing MySQL database:         [ OK ]
    Starting MySQL:              [ OK ]
    MySQL初始环境设定

    [1]为MySQL的root用户设置密码

    MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。

    [root@sample ~]# mysql -u root  ← 用root用户登录MySQL服务器

    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 2 to server version: 4.1.20

    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> select user,host,password from mysql.user;  ← 查看用户信息
    +------+------------------------------+---------------+
    | user | host          | password |
    +------+------------------------------+---------------+
    | root | localhost        |       |  ← root密码为空 
    | root | sample.centospub.com  |       |  ← root密码为空
    |   | sample.centospub.com |       |
    |   | localhost       |       |
    |root | %                                 |XXX      |
    |   |                            |       |
    +------+------------------------------+---------------+

    4 rows in set (0.00 sec)

    mysql> set password for root@localhost=password('在这里填入root密码');  ← 设置root密码
    Query OK, 0 rows affected (0.01 sec)

    mysql> set password for root@'sample.centospub.com'=password('在这里填入root密码');  ← 设置root密码
    Query OK, 0 rows affected (0.01 sec)只有设置了这个才可以,才可以通过数据库来安装网址


    mysql> set password for root@'xxx'=password('xxx');  ← 设置root密码
    Query OK, 0 rows affected (0.01 sec)

    mysql> select user,host,password from mysql.user;  ← 查看用户信息
    +------+--------------------------------+--------------------------+
    | user | host          | password     |
    +------+--------------------------------+--------------------------+
    | root | localhost        | 19b68057189b027f |  ← root密码被设置
    | root | sample.centospub.com   | 19b68057189b027f |  ← root密码被设置
    |    | sample.centospub.com   |          |
    |    | localhost        |          |
    +------+--------------------------------+--------------------------+
    4 rows in set (0.01 sec)

    mysql> exit  ← 退出MySQL服务器
    Bye

    然后,测试一下root密码有没有生效。

    [root@sample ~]# mysql -u root  ← 通过空密码用root登录

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)  ← 出现此错误信息说明密码设置成功

    [root@localhost ~]# mysql -u root -h sample.centospub.com  ← 通过空密码用root登录

    ERROR 1045 (28000): Access denied for user 'root'@'localhost'  (using password: NO)  ← 出现此错误信息说明密码设置成功

    [root@sample ~]#mysql -u root -p  ← 通过密码用root登录
    Enter password:  ← 在这里输入密码

    Welcome to the MySQL monitor. Commands end with ; or \g.  ← 确认用密码能够成功登录
    Your MySQL connection id is 5 to server version: 4.1.20

    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> exit
    Bye

    [root@sample ~]# mysql -u root -h sample.centospub.com -p  ← 通过密码用root登录
    Enter password:  ← 在这里输入密码

    Welcome to the MySQL monitor. Commands end with ; or \g.  ← 确认用密码能够成功登录
    Your MySQL connection id is 6 to server version: 4.1.20

    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> exit  ← 退出MySQL服务器
    Bye


    [2] 删除匿名用户

    在MySQL刚刚被安装后,存在用户名、密码为空的用户。这使得数据库服务器有无需密码被登录的可能性。为消除隐患,将匿名用户删除。

    [root@sample ~]# mysql -u root -p  ← 通过密码用root登录
    Enter password:  ← 在这里输入密码

    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 7 to server version: 4.1.20

    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> select user,host from mysql.user;  ← 查看用户信息
    +------+----------------------------+
    | user | host         |
    +------+----------------------------+
    |   | localhost       |
    | root | localhost       |
    |   | sample.centospub.com |
    | root | sample.centospub.com  |
    +------+----------------------------+
    4 rows in set (0.02 sec)

    mysql> delete from mysql.user where user='';  ← 删除匿名用户
    Query OK, 2 rows affected (0.17 sec)

    mysql> select user,host from mysql.user;  ← 查看用户信息
    +------+----------------------------+
    | user | host         |
    +------+----------------------------+
    | root | localhost      |
    | root | sample.centospub.com |
    +------+----------------------------+
    2 rows in set (0.00 sec)

    mysql> exit  ← 退出MySQL服务器
    Bye

    好了,下面都不是必须的了!
    测试MySQL


    [root@sample ~]# mysql -u root -p  ← 通过密码用root登录
    Enter password:  ← 在这里输入密码

    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 9 to server version: 4.1.20

    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> grant all privileges on test.* to centospub@localhost  identified by '在这里定义密码';  ← 建立对test数据库有完全操

    作权限的名为centospub的用户
    Query OK, 0 rows affected (0.03 sec)

    mysql> select user from mysql.user where user='centospub';  ← 确认centospub用户的存在与否
    +---------+
    | user  |
    +---------+
    | centospub |  ← 确认centospub已经被建立
    +---------+
    1 row in set (0.01 sec)

    mysql> exit  ← 退出MySQL服务器
    Bye

    [root@sample ~]# mysql -u centospub -p  ← 用新建立的centospub用户登录MySQL服务器
    Enter password:  ← 在这里输入密码

    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 10 to server version: 4.1.20

    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> create database test;  ← 建立名为test的数据库
    Query OK, 1 row affected (0.00 sec)

    mysql> show databases;  ← 查看系统已存在的数据库
    +-------------+
    | Database |
    +-------------+
    | test    |
    +-------------+
    1 row in set (0.00 sec)

    mysql> use test  ← 连接到数据库
    Database changed

    mysql> create table test(num int, name varchar(50));  ← 在数据库中建立表
    Query OK, 0 rows affected (0.03 sec)

    mysql> show tables;  ← 查看数据库中已存在的表
    +-------------------+
    | Tables_in_test |
    +-------------------+
    | test     |
    +-------------------+
    1 row in set (0.01 sec)

    mysql> insert into test values(1,'Hello World!');  ← 插入一个值到表中
    Query OK, 1 row affected (0.02 sec)

    mysql> select * from test;  ← 查看数据库中的表的信息
    +------+-------------------+
    | num | name      |
    +------+-------------------+
    | 1   | Hello World!  |
    +------+-------------------+
    1 row in set (0.00 sec)

    mysql> update test set name='Hello Everyone!';  ← 更新表的信息,赋予新的值
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1 Changed: 1 Warnings: 0

    mysql> select * from test;  ← 查看数据库中的表的信息
    +------+----------------------+
    | num | name      |
    +------+----------------------+
    | 1   | Hello Everyone! |  ← 确认被更新到新的值
    +------+----------------------+
    1 row in set (0.01 sec)

    mysql> delete from test where num=1;  ← 删除表内的值
    Query OK, 1 row affected (0.00 sec)

    mysql> select * from test;  ← 确认删除结果
    Empty set (0.01 sec)

    mysql> drop table test;  ← 删除表
    Query OK, 0 rows affected (0.01 sec)

    mysql> show tables;  ← 查看表信息
    Empty set (0.00 sec)  ← 确认表已被删除

    mysql> drop database test;  ← 删除名为test的数据库
    Query OK, 0 rows affected (0.01 sec)

    mysql> show databases;  ← 查看已存在的数据库
    Empty set (0.01 sec)  ← 确认test数据库已被删除(这里非root用户的关系,看不到名为mysql的数据库)

    mysql> exit  ← 退出MySQL服务器
    Bye

    然后,删除测试用过的遗留用户。

    [root@sample ~]# mysql -u root -p  ← 通过密码用root登录
    Enter password:  ← 在这里输入密码

    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 12 to server version: 4.1.20

    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

    mysql> revoke all privileges on *.* from centospub@localhost;  ← 取消centospub用户对数据库的操作权限
    Query OK, 0 rows affected (0.00 sec)

    mysql> delete from mysql.user where user='centospub' and host='localhost';  ← 删除centospub用户
    Query OK, 1 row affected (0.01 sec)

    mysql> select user from mysql.user where user='centospub';  ← 查找用户centospub,确认已删除与否
    Empty set (0.01 sec)  ← 确认centospub用户已不存在

    mysql> flush privileges;  ← 刷新,使以上操作生效
    Query OK, 0 rows affected (0.01 sec)

    mysql> exit
    Bye

     

    [root@sample ~]# /etc/rc.d/init.d/httpd restart  ← 重新启动HTTP服务
    Stopping httpd:             [ OK ]
    Starting httpd:             [ OK ]

    posted @ 2013-06-23 15:14 Eric_jiang 阅读(227) | 评论 (0)编辑 收藏

    仅列出标题
    共57页: First 上一页 22 23 24 25 26 27 28 29 30 下一页 Last