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

谁再说 OSX 的软件管理比 windows/linux 强我跟谁急。

  •  
  •   9hills · 2015-03-07 00:09:38 +08:00 · 9815 次点击
    这是一个创建于 3560 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天删除office 2011 for mac,只是简单的把文件夹删了。天真的我以为这就完了。。

    结果看到了这个:
    https://support.microsoft.com/kb/2398768
    54 条回复    2015-03-09 09:27:05 +08:00
    est
        1
    est  
       2015-03-07 00:11:51 +08:00   ❤️ 2
    linux 有什么强的。敢在服务器升级 glibc 吗?
    ab
        2
    ab  
       2015-03-07 00:12:27 +08:00 via iPhone   ❤️ 3
    嗯!office在Windows下只要把桌面图标删除就可以了。😁😁
    9hills
        3
    9hills  
    OP
       2015-03-07 00:15:27 +08:00
    @ab 最少有个uninstall.exe 。。mac手动操作也太反人类了吧。。
    Phariel
        4
    Phariel  
       2015-03-07 00:18:24 +08:00
    你需要cleanmymac2?
    9hills
        5
    9hills  
    OP
       2015-03-07 00:20:37 +08:00
    @est 小心些就没事。。

    如果是RHEL/Ubuntu官方源里的,无脑升没关系。。Arch源里的,升级前看下news..
    kfll
        6
    kfll  
       2015-03-07 00:22:40 +08:00 via iPhone
    Office 2016 就是让直接删除 .app
    canautumn
        7
    canautumn  
       2015-03-07 00:26:02 +08:00   ❤️ 4
    感觉没喷对地方。没有提供uninstall难道不是微软的问题吗?mac上一般的app删掉bundle就完了,各种preference建议是不用管,不会对系统速度造成影响,除非你有洁癖。其实很多在用户目录之外添加文件的app都有uninstall.sh,就是删除文件的脚本而已,没有注册表这种反人类的东西。像这种情况微软完全可以提供一个uninstall,只是他们觉得没必要而已。
    实际上通常的app从mas安装,卸载是最容易的,到launchpad里边删掉就行了。系统级的有好几种包管理软件。这两种unix系的做法windows也在学。
    br00k
        8
    br00k  
       2015-03-07 00:33:02 +08:00
    其实我也觉得mac下软件卸载的确不太方便,只删app,强迫症用户表示无法接受,主要是很多软件在其它地方会占用非常大的空间,不能一起卸载。
    gesse
        9
    gesse  
       2015-03-07 00:47:26 +08:00
    appdelete.app这之类的软件很好用啊
    enotx
        10
    enotx  
       2015-03-07 00:50:28 +08:00
    @est
    less /var/log/pacman.log | grep glibc
    [2014-07-20 10:24] [PACMAN] installed glibc (2.19-5)
    [2014-07-26 16:35] [PACMAN] installed lib32-glibc (2.19-5)
    [2014-08-10 15:13] [PACMAN] Running 'pacman -S gcc glibc'
    [2014-09-20 21:51] [PACMAN] upgraded glibc (2.19-5 -> 2.20-2)
    [2014-09-20 21:52] [PACMAN] upgraded lib32-glibc (2.19-5 -> 2.20-2)
    [2014-11-21 22:39] [PACMAN] upgraded glibc (2.20-2 -> 2.20-3)
    [2014-11-27 00:36] [PACMAN] upgraded glibc (2.20-3 -> 2.20-4)
    [2014-12-06 00:54] [PACMAN] upgraded lib32-glibc (2.20-2 -> 2.20-4)
    [2014-12-19 21:53] [PACMAN] upgraded glibc (2.20-4 -> 2.20-5)
    [2015-01-01 00:48] [PACMAN] upgraded glibc (2.20-5 -> 2.20-6)
    [2015-01-01 00:49] [PACMAN] upgraded lib32-glibc (2.20-4 -> 2.20-6)
    [2015-02-14 00:21] [ALPM] upgraded glibc (2.20-6 -> 2.21-2)
    [2015-02-14 00:21] [ALPM] upgraded lib32-glibc (2.20-6 -> 2.21-2)

    请问有什么问题吗?
    canautumn
        11
    canautumn  
       2015-03-07 00:51:14 +08:00
    @br00k 这确实是个问题,我能想到的例子就是steam的游戏都在Library里(虽然我没卸载过steam不知道啥情况)。但这个问题支持者认为你下次再安回来的时候用户文件都在。如果大家都遵守规则,比如可下载的文件放在cache里,只有用户生成的文件才放在library里,那也占不了多少空间。
    wc0517
        12
    wc0517  
       2015-03-07 00:51:17 +08:00 via iPhone
    OS X大多数软件都不用安装,windows大多数软件都必须安装。我是不是能以这个理由说windows软件管理没OS X好?
    shippo7
        13
    shippo7  
       2015-03-07 00:59:03 +08:00 via iPhone
    这是微软的问题还是苹果的问题?
    ZHenJ
        14
    ZHenJ  
       2015-03-07 01:03:14 +08:00
    呃,这个要怪微软,没做好uninstall
    Koma
        15
    Koma  
       2015-03-07 01:14:51 +08:00
    但凡用安装包来安装的软件都不适用直接删除软件来卸载,稍微想想就应该知道。
    Koma
        16
    Koma  
       2015-03-07 01:18:03 +08:00
    @canautumn steam如果把游戏游戏放到文档里就好了
    momo5269
        17
    momo5269  
       2015-03-07 01:44:50 +08:00
    这算不得apple的问题吧
    win下面这样的软件也有……不过好在有卸载工具和清理软件
    (MS自己的产品有时候都需要专门的清理工具)
    9hills
        18
    9hills  
    OP
       2015-03-07 01:45:42 +08:00 via iPad
    @wc0517 原来我是这么想的。。
    konakona
        19
    konakona  
       2015-03-07 02:21:17 +08:00
    好正常..
    其实很多osx软件,都有在不同的目录下产生自己的配置文件,你需要clearmymac..
    sycsycsyc378
        20
    sycsycsyc378  
       2015-03-07 02:40:09 +08:00 via Android
    OSX不爽就是苹果说直接把.app拖进trash里的方法会有不少残留……如果能拖拽安装附带uninstaller就好
    geeti
        21
    geeti  
       2015-03-07 04:29:46 +08:00
    微软故意的吧,一个脚本就能搞定的问题
    Sylv
        22
    Sylv  
       2015-03-07 04:37:18 +08:00 via iPhone
    这明明是微软偷懒,没提供卸载程序。
    想想 Windows 下软件要是不提供卸载程序,更麻烦,还得删注册表。
    yyfearth
        23
    yyfearth  
       2015-03-07 05:29:55 +08:00
    这个是MS的问题不是OSX的问题
    大部分OSX的软件 都只需要移除app本身就可以了
    如果你想干净一些 就用那些app来清除留下的设置和缓存

    但是一些大公司的产品 比如MS和Adobe的软件都十分庞大而且没有专门的uninstaller几乎无法卸载
    因他们都有比较长的历史 而且产品跨平台 所以和OSX的风格不太一样
    popbones
        24
    popbones  
       2015-03-07 06:06:46 +08:00   ❤️ 24
    一般PKG安装的软件都不是直接删掉Applications文件夹中的文件就可以的“完全清除”的,一般开发者都会提供卸载指南或者相应的卸载程序。

    一个原因在于一般只有软件的安装过程比较复杂才会开发者才会使用PKG的方式安装包,简单的软件都会采用使用DMG拖拽程序文件至Applications的方式安装。这里说的“复杂”是指一款软件需要使用或提供较为高级的系统功能,比如涉及多个软件的软件套装(例如Office、Adobe CS),或需要在特定的系统目录安装文件(例如输入法需要安装到Library/Input Methods,浏览器插件需要安装到Library/Internet Plugins),亦或有些软件需要提自身的软件管理(比如PD、BattleNet都要在/Users/Shared安装一些文件以提供多用户的支持),这些情况都不是简单的拖拽可以实现,所以会使用Mac OS X Installer,也就是默认运行PKG的那个向导程序。其实和Windows Installer以及很多Windows程序使用的Install Wizard一样,Mac OS X Installer本身完全可以培植出用于卸载软件的PKG文件,只是很少有开放上这么做,因为卸载往往只是删除文件,所以大多数情况下一个Shell脚本即可完成,而就算通过卸载指南引导用户手动完成也十分简单。

    很多说Mac OS X软件管理更优的原因在于其多数软件都可以通过绿色的形式安装和卸载。有人可能会说一点都不绿色,我用CleanMyMac一扫描,Library目录里面各种软件残留。但是这些软件残留都是静态的,没有软件用它,它们就只是待在那里,并不会影响系统性能。而Windows上就算所谓的绿色软件也只是不需要安装而已,注册表残留还是尝尝会发生,并且往往会影响系统性能。而很多情况下,Windows中就算是使用了卸载程序卸载也不能保证100%无注册表残留,这个还是要看软件开发者上不上心。这点结合Mac上很多软件开发者可以但并没有提供卸载脚本来看,软件开发者真的对卸载这件事没有很上心。

    另外对于通过Mac App Store安装的程序和普通拖拽安装的程序相比,区别主要在于普通拖拽安装的程序支持和配置文件一般在Library/Application Support和Library/Preferences目录中,而Mac App Store支持和配置文件都被放倒了Library/Containers或Library/Shared Containers当中,这主要是其沙盒机制的要求。而关于PKG程序,其实所有通过PKG安装的程序Mac OS X都会保留一份安装纪录,成为“回执”,一般保存在/private/var/db/receipts目录当中,如果你安装了Pacifist则可以查看.bom文件查看一个PKG都安装了什么。

    到了这里你会发现Mac OS X中所有的软件都是拥有一个ID,一般形式为逆网址形式,例如com.公司名称.软件名称com.microsoft.office.all.automator.pkg.14.1.0.bom是安装Office相关的Automator动作的安装包的文件清单。其实到了这里你就基本可以手动清理软件了,因为无论是PKG还是拖拽软件都是围绕着软件ID的。一般你只需要到下列目录中寻找和删除相关的“软件残余”即可卸载软件:

    1)在Applications和~/Applications删除程序文件
    2)在~/Library/Application Support中删除程序支持文件,这个目录是软件随便使用的,一般建议使用软件ID作为自目录,也有软件自定义子目录的,一般都很明显,并且会包含软件名称,一个软件可能有多个文件或目录
    3)在~/Library/Preferences中删除程序的设置文件,一个软件可能有不止一个配置文件
    4)在~/Caches中删除软件缓存,其实不删也没事,可以定期的清空所有缓存避免缓存损坏造成的异常。
    5)在~/Library/LaunchAgents中删除软件在系统启动时运行的项目
    6)在/Library/LaunchDaemons中删除软件在系统启动时运行的项目
    8)在/Library和/System/Library以及/Users/Shared中删除相关的程序文件,如果有的话。
    9)根据软件类型可能还包含以上提到的目录(一下Library指/Library,~/Library,/System/Library,/Users/Shared/Library:
    9.1)输入法Library/Input Methods
    9.2)互联网插件Library/Internet Plug-Ins(Flash就在这里面)
    9.3)系统字典Library/Dictionaries
    9.4)Automater动作Library/Automator
    9.5)打印机驱动Library/Printers

    以上为一些关于卸载Mac OS X层软件的一些点滴。关于BSD层也就是Darwin层的软件,比如你在OS X上装了一个Python3想要卸载就完全是另一个话题了。
    xiparos
        25
    xiparos  
       2015-03-07 06:14:50 +08:00
    这明明是微软擦屁股不干净,赖到Mac OS X?
    tititake
        26
    tititake  
       2015-03-07 07:33:44 +08:00 via Android
    @est 升级glibc有什么不敢的,等4.0发布,我都想生产环境免重启升级内核
    belin520
        27
    belin520  
       2015-03-07 09:15:26 +08:00 via Android
    怪我咯
    wzzyj8
        28
    wzzyj8  
       2015-03-07 09:19:26 +08:00 via iPhone
    @ab 不严谨,还要清空回收站才行吧
    typcn
        29
    typcn  
       2015-03-07 09:57:16 +08:00
    其实 app 可以读写自身的 .app 中的任意目录的,如果全部保存到里面,用户卸载就不可能会这么麻烦。
    Actrace
        30
    Actrace  
       2015-03-07 11:08:23 +08:00
    osx的包管理确实不是很好,其实怎么说呢,osx系统效能和架构设计都不怎么样。
    apple还是努力一把,针对迫切的“用户体验”部分进行了全力的优化,因此有了今天我们看到好用的osx,但是这不代表他是优秀的os。一个系统的评价应该由方方面面构成,不过作为普通消费者,我们只需要它“好用”就可以了。

    其实osx系统最大的优势还是来自ios生态系统的辅助(包括它自家的大部分软件,如logicx,itunes除外),现在我们可以在电脑上做很多手机上才能做的事情,比如发短信之类的。这在windows上是不行的。稍早之前,osx系统基本上普通人都用不起来。

    windows面相个人用户的系统确实在效能上做得很好,只不过现在各种“破解软件”实在太容易敲开用户系统的大门了(各种诱导,小白中招几率100%)。这应该是免费文化造成的。
    我在家里的一台amd+金士顿64g 渣ssd的win7台式机,由我配置好后交给家里人使用(只装了qq,chrome等基本软件),由于家里人也就上上网,看看pptv,聊聊qq,1年后回去还是5秒开机,也没中过百度管家的病毒(还是得感谢下本地电信不杀之恩),比现在在用的跑者10.10.2的mba快多了。

    当然这些事情在osx上同样可以得到相同的表现,但是一切都取决于软件开发者。
    dashu
        31
    dashu  
       2015-03-07 11:28:00 +08:00
    @popbones 赞!

    “到了这里你会发现Mac OS X中所有的软件都是拥有一个ID,一般形式为逆网址形式”
    我当初看到这些 ID 的形式时感觉真的很亲切,上学时常逛的新闻组 (Usenet) 地址就是这样的,比如 cn.comp.os.linux。
    loading
        32
    loading  
       2015-03-07 11:32:38 +08:00
    我敢告诉你们:我真的不知道我的mac里装了什么,除了应用文件夹,其他像pkg安装的,我真的不知道他干了什么,我也懒得管。。。
    cuthead
        33
    cuthead  
       2015-03-07 11:38:33 +08:00
    这种问题用AppCleaner能清理。或者等微软出卸载程序,在没有别人帮助的情况下自己动手是唯一选择。
    qiibeta
        34
    qiibeta  
       2015-03-07 12:11:42 +08:00
    pkg安装的东西真的卸载很麻烦,好点的,提供个卸载.pkg,不好的,给个readme让你手动卸载,再渣点的,得上官网找手动卸载操作步骤。
    viko16
        35
    viko16  
       2015-03-07 12:50:43 +08:00
    难道你以为 Windows 下跑了个 uninstaller 就是卸载干净了?
    est
        36
    est  
       2015-03-07 16:37:59 +08:00
    @enotx

    @9hills

    用官方的update。。。。好吧,你们赢了。。。。。。。。

    还在维护某2.4内核系统一大堆服务器的苦逼默默路过。。。。。。。。
    znoodl
        37
    znoodl  
       2015-03-07 17:07:25 +08:00
    刚才在win下拷贝两个文件资源管理器奔溃了。。。
    echo1937
        38
    echo1937  
       2015-03-07 17:39:22 +08:00
    @est

    你也太让人同情了,2.4的内核suse,RHEL都不支持了,你怎么维护啊,去年那么多CVE你怎么修补的。
    sincway
        39
    sincway  
       2015-03-07 18:42:32 +08:00
    我按官方的方法删除的,但是 CleanMyMac 还是发现了 80M 左右的残留。
    dog999
        40
    dog999  
       2015-03-07 19:00:57 +08:00
    迅雷mac 自带了一个软件管理工具,你可以使用一下
    Koma
        41
    Koma  
       2015-03-07 19:27:14 +08:00
    @sincway CleanMyMac也不是全都能删干净的
    poplarch
        42
    poplarch  
       2015-03-07 20:12:54 +08:00
    #!/bin/sh
    osascript -e 'tell application "Microsoft Database Daemon" to quit'
    rm -R '/Applications/Microsoft Communicator.app/'
    rm -R '/Applications/Microsoft Messenger.app/'
    rm -R '/Applications/Microsoft Office 2011/'
    rm -R '/Applications/Remote Desktop Connection.app/'
    rm -R '/Library/Application Support/Microsoft/'
    rm -R '/Library/Automator/*Excel*'
    rm -R '/Library/Automator/*Office*'
    rm -R '/Library/Automator/*Outlook*'
    rm -R '/Library/Automator/*PowerPoint*'
    rm -R '/Library/Automator/*Word*'
    rm -R '/Library/Automator/Add New Sheet to Workbooks.action'
    rm -R '/Library/Automator/Create List from Data in Workbook.action'
    rm -R '/Library/Automator/Create Table from Data in Workbook.action'
    rm -R '/Library/Automator/Get Parent Presentations of Slides.action'
    rm -R '/Library/Automator/Get Parent Workbooks.action'
    rm -R '/Library/Automator/Set Document Settings.action'
    rm -R '/Library/Fonts/Microsoft/'
    rm -R '/Library/Internet Plug-Ins/*SharePoint*'
    rm -R '/Library/LaunchDaemons/*Microsoft*'
    rm -R '/Library/Preferences/*Microsoft*'
    rm -R '/Library/PrivilegedHelperTools/*Microsoft*'
    OFFICERECEIPTS=$(pkgutil --pkgs=com.microsoft.office*)
    for ARECEIPT in $OFFICERECEIPTS
    do
    pkgutil --forget $ARECEIPT
    done

    v2exer分享的
    x1911
        43
    x1911  
       2015-03-07 21:12:46 +08:00
    按此逻辑

    有只狗跑到屋子里来拉了屎,是因为屋子装修有问题?

    -------------------------------------------------------------------------------

    office在win下面也不是那么好删除的,经常会有07或10没删除干净不让装的情况,还专门要到微软网站下MSI 或 cab 包的删除程序才能删除干净
    popbones
        44
    popbones  
       2015-03-07 21:39:31 +08:00 via iPhone
    @sincway CleanMyMac 不可尽信,它发现的都是“疑似”软件残留,一定要确定你知道删的是什么再删,否则总有一天会因为莫名其妙地删了什么剁手已晚的。不怕一万只怕万一。
    soulgain
        45
    soulgain  
       2015-03-07 21:55:27 +08:00
    从安装的方式就可以看出不能这样删,非沙盒类的应用,你应该怪微软没有提供一个uninstall脚本,就好比windows上没有提供unisntall的程序一样。至于用户数据,任何非“绿色版”的软件都基本无法删干净的吧。
    sdysj
        46
    sdysj  
       2015-03-08 00:12:34 +08:00
    你这是黑微软吧?
    wlh
        47
    wlh  
       2015-03-08 01:05:42 +08:00
    你确认这不是微软混蛋?
    SharkIng
        48
    SharkIng  
       2015-03-08 04:50:38 +08:00 via Android
    在Mac下用Microsoft的东西当然不一样
    cyokvip
        49
    cyokvip  
       2015-03-08 09:19:45 +08:00 via Android
    pkg卸载都会卸载不干净的,好像在资源库里有残留
    troyl
        50
    troyl  
       2015-03-08 09:41:09 +08:00
    Office 2011 是用 Carbon 写的吧?
    popbones
        51
    popbones  
       2015-03-08 11:56:05 +08:00
    @troyl 好像相当大的一部分还是Carbon,要不一只卡在32位呢
    IgniteWhite
        52
    IgniteWhite  
       2015-03-08 12:57:07 +08:00
    Unix 使用水平不行还怪系统咯?不够geeky还在这里显摆咯?
    AssassinLOVE
        53
    AssassinLOVE  
       2015-03-09 05:01:33 +08:00
    笑话大全么...
    pityonline
        54
    pityonline  
       2015-03-09 09:27:05 +08:00
    @poplarch 那些 rm 命令可以写成 rm -R dir1 dir2 dir3 吧?再就是如果在一个目录里操作较多,可以 cd 过去,这样省点儿字母。lol....
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1054 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 22:22 · PVG 06:22 · LAX 14:22 · JFK 17:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.