Browsed by
标签: Mac

文件系统层次结构标准(FHS)

文件系统层次结构标准(FHS)

一段时间不用就老是忘,特别是实训了十几天的.NET后再重新回到Mac的Terminal…备忘一下吧。

文件系统层次结构标准(Filesystem Hierarchy Standard,FHS)定义了Linux操作系统中的主要目录及目录内容。

Mac OS X使用如 /Library、 /Applications和/Users 等长名与传统UNIX目录层次保持一致。

在FHS中,所有的文件和目录都出现在根目录”/”下,即使他们存储在不同的物理设备中。但是请注意,这些目录中的一些可能或可能不会在Unix系统上出现,这取决于系统是否含有某些子系统,例如 X Window系统 的安装与否。

这些目录中的绝大多数都在所有的UNIX操作系统中存在,并且一般都以大致类似的方法使用;然而,这里的描述是针对于FHS的,并未考虑除了Linux平台以外的权威性。

 

目录 描述
/ 第一层次结构 的根、 整个文件系统层次结构的根目录。
/bin/ 需要在单用户模式可用的必要命令(可执行文件);面向所有用户,例如: cat、 ls、 cp。
/boot/ 引导程序文件,例如: kernel、initrd;时常是一个单独的分区
/dev/ 必要设备, 例如:/dev/null.
/etc/ 特定主机,系统范围内的配置文件。关于这个名称目前有争议。在贝尔实验室关于UNIX实现文档的早期版本中,/etc 被称为/etcetra 目录,这是由于过去此目录中存放所有不属于别处的所有东西(然而,FHS限制/etc存放静态配置文件,不能包含二进制文件)。自从早期文档出版以来,目录名称已被以各种方式重新称呼。最近的解释包括反向缩略语如:”可编辑的文本配置”(英文 “Editable Text Configuration”)或”扩展工具箱”(英文 “Extended Tool Chest”)。
/etc/opt/
/opt/的配置文件
/etc/X11/
X_Window系统(版本11)的配置文件
/etc/sgml/
SGML的配置文件
/etc/xml/
XML的配置文件
/home/ 用户的家目录,包含保存的文件、个人设置等,一般为单独的分区。
/lib/ /bin/ and /sbin/中二进制文件必要的库文件。
/media/ 可移除媒体(如CD-ROM)的挂载点 (在FHS-2.3中出现)。
/mnt/ 临时挂载的文件系统。
/opt/ 可选应用软件 包。
/proc/ 虚拟文件系统,将内核与进程状态归档为文本文件。例如:uptime、 network。在Linux中,对应Procfs格式挂载。
/root/ 超级用户的家目录
/sbin/ 必要的系统二进制文件,例如: init、 ip、 mount。
/srv/ 站点的具体数据,由系统提供。
/tmp/ 临时文件(参见 /var/tmp),在系统重启时目录中文件不会被保留。
/usr/ 用于存储只读用户数据的第二层次; 包含绝大多数的(多)用户工具和应用程序。
/usr/bin/
非必要可执行文件 (在单用户模式中不需要);面向所有用户。
/usr/include/
标准包含文件。
/usr/lib/
/usr/bin//usr/sbin/中二进制文件的库。
/usr/sbin/
非必要的系统二进制文件,例如:大量网络服务的守护进程。
/usr/share/
体系结构无关(共享)数据。
/usr/src/
源代码,例如:内核源代码及其头文件。
/usr/X11R6/
X Window系统 版本 11, Release 6.
/usr/local/
本地数据的第三层次, 具体到本台主机。通常而言有进一步的子目录, 例如:bin/lib/share/.
/var/ 变量文件——在正常运行的系统中其内容不断变化的文件,如日志,脱机文件和临时电子邮件文件。有时是一个单独的分区。
/var/cache/
应用程序缓存数据。这些数据是在本地生成的一个耗时的I/O或计算结果。应用程序必须能够再生或恢复数据。缓存的文件可以被删除而不导致数据丢失。
/var/lib/
状态信息。 由程序在运行时维护的持久性数据。 例如:数据库、包装的系统元数据等。
/var/lock/
锁文件,一类跟踪当前使用中资源的文件。
/var/log/
日志文件,包含大量日志文件。
/var/mail/
用户的电子邮箱。
/var/run/
自最后一次启动以来运行中的系统的信息,例如:当前登录的用户和运行中的守护进程。
/var/spool/
等待处理的任务的脱机文件,例如:打印队列和未读的邮件。
/var/spool/mail/
用户的邮箱(不鼓励的存储位置)
/var/tmp/
在系统重启过程中可以保留的临时文件。
Mac OS X上文件夹名称的多语言显示是怎么来的

Mac OS X上文件夹名称的多语言显示是怎么来的

前两天不小心弄坏了~/documents文件夹,原来在中文系统下显示的“文稿”两个字没有了,变回了英文的"documents"。经过求助得到了解决,也明白了原理,现在给大家分享一下。

mac系统中文件夹的默认的实际名称都是英文的,在不同的语种之下,系统会使用一个多语言文件名显示服务来显示相应语言的文件夹名称。

比如说~/documents文件夹在中文环境中就显示成“文稿”,/system/library在中文环境中就显示成/"系统"/“资源库”。其实这并不是文件的路径名称发生了变化,也就是说/“系统”/"资源库"(/system/library)实际上和/系统/资源库是不同的。

实际上实现这种自动的按语种显示文件夹名称需要两步。

第一,在需要这样显示的目录中要有一个空白的.localized文件,这可以通过 “touch ~/要进行设置的某个私人目录/.localized” 或者 "sudo touch 其他系统目录/.localized" 命令来建立。

第二,要在 /system/library/coreservices/systemfolderlocalizations/相应的语言包(如zh_cn.lproj)/systemfolderlocalizations.strings文件中添加这样一个要翻译的词条。这样系统在显示目标目录的时候,一旦发现了里面的.localized文件,就到这个相应的语言本地化字串表中来找词条,找到匹配的原始名称之后,就用对应的本地语言名称代替文件夹名称的显示。

这样的服务也可以利用来本地化自己其他的指定文件夹,举例来说:假设有一个“~/downloads/my design reference”文件夹。我们可以在 /system/library/coreservices/systemfolderlocalizations/相应的语言包(如zh_cn.lproj)/systemfolderlocalizations.strings 文件中加入词条(通过终端 sudo vi 的方式编辑这个文件最好,这样不用xcode编辑完了重新设置权限):

"my design reference" = "我的设计参考";

然后 touch ~/downloads/my design reference/.localized,重启finder或者注销再重登录,这样在finder中看到的 ~/downloads/my design reference 就显示成了 "我的设计参考"。

这样我们可以把很多文件夹保持原来的英文名,通过本地化显示名称的方式而不是重命名来将其中文化。

Macbook Pro内存显示图中的联动,活跃,非活跃的意思

Macbook Pro内存显示图中的联动,活跃,非活跃的意思

联动内存:此内存中的信息无法移动到硬盘,因此必须保留在 RAM 中。联动内存的大小取决于当前使用的应用程序。

活跃内存:此类信息当前已在内存中,并且最近曾使用过。

非活跃内存:内存中的此类信息当前未在使用,但是最近曾使用过。
例如,如果您使用 Mail 然后退出,则 Mail 曾经使用的 RAM 会标记为“非活跃”内存。此类“非活跃”内存可供其他应用程序使用,就像“可用”内存一样。但是,如果在其他应用程序占用此“非活跃”内存之前打开 Mail,则可以更快打开 Mail,因为其“非活跃”内存会转换为“活跃”内存,而不是从较慢的硬盘加载 Mail。

强制退出Mac程序的六种方法

强制退出Mac程序的六种方法

用电脑时间长了,难免会遇到程序卡住,风火轮狂转不停,没有任何相应等情况。可能是由于程序冲突、缓存不足或者一些bug等情况导致,这个时候我们就需要强制退出这个程序了,下面有六种在Mac系统中强制退出程序的方法,大家至少应该记住一两个。

1、使用键盘快捷键强制退出处于活跃状态的Mac程序
快捷键:Command+Option+Shift+Esc

这样按住一两秒钟,就可以强制退出当前程序了,算是最方便的一种方法。

2、打开强制退出程序窗口

使用快捷键:Command+Option+Esc

来打开“强制退出应用程序”的窗口,然后选中你需要退出的程序,再点右下方的“强制退出”即可。

3、从Dock中强制退出程序

按住Option然后右键点击程序在Dock中的图标,可以看到“强制退出”的选项,选择即可。

4、从左上角苹果菜单中强制退出程序

这个有些类似第二条,从左上角的菜单中选择“强制退出”,不过有些时候程序当机,点击菜单会出现没反应的情况。

5、使用“活动监视器”强制退出程序

在 应用程序-实用工具 中找到“活动监视器”,找到程序的名字然后选择左上方红色按钮强制退出程序,这个就有些类似Windows中的任务管理器了。如果上面的方法都不奏效,那么可以尝试这个方法。

6、使用终端命令强制退出程序

这个应该算是重启电脑之前的最后办法了,在终端中输入如下命令

killall [程序名称]

比如说强制退出Safari,就输入 killall Safari 再回车即可,这样有关Safari的全部进程就都退出了;如果你想分的细一些,可以通过 ps 或者 ps aux 命令查找某些单独的进行,然后使用 kill -9 [pid] 来单独结束某个进程。

很多情况下强制退出程序,之前的内容可能就会不在了,需要注意一下。

最后说说iOS设备上的强制退出程序方法:按住上方电源键,直到出现提示关机滑动条,这个时候放开电源键再按住Home键,直到程序退出。