当前位置: 技术问答>linux和unix
如何在红旗Linux下听mp3
来源: 互联网 发布时间:2015-02-01
本文导语: 我的机器上有Windows2000和Linux两个系统,在2000下有mp3我现在在Linux下想听mp3,请高手指点,怎么样在Linux下打开2000下的mp3,谢谢! | Linux 内核支持读写Fat、NTFS、Vfat、Fat32、Hfs 等文件系统(至少...
我的机器上有Windows2000和Linux两个系统,在2000下有mp3我现在在Linux下想听mp3,请高手指点,怎么样在Linux下打开2000下的mp3,谢谢!
|
Linux 内核支持读写Fat、NTFS、Vfat、Fat32、Hfs 等文件系统(至少可以读),因此在 Linux 下访问 Windows 要比在 Windows 下访问 Linux 方面的多,不需要使用专门的软件,直接使用 Linux 命令即可。
Fat/Fat32分区时 Linux 访问 Windows 分区
Linux 将系统中所有的设备都看作文件,所以在 Linux 下访问 Windows 分区非常方便,只要使用 mount 命令将 Windows 分区挂接成 Linux 的一个文件夹即可。
mount 命令的使用格式是(必须以 root 用户身份登陆):
mount [-afFhnrvVm] [-|] [-o] [-t] [设备名称] [挂接点]
若我们要将 Windows 的某一分区(如D盘)挂接到 Linux 的 /mnt/win 这个目录下,首先请在 /mnt下建立 win 文件夹,然后启动 Console 终端模式,输入命令“mount /dev/hda5 /mnt/win”,再进入 /mnt/win 目录,您就能看到 Windows 中 D 盘的内容了。
可能有的朋友要问了,为何要输入上面的命令,特别是那个 /dev/hda5 是什么东西呢?这是 Linux 下分区的一种表示方式,在 Linux 下看 Windows 分区一般是:hda1 为C盘,hda5为D盘,hda6为E盘,以此类推。。。
不过用上面的方法加载 Windows 分区后,另一个麻烦的事情出现了,就是 Windows 中所有的中文文件名和文件夹名全部显示为问号,英文却能正常显示,这计算机也有民族歧视啊!反对这种歧视,就要充分利用我们手中的武器,在 mount 命令中加入一些参数让它正确显示中文。这时,只要将上述命令改为“mount -t vfat -o iocharset=cp936 /dev/hda5 /mnt/win”,运行就可以了。
加载了这个分区,在不使用时我们还可以将它卸除,而卸除的命令为 umoun,若是卸除上述分区,只要输入“umount /mnt/win”即可。
另外,我们还可以让 Linux 在启动时自动加载分区,这样就不用每次使用 Windows 分区时都要输入命令加载了。
首先请以 root 用户登陆,进入图形界面后通过 Linux 的文件管理器找到 /etc 目录下的 fstab 文件,单击右键选择一个文字编辑软件打开此文件,在内容的最下方添加一行命令“/dev/hda5 /mnt/win vfat codepage=936,iocharset=cp936 1 1”,然后在 /mnt 目录下建立 win 文件夹,重新启动计算机后,再访问 /mnt/win 目录就是 Windows 分区的内容了。您也可以通过此种方法加载多个分区,而编辑时也可以在命令行方式下使用 vi 等编辑器。
NTFS 分区时 Linux 访问 Windows 分区
若是使用 Mandrake 或者红旗 Linux,并且在安装时硬盘中已经存在 NTFS 分区,则安装后不需要重新编译内核就可以实现对硬盘 NTFS 分区的访问;若是安装时硬盘中没有 NTFS 分区,或者使用的是 RedHat Linux,则必须重新编译内核,添加 NTFS 模块才能正常访问 NTFS 分区。
首先以 root 用户登陆,然后将 RedHat Linux 的第二张安装盘插入光驱中,在 /redhat/RPMS 目录下找到 kernel-source-2.4.xx-x.i386.rpm(这里x代表数字)文件,若是图形界面,直接双击安装,若是命令行,请输入“rpm -ivh kernel-source-2.4.xx-x.i386.rpm”命令。
再进入 /usr/src/linux-2.4.xx-x/configs 目录,这里有许多编译内核需要的培植文件,一般选择“kernel-source-2.4.xx-x.i686.config”即可。将此文件复制到 /usr/src/linux2.4.xx-x 目录,用文本编辑器打开,将“#CONFIG_NTFS_FS is not set”行改为“CONFIG_NTFS_FS=m”。
在终端模式下,进入 /usr/src/linux-2.4.xx-3 目录,运行“make modules”命令来编译想要的 NTFS 模块,在编译的过程中不需要理会与 NTFS 模块,在编译的过程中不需要理会与 NTFS 无关的内容,编译完成后,在 /usr/src/linux-2.4.xx-x/fs/ntf 目录下可以找到一个 ntfs.o 文件,将其复制到 /lib/modules/2.4.xx-x/kernel/fs 目录,然后回到 /usr/src/linux-2.4.xx-3 目录,输入命令:
#depmod
#modprobe ntfs
剩下的工作和前面 Fat/Fat32分区时 Linux 访问 Windows 分区相同。
注意命令行中的空格。
Fat/Fat32分区时 Linux 访问 Windows 分区
Linux 将系统中所有的设备都看作文件,所以在 Linux 下访问 Windows 分区非常方便,只要使用 mount 命令将 Windows 分区挂接成 Linux 的一个文件夹即可。
mount 命令的使用格式是(必须以 root 用户身份登陆):
mount [-afFhnrvVm] [-|] [-o] [-t] [设备名称] [挂接点]
若我们要将 Windows 的某一分区(如D盘)挂接到 Linux 的 /mnt/win 这个目录下,首先请在 /mnt下建立 win 文件夹,然后启动 Console 终端模式,输入命令“mount /dev/hda5 /mnt/win”,再进入 /mnt/win 目录,您就能看到 Windows 中 D 盘的内容了。
可能有的朋友要问了,为何要输入上面的命令,特别是那个 /dev/hda5 是什么东西呢?这是 Linux 下分区的一种表示方式,在 Linux 下看 Windows 分区一般是:hda1 为C盘,hda5为D盘,hda6为E盘,以此类推。。。
不过用上面的方法加载 Windows 分区后,另一个麻烦的事情出现了,就是 Windows 中所有的中文文件名和文件夹名全部显示为问号,英文却能正常显示,这计算机也有民族歧视啊!反对这种歧视,就要充分利用我们手中的武器,在 mount 命令中加入一些参数让它正确显示中文。这时,只要将上述命令改为“mount -t vfat -o iocharset=cp936 /dev/hda5 /mnt/win”,运行就可以了。
加载了这个分区,在不使用时我们还可以将它卸除,而卸除的命令为 umoun,若是卸除上述分区,只要输入“umount /mnt/win”即可。
另外,我们还可以让 Linux 在启动时自动加载分区,这样就不用每次使用 Windows 分区时都要输入命令加载了。
首先请以 root 用户登陆,进入图形界面后通过 Linux 的文件管理器找到 /etc 目录下的 fstab 文件,单击右键选择一个文字编辑软件打开此文件,在内容的最下方添加一行命令“/dev/hda5 /mnt/win vfat codepage=936,iocharset=cp936 1 1”,然后在 /mnt 目录下建立 win 文件夹,重新启动计算机后,再访问 /mnt/win 目录就是 Windows 分区的内容了。您也可以通过此种方法加载多个分区,而编辑时也可以在命令行方式下使用 vi 等编辑器。
NTFS 分区时 Linux 访问 Windows 分区
若是使用 Mandrake 或者红旗 Linux,并且在安装时硬盘中已经存在 NTFS 分区,则安装后不需要重新编译内核就可以实现对硬盘 NTFS 分区的访问;若是安装时硬盘中没有 NTFS 分区,或者使用的是 RedHat Linux,则必须重新编译内核,添加 NTFS 模块才能正常访问 NTFS 分区。
首先以 root 用户登陆,然后将 RedHat Linux 的第二张安装盘插入光驱中,在 /redhat/RPMS 目录下找到 kernel-source-2.4.xx-x.i386.rpm(这里x代表数字)文件,若是图形界面,直接双击安装,若是命令行,请输入“rpm -ivh kernel-source-2.4.xx-x.i386.rpm”命令。
再进入 /usr/src/linux-2.4.xx-x/configs 目录,这里有许多编译内核需要的培植文件,一般选择“kernel-source-2.4.xx-x.i686.config”即可。将此文件复制到 /usr/src/linux2.4.xx-x 目录,用文本编辑器打开,将“#CONFIG_NTFS_FS is not set”行改为“CONFIG_NTFS_FS=m”。
在终端模式下,进入 /usr/src/linux-2.4.xx-3 目录,运行“make modules”命令来编译想要的 NTFS 模块,在编译的过程中不需要理会与 NTFS 模块,在编译的过程中不需要理会与 NTFS 无关的内容,编译完成后,在 /usr/src/linux-2.4.xx-x/fs/ntf 目录下可以找到一个 ntfs.o 文件,将其复制到 /lib/modules/2.4.xx-x/kernel/fs 目录,然后回到 /usr/src/linux-2.4.xx-3 目录,输入命令:
#depmod
#modprobe ntfs
剩下的工作和前面 Fat/Fat32分区时 Linux 访问 Windows 分区相同。
注意命令行中的空格。
|
Linux一般都自带有播放mp3的播放器,进入X-window后仔细研究一下菜单应该就可以找到。
主要问题就是要mount windows的分区。参考以下文章即可:
第一,windows系统分区有不同格式的问题,如9x的fat和fat32,nt的ntfs,以及2000和最新的xp的ntfs5,至于fat(fat32)格式,该文已经讲得非常清楚了,而ntfs的访问需要编译内核。因为现在装win2000和xp的读者也很多了,必须说一下。
第二,现在新版的linux如redhat已经不再在其package中包括linuxconf了,即使光盘上还带得有此软件包,默认状态下也是不会安装的,因此使用linuxconf并不是最好的方法,也绝非最简单的方法。
第三,文章中没有说明中文的问题,而这是我们在使用中必然碰到的。因为通常在我们的windows分区中都有中文的目录和文件,如果不加入中文的支持,我们能访问windows分区,也没有太大的意义。
本着对读者负责的态度,现在补充如下:
一、ntfs分区的访问
最好的办法是在linux安装前已经具有ntfs分区,这样在安装如mandrake和suse linux版本时,可以自动为你安装相应的内核并设置好,你就可以在不知情的情况下自由地访问windows分区,这也是我推荐初学者使用mandrake或者suse linux的原因,而redhat不会,因此需要编译内核。
1、找到编译内核所需要的.config文件。 在/usr/src/linux/configs目录下有若干编译内核所用的配置。选择我们想要的配置,将它复制到/usr/src/linux目录下,改名为.config,命令如下:cp /usr/src/linux/configs/kernel-2.2.16-i686.config /usr/src/linux/.config
2 、修改.config文件,去掉不用的模块,加上自己想要的模块。 打开.config,有许多XXXX=m的项,这些都是要被编译为模块的项,因为我们不希望编译这些模块,所以要把XXXX=m的项统统去掉。然后再加上我们想要的模块,将# CONFIG_NTFS_FS is not set 改为CONFIG_NTFS_FS=m 当然,可以用你熟悉各种工具来做这件事。
3、编译NTFS模块。 在/usr/src/linux目录下运行命令make modules来编译我们想要的NTFS模块。
4、安装NTFS模块。 编译后得到的ntfs.o在/usr/src/linux/fs/ntfs目录下,手动将它复制到正确的目录下。 cp /usr/src/linux/fs/ntfs/ntfs.o /lib/modules/2.2.16-22/fs/
注意:千万不能运行命令make modules_install,否则将带来严重的后果,它会删除你系统中的所有模块,只安装刚刚编译的模块(ntfs.o)。
5、载入NTFS模块. 运行命令depmod;modprobe ntfs (以上为刘军民先生找到的方法,该方法比较简单和实用)
另外你也可以使用make menuconfig,重新定制你需要的所有模块,接着运行make modeules;make modeules_install来安装。但是这种方式要麻烦和费时些。
二、直接编写fstab文件
这是最简单的方法。直接编写fstab文件的好处还在于,linux会在启动时自动为你装载你在其中定义的windows分区,不用在每次使用都要输入:mount -t vfat /dev/hda1 /mnt/winc。使用su命令转为root权限,用vim或者其他编辑软件打开fstab(位于/etc/fstab),命令如下:vim /etc/fstab,内容示例如下:
/dev/hda8 / ext2 defaults 1 1
/dev/hda6 /boot ext2 defaults 1 2
none /dev/pts devpts mode=0620 0 0
/dev/hda9 /home ext2 defaults 1 2
/mnt/cdrom /mnt/cdrom supermount fs=iso9660,dev=/dev/cdrom 0 0
/mnt/floppy /mnt/floppy supermount fs=vfat,dev=/dev/fd0 0 0
/dev/hda1 /mnt/winc vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
/dev/hda5 /mnt/wind vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
none /proc proc defaults 0 0
/dev/hda7 /usr ext2 defaults 1 2
/dev/hda10 swap swap defaults 0 0
我的fstab文件内容多了一点,因为我的分区细了一点。你只要注意红色那两行。把/dev/hda1改为你的windows分区所在即可,如果windows有两个分区,一般就是/dev/hda1和/dev/hda3。如果你不清楚,按照我的fstab内容在你的fstab文件中加入那两行就行了,如果使用ntfs的,把其中的vfat改为ntfs即可。当然你首先要在/mnt目录下建立两个目录winc和wind,命令如下:mkdir /mnt/winc /mnt/wind。重新启动后看能不能访问你的windows分区,逐步试探更改/dev/hda?(?代表数字)直到能访问为止。
三、关于中文的支持
关键在于在你的fstab文件中定义windows分区的一行的最后面加上:codepage=936,iocharset=gb2312 0 0,但是对于使用COSIX中软linux或者红旗linux的读者来说,可以不加,显示中文目录和文件也没有问题,毕竟是汉化版本嘛。另外说明一点,中文目录和文件的显示跟整个linux的设置有关,如果你没有在此之前设置好中文环境,你还是无法在你的分区中看到中文目录和文件的,全部是些????代替了你的中文字,这不是这篇文章的内容了,有兴趣的读者请参考其他文章。
主要问题就是要mount windows的分区。参考以下文章即可:
第一,windows系统分区有不同格式的问题,如9x的fat和fat32,nt的ntfs,以及2000和最新的xp的ntfs5,至于fat(fat32)格式,该文已经讲得非常清楚了,而ntfs的访问需要编译内核。因为现在装win2000和xp的读者也很多了,必须说一下。
第二,现在新版的linux如redhat已经不再在其package中包括linuxconf了,即使光盘上还带得有此软件包,默认状态下也是不会安装的,因此使用linuxconf并不是最好的方法,也绝非最简单的方法。
第三,文章中没有说明中文的问题,而这是我们在使用中必然碰到的。因为通常在我们的windows分区中都有中文的目录和文件,如果不加入中文的支持,我们能访问windows分区,也没有太大的意义。
本着对读者负责的态度,现在补充如下:
一、ntfs分区的访问
最好的办法是在linux安装前已经具有ntfs分区,这样在安装如mandrake和suse linux版本时,可以自动为你安装相应的内核并设置好,你就可以在不知情的情况下自由地访问windows分区,这也是我推荐初学者使用mandrake或者suse linux的原因,而redhat不会,因此需要编译内核。
1、找到编译内核所需要的.config文件。 在/usr/src/linux/configs目录下有若干编译内核所用的配置。选择我们想要的配置,将它复制到/usr/src/linux目录下,改名为.config,命令如下:cp /usr/src/linux/configs/kernel-2.2.16-i686.config /usr/src/linux/.config
2 、修改.config文件,去掉不用的模块,加上自己想要的模块。 打开.config,有许多XXXX=m的项,这些都是要被编译为模块的项,因为我们不希望编译这些模块,所以要把XXXX=m的项统统去掉。然后再加上我们想要的模块,将# CONFIG_NTFS_FS is not set 改为CONFIG_NTFS_FS=m 当然,可以用你熟悉各种工具来做这件事。
3、编译NTFS模块。 在/usr/src/linux目录下运行命令make modules来编译我们想要的NTFS模块。
4、安装NTFS模块。 编译后得到的ntfs.o在/usr/src/linux/fs/ntfs目录下,手动将它复制到正确的目录下。 cp /usr/src/linux/fs/ntfs/ntfs.o /lib/modules/2.2.16-22/fs/
注意:千万不能运行命令make modules_install,否则将带来严重的后果,它会删除你系统中的所有模块,只安装刚刚编译的模块(ntfs.o)。
5、载入NTFS模块. 运行命令depmod;modprobe ntfs (以上为刘军民先生找到的方法,该方法比较简单和实用)
另外你也可以使用make menuconfig,重新定制你需要的所有模块,接着运行make modeules;make modeules_install来安装。但是这种方式要麻烦和费时些。
二、直接编写fstab文件
这是最简单的方法。直接编写fstab文件的好处还在于,linux会在启动时自动为你装载你在其中定义的windows分区,不用在每次使用都要输入:mount -t vfat /dev/hda1 /mnt/winc。使用su命令转为root权限,用vim或者其他编辑软件打开fstab(位于/etc/fstab),命令如下:vim /etc/fstab,内容示例如下:
/dev/hda8 / ext2 defaults 1 1
/dev/hda6 /boot ext2 defaults 1 2
none /dev/pts devpts mode=0620 0 0
/dev/hda9 /home ext2 defaults 1 2
/mnt/cdrom /mnt/cdrom supermount fs=iso9660,dev=/dev/cdrom 0 0
/mnt/floppy /mnt/floppy supermount fs=vfat,dev=/dev/fd0 0 0
/dev/hda1 /mnt/winc vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
/dev/hda5 /mnt/wind vfat user,exec,umask=0,codepage=936,iocharset=gb2312 0 0
none /proc proc defaults 0 0
/dev/hda7 /usr ext2 defaults 1 2
/dev/hda10 swap swap defaults 0 0
我的fstab文件内容多了一点,因为我的分区细了一点。你只要注意红色那两行。把/dev/hda1改为你的windows分区所在即可,如果windows有两个分区,一般就是/dev/hda1和/dev/hda3。如果你不清楚,按照我的fstab内容在你的fstab文件中加入那两行就行了,如果使用ntfs的,把其中的vfat改为ntfs即可。当然你首先要在/mnt目录下建立两个目录winc和wind,命令如下:mkdir /mnt/winc /mnt/wind。重新启动后看能不能访问你的windows分区,逐步试探更改/dev/hda?(?代表数字)直到能访问为止。
三、关于中文的支持
关键在于在你的fstab文件中定义windows分区的一行的最后面加上:codepage=936,iocharset=gb2312 0 0,但是对于使用COSIX中软linux或者红旗linux的读者来说,可以不加,显示中文目录和文件也没有问题,毕竟是汉化版本嘛。另外说明一点,中文目录和文件的显示跟整个linux的设置有关,如果你没有在此之前设置好中文环境,你还是无法在你的分区中看到中文目录和文件的,全部是些????代替了你的中文字,这不是这篇文章的内容了,有兴趣的读者请参考其他文章。