刚收到一个朋友送的Ipod,经过研究今天我为大家分享一点在Linux系统下使用的经验。Apple的iPod它炫目时尚,超薄还可以俘储大量歌曲,这使得iPod十分流行。但流行的同时也带来了一些问题, 在Windows系统下可以下载安装iTunes使用,但比较突出的是Linux中使用的问题。其实,只要方法得当,Linux中也能很好地使用iPod,而且方法不只一种呢!
650) this.width=650;" style="width: 457px; height: 270px" border="0" alt="" src="http://img1.51cto.com/attachment/201105/225408962.png" width="605" height="380" />
虽然Linux 并不正式支持iPod,但除了一些并不重要的警告外,iPod还是可以和Linux很好兼容。如果使用的是Linux2.6内核, 那么在计算机上使用iPod将会非常方便。只需把iPod与计算机连接, 然后在http://www.gtkpod.org/downloads.html网站下载对应Linux发行版本的Gtkpod安装文件,最新版本为V0.99.14。此程序可实现Linux下对iPod的操作,如下载歌曲、播放目录等操作当然调试过程也比较复杂一些。事实上,如果非常喜欢Apple的iTunes,还可以尝试一下CodeWeaver的CrossOverOffice最新版本7.0, 可以到http://www.codeweavers.com/products/download_trial/下载试用版。该软件可以轻松地在Linux上运行Windows版的iTunes。这种方法我在这里就不做详细介绍。
1.新内核使用iPod方法
目前的linux发行版都是使用2.6的Kernel,所以,当插入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的新型的分区却处于分区的最后几部分中,而这几部分恰恰是一旦被触及就自动上锁的部分。最简单的处理办法是,去除由内核所支持的EFI(Extensible 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 ;传统的文本内核编译模式
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/attachment/201105/225511995.png" />
选择:File systems,回车。
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/attachment/201105/225843791.png" />
选择Partition types回车
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/attachment/201105/225656293.png" />
选中EFI GUID Partition support,退出。
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/attachment/201105/225731662.png" />
选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,这下大功告成啦。
尽管重新编译基于2.6.X的内核会有些不方便, 但做这些工作是绝对值得的, 因为一解决这个小问题,就可以在Linux上自由自在地享受iPod带来的音乐乐趣。
另外,如果读者觉得编译内核太负责那么我再为大家在介绍一个不用编译内核就能使用iPod的方法,那就是去网上下载Floola,下载地址:http://www.floola.com/,Floola是一个跨平台的免费程序,大小7MB,它可以工作在Linux, Mac OS X和Windows(支持Windows 7)下,可以识别你的iPod和摩托罗拉手机(只要是支持iTunes的设备)随意交换数据,这样再也不用担心iTunes的"有去无回"了。
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/attachment/201105/225808105.png" />
好了,讲了这么多,是不是心里都痒痒了,快去你的机器前是实践把。
 

本文出自 “李晨光原创技术博客” 博客,谢绝转载!

IPod在Linux下的实战的更多相关文章

  1. Linux下磁盘实战操作命令

    企业真实场景由于硬盘常年大量读写,经常会出现坏盘,需要更换硬盘.或者由于磁盘空间不足,需添加新硬盘,新添加的硬盘需要经过格式化.分区才能被 Linux 系统所使用. 虚拟机 CentOS 7 Linu ...

  2. linux下NFS实战

    系统环境 系统平台:CentOS release 6.8 (Final) NFS Server IP:172.16.55.6 防火墙关闭 SELinux=disabled 安装NFS程序包 1.查看系 ...

  3. Vsftp的PASV mode(被动模式传送)和Port模式及 Linux下VsFTP配置全方案

    什么叫做PASV mode(被动模式传送)?他是如何工作的? FTP的连接一般是有两个连接的,一个是客户程和服务器传输命令的,另一个是数据传送的连接.FTP服务程序一般会支持两种不同的模式,一种是Po ...

  4. Linux下的C编程实战

    Linux下的C编程实战(一) ――开发平台搭建 1.引言 Linux操作系统在服务器领域的应用和普及已经有较长的历史,这源于它的开源特点以及其超越Windows的安全性和稳定性.而近年来, Linu ...

  5. [转载]实战Linux下VMware虚拟机根目录空间扩充

    [转载]实战Linux下VMware虚拟机根目录空间扩充 (2011-07-31 21:34:34) 转载▼ 标签: 转载   原文地址:实战Linux下VMware虚拟机根目录空间扩充作者:shar ...

  6. Linux下高效数据恢复软件extundelete应用实战

    作为一名运维人员,保证数据的安全是根本职责,所以在维护系统的时候,要慎之又慎,但是有时难免会出现数据被误删除的情况,在这个时候改如何快速.有效地恢复数据呢?本文我们就来介绍一下Linux系统下常用的几 ...

  7. Linux下的编程实战【转】

    一篇比较不错的文章, 降到了 makefile make , gcc编译器,GDB调试器, Linux文件系统,Linux文件API,.C语言库函数(C库函数的文件操作实际上是独立于具体的操作系统平台 ...

  8. Linux下压缩工具gzip和归档工具tar及其实战shell应用

    Linux下压缩工具gzip和归档工具tar及其实战shell应用       第一章:gzip的使用技巧 gzip [option]... file... -d: 解压缩,相当于gunzip; -# ...

  9. .Net Core实战教程(一):Linux下搭建项目

    .Net Core实战教程(一):Linux下搭建项目 附言 .net core 1.0的时候就开始关注了,一直没有用于项目.真正用于项目我是2.0开始使用的.这几年也总结出一些经验.最近有空就写出来 ...

随机推荐

  1. Android Recovery OTA升级(一)—— make otapackage

    文件夹 文件夹 概述 make otapackage BUILT_TARGET_FILES_PACKAGE ota_from_target_files WriteFullOTAPackage Sign ...

  2. 洛谷P2633 Count on a tree

    题目描述 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权.其中lastans是上一个询问的答案,初始为0,即第一个 ...

  3. Android之RadioGroup+ViewPager制作的底部导航栏

    在日常开发中我们常常会用到类似微信或者QQ的底部导航.实现这样的效果有多种,今天就为大家介绍一种实现简单,可控性好的底部导航的实现方法. 首先创建activity_main.xml布局文件,里面主要由 ...

  4. Linux常用下载软件

    1.TransmissionTransmission是一个BitTorrent客户端软件,Ubunut默认自带的下载软件,它支持速度限制.制作种子.远程控制.磁力链接.数据加密.损坏修复.数据来源交换 ...

  5. tensorflow学习之路---简单的代码

    import numpyimport tensorflow as tf #自己创建的数据x_data = numpy.random.rand(100).astype(numpy.float32)#创建 ...

  6. BZOJ1367: [Baltic2004]sequence(左偏树)

    Description Input Output 一个整数R Sample Input 7 9 4 8 20 14 15 18 Sample Output 13 解题思路: 有趣的数学题. 首先确定序 ...

  7. 学习参考《零基础入门学习Python》电子书PDF+笔记+课后题及答案

    国内编写的关于python入门的书,初学者可以看看. 参考: <零基础入门学习Python>电子书PDF+笔记+课后题及答案 Python3入门必备; 小甲鱼手把手教授Python; 包含 ...

  8. Mysql学习总结(19)——Mysql无法创建外键的原因

    在MySQL中创建外键时,经常会遇到问题而失败,这是因为Mysql中还有很多细节需要我们去留意,我自己总结并查阅资料后列出了以下几种常见原因. 1.  两个字段的类型或者大小不严格匹配.例如,如果一个 ...

  9. Android数据库高手秘籍(三)——使用LitePal升级表

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/39151617 在上一篇文章中,我们学习了LitePal的基本使用方法,体验了使用框 ...

  10. 【Cocos游戏实战】功夫小子第五课之帮助场景和选关功能的实现

    功夫小子之帮助场景和选关功能的实现 转载请注明出处:http://blog.csdn.net/suool/article/details/46661231 本节课的视频教程地址是: hmsr=teac ...