berbagai cara instalasi mikrotik CHR (Cloud Host Router) di VPS (VIrtual Private Server)
sederhananya adalah seperti dibawah ini
contoh lain yang sudah ditambahkan konfigurasi username dan password
script cara untuk menambah disk router yang secara default kurang dari 100 MB
This script very depends on utils output and routeros partitions and etc, so it could probably fail in the future. But the main idea should be quite clear.
I prefer to use previous variant of this script because it runs quite faster. In fact, I do not know why you could ever need to have a big partition on router vm.
PS :
1. check your interface name before apply. here the interface name is : "ens3". Change according yours
2. CHR can run only in full virtualization like vmware, kvm, xen or hyper-v
sederhananya adalah seperti dibawah ini
wget https://download2.mikrotik.com/routeros/6.38.3/chr-6.38.3.img.zip -O chr.img.zip && \ gunzip -c chr.img.zip > chr.img && \ mount -o loop,offset=33554944 chr.img /mnt && \ ADDRESS=ip addr show eth0 | grep global | cut -d' ' -f 6 | head -n 1 && \ GATEWAY=ip route list | grep default | cut -d' ' -f 3 && \ echo "/ip address add address=$ADDRESS interface=[/interface ethernet find where name=ether1] /ip route add gateway=$GATEWAY " > /mnt/rw/autorun.scr && \ umount /mnt && \ echo u > /proc/sysrq-trigger && \ dd if=chr.img bs=1024 of=/dev/vda
contoh lain yang sudah ditambahkan konfigurasi username dan password
wget http://download2.mikrotik.com/routeros/6.36.4/chr-6.36.4.img.zip -O chr.img.zip && \ gunzip -c chr.img.zip > chr.img && \ mount -o loop,offset=33554944 chr.img /mnt && \ ADDRESS=`ip addr show eth0 | grep global | cut -d' ' -f 6 | head -n 1` && \ GATEWAY=`ip route list | grep default | cut -d' ' -f 3` && \ echo "/ip address add address=$ADDRESS interface=[/interface ethernet find where name=ether1] /ip route add gateway=$GATEWAY /ip service disable telnet /user set 0 name=root password=xxxxxx " > /mnt/rw/autorun.scr && \ umount /mnt && \ echo u > /proc/sysrq-trigger && \ dd if=chr.img bs=1024 of=/dev/vda && \ echo "sync disk" && \ echo s > /proc/sysrq-trigger && \ echo "Sleep 5 seconds" && \ sleep 5 && \ echo "Ok, reboot" && \ echo b > /proc/sysrq-trigger
script cara untuk menambah disk router yang secara default kurang dari 100 MB
This script very depends on utils output and routeros partitions and etc, so it could probably fail in the future. But the main idea should be quite clear.
I prefer to use previous variant of this script because it runs quite faster. In fact, I do not know why you could ever need to have a big partition on router vm.
wget http://download2.mikrotik.com/routeros/6.36.4/chr-6.36.4.img.zip -O chr.img.zip && \ gunzip -c chr.img.zip > chr.img && \ apt-get update && \ apt install -y qemu-utils pv && \ qemu-img convert chr.img -O qcow2 chr.qcow2 && \ qemu-img resize chr.qcow2 `fdisk /dev/vda -l | head -n 1 | cut -d',' -f 2 | cut -d' ' -f 2` && \ modprobe nbd && \ qemu-nbd -c /dev/nbd0 chr.qcow2 && \ echo "Give some time for qemu-nbd to be ready" && \ sleep 2 && \ mount /dev/nbd0p2 /mnt && \ ADDRESS=`ip addr show eth0 | grep global | cut -d' ' -f 6 | head -n 1` && \ GATEWAY=`ip route list | grep default | cut -d' ' -f 3` && \ echo "/ip address add address=$ADDRESS interface=[/interface ethernet find where name=ether1] /ip route add gateway=$GATEWAY /ip service disable telnet /user set 0 name=root password=xxxxxx " > /mnt/rw/autorun.scr && \ umount /mnt && \ echo "Magic constant is 65537 (second partition address). You can check it with fdisk before appliyng this" && \ echo "This scary sequence removes seconds partition on nbd0 and creates new, but bigger one" && \ echo -e 'd\n2\nn\np\n2\n65537\n\nw\n' | fdisk /dev/nbd0 && \ e2fsck -f -y /dev/nbd0p2 || true && \ resize2fs /dev/nbd0p2 && \ sleep 1 && \ echo "Compressing to gzip, this can take several minutes" && \ mount -t tmpfs tmpfs /mnt && \ pv /dev/nbd0 | gzip > /mnt/chr-extended.gz && \ sleep 1 && \ killall qemu-nbd && \ sleep 1 && \ echo u > /proc/sysrq-trigger && \ echo "Warming up sleep" && \ sleep 1 && \ echo "Writing raw image, this will take time" && \ zcat /mnt/chr-extended.gz | pv > /dev/vda && \ echo "Sleep 5 seconds (if lucky)" && \ sleep 5 || true && \ echo "sync disk" && \ echo s > /proc/sysrq-trigger && \ echo "Ok, reboot" && \ echo b > /proc/sysrq-trigger
PS :
1. check your interface name before apply. here the interface name is : "ens3". Change according yours
2. CHR can run only in full virtualization like vmware, kvm, xen or hyper-v
Komentar
Posting Komentar
penulis senang dengan adanya pembaca yang meninggalkan jejak. :)