V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Kobayashi
V2EX  ›  macOS

macOS 不同软件安装方法和安装位置有什么区别?

  •  
  •   Kobayashi · 2017-12-26 12:46:23 +08:00 · 4551 次点击
    这是一个创建于 2306 天前的主题,其中的信息可能已经有所发展或是发生改变。

    macOS 新手,安装软件时有很多不懂的地方,更多是关于 brew cask 这种方法。主要想搞明白各种安装方法的软件安装位置、配置文件位置在哪儿?以及.app 文件 /文件夹是怎么回事?

    1. 使用.dmg 和.pkg 安装软件的区别,两种安装方法软件安装的位置及配置文件所在位置有区别吗?
    2. 为什么使用 JetBrains Toolbox 安装的 Pycharm 的.app出现在了~/Applications而非/Applications?从大小来看肯定不是个完整程序。另外是不是 Adobe Creative Cloud 也是这么玩?
    3. Homebrew 安装的软件是被放在/usr/local/Cellar/,Homebrew Bottles 是编译好的安装包?二者只有这些区别?
    4. Homebrew Cask 是被放在/usr/local/Caskroom, Cask 安装 GUI 软件和常规方法安装的区别是?为什么这篇Mac 开发配置手册不推荐使用 Cask 安装 GUI,由于没用过 Alfred 和 Spotlight,所以真的没明白译者在说什么……
    5. 还有一点,/usr/local/opt/下链接的意义是什么?
    11 条回复    2017-12-26 22:12:23 +08:00
    qianyi0129
        1
    qianyi0129  
       2017-12-26 14:58:12 +08:00
    用默认的吧
    nieyujiang
        2
    nieyujiang  
       2017-12-26 16:16:27 +08:00   ❤️ 1
    我来回答下我知道的.
    1. .app 的相当于 Windows 里面的绿色版,pkg 相当于安装包,会附带一些东西.dmg 只是一个镜像.配置文件位置看 app 怎么设定的.
    2. 无可奉告
    3. Homebrew 一般情况是安装编译好的二进制.速度很快.
    4. 常规的是直接拖到 /Applications 里面,目前 Cask 也是下载了然后自动帮你移动到 /Applications 里面.我倒是很喜欢 Homebrew Cask.配合插件可以实现一键升级大部分 gui 程序.管理也很方便.
    5. 无可奉告
    Kobayashi
        3
    Kobayashi  
    OP
       2017-12-26 18:46:55 +08:00 via Android
    @nieyujiang Cask 现在帮你把软件移动到 /Applications ?我见有些教程里边写到 Cask 把软件移到~/Applications。由于搞不清楚 Cask 软件安装路径和安装原理,现在一直没用 Cask 安装 GUI 软件,正在读 Homebrew 和 Cask 官方文档。
    nieyujiang
        4
    nieyujiang  
       2017-12-26 20:44:31 +08:00 via iPhone
    @Kobayashi #3 很早之前是做软连接,现在改了。改成 直接移动了
    Pudge1337
        5
    Pudge1337  
       2017-12-26 20:48:08 +08:00 via Android
    想知道卸载软件拖进废纸篓是不是真的能删除干净。。
    imydou
        6
    imydou  
       2017-12-26 21:22:17 +08:00
    @Pudge1337 #5 不能,
    mac 上最烦 adobe,各种文件夹都放 application 目录
    xy90321
        7
    xy90321  
       2017-12-26 21:31:56 +08:00 via iPhone
    @Pudge1337
    看程序,我接触的大部分想靠拖回收站删干净是不可能的。即使是 .app 直接拖到 Application 来安装的程序,运行时也可能留下一堆身处其他目录的(垃圾)文件。
    nccer
        8
    nccer  
       2017-12-26 22:04:27 +08:00   ❤️ 2
    1.使用.dmg 和.pkg 安装软件的区别,两种安装方法软件安装的位置及配置文件所在位置有区别吗?
    有,dmg 安装方式相当于绿色软件,全部文件都在那个.app 文件夹里,pkg 就需要把文件安装到多个文件夹比如 /Library 和~/Library 文件夹.
    2.为什么使用 JetBrains Toolbox 安装的 Pycharm 的.app 出现在了~/Applications 而非 /Applications ?从大小来看肯定不是个完整程序。另外是不是 Adobe Creative Cloud 也是这么玩?
    ~/Applicationss 是你个人账户的安装位置,/Applications 是全局的.大小不对有可能是因为本体随便放,~/Applications 里面只放了一个软连接.
    3.Homebrew 安装的软件是被放在 /usr/local/Cellar/,Homebrew Bottles 是编译好的安装包?二者只有这些区别?
    不管是二进制安装还是编译安装,文件都是放在 Cellar 里面的.默认二进制安装,如果想改参数可以 brew info xxx 试一下,改过参数就会编译安装.
    4.Homebrew Cask 是被放在 /usr/local/Caskroom, Cask 安装 GUI 软件和常规方法安装的区别是?为什么这篇 Mac 开发配置手册不推荐使用 Cask 安装 GUI,由于没用过 Alfred 和 Spotlight,所以真的没明白译者在说什么……
    cask 和常规安装的区别是软件本体安装在 /usr/local/Caskroom 里面,/Applications 里面只是个软连接.
    mac 里面有一些自带软件很重要,所以当你用 brew 安装你自已的版本时,brew 怕破坏掉依赖所以不能直接放 /usr/local/下面,只能放在 /usr/local/opt 下面.比如 OpenSSL,mac 自己是 FreeBSD 实现不能换.通过 brew 安装好的 OpenSSL 就要通过 linkflag 来使用了.
    Kobayashi
        9
    Kobayashi  
    OP
       2017-12-26 22:05:48 +08:00   ❤️ 1
    @Pudge1337 #5 不能。.app 就是一个文件夹而已,只不过被 Finder 显示了图标,解释为一个可运行的 app。真正的可执行文件一般在 dummy-appname.app/Contents/MacOS/下。所以,拖拽到 /Applications 安装其实就是真的把一个文件夹拖进了 /Applications,同理,拖进 Trash 卸载应该也是真的把文件夹扔进了垃圾桶。~/Library 文件夹内包含一些软件配置、缓存等文件。AppCleaner 这类清理软件有其存在的理由。
    nccer
        10
    nccer  
       2017-12-26 22:08:03 +08:00
    而且 人家译者说的清清楚楚 人家因为有时候需要手动升级,名字难记才不推荐用 cask 的 要我说,cask 还是蛮方便的,而且并不需要记忆软件包的名字 想要升级的时候直接 brew cask upgrade 就行了
    nccer
        11
    nccer  
       2017-12-26 22:12:23 +08:00   ❤️ 1
    用 cask 管理软件包要比去官网上下载方便的多,cask 可以管理 pkg,例如有的厂家的 pkg 只提供安装不提供卸载,而通过 cask 可以很方便的移除 pkg 安装的软件.只需 brew cask remove xxx 就行了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5671 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 457ms · UTC 06:20 · PVG 14:20 · LAX 23:20 · JFK 02:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.