标签: freebsd

FreeBSD 性能调优:Sysctl 参数、loader.conf、内核

我想调整的FreeBSD的共享知识通过sysctl.conf/ loader.conf / KENCONFFreeBSD有调整/等它最初是基于伊戈尔Sysoev为的(Nginx的作者)呈现高达10-20万个的有效连接。较新版本的 FreeBSD 可以处理更多。

调整适用于 FreeBSD7 - FreeBSD-CURRENT。从 7.2 amd64 开始,默认情况下,其中一些已经很好地调整了。在 7.0 之前,其中一些仅用于引导(通过 设置 /boot/loader.conf)或根本不存在。

sysctl.conf

# No zero mapping feature
# May break wine
# (There are also reports about broken samba3)
#security.bsd.map_at_zero=0

# Servers with threading software apache2 / Pound may want to rise following sysctl
#kern.threads.max_threads_per_proc=4096

# Max backlog size
# Note Application can still limit it by passing second argument to listen(2) syscall
# Note: Listen queue be monitored …
Run Code Online (Sandbox Code Playgroud)

freebsd performance performance-tuning sysctl

131
推荐指数
4
解决办法
18万
查看次数

FreeBSD:名为 ^C 的目录(真的!) - 如何删除?

我打错字了:

$ history
169 9:34    la /usr/local/etc/
170 9:35    sudo mkdir ^C
171 9:36    sudo mkdir /usr/local/etc/dnsmasq.d
Run Code Online (Sandbox Code Playgroud)

现在我有一个名为 ^C (ctrl+C) 的文件!!当我使用时,ls我只看到一个问号(可能是由于语言环境?)

% ls -al
total 60
drwxr-xr-x  2 root   wheel    512 Jan 21 09:35 ?        <- this one
drwxr-xr-x  5 admin  wheel    512 Jan 21 16:24 .
drwxr-xr-x  3 root   wheel    512 Jan 20 14:29 ..
-rw-r--r--  1 admin  nobody  1114 Jan 20 19:10 .cshrc
-rw-------  1 admin  wheel   6002 Jan 21 15:27 .history
-rw-r--r--  1 admin  nobody …
Run Code Online (Sandbox Code Playgroud)

freebsd filesystems

128
推荐指数
9
解决办法
2万
查看次数

在 FreeBSD 系统上检查 OpenSSH 版本和更新说明

在 FreeBSD 系统 (8.1) 上,我正在寻找有关如何检查 OpenSSH 正在运行的版本的说明以及有关下载安装 OpenSSH 更新的最佳方法的说明

freebsd ssh

57
推荐指数
2
解决办法
22万
查看次数

FreeBSD 上的 ZFS:从数据损坏中恢复

我在 zpool 中有几 TB 的非常有价值的个人数据,由于数据损坏,我无法访问这些数据。该池最初是在 2009 年左右在 FreeBSD 7.2 系统上建立的,该系统在 Ubuntu 8.04 系统之上的 VMWare 虚拟机内运行。FreeBSD VM 仍然可用并且运行良好,只有主机操作系统现在已更改为 Debian 6。通过 VMWare 通用 SCSI 设备,来宾 VM 可以访问硬盘驱动器,总共 12 个。

有2个游泳池:

  • zpool01:2x 4x 500GB
  • zpool02:1x 4x 160GB

有效的那个是空的,破碎的保存着所有重要的数据:

[user@host~]$ uname -a
FreeBSD host.domain 7.2-RELEASE FreeBSD 7.2-RELEASE #0: \
  Fri May  1 07:18:07 UTC 2009                          \
  root@driscoll.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64

[user@host ~]$ dmesg | grep ZFS
WARNING: ZFS is considered to be an experimental feature in FreeBSD.
ZFS filesystem version 6
ZFS storage pool version 6 …
Run Code Online (Sandbox Code Playgroud)

freebsd zfs data-recovery

46
推荐指数
2
解决办法
1万
查看次数

我将把 FreeBSD 自动挂载器切成小块,然后在油中煮沸

我试图将主目录的层次结构暴露给许多 FreeBSD 监狱。主目录的配置使得每个目录都是唯一的 ZFS 数据集。监狱用于开发工作,因此会定期创建和销毁。

我的第一个想法是简单地使用nullfs挂载/home到 jail,但nullfs不提供任何访问从属文件系统的方法。

我的第二个想法是通过 NFS 导出目录,然后在每个 jail 中运行自动挂载程序守护程序 (amd)。如果可以在监狱内执行 NFS 挂载,这将是有效的。但事实并非如此。

我的第三个想法是在主机上运行 amd 并将nullfs挂载到监狱中……但是 amd 对nullfs 的支持不存在。

我的第四个想法是回到使用 NFS 导出目录,因为 amd 当然可以与 NFS 一起使用,对吗?不幸的是,amd 不是在目标挂载点上挂载目录,而是喜欢在临时位置 ( /.amd_mnt/...)挂载东西,然后创建符号链接……当然,这在 jail 环境中是无用的。

那么也许您可以使用nullfs将 的子目录暴露/.amd_mnt给监狱?不!这让我们回到了我的第一次尝试,我们发现无法使用nullfs访问从属文件系统。

然后我的头爆炸了。

我正在尝试做的事情有没有好的解决方案?一个糟糕的解决方案是在启动 jail 之后运行一个脚本,该脚本将为每个主目录创建多个nullfs挂载点,但这非常笨拙——它需要定期运行以考虑新目录或删除的目录。所以基本上我将不得不编写一个糟糕的自动挂载程序。

一定会有更好的办法。帮助我,Serverfault,你是我唯一的希望!

更新 1:我突然想到我可以用 解决部分问题pam_mount,尽管这充其量是不完整的。此外,文档中不清楚是否pam_mount可以自动创建目标挂载点。如果它需要先验存在挂载点,那么这个解决方案不会比我已经提出的坏自动挂载器更好。

更新 2:如下面的答案中所讨论的,VFCF_JAILNFS 文件系统上的设置确实允许 jails 执行 NFS 挂载。不幸的是,自动挂载程序继续无用的行为,并且当在监狱中运行时,它似乎非常擅长以这样的方式陷入困境,以至于需要重新启动系统才能删除进程条目。

freebsd zfs central-processing-unit jail automount

41
推荐指数
1
解决办法
2345
查看次数

有效地从 ZFS 中删除 1000 万个以上的文件

我写了一个错误的程序,它在 /tmp 下意外创建了大约 30M 的文件。(这个错误是几周前引入的,它每秒创建几个子目录。)我可以将 /tmp 重命名为 /tmp2,现在我需要删除这些文件。系统是 FreeBSD 10,根文件系统是 zfs。

与此同时,镜像中的一个驱动器出现问题,我已经更换了它。该驱动器有两个 120GB SSD 磁盘。

问题是:更换硬盘驱动器和重新同步整个阵列用了不到一个小时。删除文件 /tmp2 是另一回事。我写了另一个程序来删除文件,它每秒只能删除 30-70 个子目录。删除所有文件需要 2-4 天。

重新同步整个阵列需要一个小时,而从磁盘中删除需要 4 天,这怎么可能?为什么我的表现这么差?70 次删除/秒似乎非常非常糟糕的性能。

我可以手动删除 /tmp2 的 inode,但这不会释放空间,对吗?

这可能是 zfs 或硬盘驱动器的问题还是什么?

freebsd performance zfs

36
推荐指数
4
解决办法
1万
查看次数

为什么 Linux 比 BSD 更受欢迎?

有些人会争辩说 BSD/Unix 一直比 Linux 更可靠和稳定(当然不是我,不要伤害我!)。为什么 Linux 似乎总是击败 BSD?这是Linux故事的浪漫吗?我无意冒犯任何人,请不要冒犯。另外,请在您的回复中考虑周到和礼貌。

linux freebsd unix

31
推荐指数
2
解决办法
5万
查看次数

在 FreeBSD 上的终端中按 ctrl + 箭头键时获得 ;5D

在 centos 上,我可以通过在终端中按 ctrl + 箭头(向左或向右)来跳过一个单词。当我 ssh 进入 FreeBSD 框并尝试相同的模式时,我得到:

$ tail -f 20120412.log;5D;5D;5D
Run Code Online (Sandbox Code Playgroud)

(每次尝试 = ;5D

有没有办法来解决这个问题?我正在使用 Ubuntu 12.04 + 终结者。

提前致谢。

linux freebsd ubuntu ssh terminal

29
推荐指数
3
解决办法
8068
查看次数

我刚刚做了一个 chmod -x chmod

所以我做了一个chmod -x chmod. 我该如何解决这个问题?如何将执行权限返回给 chmod?

security linux freebsd unix

27
推荐指数
7
解决办法
1万
查看次数

FreeBSD 与 Linux 的性能?

我知道 FreeBSD 以高度稳定、安全和开源而闻名。所以我要在我的一台服务器上尝试一下。但是,我想知道使用 FreeBSD 而不是 Ubuntu 或其他 Linux 版本的优缺点是什么?我特别有兴趣了解两者在 php/mysql 性能上的差异,因为硬件是相同的,并且使用了最佳服务器配置。

谢谢

linux freebsd

25
推荐指数
5
解决办法
5万
查看次数