博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IPod在Linux下的实战
阅读量:6787 次
发布时间:2019-06-26

本文共 2608 字,大约阅读时间需要 8 分钟。

刚收到一个朋友送的Ipod,经过研究今天我为大家分享一点在Linux系统下使用的经验。AppleiPod它炫目时尚,超薄还可以俘储大量歌曲,这使得iPod十分流行。但流行的同时也带来了一些问题, 在Windows系统下可以下载安装iTunes使用,但比较突出的是Linux中使用的问题。其实,只要方法得当,Linux中也能很好地使用iPod,而且方法不只一种呢!
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

虽然Linux 并不正式支持iPod,但除了一些并不重要的警告外,iPod还是可以和Linux很好兼容。如果使用的是Linux2.6内核, 那么在计算机上使用iPod将会非常方便。只需把iPod与计算机连接, 然后在http://www.gtkpod.org/downloads.html网站下载对应Linux发行版本的Gtkpod安装文件,最新版本为V0.99.14。此程序可实现Linux下对iPod的操作,如下载歌曲、播放目录等操作当然调试过程也比较复杂一些。事实上,如果非常喜欢AppleiTunes,还可以尝试一下CodeWeaverCrossOverOffice最新版本7.0, 可以到http://www.codeweavers.com/products/download_trial/下载试用版。该软件可以轻松地在Linux上运行Windows版的iTunes。这种方法我在这里就不做详细介绍。

1.新内核使用iPod方法

目前的linux发行版都是使用2.6Kernel,所以,当插入iPod时,总是报告无法安装该设备,此时计算机上会显示如下信息:

sda:end_request I/O error.dev sda,secor 129063016

Buffer I/O error on device sda,logical block 16882877

End-request: I/O eror,dev sda,sector 129063016

End-request:I/O error,dev sda,sector 129063016

Buffer I/O error on device sda,logical block 16882877

对于Linux来说,iPod就像一个移动硬盘设备, 无论使用USB接口,还是Firewire(火线)接口将iPod 与计算机相连,Linux总是采用SCSI仿真来处理它。出现不识别问题首先在于iPod有多于实际数目的扇区。当然,仅仅如此并不会引起上述错误,但如果计算饥试图识别任何一个介于实际扇区 数目与检测扇区数目之间的扇区时,则iPod总是拒绝所有附的附加I/O请求,出现计算机由于识别了一个iPod的错误报告自动锁定。为了重新设置iPod,就必须断开iPod与计算机的连接。为什么只有基于2.6.X的内核会受到这种影响呢? 问题就在于当计算机上安装iPod装置时,Linux的内核总是试图找到iPod的分区表。对于大多数文件系统来说,分区表都处十分区的第一部分。但是,基于2.6.X内核所支持的一种叫EFI的新型的分区却处于分区的最后几部分中,而这几部分恰恰是一旦被触及就自动上锁的部分。最简单的处理办法是,去除由内核所支持的EFIExtensible Firmware Interface)分区。直接选择“CONFIG_EFI_PARTITION”选项(File systems,Partition types,EFI GUID Partition support,然后重新编译内核。一旦完成这项工作,就可以尽情享受使用iPod的乐趣。下面以RHEL 5为例详细为大家介绍一下。

步骤:

 1. cd /usr/src/kernels/2.6.18-92.el5-i686

2. make mrproper  ;确定系统中没有.*.o文件,假如以前编译过内核,会产生上述文件,将会造成编译的失败

3. make menuconfig ;传统的文本内核编译模式

选择:File systems,回车。

选择Partition types回车

选中EFI GUID Partition support,退出。

Yes保存设置。

4.
make
编译内核模块,编译内核,时间比较长,大概花了40分钟

5.
make modules_install
;安装编译完的内核模块

6.
make install

7.
depmod -a
;创建模块链接

8
Reboot;编译成功后系统启动菜单grub.conf会被修改,在机器启动时会有新旧两个内核版本可以选择

等重新启动完系统后可以用dmesg命令查看到信息:

new high speed USB device using ehci_hcd and address 11

configuration #1 chosen from 3 choices

New USB device found, idVendor=05ac, idProduct=1293

New USB device strings: Mfr=1, Product=2, SerialNumber=3

Product: iPod

Manufacturer: Apple Inc.

SerialNumber: a7fa2d...

这就说明系统认到了iPod,这下大功告成啦。

尽管重新编译基于26X的内核会有些不方便, 但做这些工作是绝对值得的, 因为一解决这个小问题,就可以在Linux上自由自在地享受iPod带来的音乐乐趣。

另外,如果读者觉得编译内核太负责那么我再为大家在介绍一个不用编译内核就能使用iPod的方法,那就是去网上下载Floola,下载地址:
Floola
是一个跨平台的免费程序,大小7MB,它可以工作在Linux, Mac OS XWindows(支持Windows 7),可以识别你的iPod和摩托罗拉手机(只要是支持iTunes的设备)随意交换数据,这样再也不用担心iTunes"有去无回"了。

好了,讲了这么多,是不是心里都痒痒了,快去你的机器前是实践把。

 

转载地址:http://ygfgo.baihongyu.com/

你可能感兴趣的文章
系统集成资质培训-论文写作-几个题目如何写?(updated)
查看>>
搭建自己的框架之1:Rxjava2+Retrofit2 实现Android Http请求
查看>>
排序算法-快速排序
查看>>
CSS3 Background 属性介绍
查看>>
frameset 的一些小应用
查看>>
eclipse自动换行
查看>>
Android PDF 阅读器源码
查看>>
我的友情链接
查看>>
silverlight渐隐效果
查看>>
使用Docker实现php代码在线测试执行工具-toolfk.com
查看>>
簡單範例 mergecap,wireshark 付屬程式
查看>>
网络文件传输学习
查看>>
Installation Oracle11gR2 RAC One Node ---创建数据库
查看>>
spring 通过EsClientFactory注入elasticsearch
查看>>
打造中国第一品牌安全网关
查看>>
Android定位功能(二)
查看>>
tomcat的安装及配置
查看>>
用Jquery处理PHP返回的JSON格式数据的三种方法
查看>>
servlet基础
查看>>
云盾防Ddos文献之敌情篇 ——DDoS***原理
查看>>