有时,我必须对服务器上的数据文件执行几次大型迁移更改,我正在寻找一种好方法来执行此操作。我正在考虑使用 rsync 从根数据文件夹开始复制我的目录结构,创建指向所有原始文件的硬链接(其中一些文件相当大),并且我可以在目标树中仅覆盖需要迁移的文件。最后,我可以通过两次mv操作安全地从旧文件切换到新文件。
但是,我似乎无法让 rsync 做到这一点。我试过
rsync -a --link-dest=$DATA $DATA $DATA/../upgrade_tmp
Run Code Online (Sandbox Code Playgroud)
但 rsync 不是创建文件的硬链接,而是完全复制它们。使用相同的源和链接目标目录是否有问题?
topOS X 上的命令非常糟糕。大多数 Linux 发行版中包含的命令允许您使用<和更改排序依据列>,有一个彩色模式(通过按下z键),以及一堆其他有用的选项。
有替换命令行工具吗?理想情况下,我想要htopOS X,但因为它依赖于/proc/文件系统(请参阅此线程),因此尚未移植(并且可能永远不会移植)
显而易见的答案是“活动监视器”,但我正在寻找命令行工具!
我有一个运行 FreeNAS 8 的家庭文件服务器。几天前,我使用 rsync 从 Mac 上传我的整个 iTunes 库,以便我可以通过网络加载我的库,而不是从慢速 USB 驱动器上加载。这基本上有效,现在 iTunes 运行得更好,但我在访问任何包含非 ascii 字符的歌曲时遇到问题(我在加载 Queensrÿche 曲目时第一次注意到这个问题)。这些文件会显示在 Finder 中,但任何访问它们的尝试都会使它们消失,直到我重新连接到服务器。
经过一番研究,我发现这是因为 OSX 使用与 Linux 不同的 UTF 字符顺序。OSX 文件系统使用 Unicode Normalization Form D (NFD),而 linux 使用 Form C (NFC)。Rsync 在执行从我的 mac 到服务器的复制时不会转换这些形式,现在当 iTunes 尝试通过网络访问具有特殊字符的文件时,服务器上的文件的编码错误并且 afpd 报告它们没有存在。
解决这个问题的最佳方法是什么?是否可以在将基本库上传到服务器时让 rsync 执行 unicode 转换?我可以将 afpd 配置为以 NFD 格式传输/接收文件名吗?有没有简单的解决方案来更改服务器上的文件名?我发现了一些关于名为 convmv 的程序的内容,但我不知道是否可以在 FreeNAS 上运行它。
我正在运行 OS X 10.6 Server,我想弹出我的外部驱动器,以便我可以进行一些磁盘维护,例如对其进行碎片整理。但是,当我尝试弹出驱动器时,它无法显示磁盘正在使用中。我可以强制弹出它,但这可能会导致损坏...我如何知道哪个应用程序正在使用该驱动器并将其保持打开状态?
自从升级到 Mac OS X Lion(来自 Snow Leopard)后,我注意到解析到虚拟主机非常慢(大约 3 秒之间)。我找到了一些可能解决此问题的技巧(例如,不使用 .local TLD),但它们不适用于我的设置。
我的设置非常简单: - Apache 2(Lion 附带) - 启用 PHP - 添加了一些虚拟主机 - 安装了 Mail 和 SMTP Pear 包
Apache 的主机文件如下所示:
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
127.0.0.1 tbi.dev
127.0.0.1 www.tbi.dev
127.0.0.1 test1.tbi.dev
127.0.0.1 test2.tbi.dev
127.0.0.1 psa.dev
127.0.0.1 snd.dev
Run Code Online (Sandbox Code Playgroud)
Apache 的虚拟主机文件如下所示:
<VirtualHost *:80>
DocumentRoot "/Users/Bart/Sites/tbi"
ServerName tbi.dev
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/Bart/Sites/tbi"
ServerName tbi.dev
ServerAlias *.tbi.dev www.tbi.dev
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/Bart/Sites/psa"
ServerName psa.dev
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/Bart/Sites/sandbox" …Run Code Online (Sandbox Code Playgroud) 我可以很好地启动 MySQL,
/usr/local/mysql/support-files/mysql.server start
Starting MySQL
SUCCESS!
Run Code Online (Sandbox Code Playgroud)
但是之后的任何 MySQL 操作都会出现错误:
找不到 MySQL 服务器 PID 文件
/usr/local/mysql/support-files/mysql.server stop
ERROR! MySQL server PID file could not be found!
Run Code Online (Sandbox Code Playgroud)
在装有 OSX 10.8 的 Mac 上,我在哪里可以找到服务器 PID 文件?我想知道这是否是权限问题。mysql.sock 文件是一个符号链接,指向 tmp/ 目录中的文件。
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
Run Code Online (Sandbox Code Playgroud) 我想检索当前执行的脚本文件的绝对文件名。链接也应该解决。
在 Linux 上,这似乎是这样完成的:
$(readlink -mn "$0")
Run Code Online (Sandbox Code Playgroud)
但readlink似乎工作非常不同的Mac OS X上
我读过这是使用
$(realpath $0)
Run Code Online (Sandbox Code Playgroud)
在 BSD 中,但这也不起作用。Mac OS X 没有realpath.
任何的想法?
我有一个外部驱动器连接到我的 Mac,我正在尝试确定诸如这是 HFS 还是 FAT,它是 32 位还是 64 位等。似乎应该有一些简单的命令这给了我这个信息,但我似乎找不到一个。想法?
我正在使用OpenSSH_5.9p1, OpenSSL 0.9.8r 8 Feb 2011Mac OS X Snow Leopard。我ControlMaster配置了用于维护持久连接的功能。我~/.ssh/config有以下几点:
Host *
ControlPath /ms/%r@%h:%p
ControlMaster auto
ControlPersist 4h
Host *.unfuddle.com
ControlMaster no
Run Code Online (Sandbox Code Playgroud)
但是,据我所知 - 即使我尝试将 SSH 用于 unfuddle.com 主机,也总是会创建主连接:
[andrey-mbp ~]$ ssh -v git@droolit.unfuddle.com OpenSSH_5.9p1、OpenSSL 0.9.8r 2011 年 2 月 8 日 debug1:读取配置数据 /Users/akhkharu/.ssh/config debug1: /Users/akhkharu/.ssh/config line 1: Applying options for * debug1:/Users/akhkharu/.ssh/config 第 6 行:为 *.unfuddle.com 应用选项 debug1:读取配置数据 /usr/local/Cellar/openssh/5.9p1/etc/ssh_config debug1:自动复用:尝试现有的主 debug1:控制套接字“/ms/git@droolit.unfuddle.com:22”不存在 debug1:连接到 droolit.unfuddle.com [174.129.5.196] 端口 22。 debug1:连接建立。 debug1:身份文件 /Users/akhkharu/.ssh/id_rsa 类型 1 debug1:身份文件/Users/akhkharu/.ssh/id_rsa-cert type …
有时,OS X 会在很长一段时间内告诉我“正在准备备份...”。所需的时间似乎与要备份的数据量无关。“完成备份...”阶段也是如此。
问题:OS X 在“准备备份...”和“完成备份...”时在做什么?
我知道它正在弄清楚要备份的内容,然后记录更改,但肯定需要的时间应该与更改的数据量成正比。有足够的空间磁盘空间(所以我认为它不会删除旧备份)。如果这有什么不同,我正在使用 TimeCapsule。没有什么问题,我只是好奇。
mac-osx ×10
rsync ×2
afp ×1
apache-2.2 ×1
backup ×1
bash ×1
filesystems ×1
freenas ×1
hard-drive ×1
hardlink ×1
monitoring ×1
mysql ×1
pid ×1
shell ×1
ssh ×1
terminal ×1
time-machine ×1
utf-8 ×1
virtualhost ×1