当前位置: 首页 > news >正文

macos系统内置php文件列表 系统自带php卸载方法

在macos系统中, 自带已经安装了php, 根据不同的macos版本php的版本号可能不同, 我们可以通过 which php 命令来查看mac自带的默认php安装路径, 不过注意这个只是php的执行文件路径.

系统自带php文件列表

一下就是macos默认安装的php文件列表.

macos 10.15内置PHP文件列表
配置文件
/private/etc/php-fpm.conf.default
/private/etc/php-fpm.d
/private/etc/php.ini.default


可执行文件路径
/usr/bin/php
/usr/bin/php-config
/usr/bin/phpize

/usr/sbin/php-fpm

内置PHP的源码和扩展目录
/usr/lib/php/build 
/usr/lib/php/extensions

资源文件
/usr/share/php
/usr/share/man/man1/php-config.1
/usr/share/man/man1/php.1
/usr/share/man/man1/phpize.1
/usr/share/man/man8/php-fpm.8

macos系统自带php卸载方法

如果需要删除macos系统中自带的php,直接删除上面的这些文件或者目录即可.    删除方法 sudo  rm -rf  文件. 或者直接使用下面的shell脚本, 保存下面的代码到 uninstall_php.sh 然后执行 sh uninstall_php.sh 即可

#!/bin/bash
#macos 系统自带php卸载脚本
#配置文件
sudo rm -rf /private/etc/php-fpm.conf.default
sudo rm -rf /private/etc/php-fpm.d
sudo rm -rf /private/etc/php.ini.default#可执行文件路径
sudo rm -rf /usr/bin/php
sudo rm -rf /usr/bin/php-config
sudo rm -rf /usr/bin/phpize
sudo rm -rf /usr/sbin/php-fpm#内置PHP的源码和扩展目录
sudo rm -rf /usr/lib/php/build 
sudo rm -rf /usr/lib/php/extensions#资源文件
sudo rm -rf /usr/share/php
sudo rm -rf /usr/share/man/man1/php-config.1
sudo rm -rf /usr/share/man/man1/php.1
sudo rm -rf /usr/share/man/man1/phpize.1
sudo rm -rf /usr/share/man/man8/php-fpm.8echo "系统自带PHP卸载成功!"

Operation not permitted 异常解决方法

如果出现 Operation not permitted ,如下图

出现这个的原因是在acos10.11之后mac默认启用了Rootless机制, 这个是mac系统的内核保护机制, 既对于 /system、/sbin、/usr 三个目录下的文件,即使我们使用sudo 也不允许操作. 

解决方法就是关闭mac, 然后 在按电源键开机的同时按住 Command+R,进入恢复模式,在菜单栏中打开Terminal 使用命令 csrutil disable 来关闭Rootless机制

Read-only file system 解决方法

如果在关闭Rootless机制重启后操作/system、/sbin、/usr 三个目录下的文件任然提示 Read-only file system , 则需要再执行一个命令  sudo mount -uw /    然后在执行删除或者改名操作即可, 如:

系统自带php批量重命名shell脚本

保存下面的代码到 rename_php.sh 然后执行 sh rename_php.sh 即可将系统自带的php 改名为 php_bk ,  这样我们就可以使用 port 或者brew 来安装和管理我们想要的PHP版本了. 当然,如果希望使用系统自带的php版本, 直接执行  php_bk 既可以

#内置php可执行文件 改名_bk 脚本
sudo mv  /usr/bin/php  /usr/bin/php_bk
sudo mv  /usr/bin/php-config  /usr/bin/php-config_bk
sudo mv  /usr/bin/phpize  /usr/bin/phpize_bk
sudo mv  /usr/sbin/php-fpm  /usr/sbin/php-fpm_bk

总结:  对于macos系统自带的软件的卸载方式一般都是直接删除相关的文件即可. 当然这个方式也是linux系统中删除一些没有uninstall程序的软件的方法. macos系统自带的这个PHP一般情况下我们建议将php的那几个可执行文件改一下名字就可以了.

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 沐渥科技:两显氮气柜和三显氮气柜要怎么选择?
  • FPGA开发:可编程逻辑器件概述
  • vue中的css深度选择器
  • 基于STM32的RTOS--freertos的使用(HAL实现多任务)
  • react 子组件调用父组件方法,获取的数据不是最新值
  • 用RNN(循环神经网络)预测股票价格
  • 前端技术(六)—— AJAX详解
  • 为什么 2!=false 和 2!=true 返回的都是true
  • Java-IO:浅谈对IO的认识
  • 【大规模语言模型:从理论到实践】Transformer中PositionalEncoder详解
  • java 给list对象根据给定条数进行分组工具类
  • 视频中的噪点怎么去除?
  • ES之三:springboot集成ES
  • JavaScript基础面试题:(第二天)
  • 搞定JavaScript异步原理,深入学习Promise
  • 【347天】每日项目总结系列085(2018.01.18)
  • AWS实战 - 利用IAM对S3做访问控制
  • Brief introduction of how to 'Call, Apply and Bind'
  • JavaScript设计模式与开发实践系列之策略模式
  • js如何打印object对象
  • leetcode386. Lexicographical Numbers
  • mysql 数据库四种事务隔离级别
  • nfs客户端进程变D,延伸linux的lock
  • nginx 负载服务器优化
  • Sass Day-01
  • TypeScript迭代器
  • 得到一个数组中任意X个元素的所有组合 即C(n,m)
  • 给Prometheus造假数据的方法
  • 你真的知道 == 和 equals 的区别吗?
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 延迟脚本的方式
  • Java数据解析之JSON
  • Nginx实现动静分离
  • #LLM入门|Prompt#3.3_存储_Memory
  • (13):Silverlight 2 数据与通信之WebRequest
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (js)循环条件满足时终止循环
  • (poj1.2.1)1970(筛选法模拟)
  • (备忘)Java Map 遍历
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (第三期)书生大模型实战营——InternVL(冷笑话大师)部署微调实践
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (强烈推荐)移动端音视频从零到上手(下)
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (三分钟)速览传统边缘检测算子
  • (三十)Flask之wtforms库【剖析源码上篇】
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (算法)Game
  • (详细文档!)javaswing图书管理系统+mysql数据库
  • (一)插入排序
  • (正则)提取页面里的img标签
  • (转)德国人的记事本
  • (转)关于多人操作数据的处理策略