MAC OSX 驱动操作

mac ox系统的驱动安装常规操作:
下载到 *.kext 的驱动以后,都可以直接把它拖到
/System/Library/Extensions/ 下替换掉原来的文件。替换了以后,还需要修复权限才能够正常使用。因为 Mac OS X 是基于
FreeBSD 的操作系统,因此 Unix 下对文件权限的依赖就被继承了下来了。大家在替换了 *,kext
文件以后,必须要打开终端,输入如下命令:
sudo -s 
chmod
-R 755 /System/Library/Extensions 
chown -R
root:wheel /System/Library/Extensions 
rm -rf
/System/Library/Extensions.* 
diskutil
repairpermissions /
sudo -s
(这个命令是把当前用户升级到系统管理员用户,当然,还要输入管理员密码。)
chmod -R 755
/System/Library/Extensions (这个命令是把 Extensions 下的所有文件的权限都设置成
755,关于权限数字的意义,请参考 Linux/Unix 的命令解释,限于篇幅,这里不说了。)
chown -R
root:wheel /System/Library/Extensions (这个命令把 Extensions 下的所有文件的所有者和组别都设置成为
root:wheel。换句话说,Extensions 下的所有文件都设置成为管理员为所有者)
rm -rf
/System/Library/Extensions.* (这个命令将删除系统的内核扩展缓存。为了加快启动速度,Mac OS X
把本机的驱动制作成一个 内核扩展缓存,开机时只加载这个缓存,而不必全部 kext
都要加载。我们为了让系统加载新更换的驱动,一定要把缓存删除才行。不过要注意,最后的 .* 是必不可少的。因为 rm -r 是一个递归操作,如果不加
.* 的话,这个命令将会把 Extensions 整个文件夹删除!)
diskutil
repairpermissions / (这个命令将修复 / 下的所有文件的权限。diskutil 是一个只有 Mac OS X
才有的命令,其作用就是检测和修复磁盘权限。)
举例:
[MAC]基于X86的苹果系统驱动程序的安装。
苹果系统是基于UNIX的操作系统,其驱动的安装也类似于UNIX的。在真正的苹果电脑中安装OSX是根本不许要手动安装任何驱动的,但我们的想法是在普通机器上安装OSX,那就没那么好的运气保证你所有的硬件都能被OSX识别了,大部分时候我们需要手动安装驱动,网上有很多类型的驱动,甚至有苹果爱好者自己开发的驱动,而大多都是以驱动文件的形式存在,需要手动安装。
当你下载下来驱动之后,会发现所有的驱动文件后缀名字都是以kext结尾的,例如AppleAC97.kext为Intel版苹果的AC97声卡驱动。
安装驱动一般的步骤为:注意,UNIX系统区分大小写,所以务必看好以下命令的大小写
1、将驱动文件解压缩为.kext文件,放到桌面上。
2、打开终端(相当于windows中的命令行)。
3、输入cd
~/desktop 
   (这一行的意思是进入桌面,使桌面成为当前目录)
4、输入sudo chown
-R root:wheel *.kext
(*.kext就是你的驱动文件,这一行的作用为为后面的操作赋予管理员权限)
5、输入你的root密码,然后回车,如果密码没有可以直接回车。
6、输入sudo
chmod -R 755 *.kext (将驱动导入)
7、sudo kextload -v *.kext
(加载驱动,如果正常就可以看到你设备的名称了)
8、如果驱动不正常,请输入sudo kextunload
*.kext
然后再进行一便4~7,如还是不行那么旧得考虑驱动是否适合你的硬件了。
9、驱动正常后需要保存设定,使下次启动也能生效,输入sudo
cp -R *.kext /system/library/extensions
10、重建驱动缓存sudo
kextcache -k/*.kext
重新启动就可以使用你的新硬件了!

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

本人在MAC OSX 下使用开源的LIBUSB驱动实现USB设备的SCSI命令通讯相关应用程序的开发时,
使用libusb_claim_interfaces函数总是返回3(即访问禁止),解决办法:
1.访问设备之前使用系统命令kextunload停止系统驱动模块
/System/Library/Extensions/IOUSBMassStorageClass.kext,命令如下; "kextunload
/System/Library/Extensions/IOUSBMassStorageClass.kext"
2.然后使用libusb_claim_interfaces()函数,可成功调用,已经测试
3.使用完该程序中所有的usb功能的通讯调用后,可通过系统命令kextload重性加载该驱动模块,命令如下; "kextload
/System/Library/Extensions/IOUSBMassStorageClass.kext",本人在项目中,除了实现SCSI相关的通讯之外,还要系统
支持USB的U盘访问的功能,故程序使用完LIBUSB的函数调用后,通过系统命令kextload重性加载该驱动来挂结U盘进行数据访问.
4.如果下次再要使用LIBUSB的libusb_claim_interfaces函数进行通讯时,请重复步骤1,2,3,如果步骤1出现kext is
use or retained(cannot unload),
请不用管它,等1-3秒后,你也可以重新试一下不加载该驱动.kext,也许就不会报这个错,经过测试,果然可以不加载,OK。
5.总结,下次出现同样的问题或相类似的问题可以采用相同的方法解决,在此记下,以加深印象。
题外心得,多参考相关技术的资料,勤动手实践,一定可以解决存在的问题

MAC OSX 驱动操作,布布扣,bubuko.com

时间: 2024-10-03 23:53:19

MAC OSX 驱动操作的相关文章

mac osx 快捷键操作

windows下 用home/end  + shift就可以相当方便的在一行文本里向前或者向后或者选中,mbp却不行,因为没有home/end键 osx下找了好几天的快捷键,汇总一下. 参考如下网站: 一..编辑文本的实用快捷键 http://www.macx.cn/thread-2037724-1-1.html 1. 文本位置跳转快捷键:在html里的文本框,文本编辑器等都可用 跳转到一行的开头:Command+左箭头跳转到一行的末尾:Command+右箭头跳转到当前单词的开头(适合英文.拼音

mac OSX 快捷键 -- 转

1.很有用的命令:    http://www.mitchchn.me/2014/os-x-terminal/ 一.Mac OSX 快捷键 ctrl+shift                                    快速放大dock的图标会暂时放大,而如果你开启了dock放大Command+Option+W                将所有窗口关闭Command+W                             将当前窗口关闭(可以关闭Safari标签栏,很实用) 

Mac OSX 快捷键&命令行

一.Mac OSX 快捷键 ctrl+shift                                    快速放大dock的图标会暂时放大,而如果你开启了dock放大Command+Option+W                将所有窗口关闭Command+W                             将当前窗口关闭(可以关闭Safari标签栏,很实用) Command+Option+M                将所有窗口最小化 Command+Q      

Mac OSX 快捷键&命令行

ctrl+shift                                    快速放大dock的图标会暂时放大,而如果你开启了dock放大Command+Option+W                将所有窗口关闭Command+W                             将当前窗口关闭(可以关闭Safari标签栏,很实用) Command+Option+M                将所有窗口最小化 Command+Q                    

Mac OSX 快捷键&命令行总览

大家初用Mac OSX可能不习惯,特别收集总结了Mac OSX 上的快捷键,方便大家参考 ,请叫我雷锋. 一.Mac OSX 快捷键 ctrl+shift                                    快速放大dock的图标会暂时放大,而如果你开启了dock放大Command+Option+W                将所有窗口关闭Command+W                             将当前窗口关闭(可以关闭Safari标签栏,很实用) Com

Mac OSX系统、Linux、Windows命令行教程

Mac OSX系统.Linux.Windows命令行教程 一.各系统终端的使用方法 二.各系统命令的功能 用你的终端做一些事情 (command line, Terminal, PowerShell). 一.各系统终端的使用方法 Mac OSX 在Mac OSX系统上,你应该 按住 command 键,并敲空格键. 屏幕顶部会弹出一个蓝色的"搜索框". 输入"terminal". 点击终端应用程序,这个程序的图标看起来有点像一个黑盒子. 终端就打开了. 现在你可以在

mac osx下安装mysql

操作系统版本:mac osx 10.11mysql版本:官网下载dmg  v5.6.33  https://www.mysql.com/ 安装步骤1.双击dmg安装2.开启mysql服务系统偏好设置-底部-mysql-打开服务这个时候还不能使用mysql命令,需要配置mysql命令的路径. 3.配置环境变量mysql的路径在当前用户根目录下编辑.bash_profile文件,添加一行:export PATH=${PATH}:/usr/local/mysql/bin 注:/usr/local/my

XE6移动开发环境搭建之IOS篇(6):设置Mac OSX的网络。(有图有真相)

XE6移动开发环境搭建之IOS篇(6):设置Mac OSX的网络.(有图有真相) 2014-08-23 21:37 网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 我们配置一下MAC的IP,给定一个固定的内网IP,以便我们的XE6能更好地连接它!--------------------------------------------------------------- 1.打开虚拟机,在MAC里,点一下桌面(星空图

XE6移动开发环境搭建之IOS篇(5):解决Windows和虚拟机下Mac OSX的共享问题(有图有真相)

XE6移动开发环境搭建之IOS篇(5):解决Windows和虚拟机下Mac OSX的共享问题(有图有真相) 2014-08-20 20:28 网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的内容.傻瓜式的表达来告诉你想要的答案. 在安装XE6 PAServer前,我们先解决Windows和虚拟机下Mac的文件共享问题,由于虚拟机和我们安装的XE6是同一台电脑,所以此问题很好解决.网上相传有很多的共享大法,但是在WIN7这种权限管制得过份的系统下显得相对复杂了,