自制Linux系统
自制Linux系统以下为使用现有的Linux系统对其制作出一个小型的Linux系统
一、新增一块硬盘作为自制Linux的系统盘
二、在新增硬盘上进行分区分区1为boot大小1G
分区2为/大小为10G
分区3为swap大小为2G
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566[root@centos6 ~]# fdisk /dev/sdbDevice contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabelBuilding a new DOS disklabel with disk identifier 0xc06ac594.Changes will remain in memory only, until you decide to write them.After that, of cou ...
busybox
BusyBoxBusyBox 是一个集成了三百多个最常用Linux命令和工具的软件。BusyBox 包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例grep、find、mount以及telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。
源码编译busybox一、下载源码包123[root@centos7 ~]# wget https://busybox.net/downloads/busybox-1.30.1.tar.bz2--2019-04-12 00:50:43-- https://busybox.net/downloads/busybox-1.30.1.tar.bz2Resolving busybox.net (busybox.net)...
二、解压源码包1[root@centos7 ~]# tar xf busybox-1.30.1.tar.bz2
三、进入busyb ...
fstab和boot目录删除及恢复方法
fstab和boot目录删除及恢复方法以下为演示当fstab和boot都丢失时的错误状态以及恢复的方法
环境准备删除/etc/fstab,/boot目录
123[root@centos6 ~]# rm -rf /etc/fstab /bootrm: cannot remove `/boot': Device or resource busy[root@centos6 ~]# sync
重启查看故障状态
修复1.启动光盘救援模式
由于/etc/fstab文件被删除此时系统找不到硬盘相对应的挂载位置所以此处提示没有Linux分区
2.查看下所有硬盘分区信息
发现所有磁盘分区信息均能看见,此时可以判断/dev/sda1为boot目录,/dev/sda2为根目录。
3.手动将硬盘分区挂载
4.将根切换至硬盘的根目录,并创建fstab文件
5.重启后再次进入救援模式,查看系统的根目录是否能被正常找到。
此时救援光盘上的系统已经能够正常识别磁盘的根文件系统系统
接下来要执行的为修复内核和grub的过程:
1.切换根至硬盘目录下,挂载光盘至/mnt目录下
2.复 ...
删除vmlinuz-xxx.img修复
删除vmlinuz-xxx.img修复以下为演示vmlinuz内核文件丢失后的报错以及修复的过程
一、删除vmlinuz-xxx.img1234567[root@centos6 ~]# rm /boot/vmlinuz-2.6.32-754.el6.x86_64rm: remove regular file `/boot/vmlinuz-2.6.32-754.el6.x86_64'? y[root@centos6 ~]# ls /bootconfig-2.6.32-754.el6.x86_64 initramfs-2.6.32-754.el6.x86_64.img System.map-2.6.32-754.el6.x86_64efi lost+foundgrub symvers-2.6.32-754.el6.x86_64.gz
二、重启后查看报错内核丢失报错状态为下图
三、修复1.进入光盘救援模式
2.修复错误
修复方法,由于内核文件光盘上也存有一份,所以将 ...
/boot目录删除恢复
boot目录删除恢复以下为分别演示在CentOS 6和CentOS 7上boot目录被删除后出现的报错以及修复的方法
CentOS6删除/boot一、删除/boot目录下内容
123[root@centos6 ~]# rm -rf /boot/rm: cannot remove `/boot': Device or resource busy[root@centos6 boot]# sync
二、查看错误状态
三、修复
修复思路,由于/boot下存放的文件为开机启动所需要的内核、虚拟文件系统、以及grub的1,1.5,以及2阶段的文件,所以修复时需要将这些文件全部创建出来。
1.使用救援光盘登录系统。
此步骤省略
2.切换根至硬盘根目录下,挂载光盘至/mnt目录下
3.复制内核文件至/boot目录下,并在/boot目录下创建虚拟文件系统。
4.修复GRUB的各个阶段
5.由于grub-install修复了grub的各阶段但没有grub的配置文件,所以需要手动写配置文件。
注意:kenerl和initrd次序绝对不能错,次序错误会导致系统不能正常 ...
删除initramfs修复
删除initramfs修复以下操作为演示initramfs被删除后的报错,以及修复的方法。
一、删除initramfs文件123456[root@centos6 boot]# rm initramfs-2.6.32-754.el6.x86_64.img rm: remove regular file `initramfs-2.6.32-754.el6.x86_64.img'? y[root@centos6 boot]# lsconfig-2.6.32-754.el6.x86_64 lost+found vmlinuz-2.6.32-754.el6.x86_64efi symvers-2.6.32-754.el6.x86_64.gzgrub System.map-2.6.32-754.el6.x86_64
二、重启查看报错。
三、修复错误1.进入救援模式
2.修复错误
切换根目录至硬盘目录
cd至/boot ...
CentOS 7网卡名修改
CentOS 7网卡名修改CentOS7网卡名与CentOS6不同,然而7的早期版本与最新的版本的网卡名又有所不同,在生产环境中,为了实现自动化管理,首先要实现全部标准化,所以要将网卡名同一设置为和CentOS6相同的ethN的格式,具体的修改方法如下:
1.首先修改/etc/default/grub文件,在GRUB_CMDLINE_LINUX行最后添加net.ifnames=0
12345678[root@mylinuxops ~]# vim /etc/default/grub GRUB_TIMEOUT=5GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"GRUB_DEFAULT=savedGRUB_DISABLE_SUBMENU=trueGRUB_TERMINAL_OUTPUT="console"GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet net.ifnames=0" ...
主机名修改
Linux主机名修改由于CentOS6和CentOS7修改主机名的方法是不同的所以此处分别展示如何在CentOS6 和 CentOS7上分别修改主机名。
生产环境中通常需要使用不同的主机名来区分生产环境中的不同主机,此时就涉及到了主机名的修改,由于CentOS6和CentOS7修改主机名的方法是不同的,此处分别展示如何在CentOS6 和 CentOS7上分别修改主机名。
此处以将主机名修改为mylinuxops.com为例
一、CentOS6修改主机名1.修改配置文件/etc/sysconfig/network
123[root@centos6 ~]# vim /etc/sysconfig/networkNETWORKING=yesHOSTNAME=mylinuxops.com
2.修改/etc/hosts在127.0.0.1后添加主机名
123[root@centos6 ~]# vim /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 my ...
网络组team
网络组team网络组是centos7上新出的一个技术,它的作用和bonding类似,是将多个网卡聚合在一起方法,从而实现冗错和提高吞吐量,不同于旧版中bonding技术,网路组提供更好的性能和扩展性,它是由内核驱动和teamd守护进程实现。
网路组可以工作在多种模式(runner)
12345broadcast roundrobin activebackup loadbalance lacp (implements the 802.3ad Link Aggregation Control Protocol)
网络组team实现准备一台CentOS7主机,网卡2块。
创建网络组1.创建网路网
12[root@centos7 ~]# nmcli connection add con-name team0 ifname team0 type team ipv4.method manual ipv4.addresses 192.168.172.100 config '{"runner":{" ...
多网卡绑定
多网卡绑定生产环境中将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通过bonding,虚拟一块网卡对外提供连接,物理网卡被修改为相同的MAC地址 。
实验环境:centos7主机一台、网卡设备2块。
此次实验通过两种方式来实现bonding,第一种为修改配置文件,第二种为命令行。
修改配置文件实现bonding一、创建band0配置文件
123456[root@centos7 ~]# vim /etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0IPADDR=192.168.172.100PREFIX=24BONDING_OPTS='miimon=100 mode=1'
二、配置第一块网卡
1234567[root@centos7 ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=EthernetDEVICE=ens33ONBOOT=yesMASTER=bond0SLAVE=yes
三 ...