如何在外置挂载硬盘上linux驱动编译进内核linux内核

linux系统下如何挂载NTFS移动硬盘
作者:疆飞
字体:[ ] 类型:转载 时间:
用命令行挂载移动硬盘是Linux的基本操作之一,虽然目前有些Linux系统能自动加载移动硬盘,但有些时候(比如使用Ubuntu Server或其它Linux系统的时候)仍然需要手动操作,下面这篇文章主要介绍了linux系统下如何挂载NTFS移动硬盘,需要的朋友可以参考借鉴。
数据迁移是我们经常会遇到的,有时候做大数据量迁移时,为了快速迁移大数据,有可能在Linux服务器上临时挂载NTFS格式的移动硬盘, 一般情况下,Linux是识别不了NTFS格式移动硬盘的(需要重编译Linux核心才能,加挂NTFS分区),
这时候为了能让Linux服务器能够识别NTFS的移动硬盘,就必须安装ntfs-3g(Third Generation Read/Write NTFS Driver)的包。
一、NTFS-3G介绍
NTFS-3G是一个开源项目,
NTFS-3G是为Linux, Android, Mac OS X, FreeBSD, NetBSD, OpenSolaris, QNX, Haiku,
和其他操作系统提供的一个稳定的,功能齐全,读写NTFS的驱动程序的。
它提供了安全处理Windows XP,Windows Server 2003,Windows 2000,Windows Vista,Windows Server 2008和Windows 7操作系统下的NTFS文件系统。
NTFS-3g是一个开源软件,它支持在Linux下面读写NTFS格式的分区。
它非常的快速,同时也很安全。它支持Windows 2000、XP、2003和Vista,并且支持所有的符合POSIX标准的磁盘操作。
ntfs-3g的目的是为了持续的发展,各硬件平台和操作系统的用户需要可靠的互通与支持ntfs的驱动,
ntfs-3g可以提供可信任的、功能丰富的高性能解决方案。经过了12年多的发展,ntfs-3g已经逐渐稳定;
官方网址:/,
文档手册:/community/ntfs-3g-manual/
下载地址:/community/ntfs-3g-download/
二、安装与挂载
步骤一:解压安装NTFS-3G。
# tar -xvzf ntfs-3g_ntfsprogs-.tgz
# cd ntfs-3g_ntfsprogs-
# ./configure
# make install
之后系统会提示安装成功,下面就可以用ntfs-3g来实现对NTFS分区的读写了
步骤二:配置挂载NTFS格式的移动硬盘
1. 首先得到NTFS分区的信息&
# sudo fdisk -l | grep NTFS
[root@DB-Server klb]# sudo fdisk -l | grep NTFS
/dev/sdc1 * 1 244
2. 设置挂载点,用如下命令实现挂载
# mount -t ntfs-3g
例如得到的NTFS分区信息为/dev/sdc1,挂载点设置在/mnt/usb下,可以用&
# mount -t ntfs-3g /dev/sdc1 /mnt/usb
  或者直接用
# ntfs-3g ntfs-3g /dev/sdc1 /mnt/usb
3. 如果想实现开机自动挂载,可以在/etc/fstab里面添加如下格式语句
ntfs-3g silent,umask=0,locale=zh_CN.utf8 0 0
这样可以实现NTFS分区里中文文件名的显示。&
4. 卸载分区可以用umount实现,用
# umount   
以上就是关于linux系统挂载NTFS移动硬盘的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具Linux内核编译配置(Menuconfig图形化方式)、制作文件系统的步骤 - HowieXue的博客 - CSDN博客
Linux内核编译配置(Menuconfig图形化方式)、制作文件系统的步骤
嵌入式开发
Linux内核编译(Menuconfig图形化方式)、制作文件系统的步骤
Linux内核配置原理
Menuconfig主要功能选项介绍
编译配置内核步骤
制作文件系统步骤
文件系统和根文件系统区别联系
一、Linux内核配置原理
Linux内核的配置系统由三个部分组成,分别是:
1、Makefile:分布在 Linux 内核源代码根目录及各层目录中,定义 Linux 内核的编译规则;
2、配置文件(config.in):给用户提供配置选择的功能;
3、配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解释)和配置用户界面(提供基于字符界面、基于 Ncurses 图形界面以及基于 Xwindows 图形界面的用户配置界面,各自对应于 Make config、Make menuconfig 和 make xconfig)。
Linux 内核的编译菜单有3中方法:
1)make config:进入命令行,可以一行一行的配置,这不方便使用,但用命令执行一遍会对编译过程有更深了解,这里不具体介绍。
2)make menuconfig:进入我们熟悉的 menuconfig 菜单,图形化界面选择配置
3)make xconfig:在2.4.X 以及以前版本中 xconfig 菜单是基于 TCL/TK 的图形库的,没有接触过。。貌似淘汰了。
Menuconfig配置内核原理:
在Linux里面我们所看到的menuconfig界面是通过配置内核顶层的Kconfig产生的,而当输入make menuconfig命令的时候系统会读取Makefile来解析Kconfig。
  通常会在Kconfig里面编写以下四项:
  1、模块的名字,用module开头;
  2、选项,通常设为bool(二选一)或者trastate(三选一);
  3、默认选项;
  4、帮助说明。
关于KConfig 详细介绍可参考
二、Menuconfig主要功能选项介绍:
在源码目录键入# make menuconfig ARCH=arm 后出现下面Menu:(Menuconfig主界面)
其中General setup 中重要的选项包括:
Cross-compiler tool prefix
交叉编译工具前缀(如arm-linux-);
Local version - append to kernel release 内核显示的版本信息;
System V IPC
表示系统的进程间通信Inter Process
Communication,它用于处理器在程序之间同步和交换信息
Enable eventpoll support:支持事件轮循的系统调用。
2、Enable loadable module support
重要的选项包括:(内核模块配置)
Module unloading
允许卸载已经加载的模块
Module versioning support
允许使用其他内核版本的模块(可能会出问题)
Source checksum for all modules 为所有的模块校验源码,如果你不是自己编写内核模块就不需要它这个功能。
3、Enable the block layer
块设备支持,使用硬盘/USB/SCSI设备者必选这选项使得块设备可以从内核移除。。重要的选项包括:
Support for large (2TB+) block devices and files 仅在使用大于2TB的块设备时需要
Block layer bio throttling support
可用于限制设备的IO速度
IO Schedulers
IO调度器I/O是输入输出带宽控制,主要针对硬盘,是核心的必须的东西。这里提供了三个IO调度器。
4、Processor type and features (处理器类型及特点)
Symmetric multi-processing support
对称多处理器支持,如果你有多个CPU或者使用的是多核CPU就选上
Processor family (Pentium-Pro)处理器系列, 请按照实际使用的CPU选择,这里是处理器的类型
Generic x86 support
这一选项针对x86系列的CPU使用更多的常规优化。如果你在上面一项选的是i386、i586之类的才选这个通用x86支持,
Multi-core scheduler support
针对多核CPU进行调度策略优化多核调度机制支持,双核的CPU要选
5、 Power management and ACPI options (电源管理相关)
6、Bus options(PCI 、ISA 等总线的支持和配置.)
7、Executable file formats / Emulations (没用过,不大了解)
8、Networking support
(网络配置,重要)
Networking options
网络协议和网络包参数配置(其中TCP/IP相关协议必须打开)
使用无线网卡支持
RF switch subsystem support
RF 切换设备
9、Device Drivers
(设备驱动)
Generic Driver Options
Block devices
想要支持的块设备,比如ramdisk , 磁盘阵列,CD/DVD 刻录等
Misc devices
需要支持的杂项设备
SCSI device support
SCSI 设备驱动
Serial ATA and Parallel ATA drivers
SATA 设备驱动
IEEE 1394 (FireWire) support
Network device support
如Ethernet (1000 Mbit)
选择自己对应的硬件
Character devices
字符设备,一般自己写的传感器类驱动都是字符型,需要在里面配置,包括串口TTY等。
SPI/I2C support
Sound card support
10、Firmware Drivers
(BIOS相关,部分系统管理工具可能会用到 )
11、File systems (文件系统支持,重要!)
The Extended 4 (ext4) filesystem
Ext4 Security Labels
&=== 取消 SELinux 支持
XFS filesystem support
ISO 9660 CDROM file system support
NTFS file system support
12、Kernel hacking
(内核调试相关,木有用过)
13、Security options
(安全相关选项)
Cryptographic API
—& // 加密API ,这部分选项会根据此前的优化自动调整
三、编译配置内核步骤
以Linux3.5内核版本为例,先解压linux-3.5源码,
然后cd到目录中输入:
make menuconfig ARCH=arm
根据硬件选择处理器选型(配置):
网络协议配置(可根据软硬件需求对其进行裁剪):
设备驱动:图是网卡驱动
根据自己的芯片选择相应的网卡驱动
文件系统选择:比如系统想使用ex4文件系统 就空格勾选上
图中取值方式:&&为不选择, &*& 则压缩到内核映像zImage放到内存中运行,& M&为编译成moudule内核模块,存放在ROM中,使用时由zImage调用动态加载到内存
在makemenuconfig里面选中的 都会在.config文件中查询到:(相关Cofig配置成y,则编译内核代码时会将此相关代码编译,此时为静态编译)
选择好后就make进行编译内核,编译完成会在arch/arm/boot目录下生成zImage,这就是内核映像文件,直接可以烧进板子(SD卡或者USB)
四、制作文件系统步骤
首先安装工具包linux_tools.tgz
tar xvzf linux_tools.tgz -C /
然后生成文件系统镜像文件(qtopia_qt4.img)
make_ext4fs -s -l
-a root -L linux rootfs_qtopia_qt4.img
rootfs_qtopia_qt4
执行make_ext4fs命令之后即会将rootfs_qtopia_qt4文件打包成
rootfs_qtopia_qt4.img 文件系统镜像。
l“是分区大小
-s就是生成ext4的S模式制作;
24/1024 = 300M
-a root 是指这个img用于Linux系统(若为-a system即表示为android系统,挂载点即是/system。
./rootfs_qtopia_qt4.img 表示在当前目录下生成镜像文件。
./rootfs_qtopia_qt4 指定根文件系统源路径
可以把自己写的应用程序放到rootfs_qtopia_qt4这个里面,然后打包成ext4文件系统镜像文件,这样应用程序就在固定在系统里,不用再二次安装了。
重点解释下:make_ext4fs 命令用来制作ext4文件系统的镜像,首先要把工具包解压到usr/bin 。使用方法参考:
make_ext4fs -s -l 512M -a system system_new.img system
512M表分区大小 第一个system表示挂载点为/system, 第二个system表示system目录。
新生成的system_new.img就可以用来烧写了。
五、文件系统和根文件系统区别联系
很多人分不清文件系统和根文件系统的区别和联系:
个人理解,所谓根文件系统(Root Filesytem)就是要包括linux启动时所必须的目录和关键性的文件、命令,所组成整个文件目录结构,即为根文件系统。
例如linux启动时所需要的init文件
挂载分区时linux去找的/etc/fstab 这个挂载文件等,根文件系统还包括许多应用程序bin、sbin目录等。
根文件系统可以用busybox直接生成
所谓文件系统(File System):指的是用来方便管理文件存储和数据组织的一种方法。常见的linux文件系统:NFS 网络根文件系统、YAFFS2针对nandflash, EXT3,EXT4 等。还有如大家熟悉的Windows下FAT、FAT32、NTFS系统等
文件系统需要根据系统类型和硬件支持,使用打包工具(如Make_ext4)生成
欢迎转载,Howie原创作品,本文地址:
我的热门文章2012年11月 挨踢职涯大版内专家分月排行榜第二2011年9月 Linux/Unix社区大版内专家分月排行榜第二
2012年1月 Linux/Unix社区大版内专家分月排行榜第三2011年8月 C/C++大版内专家分月排行榜第三2011年8月 Linux/Unix社区大版内专家分月排行榜第三2010年4月 C/C++大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。Linux加载新硬盘的操作 - CSDN博客
Linux加载新硬盘的操作
Linux随手 虚拟机里加载一个新硬盘
&& 编译Linux内核,用的版本是最新的反而有问题,而且是&解决不了的&。没办法,只好换了一个低版本的内核。编译到半截的时候,突然说空间不够了,这事儿闹的。做Linux作业,时间都花在这样的事情上了,真郁闷。
  没关系,咱的是虚拟机,空间不够只管加。上网一搜,找到有添加Linux新硬盘的办法,罗列如下。蓝字部分是要敲入的命令。这里虽然是说的虚拟机,但是很多地方在实际的电脑上也是可以用的。问题在于,有多少电脑安装Linux不是用虚拟机?
创建虚拟硬盘&&&&&&& 1、关闭VM中正在运行的虚拟系统;&&&&&&& 2、在虚拟系统名称上点右键-》Virtual Machine Settings;&&&&&&& 3、在Hardware页点&Add&-》Add a hard disk-》Create a new virtual disk-》SCSI(recommended)-》分配空间大小-》OK;&&&&&&& 4、可以看见Hardware中出现了一块新的硬盘Hard Disk 2。
对虚拟硬盘进行分区和格式化(转载自bixuan)&&&&&& [root@cncmail data1]# fdisk -l ## 这里是查看目前系统上有几块硬盘
&&&&&&&& Disk /dev/sda: 36.4 GB,
bytes&&&&&&&& 255 heads, 63 sectors/track, 4425 cylinders&&&&&&&& Units = cylinders of 16065 * 512 = 8225280 bytes
&&&&&&& Device Boot&&&& Start&&&&&&& End&&&& Blocks&&& Id&& System&&&&&&&& /dev/sda1&&& *&&&&&&&&& 1&&&&&&& 255&&& 2048256&&& 83&& Linux&&&&&&&& /dev/sda2&&&&&&&&&&& 256&&&&&& 1530&& +&& 83&& Linux&&&&&&&& /dev/sda3&&&&&&&&&& 4296&&&&&& 4425&&& 1044225&&& 82&& Linux swap&&&&&&&& /dev/sda4&&&&&&&&&& 1531&&&&&& 4295&& +&&& f&& Win95 Ext'd (LBA)&&&&&&&& /dev/sda5&&&&&&&&&& 1531&&&&&& 2805&& &&& 83&& Linux&&&&&&&& /dev/sda6&&&&&&&&&& 2806&&&&&& 4295&& +&& 83&& Linux
&&&&&&&& Partition table entries are not in disk order
&&&&&&&& Disk /dev/sdb: 36.7 GB,
bytes ## 这里发现/dev/sdb,容量36.7G,切未被分区&&&&&&&& 255 heads, 63 sectors/track, 4462 cylinders&&&&&&&& Units = cylinders of 16065 * 512 = 8225280 bytes
&&&&&&&& Disk /dev/sdc doesn't contain a valid partition table&&&&&&&& [root@linux root]# fdisk /dev/sdb ## 接下去就对/dev/sdb分区进行分区
&&&&&&&& The number of cylinders for this disk is set to 4462.&&&&&&&& There is nothing wrong with that, but this is larger than 1024,&&&&&&&& and could in certain setups cause problems with:&&&&&&&& 1) software that runs at boot time (e.g., old versions of LILO)&&&&&&&& 2) booting and partitioning software from other OSs&&&&&&&&&&& (e.g., DOS FDISK, OS/2 FDISK)
&&&&&&&& Command (m for help): m&&&&&&&& Command action&&&&&&&&&&& a&&& toggle a bootable flag&&&&&&&&&&& b&&& edit bsd disklabel&&&&&&&&&&& c&&& toggle the dos compatibility flag&&&&&&&&&&& d&&& delete a partition&&&&&&&&&&& l&&& list known partition types&&&&&&&&&&& m&&& print this menu&&&&&&&&&&& n&&& add a new partition&&&&&&&&&&& o&&& create a new empty DOS partition table&&&&&&&&&&& p&&& print the partition table&&&&&&&&&&& q&&& quit without saving changes&&&&&&&&&&& s&&& create a new empty Sun disklabel&&&&&&&&&&& t&&& change a partition's system id&&&&&&&&&&& u&&& change display/entry units&&&&&&&&&&& v&&& verify the partition table&&&&&&&&&&& w&&& write table to disk and exit&&&&&&&&&&& x&&& extra functionality (experts only)
&&&&&&&& Command (m for help): p&&&&& ## 打印出目前该硬盘下的分区列表
&&&&&&&& Disk /dev/sdb: 36.7 GB,
bytes&&&&&&&& 255 heads, 63 sectors/track, 4462 cylinders&&&&&&&& Units = cylinders of 16065 * 512 = 8225280 bytes
&&&&&&&&&&& Device Boot&&&& Start&&&&&&& End&&&& Blocks&&& Id&& System
&&&&&&&& Command (m for help): n&&&&& ## 增加一个分区&&&&&&&& Command action&&&&&&&&&&& e&&& extended&&&&&&&&&&& p&&& primary partition (1-4)&&&&&&&&&&& ## 因为通常选择主分区,所以这里打一个p&&&&&&&& p&&&&&&&& Partition number (1-4): 1 &&& ## 这里因为是第一个分却,所以只选择1,如果是第二个分区,则选择2,依次类推&&&&&&&& First cylinder (1-4462, default 1): ## 新分区起始的磁盘块数&&&&&&&& Using default value 1&&&&&&&& Last cylinder or +size or +sizeM or +sizeK (1-4462, default 4462): 如果要分区10G,这里可以直接输入:+10240M,因为这里要全部使用硬盘空间,则用默认&&&&&&&& Using default value 4462
&&&&&&&& Command (m for help): p
&&&&&&&& Disk /dev/sdb: 36.7 GB,
bytes&&&&&&&& 255 heads, 63 sectors/track, 4462 cylinders&&&&&&&& Units = cylinders of 16065 * 512 = 8225280 bytes
&&&&&&&&&&& Device Boot&&&& Start&&&&&&& End&&&& Blocks&&& Id&& System&&&&&&&& /dev/sdb1&&&&&&&&&&&&& 1&&&&&& 4462&& +&& 83&& Linux## 这里第一个分区已经分好了,接下去得把这个分区写入硬盘,用w&&&&&&&& Command (m for help): w&&&&&&&& The partition table has been altered!
&&&&&&&& Calling ioctl() to re-read partition table.&&&&&&&& Syncing disks.
&&&&&&&& 下面的工作就是对该硬盘进行格式,我这里是格式化成ext3&&&&&&&& [root@linux root]# mkfs.ext3 /dev/sdb1 (这里原来的命令是:mke2fs -j /dev/sdb1,试了一下不成&&&&&&&& 功,改了)&&&&&&&& mke2fs 1.32 (09-Nov-2002)&&&&&&&& Filesystem label=&&&&&&&& OS type: Linux&&&&&&&& Block size=4096 (log=2)&&&&&&&& Fragment size=4096 (log=2)&&&&&&&& 4480448 inodes, 8960245 blocks&&&&&&&& 448012 blocks (5.00%) reserved for the super user&&&&&&&& First data block=0&&&&&&&& 274 block groups&&&&&&&& 32768 blocks per group, 32768 fragments per group&&&&&&&& 16352 inodes per group&&&&&&&& Superblock backups stored on blocks:&&&&&&&&&&&&&&&& 3, , 2, 2654208,&&&&&&&&&&&&&&&& 62624
&&&&&&&& Writing inode tables: done&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&& Creating journal (8192 blocks): done&&&&&&&& Writing superblocks and filesystem accounting information: done
&&&&&&&& This filesystem will be automatically checked every 23 mounts or&&&&&&&& 180 days, whichever comes first.&& Use tune2fs -c or -i to override.
&&&&&&&& 检查一下,是否已经格式好&&&&&&&& [root@linux root]# fdisk -l
&&&&&&&& Disk /dev/sda: 36.4 GB,
bytes&&&&&&&& 255 heads, 63 sectors/track, 4425 cylinders&&&&&&&& Units = cylinders of 16065 * 512 = 8225280 bytes
&&&&&&&&& Device Boot&&&& Start&&&&&&& End&&&& Blocks&&& Id&& System&&&&&&&& /dev/sda1&&& *&&&&&&&&& 1&&&&&&& 255&&& 2048256&&& 83&& Linux&&&&&&&& /dev/sda2&&&&&&&&&&& 256&&&&&& 1530&& +&& 83&& Linux&&&&&&&& /dev/sda3&&&&&&&&&& 4296&&&&&& 4425&&& 1044225&&& 82&& Linux swap&&&&&&&& /dev/sda4&&&&&&&&&& 1531&&&&&& 4295&& +&&& f&& Win95 Ext'd (LBA)&&&&&&&& /dev/sda5&&&&&&&&&& 1531&&&&&& 2805&& &&& 83&& Linux&&&&&&&& /dev/sda6&&&&&&&&&& 2806&&&&&& 4295&& +&& 83&& Linux
&&&&&&&& Partition table entries are not in disk order
&&&&&&&& Disk /dev/sdb: 36.7 GB,
bytes&&&&&&&& 255 heads, 63 sectors/track, 4462 cylinders&&&&&&&& Units = cylinders of 16065 * 512 = 8225280 bytes
&&&&&&&& Device Boot&&&& Start&&&&&&& End&&&& Blocks&&& Id&& System&&&&&&&& /dev/sdb1&&&&&&&&&&&&& 1&&&&&& 4462&& +&& 83&& Linux
挂载虚拟硬盘&&&&&& 分区分好,也格式化好了,下面就是挂载&&&&&&&& 我把/dev/sdb1挂载到/data1下&&&&&&&& [root@linux root]# mkdir /data1&& ## 首先建立挂载的目录data1&&&&&&&& [root@linux root]# mount /dev/sdb1 /data1 ##将sdb1挂载到data1 &&&&&&& &&&&&&&& 重启系统之后,查看是否挂载成功:&&&&&&&& [root@linux data1]# df -h&&&&&&&& 文件系统&&&&&&&&&&&&&& 容量&& 已用 可用 已用% 挂载点&&&&&&&& /dev/sda1&&&&&&&&&&&&& 2.0G&& 454M&& 1.4G&& 25% /&&&&&&&& /dev/sda6&&&&&&&&&&&&&& 12G&&& 53M&&& 11G&&& 1% /bak&&&&&&&& /dev/sdb1&&&&&&&&&&&&&& 34G&&& 33M&&& 32G&&& 1% /data1&&&&&&&& none&&&&&&&&&&&&&&&&&& 250M&&&&& 0&& 250M&&& 0% /dev/shm&&&&&&&& /dev/sda2&&&&&&&&&&&&& 9.7G&& 1.5G&& 7.7G&& 17% /usr&&&&&&&& /dev/sda5&&&&&&&&&&&&& 9.7G&& 8.6G&& 559M&& 95% /var
&&&&&&&& 这里看到/dev/sda6&&&&&&&&&&&&&& 12G&&& 53M&&& 11G&&& 1% /bak&&&&&&&& 说明已经挂载成功了。到根目录&/&下可以查看到这个挂载好的data1。
转移数据&&&&&& 其实一直做到这里都还只是准备工作,如果根分区下的数据不转移到这个虚拟硬盘中的话,还是会提示空间不足。下面是将/usr全部转移到虚拟硬盘中的过程(参考Linux人生的《Linux系统精华之一&&挂载》),同样也可以转移其他目录:
&&&&&&& 1、将/usr中的全部数据拷贝到data1(可以用mv一个一个拷贝,也可以用tar压缩之后一次拷贝,具体参见这两个命令的man)&&&&&&& 2、清空usr目录:&&&&&&&&&&&&& # rm -r /usr&&&&&&&&&&&&& # mkdir /usr&&&&&&& 3、卸载刚才挂上的虚拟硬盘,重新将它挂载到usr目录:&&&&&&&&&&&&& # umount /dev/sdb1 /data1&&&&&&&&&&&&& # mount /dev/sdb1 /usr&&&&&&& 4、# vi /etc/fstab ## 用vi修改/etc/fstab,使系统启动就可以自动挂载&&&&&&&& (点击&i&进入插入模式对文本内容进行修改,改好后点&Esc&,输入冒号&:&进入命令行模式,输入wq保存退出,具体操作可以参考vi常用指令)
&&&&&&& 在内容中加上一行:&&&&&&&& /dev/sdb1&&&&&&&&&&&&&&& /usr&&&&&&&&&&&&&&&&&&&& ext3&&&& defaults&&&&&&&& 1 2
&&&&&&& 4、Ok,重新启动之后,可以查看现在的硬盘使用情况了:&&&&&&&&&&&&& # df -h&&&&&&&&&&&&& 文件系统&&&&&&&&&&&&&& 容量&& 已用 可用 已用% 挂载点&&&&&&&&&&&& /dev/sda2&&&&&&&&&&&&& 3.6G&& 1.3G&& 2.4G&& 35% /&&&&&&&&&&&&&&&& udev&&&&&&&&&&&&&&&&&& 125M&& 124K&& 125M&&& 1% /dev&&&&&&&&&&&& /dev/sdb1&&&&&&&&&&&&& 4.0G&& 2.3G&& 1.6G&& 60% /usr&&&&&&&&&&&&& 根分区的&已用%&从99%降到了35%,哈哈,大功告成,可以继续做其他的事情了。不过这次添加的虚拟硬盘还是比较小,完全可以在添加的时候设得大一点的。美中不足。
本文已收录于以下专栏:
相关文章推荐
作者:刘旭晖
转载请注明出处
http://blog.csdn.net/colorant/
Udev相关的文章很多,本文的主要目的不是提供一个完整...
linux 通过udevadm info检测硬盘位置
我们知道,在linux 中,所有的块设备都以/dev/sd[a-z]的形式表现,如:/dev/sda,/dev/sdb,/dev/sdc等...
Linux的硬盘识别:
一般使用”fdisk -l”命令可以列出系统中当前连接的硬盘
设备和分区信息.新硬盘没有分区信息,则只显示硬盘大小信息.
1.关闭服务器加上新硬盘
2.启动服务器,以r...
http://blog.csdn.net/qingzilantu/article/details/6313592
# mount –t ntfs /dev/sdb1 /mnt/
mount: unknown filesystem type ‘ntfs’
关于在linux下加载移动硬盘光驱的资料,需要的童鞋看一下~
1. 挂载USB
查 了一下资料,依据以下步骤即可搞定。
文件夹创建一个u...
[root@centos dev]# fdisk sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or O...
VirtualBox+Centos6.3加载新的硬盘分区及其建立文件系统并挂载目录,当我们需要在虚拟机里对Linux系统添加一块硬盘时,我们就需要对该指定大小的磁盘进行分区、创建文件系统已经目录挂载操...
买了个云服务器和数据盘,将加载的过程记录下来,以备有同样需求的朋友查看
(给阿里云的个服务器加载数据盘)(阿里云9折打折码:64V6HT
到16年3月31日截止)
1:在系统盘的根目录下...
他的最新文章
讲师:何宇健
讲师:董岩
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
白手起家, 积分 196, 距离下一级还需 4 积分
论坛徽章:0
本帖最后由 ilogo1 于
09:43 编辑
看鸟哥的,看不懂啊。。这鸡生蛋蛋生鸡的问题,找不到突破点啊、。。
是不是那个叫啥自举的过程?其实自举这个词我也不懂,,反正各种不懂,。。。哎,,求好心人指点。。
不对不对,MBR是磁盘的一部分,boot loader在里面,在没磁盘驱动的情况下,这些东东是怎么被访问到的?是因为bios??bios这么强悍,不要驱动也能访问磁盘?
&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp
巨富豪门, 积分 23920, 距离下一级还需 16080 积分
论坛徽章:59
为什么是Bios,因为Bios知道如何读HD,如果Bootloader要直接读盘自然也可以,但要对应各种各样的硬件
biosBootloader这么强悍,不要驱动也能访问磁盘?
家境小康, 积分 1137, 距离下一级还需 863 积分
论坛徽章:1
有那么一段很短的机器码(平台相关),告诉电脑从哪里加载运行系统的内核,你可以把bootloader理解成一个特简单的只会读取执行一小段机器码的内核
对于常用电脑而言,BIOS至少能找到启动设备的第一个扇区(可能未必是真正的磁盘扇区)的机器码去启动
早期电脑加电后直接从某个内存地址(通常是映射后的硬件存储)开始执行机器码,这就是启动
有些嵌入式芯片也这么干,而且甚至有的从0x0000开始执行启动,这种情况下NULL不是0地址,而是一个会导致处理器异常的地址
(编译器可能允许你在C程序用0表示NULL,编译后就不是那么回事了)执行0地址的指令等价于重启(一条指令就重启,多简单啊)
你去网上搜索一个叫boot.S的代码,注意这个可不是白垩纪的电脑代码,涉及很多现代软硬件问题,慢慢看吧
家境小康, 积分 1930, 距离下一级还需 70 积分
论坛徽章:0
bios当然包括有读写磁盘,驱动显卡的最基本的驱动。当然这个驱动能力非常有限,但也足够从硬盘指定扇区读取内核文件了
白手起家, 积分 196, 距离下一级还需 4 积分
论坛徽章:0
那我们在使用一有装置时,系统上没有这个装置的驱动,为什么系统能够提醒我们安装相应的驱动的,是因为 我们把装置插入接口时,接口上有电平变化,引起一个事件通知内核有新设备的么?safedead 发表于
回复 1# ilogo1
富足长乐, 积分 5503, 距离下一级还需 2497 积分
论坛徽章:2
本质是写读硬盘设备(ide, stat, etc.),这通过IO操作完成。
但怎么知道操作哪些端口,写什么控制命令呢?南桥上应该有控制器,北桥将IO或者内存访问操作路由到南桥。操作的方法在应该写外围chipset的spec里。
BIOS则提供简洁的接口,屏蔽底层细节,便于使用。
至于bootloader,早期的LILO应该hardcode内核镜像在磁盘上的位置,不涉及文件系统。现在嵌入式的bootloader或许也是如此。
Grub除启动代码外,主要代码放在别处,其位置hardcode进启动代码。载入这个部分内容后,grub就认识文件系统了。然后才有读写配置文件,载入其它grub模块,载入内核镜像等功能。
家境小康, 积分 1814, 距离下一级还需 186 积分
论坛徽章:0
一般芯片的rom里都会带一小段加载代码的,固定从地址空间的某个位开始运用,
那个固定的地址上一般都是cmos的映射之类的,烧上BIOS或者bootloader就行了,这些一般芯片手册里都有。
没搞过这方面的,隐约记得是这样的。
家境小康, 积分 1922, 距离下一级还需 78 积分
论坛徽章:0
本帖最后由 sonicling 于
13:17 编辑
boot loader 都有自己的磁盘驱动,不依赖于操作系统。
比如grub支持磁盘分区和绝大多数主流文件系统格式,它基本上就是一个独立的、只读的磁盘文件浏览器,无比强大。
论坛徽章:39
在PC上,BIOS可以读取硬盘的指定扇区,Boot Loader(如LILO或GRUB)里包含一组精简的FS Driver,可以知道Kernel存放在哪些扇区并通过BIOS加载进内存,然后启动。
在其它平台上各有各的做法,但是过程是类似的。
白手起家, 积分 52, 距离下一级还需 148 积分
论坛徽章:0
楼主问的是没有驱动怎么还能访问到磁盘。我觉得是不管什么驱动不驱动,要访问磁盘,就就有相应的汇编往具体的设备端口读数据,驱动程序最终的形式应该也是调用这些汇编命令吧。具体的bios里面肯定直接就有相应的汇编命令去读取具体的磁盘。。。。
北京盛拓优讯信息技术有限公司. 版权所有 京ICP备号 北京市公安局海淀分局网监中心备案编号:22
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处}

我要回帖

更多关于 linux内核编译配置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信