
如何把Linux系统移植到U盘或移动硬盘上,并从USB驱动器中启动并运行?下面我将教大家制作随身携带、即插即用的Linux *** 作系统。(把当前系统移植到移动硬盘上)
为什么需要这个功能呢?
硬件:
软件:
Linux发行版自带的工具 如 gparted grub cp
制作
Linux启动盘的制作分为以下几个步骤:分区、复制文件、安装grub并配置、测试。 目的是把当前系统移植到移动硬盘上。
从LiveCD启动,打开gparted分区工具, 把移动硬盘的分区表改为GPT 。我使用以下分区方案:
sdb1是UEFI+GPT模式下的引导分区,grub引导器就要装在这里。
sdb2是放数据的,为了与Winodws兼容所以采用NTFS。
sdb3是Linux系统的全部内容,如果你想把家目录单独分出来也可以。
后面留空备用,结果如下图
我原系统的文件储存在 /dev/nvme0n1p3 (根分区)和 /dev/nvme0n1p4 (家分区)上,把这两个分区挂载到 /mnt /mnt/home。每个人的分区情况不同,需要对应修改。挂载后,/mnt 目录包括原系统的所有内容。
挂载 /dev/sdb3 到 /media/backup,把 /mnt 内容全部复制到 /media/backup
cp -a /mnt/* /media/backup/
GRUB 提供一个安装程序grub-install用以安装 GRUB 到磁盘,下面是grub-install的一些常用参数及选项:
UEFI 特有参数及选项:
挂载 /dev/sdb1 到 /media/backup/boot/efi ,把grub安装到移动硬盘上
上面的 --boot-directory --efi-directory --removable 不可省略。
安装之后要修改grub配置文件,就让他自动生成好了。但要禁用os-prober功能——自动探测硬盘上的其他 *** 作系统然后生成配置。Linux To Go 不依赖于其他 *** 作系统,它的启动菜单里只有自己。注意,不要使用update-grub,因为它会修改UEFI启动项。
修改 /media/backup/etc/fstab,把UUID换成对应的值
安装grub后,还要手动修改 /media/backup/etc/fstab 。Linux To Go只需要自动挂载两个分区—— sdb1 ESP 和 sdb3 DEEPIN_ROOT,修改对应的UUID。
现在可以重启试试了。开机按下F12 UEFI启动菜单中有移动硬盘这个启动项,选择即可。
如果成功就OK;如果黑屏断电,查看/media/backup/boot/efi 下的文件 把BOOTX64.EFI删除,把 grubx64.efi 重命名为 BOOTX64.EFI 再重启。
支持.不知道你用的是什么版本的Linux,一般在/media目录下,另外如果你用的是带有桌面系统的linux的话,一般插上u盘就会在桌面上有显示的。隐藏文件的问题,win下的隐藏对linux不起作用,linux下隐藏以.(句点)开头的文件,查看方法为,桌面系统在工具->显示隐藏文件,如果你用的是终端,ls -a 就可以了1、首先需要把U盘插入Linux电脑,确保U盘指示灯是亮着的进入Linux系统主界面,按Ctrl+Alt+T打开命令窗口。2、先获取高级用户权限,输入命令:sudo -i,确定后输入高级用户密码。3、首先使用fdisk -l命令查看一下U盘是否有被识别到,及识别的U盘是在哪个位置,本次接入看到U盘的位置是/dev/Sdb4。4、输入挂载U盘命令:mount /dev/sdb4 /mnt,回车后即挂载U盘成功。5、继续输入:cd 回车,可以查看U盘下的文件。利用WinPE工具可以通过U盘来安装Linux系统,下面以U盘WinPE工具安装Centos6.4版Linux为例,方法如下:1.在U盘上安装好WinPE(可以选择老毛桃U盘工具、大白菜PE等)2.在U盘根目录建立一个名为LMT的目录,将CentOS-6.4-x86_64-minimal.iso镜像拷入U盘下的LMT目录。3.将U盘插入电脑。重启电脑,进入BIOS选择U盘启动,F10保存退出。4.系统从U盘启动以后显示出老毛桃的启动菜单。5.菜单中有一项“启动自定义ISO/IMG文件(LMT目录)”,选择该项。6.系统会列出LMT目录中的ISO文件,直接输入对应的序号就可以安装了。首先,你的linux具体是什么发行版?还有,你的u盘使用什么格式?再有,你有没有执行mount挂载?这些都有可能会影响u盘的显示。早期的linux,特别是红帽企业版的第4版,第5版(RedHat Enterprise Linux 4、RedHat Enterprise Linux 5,通常习惯缩写RHEL4、RHEL5),不仅要执行mount -t 命令才能挂载。而且对于NTFS格式的磁盘,还要编译安装ntfs-3g。而对于linux本身支持的ext2,ext3以及windows下比较传统的fat32则默认支持。当时的centos,fedora等基于红帽的linux也是如此。现在的一些发行版,特别是主要面对桌面用户的,例如ubuntu,fedora,往往是在安装完系统后,就能识别各种类型的磁盘分区的。不论它是fat32还是ntfs。当然了,linux的ext2、ext3、ext4、xfs肯定也是支持的。但是一些主要是面对服务的,例如RHEL6、RHEL7、CentOS6、CentOS7等等,往往默认的安装系统时,就没有安装关于识别NTFS的软件包。需要用户自己去安装。但是这个安装已经比较方便了。前面说的RHEL4、RHEL5的时代,ntfs-3g只能用编译安装。而现在RHEL或CentOS6或7的时代,ntfs-3g已经有了rpm包,并添加进了yum软件源里面了,这意味着安装它已经不想以前那么麻烦了。]$ yum list | grep ntfsntfs-3g.x86_64 2:2016.2.22-3.el6 @epel ntfs-3g.i686 2:2016.2.22-3.el6 epel ntfs-3g-devel.i686 2:2016.2.22-3.el6 epel ntfs-3g-devel.x86_64 2:2016.2.22-3.el6 epel ntfsprogs.i686 2.0.0-13.el6 epel ntfsprogs.x86_64 2:2016.2.22-3.el6 epel ntfsprogs-devel.i686 2.0.0-13.el6 epel ntfsprogs-devel.x86_64 2.0.0-13.el6 epel ntfsprogs-gnomevfs.x86_64 2.0.0-13.el6 epel 从这些可以看出,只要用户配置好了epel源,就能装ntfs-3g。装好了,那么使用ntfs格式的磁盘,分区等就能识别了。此外,现在的linux版本中各种格式的分区,只要能识别就能自动挂载。属于即插即用了。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)