Tag Archives: ports

解决freebsd升级到最新ports遇到的问题

系统环境

uname -a
FreeBSD AN 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Wed Jul 31 16:20:23 CST 2013   amd64

更新系统的ports tree

先su获取root权限:

portsnap fetch
portsnap extract

出错

安装vim:

cd /usr/ports/editors/vim
make install clean

出错:

Unknown modifier 't'

Unknown modifier 't'

Unknown modifier 't'

Unknown modifier 't'

"Makefile", line 137: Malformed conditional (${PYTHON_REL} < 300)
"Makefile", line 142: if-less endif
Unknown modifier 't'

Unknown modifier 't'

Unknown modifier 't'

Unknown modifier 't'

Unknown modifier 't'

"/usr/ports/Mk/bsd.sites.mk", line 953: Malformed conditional (!empty(_PERL_CPAN_ID) && ${_PERL_CPAN_FLAG:tl} == "cpan")
Unknown modifier 't'

Unknown modifier 't'

Unknown modifier 't'

Unknown modifier 't'

"/usr/ports/Mk/bsd.port.mk", line 2877: Unclosed conditional/for loop
"/usr/ports/Mk/bsd.port.mk", line 2877: Unexpected end of file in for loop.

"/usr/ports/Mk/bsd.port.mk", line 6590: Unclosed conditional/for loop
"/usr/ports/Mk/bsd.port.mk", line 6590: Unexpected end of file in for loop.

1 open conditional:
         at line 1177 (evaluated to true)
make: fatal errors encountered -- cannot continue

谷歌查了一下,原因是7.0这个release不是一个正在维护的版本了,更新后的ports tree和当前的版本不兼容。

解决办法

  • 升级当前系统到最新版本
  • 重新恢复port tree到当前对应版本

stackoverflow的一篇帖子给了我灵感,到freebsd的找到了ports tree的官方备份网站找到了压缩包,恢复之: 用root用户下载install.sh和ports.tgz到/root文件夹,执行脚本解压

sh ./install.sh

图解FreeBSD 7.0使用ports安装samba服务器

1.cd /usr/ports/net/samba34;

2.切换到root用户;

3.make install clean;

4.出现这样的编译选项:

选择需要的编译选项,一般默认就行。然后按:O,注意,不是0

5.配置samba

(1)/etc/inetd.conf 文件

去掉以下三行注释

netbios-ssn stream tcp nowait root /usr/local/samba/sbin/smbd smbd
   netbios-ns dgram udp wait root /usr/local/samba/sbin/nmbd nmbd
   swat stream tcp nowait.400 root /usr/local/samba/sbin/swat swat
(2)samba的配置文件smb.conf:
cp /usr/local/share/examples/samba34/smb.conf.default /usr/local/etc/smb.conf
需要root 权限
配置 smb.conf
更改这几行:

security = share   <—
hosts allow = 192.168.0.2  <—添写哪些IP可以访问samba服务器
guest account = root <–一般用root
然后就添加访问文件夹
[src_policy]
   path = /home/…..   <—允许访问的路径                 
   public = yes    
#   only guest = yes
   writable = yes
   printable = no
(3)启动samba:

/usr/local/etc/rc.d/samba start

(3)更多详细信息请参考FreeBSD的手册: