CentOS/RHEL:使用DVD/CD作为yum命令的安装源

nenusoulcsdn 2011-01-26

CentOS挂载fat32分区不能显示中文,用mount -t vfat -o iocharset=cp936 /dev/hdb5 /mnt/d还是无效。下面为解决办法:
mount -o iocharset=utf8 /dev/hdb5 /mnt/win_d
mount -o iocharset=utf8 /dev/sda5 /mnt/usb
如果挂iso用做虚拟光驱可以
losetup /dev/loop7 /yourpath/youriso.iso
然后再mount /dev/cdrom /mnt/cdrom
(假设mnt目录下有win_d,usb,cdrom目录,没有的自己建立)

losetup和mount的区别就在于losetup可以虚拟出光驱,而单纯的mount只能显示出文件(只相当于一个文件夹)

Linux下想访问NTFS分区,现在普遍的方法是利用ntfs-3g或者内核模块来实现。

一、安装ntfs-3g模块

1. 使用yum的安装方法:

请确定你已经安装了rpmforge软件库的源。请参考:RHEL/CentOS 5.5使用第三方软件库

然后安装下列组件。

yum install fuse ntfs-3g -y

注:如果你在使用 CentOS 5.3 或更旧版本,那么你需要安装来自 ELRepo 的 kmod-fuse。

2. 使用ntfs-3g官方源码编译安装的方法:

ntfs-3g下载页面:http://www.tuxera.com/community/ntfs-3g-download/

安装步骤:

wget http://tuxera.com/opensource/ntfs-3g-2010.8.8.tgz

tar zxvf ntfs-3g-2010.8.8.tgz

cd ntfs-3g-2010.8.8

./configure

make

make install

以上两种方法二选一,yum只适用于RedHat系,编译安装适用于所有Linux发行版

另一种说法:“
1、安装fuse
http://fuse.sourceforge.net/

#wget http://downloads.sourceforge.net/project/fuse/fuse-2.X/2.7.6/fuse-2.7.6.tar.gz?use_mirror=ncu

#tar -zxvf fuse-2.7.6.tar.gz

#cd fuse-2.7.6

#./configure
#make && make install

#modprobe fuse

2、安装ntfs-3g
http://www.tuxera.com/

#wget http://tuxera.com/opensource/ntfs-3g-2010.5.22.tgz

#tar -zxvf ntfs-3g-2010.5.22.tgz

#cd ntfs-3g-2010.5.22

#./configure
#make && make install

3、挂载ntfs格式的移动硬盘

#mkdir -p /mnt/winc --创建挂载目录

#mount -t ntfs-3g /dev/sdb5 /mnt/winc --挂载命令

#df -k -h --查看挂载

#umount /mnt/winc/ --卸载

二、挂载NTFS文件系统

假设你的NTFS文件系统是 /dev/sda1 而你将会把它挂载在 /mnt/windows/c,请执行以下步骤。

1. 创建挂载点。(一般建议挂在mnt目录里)

mkdir /mnt/windows/c

2. 挂载NTFS分区:

mount -t ntfs-3g /dev/sda1 /mnt/windows/c

注:这里的sda1是指SATA或SCSI硬盘的第一个分区,如果是老式的IDE硬盘,会是hda1,具体请用fdisk -l查看。如偶的一台机:

[root@CentOS ~]# fdisk -l

Disk /dev/sda: 164.6 GB, 164696555520 bytes
255 heads, 63 sectors/track, 20023 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 2550 20482843+ 7 HPFS/NTFS
/dev/sda2 2551 20022 140343840 f W95 Ext’d (LBA)
/dev/sda5 5101 8924 30716248+ 7 HPFS/NTFS
/dev/sda6 8925 12748 30716248+ 7 HPFS/NTFS
/dev/sda7 12749 16572 30716248+ 7 HPFS/NTFS
/dev/sda8 16573 20022 27712093+ 7 HPFS/NTFS
/dev/sda9 2551 2584 273042 83 Linux
/dev/sda10 2585 4928 18828148+ 83 Linux
/dev/sda11 4929 5016 706828+ 82 Linux swap / Solaris

Partition table entries are not in disk order

3. 如果想开机系统启动时自动挂载NTFS分区,编辑vim /etc/fstab文件,加入类似如下内容:

只读式挂载:/dev/sda1 /mnt/windows/c ntfs-3g ro,umask=0222,defaults 0 0

读写式挂载:/dev/sda1 /mnt/windows/c ntfs-3g rw,umask=0000,defaults 0 0
或者: /dev/sda1 /mnt/windows/c ntfs-3g defaults 0 0

如偶的/etc/fstab文件如下:

LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-sda11 swap swap defaults 0 0

/dev/sda1 /mnt/windows/c ntfs-3g ro,umask=0222,defaults 0 0
/dev/sda5 /mnt/windows/e ntfs-3g defaults 0 0
/dev/sda6 /mnt/windows/f ntfs-3g defaults 0 0
/dev/sda7 /mnt/windows/g ntfs-3g defaults 0 0
/dev/sda8 /mnt/windows/h ntfs-3g defaults 0 0

其他注意问题:

从 CentOS 5.4 起(2.6.18-164 或更新的内核),fuse 模块已经包含在内核里。因此,已不再需要 dkms 及 dkms-fuse。如果你先前安装了 dkms-fuse,请用 yum remove dkms-fuse 命令把它卸装。请注意 CentOS 4.x 的用户需要这两个组件。

使用 centosplus 内核的用户

由CentOS-5.3开始,centoplus内核没有启用NTFS模块。这是由于5.3内的 NTFS 是不能运行的。详情请参阅 https://bugzilla.redhat.com/show_bug.cgi?id=481495 。如果你想使用来自CentOS内核的NTFS模块,你可以安装来自ELRepo的kmod-ntfs。但这个模块没有ntfs-3g好,只提供极度有限的写入功能。

有时间为了快速安装一些稳定版本的软件,我们应该考虑使用CentOS的DVD/CD里的软件包,那么如何配置才能方便的使用yum命令安装光盘里的软件包呢?
事实上,安装CentOS后,安装程序已经默认给出了CDROM/DVD 的repo文件了:/etc/yum.repos.d/CentOS-Media.repo,只需要小改一下该文件,
# vi /etc/yum.repos.d/CentOS-Media.repo
打开后,把其中的 enabled 设为 1 ,
enabled=1
修改后,保存退出。这样,就可以使用可面命令安装其中的软件包了:
# yum --enablerepo=c5-media install pacakge-name
当然,可以只用CDROM / DVD 上的安装源,使用下面的命令将不会使用用CDROM/DVD介质以外的repo:
# yum --disablerepo=\* --enablerepo=c5-media install pacakge-name
或者,使用groupinstall以安装软件套件:
# yum --disablerepo=\* --enablerepo=c5-media groupinstall 'Virtualization'

相关推荐