Freebsd10.3(FreeBSD11 Beta1)使用手记

1.安装系统。

2.设置ssh2登录,并开启ftp。

(1)编辑/etc/ssh/sshd_config文件,设置如下:

PermitRootLogin yes

PermitEmptyPasswords no

PasswordAuthentication yes

(FreeBSD11做以上设置后,用SecureCRT连接的时候,需要将Save Session去掉,这里没有搞清楚)

(2)重新启动sshd

/etc/rc.d/sshd restart

这时,可以离开安装机器,从远程用SecureCrt,通过root操作。

(3)编辑/etc/inetd.conf,将第一行的ftp前面的#去掉,保存退出;然后编辑/etc/ftpusers,在root用户前面加上#,取消root不能登录ftp选项;运行/etc/rc.d/ftpd onestart,然后通过root即可远程访问ftp。编辑/etc/rc.conf,添加ftpd_endable=”YES”,将ftp添加到开机启动中。

3.升级ports

第一次使用:portsnap fetch extract

以后:portsnap fetch update

4.升级pkg

Pkg upgrade

/***************************************/

说明:如果上面的升级提示No mirrors remainning,请修改/etc/resolv.conf,添加以下内容

nameserver 127.0.0.1

nameserver 8.8.8.8

/***************************************/

5.安装mysql

Pkg install mysql57-server mysql57-client

很快上述内容安装完成,此时一定要注意安装完成后的提示信息,如首先要运行 mysql upgrade等,不过,这里我并没有运行,而是直接进行如下操作

(1)/usr/local/etc/rc.d/mysql-server onestart

(2)查看/root/.mysql_secret,找到里面默认的mysql密码,如7)q3kXqie20r。

(3)mysql –uroot -p7)q3kXqie20r,进入mysql

(4)此时如果要进入某个数据库会提示“You must reset your password using ALTER USER statement before executing this statement.”解决上述问题,可如下操作:

set password for 'root'@'localhost'="你的密码"

(5)退出,用新密码登录,mysql安装即可完成,然后把mysql放在启动文件中。

(6)如果想远程管理,则需要进入mysql后,用以下命令。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

然后:将my.cnf中的bind-address:127.0.0.1注释掉。

Mysql重启命令:

cd /usr/local/etc/rc.d

./mysql_server restart

6.安装nginx

Pkg install nginx

7.安装php

Pkg install php70 php70-extensions

注:如果想安装其它扩展,例如安装curl,可以:

Pkg install php70-curl

另外:pdo_mysql默认是没有安装的,需要进行安装

Pkg install php70-pdo_mysql

安装完成后,开启apc

先拷贝php.ini

Cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

然后:

echo 'apc.enable="1"' >> /usr/local/etc/php.ini

echo 'apc.shm_size="32M"' >> /usr/local/etc/php.ini

8.让nginx支持php,将nginx、php-fpm加入启动。编辑/usr/local/etc/nginx/nginx.conf,将php部分前面的#去掉

location ~ \.php$ {

root           html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  /usr/local/www/nginx$fastcgi_script_name;

include        fastcgi_params;

}

标注:红色部分为网站根目录

重启php-fpm,nginx

Service php-fpm restart

Service nginx restart

将上述三个服务加入启动项:

Mysql_enable=”YES”

Nginx_enable=”YES”

Php_fpm_enable=”YES”

OK,测试一下php7的性能。

在/tmp下新建一个php文件:ee /tmp/test.php,写入以下内容

<?php

$a=array();

for($i=0;$i<1000000;$i++)

$a[$i]=$i;

foreach($a as $i)

array_key_exists($i,$a);

?>

运行以下语句:

Time /usr/local/bin/php /tmp/test.php

结果如下:

root@slj:/ # time /usr/local/bin/php /tmp/test.php

0.087u 0.237s 0:00.35 88.5%     4330+334k 1+0io 0pf+0w

再和php5.5相比,呵呵,性能不是一般地高啊。

1.484u 0.296s 0:02.48 71.3%     4406+640k 17+0io 115pf+0w

9.编译内核

(1)进入 /usr/src/sys/i386/conf 目录下面, 复制 GENERIC 配置文件, 并给这个文件起一个容易辨认的名称。(当然这里根据你的机器类型而定,如果是amd64,需要将i386改为amd64)

# cd /usr/src/sys/i386/conf

# cp GENERIC MYKERNEL

# cp GENERIC GENERIC201607

而我这里一般将GENERIC复制两份,只对MYKERNEL进行修改,另一份是用来救命的。

(2)对MYKERNEL进行修改,修改的内容可以参照手册的注释进行,比如我会将一些用不到的硬件全部注释起来,如软驱,SCSI设备,RAID设备,用不到的CPU类型等。

(3)编译内核并进行安装

Cd  /usr/src

# make buildkernel KERNCONF=MYKERNEL

# make installkernel KERNCONF=MYKERNEL

如果编译过程中出现错误,如找不到.h文件等,要看一下是哪个设备用到了这个.h文件,如果用不着,再编辑MYKERNEL注释掉找不到的设备,一般能通过,当然时间比较长。

最后,重启机器,看一下/boot/kernel下的kernel文件,是不是发现小了很多,机器启动速度也比以前要快一些呢。

Freebsd10.3(FreeBSD11 Beta1)使用手记的更多相关文章

  1. Linux.NET实战手记—自己动手改泥鳅(上)

    各位读者大家好,不知各位读者有否阅读在下的前一个系列<Linux.NET 学习手记>,在前一个系列中,我们从Linux中Mono的编译安装开始,到Jexus服务器的介绍,以及如何在Linu ...

  2. Linux.NET学习手记(7)

    前一篇中,我们简单的讲述了下如何在Linux.NET中部署第一个ASP.NET MVC 5.0的程序.而目前微软已经提出OWIN并致力于发展VNext,接下来系列中,我们将会向OWIN方向转战. 早在 ...

  3. Linux.NET学习手记(8)

    上一回合中,我们讲解了Linux.NET面对OWIN需要做出的准备,以及介绍了如何将两个支持OWIN协议的框架:SignalR以及NancyFX以OwinHost的方式部署到Linux.NET当中.这 ...

  4. 关于《Linux.NET学习手记(8)》的补充说明

    早前的一两天<Linux.NET学习手记(8)>发布了,这一篇主要是讲述OWIN框架与OwinHost之间如何根据OWIN协议进行通信构成一套完整的系统.文中我们还直接学习如何直接操作OW ...

  5. U3D DrawCall优化手记

    在最近,使用U3D开发的游戏核心部分功能即将完成,中间由于各种历史原因,导致项目存在比较大的问题,这些问题在最后,恐怕只能通过一次彻底的重构来解决 现在的游戏跑起来会有接近130-170个左右的Dra ...

  6. 信息系统实践手记5-CACHE设计一例

    说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统 ...

  7. 信息系统实践手记6-JS调用Flex的性能问题一例

    说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统 ...

  8. SQL Server 2016 CTP2.2 安装手记

    SQL Server 2016 CTP2.2 安装手记 下载一个iso文件,解压出来(大约2.8G左右),在该路径下双击Setup.exe即可开始安装. 安装之前请先安装.NET 3.5 SP1,在服 ...

  9. Knockout.js随手记(2)

    计算属性 konckout.js的API文档,写的极为详细和生动,透过MVVM的运作原理,开发时只需专注于定义ViewModel逻辑,不需耗费心力处理TextBox.Select的onchange.o ...

随机推荐

  1. linux下线程的分离和结合属性

    在任何一个时间点上,线程是可结合的(joinable),或者是分离的(detached).一个可结合的线程能够被其他线程收回其资源和杀死:在被其他线程回收之前,它的存储器资源(如栈)是不释放的.相反, ...

  2. Oracle数据库学习(三):Oracle数据库的环境配置与安装

    1.解压oracle安装包 将oracle的安装包和补丁包都存放在/home/oracle/soft目录下,然后对其进行解压,建议以root权限进行解压. unzip p13390677_112040 ...

  3. jQuery 发送 ajax json 请求。。

    $.extend({ postJson: function (data) { data = data || {} $.ajax({ type: "POST", url: data. ...

  4. git 远程库和url

    我们使用 git remote add origin <url> 来关联远程主机,这个origin就是关联的远程主机名,如果我们想同时关联两个远程主机,我们可以用 git remote a ...

  5. Github概念理解备忘录

    总结: add就是用来建立跟踪,添加文件到缓存区: commit就是把文件缓存区的文件正式加到本地库中: push就是把本地库更新到远程库中: git命令的操作要在仓库所在目录下进行才有效: 在Git ...

  6. LINQ入门教程之各种标准查询操作符(二)

    续上篇LINQ入门教程之各种标准查询操作符(一) LINQ入门教程之各种标准查询操作符(二) 7.  聚合操作符 8.  集合操作符 9.  生成操作符 #region 生成操作符 即从现有序列的值中 ...

  7. DB2 Package Issues and Solution

    Client 从 10.1 升级到11.1之后,而server端的DB 是10.1 版本,当客户执行sql语句时候报错: select * from ebcc.eol_item_info where ...

  8. 测试Servlet生命周期例子程序

    写一个类TestLifeCycleServlet,生成构造器TestLifeCycleServlet();重写HttpServlet的doGet();重写GenericServlet的destroy( ...

  9. android开发之提高应用启动速度_splash页面瞬间响应_避免APP启动闪白屏

    Application和Activity中的onCreate都进行了优化,基本没有耗时操作,但是启动应用之后还是会闪现一下白色背景,然后才进入Splash页面,对比了一下QQ.微信.微博等客户端,点击 ...

  10. disable Nouveau kernel driver

    nano /etc/modprobe.d/blacklist-nouveau.conf with the following contents: blacklist nouveau options n ...