FreeBSD 10 发布
发行注记:http://www.freebsd.org/releases/10.0R/relnotes.html
下文翻译中。。。
主要有安全问题修复、新的驱动与硬件支持、新的命名/选项、主要bug修复、软件升级。
2.1. 安全通报
2.2. 内核变化
The use of unmapped VMIO buffers eliminates the need to perform TLB shootdown for mapping on buffer creation and reuse, greatly reducing the amount of IPIs for shootdown on big-SMP machines and eliminating up to 25-30% of the system time on i/o intensive workloads. [r248508]
[amd64] 内存寻址最大支持从1TB到了4TB. [r254466]
The ddb(4) 内核调试器具有了输出捕获的能力。
The ddb(4) 调试器支持简单的脚本编程
[amd64,i386] 支持新的Intel on-CPU Bull Mountain随机数生成器
2.2.1. 虚拟化的支持
[amd64] BSD Hypervisor, bhyve(8) 包含进了FreeBSD
virtio(4) 加入支持
[amd64,i386] 导入了准虚拟化驱动 - 支持Microsoft Hyper-V,并且是amd64 GENERIC kernel的一部分. i386, 需要手动添加 /boot/loader.conf
hv_ata_pci_disengage_load="YES"
hv_netsvc_load="YES"
hv_utils_load="YES"
hv_vmbus_load="YES"
The vmx(4) 驱动引入
[amd64,i386] Xen PVHVM 虚拟化成为 GENERIC kernel的一部分
2.2.2. ARM支持
Raspberry PI support has been added. Refer to these setup instructions and this quick start guide. [r239922]
The default ABI on ARM is now the ARM EABI. This brings a number of improvements and allows future support for VFP and Thumb-2. [r253396]
ARM support has been greatly improved, including support for ARMv6 and ARMv7, SMP and thread-local storage (TLS). Additionally support for some newer SoC like the MV78x60 and OMAP4 was added. See the announcement for further details. [r239268]
Superpages support on ARM has been added. Superpages support provides improved performance and scalability by allowing TLB translations to dynamically cover large physical memory regions. All ARMv6 and ARMv7-based platforms can take advantage of this feature. See the ARM Superpages status page for further details. [r254918]
2.2.3. 硬件支持
2.2.3.1. 多媒体支持
Support for version 2.0 of the USB Audio reference design has been added. New devices should support higher bandwidth, increased sampling frequency and wider dynamic range. [r240609]
2.2.3.2. 网络接口支持
The firmware for the mxge(4) driver has been to 1.4.55. [r236212]
The re(4) driver has been overhauled to fix a number of issues. This driver now has Wake On LAN (WOL) support.
The vr(4) driver has been overhauled to fix a number of outstanding issues. It also now works on all architectures.
[amd64,i386] The wpi(4) driver has been updated to include a number of stability fixes.
The cxgbe(4) driver has been updated to support 40G/10G Ethernet NICs based on Chelsio's Terminator 5 (T5) ASIC. [r248925]
The iw_cxgbe driver has been added. This is an experimental iWARP/RDMA driver (kernel verbs only) for Chelsio's T4 and T5 based cards. [r256694]
The Open Fabrics Enterprise Distribution (OFED) and OFED Infiniband core has been updated to the same version as supplied by Linux version 3.7 [r255932]
The Mellanox Infiniband driver has been updated to firmware version 2.30.3200 for ConnectX3 NICs. Support has been added for ConnectX3 VPI NICs, where each port can be used as Infiniband 56 GB/s or Ethernet 40 GB/s. Support has been added for dynamically loading kernel modules for Infiniband core (ibcore) and IP over Infiniband (ipoib). [r255932]
netmap(4) has been added. netmap(4) is a framework for high-performance direct-to-hardware packet IO, offering low latency and high PPS rates to userland applications while bypassing any kernel-side packet processing. With netmap(4) it is trivially possible to fully saturate a 10 Gbps network interface with minimal packet sizes. For more information, see: Netmap Project. [r227614]
2.2.4. 网络协议
carp(4) has been rewritten to make addresses more sane from the viewpoint of routing daemons such as quagga/zebra. It also brings support for a single redundant address on the subnet (carpdev), switching state with ifconfig(8), better locking and using modern kernel interfaces to allocate multicast memberships. Configuration of the CARP protocol via ifconfig(8) has changed, as well as the format of CARP events submitted to devd(8). See carp(4) for more information. The arpbalance feature of carp(4) is currently not supported anymore. [r228571]
The pf(4) firewall now supports fine-grain locking and better utilization on multi-CPU machines, resulting in significant improvements in performance. [r240233]
Support for up to 65536 routing tables has been introduced. [r250700]
Support for setting/matching differentiated services codepoints (DSCP) in IP header has been added to ipfw(8). [r248552]
2.2.5. 硬盘与存储
The aac(4) driver now supports volumes larger than 2TB in size.
The ata(4) driver now supports a spindown command for disks; after a configurable amount of time, if no requests have been received for a disk, the disk will be spun down until the next request. The atacontrol(8) utility now supports a spindown
command to configure this feature.
The hptrr(4) driver has been updated to version 1.2 from Highpoint.
nvme(4) has been added and provides NVM Express support. NVM Express is an optimized register interface, command set and feature set of PCI Express (PCIe)-based Solid-State Drives (SSDs). For more information, see nvmexpress.org. [r240616]
2.2.6. 文件系统
A new kernel-based iSCSI target and initiator has been added. [r255570]
UFS filesystems can now be enlarged with growfs(8) while mounted read-write. This is especially useful for virtual machines, allowing the addition of more harddrive space without interruption of service. [r243246]
A state of the art FUSE implementation is now part of the base system. It allows the use of nearly all fusefs file systems. [r241519]
2.2.6.1. ZFS
bsdinstall(8) now supports installing ZFS on the root file system. It includes a single configuration menu that allows you to select all of the required details, including which drives to use, what ZFS RAID level to use (taking into consideration the selected number of drives), GPT or MBR, GELI encryption, forcing 4K sectors, pool name, etc. [r256361]
Support for L2ARC compression has been added to ZFS. [r252140]
The zio nop-write improvement from Illumos was imported into FreeBSD. To reduce I/O, nop-write skips overwriting data if the (cryptographically secure) checksum of new data matches the checksum of existing data. It also saves space if snapshots are in use. This improvement only works on datasets with enabled compression, disabled deduplication and sha256 checksums. ZFS will now compare the checksums of incoming writes to the checksum of the existing on-disk data and avoid issuing any write I/O for data that has not changed. This will reduce I/O as well as space usage because if the old block is referenced by a snapshot, both copies of the block are kept even though both contain the same data. [r243524]
2.3. 用户层(Userland)变更
On platforms where clang(1) is the default system compiler (such as i386, amd64, arm), GCC and GNU libstdc++ are no longer built by default. clang(1) and libc++ from LLVM are used on these platforms by instead. GCC 4.2.1 and libstdc++ are still built and used by default on pc98 and all other platforms where clang(1) is not the default system compiler. [r255321]
clang(1) and llvm have been updated to version 3.3 release. Please refer to Clang 3.3 Release Notes. [r251662]
BIND has been removed from the base system. unbound(8), which is maintained by NLnet Labs, has been imported to support local DNS resolution functionality with DNSSEC. Note that it is not a replacement of BIND and the latest versions of BIND is still available in the Ports Collection. With this change, nslookup and dig are no longer a part of the base system. Users should instead use host(1) and drill(1) Alternatively, nslookup and dig can be obtained by installing dns/bind-tools
port. [r255949]
sysinstall has been removed from the base system. Auxiliary libraries and tools used by sysinstall such as libdisk, libftpio, and sade have also been removed. sysinstall has been replaced by bsdinstall(8) and bsdconfig(8). [r225937]
freebsd-version(1) has been added. This tool makes a best effort to determine the version and patch level of the installed kernel and userland. [r256106]
GNU patch has been removed from the base system, and replaced by a BSD-licensed patch(1) program. [r255191]
GNU sort has been removed from the base system, and replaced by a BSD-licensed sort(1) program. [r241511]
Berkeley yacc (byacc) has been imported from invisible island. This brings bison compatibilities to yacc(1) while preserving full backwards compatibility with previous version of yacc(1). [r235723]
lex(1) has been replaced by flex 2.5.37. [r250881]
make(1) has been replaced with the “Portable” BSD make tool (bmake) from NetBSD. [r250699]
Support for usernames up to 32 characters. [r243023]
The adduser(8) utility now supports a -M
option to set the mode of a new user's home directory.
BSD-licensed versions of ar(1) and ranlib(1), based on libarchive(3), have replaced the GNU Binutils versions of these utilities.
BSD-licensed versions of bc(1) and dc(1) have replaced their GNU counterparts.
chflags(1) now supports a -v
flag for verbose output and a -f
flag to ignore errors with the same semantics as (for example) chmod(1).
For compatibility with other implementations, cp(1) now supports a -a
flag, which is equivalent to specifying the -RrP
flags.
BSD-licensed version of cpio(1) based on libarchive(3), has replaced the GNU cpio. Note that the GNU cpio is still installed as gcpio
.
The env(1) program now supports -u
which will completely unset the given variable name
name
by removing it from the environment, instead of just setting it to a null value.
The fdopendir(3) library function has been added.
The fetch(3) library now supports HTTP 1.1 If-Modified-Since behavior. The fetch(1) program now supports -i
which will only download the specified HTTP URL if the content is newer than filename
filename
.
find(1) has been enhanced by the addition of a number of primaries that were present in GNU find but not FreeBSD find(1).
kgdb(1) now supports a new add-kld
command to make it easier to debug crash dumps with kernel modules.
The ls(1) program now supports a -D
option to specify a date format string to be used with the long format (-l
) output.
nc(1) now supports a -O
switch to disable the use of TCP options.
nc(1)'s -o
switch has been deprecated. It will be removed in a future release.
The ping6(8) utility now returns 2
when the packet transmission was successful but no responses were received (this is the same behavior as ping(8)). It returned a non-zero value before this change.
The realpath(1) utility now supports a -q
flag to suppress warnings; it now also accepts multiple paths on its command line.
sh(1) has many bug fixes, some new features, and will now refuse to parse some invalid scripts. Additionally, it now has filename completion and defaults to the“emacs” editing mode.
The split(1) utility now supports a -n
flag to split a file into a certain number of chunks.
The tar(1) utility now supports a -Z
flag to enable compress(1)-style compression/decompression.
The tar(1) utility now supports a --numeric-owner
flag to ignore user/group names on create and extract.
The tar(1) utility now supports the -S
flag to sparsify files on extraction.
The tar(1) utility now supports a -s
flag to substitute filenames based on the specified regular expression.
The tcgetsid(3) library function has been added to return the process group ID for the session leader for the controlling terminal. It is defined in IEEE Std 1003.1-2001 (POSIX).
top(1) now supports a -P
flag to provide per-CPU usage statistics.
zdump(8) is now working properly on 64-bit architectures.
traceroute(8) now has the ability to print the AS number for each hop with the new -a
switch; a new -A
option allows selecting a particular WHOIS server.
traceroute6(8) now supports a -U
flag to send probe packets with no upper-layer protocol, rather than the usual UDP probe packets.
2.3.1. /etc/rc.d
脚本
rc.d/sendmail
now generates and uses an SSL certificate by default when sendmail_enable="YES"
. This will allow remote MTA to use STARTTLS to encrypt incoming email. The certification is signed with a key that is thrown away and is not a substitute for generating your own properly if you need to use STARTTLS authentication. Options to control the certificate generation is documented in rc.d/sendmail
. [r256773]
The followoing rc(8) scripts have been added:
rc(8) Script | Function |
---|---|
ctld |
iSCSI target daemon startup script |
iscsictl |
iSCSI initiator management utility startup script |
iscsid |
iSCSI initiatior daemon startup script |
kfd |
Kerberos ticket forwarding daemon startup script |
local_unbound |
Unbound startup script for the local caching resolver |
postrandom |
Generates a new entropy file at system boot |
swap |
Replaces |
swaplate |
Enables swap with “late” set at system boot |
utx |
User accounting database startup and shutdown script |
The following rc(8) scripts have been removed:
rc(8) Script |
Reason |
---|---|
encswap |
Replaced by |
named |
Removed with BIND |
swap1 |
Replaced by |
2.4. 贡献软件
jemalloc(3) has been updated to 3.4.0. See this link for more details. [r251300]
AMD has been updated from 6.0.10 to 6.1.5.
awk has been to the 20121220 release.
CVS has been removed from the base system, but is still available from Ports Collection. [r251794]
Subversion has been imported into the base system and is installed as svnlite. svnlite should only be used for checking out the FreeBSD source trees and committing, and does not replace the full Subversion port. [r251886]
file has been updated to 5.11. [r234449]
hostapd has been updated from 0.5.8 to 0.5.10. [r252726]
IPFilter has been updated to 5.1.2.
less has been updated to v458. [r250592]
ncurses has been updated to 5.7-20081102.
OpenSSH has been updated to 6.4.
OpenPAM has been updated to the Micrampelis release. [r236109]
sendmail has been updated from 8.14.1 to 8.14.7.
The timezone database has been updated from the tzdata2008h release to the tzdata2009m release.
The stdtime part of libc, zdump(8) and zic(8) have been updated from the tzcode2004a release to the tzcode2009h release. If you have upgraded from source or via the freebsd-update(8), then please run tzsetup(8) to install a new /etc/localtime
.
WPA Supplicant has been updated to 2.0. [r252726]
xz has been updated from snapshot as of 12 April 2010 to 5.0.0.
2.5. Ports/Packages 基础建设
The pkg_add, pkg_create, pkg_delete, pkg_info, pkg_updating, and pkg_version utilities have been removed. pkg(7) must now be used to install binary packages.pkg(7) is the next generation FreeBSD package manager, also referred to as “pkgng”. [r257444]
2.6. 集成
The supported version of the GNOME desktop environment (x11/gnome2) has been updated from 2.20.1 to 2.22.
3. 从上一个版本升级
[amd64,i386] Beginning with FreeBSD 6.2-RELEASE, binary upgrades between RELEASE versions (and snapshots of the various security branches) are supported using the freebsd-update(8) utility. The binary upgrade procedure will update unmodified userland utilities, as well as unmodified GENERIC or SMP kernels distributed as a part of an official FreeBSD release. The freebsd-update(8) utility requires that the host being upgraded have Internet connectivity.
Source-based upgrades (those based on recompiling the FreeBSD base system from source code) from previous versions are supported, according to the instructions in /usr/src/UPDATING
.
Important:
Upgrading FreeBSD should, of course, only be attempted after backing up all data and configuration files.
FreeBSD 10 发布的更多相关文章
- FreeBSD 10安装KDE桌面环境简介(亲测bsdconfig命令有效)
FreeBSD 10出来一段时间了,自己摸索装上KDE环境,网上介绍的都是10以前版本的,要么对现在的不合适,走了一大圈弯路还是装不好:要么太繁琐且装了一堆无用的软件.本着让更多人能快速方面的入门Fr ...
- Upstart 1.10 发布,系统初始化守护进程
Upstart 是一个用以替换 /sbin/init 守护进程的软件,基于事件机制开发.可用来处理启动过程中的任务和服务启动. Upstart 1.10 发布,改进记录: New bridges: u ...
- [转]Birdfont 2.10 发布,字体编辑器
最近在忙大数据.黑天鹅算法实盘测试 许久没有更新字库方面的资料,汗一个... 今天转一个 :Birdfont 2.10 发布,字体编辑器 字体编辑器,向来很少,除了fontlab的几个昂贵的商业版,就 ...
- 回归Qt——写在Qt5.10发布之日
今天偶然看到一条关于Qt5.10发布的消息,发现Qt经历了诺基亚风波之后发展得依然良好,感到很欣慰.回头看上次关注Qt技术还是2011年,那时候用Qt4.7做一个小项目,对于一个写Win32界面和MF ...
- Ubuntu 19.10 发布 | 云原生生态周报 Vol. 24
作者 | 木苏.进超.冬岛.元毅.心水.衷源 业界要闻 1.云原生编程语言 Pulumi 1.0 pulumi ,一款中立的开源云开发平台,Pulumi 支持多语言.混合云环境.完全可扩展.初期支持 ...
- 项目管理器 ProjectManager Beta 10 发布
本次更新内容: 可以设置主界面是否显示表格线 去除了开发日志界面的表格线,看起来好像好看一些 修复主界面时间显示的问题 自定义问候语 修复习惯统计记录时间显示错误的问题 修复创建项目时间错误问题 增加 ...
- Spring Boot 1.5.10 发布:修复重要安全漏洞!!!
2018/01/31,Spring Boot团队发布了Spring Boot 1.5.10. Maven: <parent> <groupId>org.springframew ...
- 【Beta】Scrum Meeting 10 & 发布链接
目录 前言 任务分配 燃尽图 会议照片 签入记录 发布链接(5.17更新) 前言 第10次会议于5月15日22:00在一公寓三楼召开. 交流确认了各自的任务进度,确定了Beta阶段发布的相关事宜.时长 ...
- ArccGIS 10发布WFS服务并加载到Skyline中
下面用ArcGIS Server 10.0将建筑物图层发布为WFS服务. (1)创建mxd文件.ArcMap打开建筑物图层,存为Buildings.mxd文件.注意:必须统一空间参考系,且要与图层的坐 ...
随机推荐
- ORACLE 10g下载地址
ORACLE 10g下载地址 oracle 下载还需要用户名我自己注册了个方便大家使用下载 密码是这个 一般不会动了 大家也不用帮我找回密码了 每次都改 也很麻烦的如果有需要可以帮我浏览下 右侧的需要 ...
- Asp.net中的ajax回调模式(ICallbackEventHandler)
客户端回调本质上就是指通过前端的客户端脚本向服务器端传递相应的数据参数,服务器端再以接受到的参数进行查询和处理,最后将结果回传到客户端进行显示.asp.net 2.0提供了实现无刷新回调的接口ICal ...
- 学习之路三十九:新手学习 - Windows API
来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了 ...
- 论一次iOS面试
最近觉得现在所在公司平台用户量太少,自身技术已经到了一个瓶颈,是时候需要换一个用户量多的平台,好好研究下iOS的性能优化.内存优化等问题了. 所面试的公司由于一些默认的规定,就不多说了,大致是面了一个 ...
- Android 手机技巧
1. 使用其它手机做热点上网,最怕的就是有些应用会在连接 WIFI 时偷偷做一些事情,比如备份/同步数据等等.在这流量就是金钱的时代,不能白白让钱流走,这时你需要进入“设置 -> 浏览使用情况 ...
- js实现表单序列化的两种方法。
function serialize(form) { var parts = [], elems = form.elements, i = , len = elems.length, filed = ...
- VS2012文本编辑器鼠标不能滚动
- 一些常用的Git命令
1 删除文件 $ git rm filename 从已跟踪文件清单中移除,并连带从工作目录中删除指定的文件. 删除后,有2种选择: (1)如果确实要删除,则使用git commit提交. (2)如果不 ...
- 11款样式新颖的 jQuery/CSS3 网页菜单
今天为大家准备了11款样式风格挺不错的jQuery/CSS3网页菜单,主要包括面包屑菜单.下拉菜单.Tab菜单等,喜欢的朋友赶紧收藏,一起来看看这些菜单. 1.jQuery / CSS3多功能下拉菜单 ...
- Apache配置多个网站的方法
Apache的虚拟主机是一种允许在同一台机器上,运行超过一个网站的解决方案.虚拟主机有两种,一种叫基于IP的(IP-based),另一种叫基于名字的(name-based).虚拟主机的存在,对用户来说 ...