{"id":665,"date":"2020-05-04T12:00:00","date_gmt":"2020-05-04T19:00:00","guid":{"rendered":"http:\/\/letsbuildroboticswithshadow8472.com\/?p=665"},"modified":"2020-05-04T02:35:09","modified_gmt":"2020-05-04T09:35:09","slug":"buttonmash-upgrade-take-ii","status":"publish","type":"post","link":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2020\/05\/04\/buttonmash-upgrade-take-ii\/","title":{"rendered":"ButtonMash Upgrade Take II"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am actually doing a one-and-done project. Granted it&#8217;s more of a follow up to a huge project I did last year, but still, it felt great getting something short in. Let&#8217;s get started!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">My family and a few online friends have enjoyed ButtonMash, a Minecraft server I assembled from hardware I had laying around, for several months now, and it recently ran out of hard drive space. Turns out 60 Gb of space doesn&#8217;t last all that long when you&#8217;re making full weekly backups of the whole server! I started covering this upgrade when I accidentally formatted my Windows drive on my laptop.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I started with a new download of MineOS. I formatted the <em>correct<\/em> drive and used the <strong>dd<\/strong> command to write the image file to the <em>correct<\/em> drive. With a new install media, I brought it and the new 1 Tb SSD to my tower and hooked them up to be the only things connected. Installation went smoothly until MineOS didn&#8217;t recognize the USB WiFi adapter I have.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I put the project down for a while while until I had a chance to continue working on it using an Ethernet connection. The only SATA port my laptop has is hidden below about twenty to thirty screws, the ButtonMash server wasn&#8217;t going down for any longer than I could help. Aside from two computers I highly doubted I could use, I was left with the one I put together for my father. With his permission, I installed the drive and ran the security updates recommended earlier during setup.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The only real snag I hit was when I ran into the DHCP configuration requiring manual intervention each time the machine booted. Annoying, as I was working with it mostly from SSH. I knew I had had this issue before, but I couldn&#8217;t remember how I solved it. I was a little frustrated with the lack of information online on this topic, but it was amusing for a previous blog post to show up in my search results &#8212; twice. My father ended up manually configuring a static IP one boot. It took another hour or two before I remembered static IP was the way to go. I added &#8220;fixing the static IP&#8221; as something to do announcing project completion.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Copying over the server files was fun. I got into the old server&#8217;s web interface and made a fresh archive. Then, using the new install of MineOS, I SSH&#8217;ed into the old one to copy the archive over to an <strong>import<\/strong> folder using <strong>scp<\/strong>. I goofed on the long file path, so I ended up copying it to the home directory and then over to the new hard drive.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With that, I moved over to the new server&#8217;s web interface and imported the server. Everything was there, except any backups. I logged into Minecraft and got in no problem, and when I checked, the automatic updates were still around. I&#8217;m thinking about redoing those as monthly, but it works for now, nobody touch it!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As a side note, I did some digging into using Let&#8217;s Encrypt with MineOS. A thread on the MineOS forums filled in some gaps in my understanding of MineOS&#8217;s https security heigine. Https relies on a security certificate &#8211;usually issued by a trusted third party&#8211; to scramble their communication. When the server self-signs a certificate, you as a client have to trust a potential unknown with keeping their half of the code safe. Before, I was under the impression there wasn&#8217;t any sort of security certificate without Let&#8217;s Encrypt. However, since the only people who need encrypted access are admins looking to access the web interface, they should probably be in a position to trust a self-signed certificate. From an outside attacker&#8217;s point of view, it looks the same as one from a more official source. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I shut both computers down and moved the hard drives around. My father&#8217;s computer was reassembled, and ButtonMash&#8217;s small MineOS SSD and Ubuntu hard disk were pulled and replaced with the new SSD. I booted it up, logged in with SSH (Public\/private key authentication is so nice!), and fixed the static IP from when it had adopted my father&#8217;s computer&#8217;s IP as static. One more reboot later, and the server was officially up. Within half an hour, one of our players from the outside was on.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One more side note: it looks like by default, you have to first ssh in as a standard user, mc by default, and then use the <strong>su<\/strong> (substitute user) command to switch to the root account, as <strong>sudo<\/strong> does not come with MineOS by default.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On a finishing thought, I honestly hope someone finds this useful, even if I end up rambling. I purposefully added some key words I wish I had covered last time, so maybe I&#8217;ll come across this one next time I find myself setting up MineOS.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Final Question: Have you ever searched for help, only to be redirected back to yourself?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am actually doing a one-and-done project. Granted it&#8217;s more of a follow up to a huge project I did last year, but still, it felt great getting something short in. Let&#8217;s get started! My family and a few online friends have enjoyed ButtonMash, &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2020\/05\/04\/buttonmash-upgrade-take-ii\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;ButtonMash Upgrade Take II&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[3,2,10],"tags":[],"class_list":["post-665","post","type-post","status-publish","format-standard","hentry","category-computer-maintenance-and-repair","category-linux","category-minecraft"],"_links":{"self":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/665","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/comments?post=665"}],"version-history":[{"count":2,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/665\/revisions"}],"predecessor-version":[{"id":667,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/665\/revisions\/667"}],"wp:attachment":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/media?parent=665"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/categories?post=665"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/tags?post=665"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}