无密码登录原理:

w600

首先在Master上生成一个密钥对,包括一个公钥和一私钥,然后将所有的公钥复制到所有的Slave上。当Master通过SSH连接登录时,Slave会生成一个随机数并用Master的公钥对随机数进行加密,并发送给Master。Master通过收到加密数之后再用私钥解密,并将解密数回传给Slave,Slave确认解密数无误之后就允许Master进行连接了,这就是一个公钥认证过程。

我在本地搭建了三台虚拟机来测试免密登录,其中一台为Master,其余两台为Slave:

继续阅读

以前祥哥写的,这里只是在ubuntu上的配置,还有其他配置需要登录万网,这里的配置我会在后面的博文中写。
Apache配置虚拟主机

详细内容请参考Apache虚拟主机指南,下面给出一个简单的例子

域名解析

添加A记录指向服务器IP

创建虚拟主机

cd /srv/www

创建程序目录 例如

xxx.youthol.cn 及 xxx.youthol.cn/logs

修改目录的所有者及用户组

sudo chown -R www-data:www-data xxx.youthol.cn
cd /etc/apache2/sites-available

复制已有的配置文件

sudo cp xx.youthol.cn xxx.youthol.cn

修改配置文件

sudo vim xxx.youthol.cn

例如:


ServerName  xxx.youthol.cn
ServerAlias xxx.youthol.cn xxx.xxx  #非必须,如有别名,可添加
DocumentRoot /srv/www/xxx.youthol.cn
ErrorLog /srv/www/xxx.youthol.cn/logs/error.log
CustomLog /srv/www/xxx.youthol.cn/logs/access.log combined

保存文件后,执行命令如下命令启用站点

sudo a2ensite xxx.youthol.cn 

将会在sites-enabled目录下创建相应的软链

需要Apache重新载入配置

sudo /etc/init.d/apache2 reload

浏览器中输入xxx.youthol.cn查看,万网域名解析需要时间生效,请耐心等待

如果因配置错误导致Apache无法启动,请使用如下命令重启Apache

sudo /etc/init.d/apache2 restart

可能导致的错误:

1.配置文件出错:修改配置文件后重新载入apache配置

2.无法在logs目录中创建日志文件:如果已经将logs的所有者修改为www-data,请尝试将其权限设置为777

停用站点

sudo a2dissite xxx.youthol.cn

Apache错误日志目录,有问题请先看提示再看这里

/var/log

我发现我做事情是十分没有耐性的,自从上一篇写完之后就没有动手了,一直想着要接着写,把他洗完,可是就不想动手, [撇嘴] ,今天终于耐得住性子,把下面的这些写出来。

另外,还是强调一下,上次的那个文章(上一篇)是我最常用的,不知道是不是其他人也常用的,就那样结束了,下面的这些是我不怎么常用的,不过在使用的时候要想更加方便一些的话,那么下面的这些知识无疑是帮助你大忙的,所以,多学习一点吧,我也是边写边做的,共同学习了。 [可爱]

---------------------------------我是华丽丽的分割线---------------------------------------------------------

上一篇(已经加入超链接,点击进入)我们讲过了,如何进入Vim,怎么样编辑以及如何保退出等基本的操作,对于一般的用户而言,这些就已经足够了,像插入复制、替换、查找等都可以在编辑模式下自己去完成,当时是在文档不大的情况下,如果文档很大,而且查找的内容又很难得话,那么就有必要来学习这些命令了。

---------------------------------第六步、方便的Vim---------------------------------------------------------

一、复制

首先要注意的是,Vim中的这些复制替换查找等操作都是在命令行模式下进行的,这也很容易理解,因为如果是在编辑模式下,是直接往里面输入字符。

在命令行模式习下,直接输入下面的字符就可以进行操作了。

1.【yw】复制光标之后的一串字符,如果有空格的话,到空格就停止复制,

比如:The best Writer.光标在开头的话,使用yw,是复制The,如果是ThebestWriter,则全部复制,很简单吧。

2.【#yw】其中#用数字替换,就是复制几个单词,也是以空格为间隔点。

比如:The Best Writer.在开头用2yw,就是复制了The Best,其他的自己去试试看。

3.【yy】复制所在行。

4.【#yy】复制光标所在行与下面的行数,总共#行。

5.【p】粘贴,将光标移至要粘贴的地方,输入p就站粘贴了。

PS:复制的命令必须与p想结合才能完成复制与粘贴的功能。

二、替换

1.【r】替换光标所在处的字符

2.【R】替换光标所在行的字符

PS:替换完成后,按【ESC】键退出替换模式。

三、查找

1.【/关键字】,查找关键字,按n是往下寻找,

2.【?关键字】,查找关键字,按n是往上寻找。

PS:注意,都是查找功能,一个按n向下查找,一个按n向上查找。

四、跳行

1.【Ctrl+g】是列出光标所在行行号,其实也没有,vim中右下角也有显示。比如:13.1就是光标目前处在13行,第一个字符。

2.【#G】是跳至第几行,比如5G,是跳到第五行行首,要想知道第几行,那就输入【:set nu】就会列出行号。

五、翻屏

1.【Ctrl+f】向前翻一页,

2.【Ctrl+b】向后翻一页,

3.【Ctrl+d】向前翻半页,

4.【Ctrl+u】向后翻半页。

六、其他

所有的基本操作差不多就是这么些了,另外补充一些其他常用的

【u】,恢复上一次的操作

想要学习更多,以及还有厎行模式的命令这里就不多说了,因为我也不会~~~

用到的很少,以后要多接触ubuntu系统了。

OK,总算写完了。 [大哭]   [大哭]   [大哭]   [大哭]   [大哭]   [大哭]

因为博客的原因,不能在线安装主题与插件,只能手动的上传下载好的文件,这样很麻烦,但是也没有什么办法了,现在还是不能解决不能在线安装插件与主题的问题,我也尝试着修改权限,可是都改成最高的权限还是不行,实在是没辙了。

所以,使用Vim的情况就比较多了,进入小服务器,直接在线编辑就可以了,不用每次在本地测试后然后上传覆盖原先文件那么麻烦。

OK,现在开始,Vim的使用。

-------------------------------------------------------第一步、认识Vim--------------------------------------------------------------------

Vim是一个类似于Vi的文本编辑器,不过在Vi的基础上增加了很多新的特性,Vim普遍被推崇为类Vi编辑器中最好的一个,Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

-------------------------------------------------------第二步、在ubuntu中安装Vim---------------------------------------------------

如果安装的ubuntu版本是控制台的版本的话不用安装Vim,控制台版本中Vim与ubuntu一起发行。

在桌面版本下,需要安装Vim,安装方法有两种,第一种、进入Ubuntu Software Center中搜索vim-gtk,并安装 Vi IMproved - enhanced vi editor - with GTK2 GUI;第二种、进入终端,输入sudo apt-get install vim-gtk,会自动安装。

-------------------------------------------------------第三步、Vim三个模式--------------------------------------------------------------

在Vim中有三种模式

  • 命令行模式command mode)

进入Vim后就处在命令行模式,在此模式下可以控制光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

  • 插入模式(Insert mode)

进入Vim后,输入"i"便进入此模式,在此模式下,可以做文字输入,然后按“ESC”键返回命令行模式。

  • 底行模式(last line mode)

文件保存或者退出以及设置编辑环境,查找字符串等更多功能都在这里。

-------------------------------------------------------第四步、Vim基本操作--------------------------------------------------------------

前面说了一大推,现在才是Vim的基本操作,因为本人用过Vim的次数也不是很多,并且每次使用的时候也只是简单的字符输入然后退出而已,其他的功能没用过,不过,有待研究哦~~好了,那就说说基本的吧。

  1. 在终端中,直接输入vim,就进入了vim,记住,刚进入Vim的时候是处在命令行模式。会出现一些文本,一些提示,可以看一下,不过记住,这一条提示:输入:q 退出。当然,也可以输入vim 文件名,就可以打开文件了。
  2. 想要进入vim,录入字符的话,输入——i——什么都不要,就是一个i就可以了,就进入插入模式,此时原先提示小时,你可以进行输入字符了。
  3. 当你操作完成后,字符写完之后,按——ESC键——可以退出插入模式,进入命令行模式,此时,输入——:w 文件名称——就可以将录入的字符保存为一个文件了,例如:w  index.php,就保存为了index.php。然后输入——:q——便可以退出Vin。

 

OK,上面就是最最基本的Vim插入字符的流程了,从打开到结束,下面说的也是很重要的Vim操作,学习一下咯。

-------------------------------------------------------第五步、Vim拓展-------------------------------------------------------------------

  • 插入模式的拓展

          输入【i】是进入插入模式,是在光标当前位置开始输入字符。

           输入【a】是在进入插入模式后,在光标的下一个位置输入字符。

           输入【o】是在进入插入模式后,插入新的一行,从行首开始输入文字。 在光标的下一行插入新的一行。

记住:在编辑模式下返回命令行模式,直接按【ESC】键。在键盘的左上角。

  • 厎行模式的拓展

            输入【:wq】是保存并退出vim

            输入【:w 新文件名】是保存成文件,文件名就是:w后面的

            输入【:q!】不保存,强行退出vim

其实写到这里,Vim的一些基本操作才算刚刚完成,如果你看到这里的话,说明你刚刚入门,哈哈,前面还有一段好长的路要走啊。

明天我会继续更新的,包括Vim中其他常用的一些拓展,包括,复制、替换、查找、跳行、翻屏等等,要想真的学会Vim必须要下一定的功夫,这样才会有收获。

好了,今天很晚了,凌晨30分了,我要回去睡觉了,明天考高数,期望不要挂了啊~~~ [大哭]。。

记下来,以后会用到。

-----------------------------------------------

这是再一次的改动,额,可能我记性真的不好,总是记不住,可能就没怎么在意的去记过,每次上传文件都要打开来看,哈哈,有用的。----13年7月5日添加。

-----------------------------------------------------

ubuntu解压命令全览

.tar

解包:tar xvf FileName.tar

打包:tar cvf FileName.tar DirName

注:tar是打包,不是压缩!

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.gz

解压1:gunzip FileName.gz

解压2:gzip -d FileName.gz

压缩:gzip FileName

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.tar.gz 和 .tgz

解压:tar zxvf FileName.tar.gz

压缩:tar zcvf FileName.tar.gz DirName

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.bz2

解压1:bzip2 -d FileName.bz2

解压2:bunzip2 FileName.bz2

压缩: bzip2 -z FileName

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.tar.bz2

解压:tar jxvf FileName.tar.bz2

压缩:tar jcvf FileName.tar.bz2 DirName

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.bz

解压1:bzip2 -d FileName.bz

解压2:bunzip2 FileName.bz

压缩:未知

.tar.bz

解压:tar jxvf FileName.tar.bz

压缩:未知

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.Z

解压:uncompress FileName.Z

压缩:compress FileName

.tar.Z

解压:tar Zxvf FileName.tar.Z

压缩:tar Zcvf FileName.tar.Z DirName

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.zip

解压:unzip FileName.zip

压缩:zip FileName.zip DirName

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.rar

解压:rar x FileName.rar

压缩:rar a FileName.rar DirName

rar请到:http://www.rarsoft.com/download.htm 下载!

解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):

[root@www2 tmp]# cp rar_static /usr/bin/rar

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.lha

解压:lha -e FileName.lha

压缩:lha -a FileName.lha FileName

lha请到:http://www.infor.kanazawa-it.ac.jp/~ishii/lhaunix/下载!

>解压后请将lha拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):

[root@www2 tmp]# cp lha /usr/bin/

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.rpm

解包:rpm2cpio FileName.rpm | cpio -div

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~

.deb

解包:ar p FileName.deb data.tar.gz | tar zxf -

~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.

tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea

解压:sEx x FileName.*

压缩:sEx a FileName.* FileName