Fixed dropbox image links. First archery article

This commit is contained in:
Claudio Maggioni 2016-08-15 10:46:11 +02:00
parent da5308a3aa
commit c121263ad9
10 changed files with 105 additions and 253 deletions

View File

@ -12,9 +12,9 @@ My only laptop is a [IBM/Lenovo ThinkPad X60s](http://www.thinkwiki.org/wiki/Cat
* 60GB of SATA1 hard drive;
* Wifi, Bluetooth, trackpoint mouse only, 56k modem, and a decent set of I/0 ports (including a CardBus slot!).
![Think1](https://dl.dropboxusercontent.com/content_link/JzTZf5zYyBkpLDDOz1vtSMvPga8OIM1SBjID6G6R7jMplbaidXTSWjwqClip3RaL/file)
![Think1](https://dl.dropboxusercontent.com/s/vkm6phz5yb2k4oq/IMG_20160712_143708.jpg?dl=0)
![Think2](https://dl.dropboxusercontent.com/content_link/t6IewbrmvdhYQBREpdr5r9F61SUFSK0uEZMA30LcLOE5Th6CTd5mdXBH8Ju2CFa8/file)
![Think2](https://dl.dropboxusercontent.com/s/wfjj1wih90lrzax/IMG_20160712_143618.jpg?dl=0)
This machine had an installation on Arch Linux, and I was using it for school stuff. It runned smoothly KDE5, Atom (great editor, I'm using it to write this article), and it was usable even with Phpstorm. Pretty impressive for such an old thing, right?
@ -32,6 +32,6 @@ I had another problem with `make menuconfig`, the tool used to specify what feat
At the end, I made it! I only have a base install, but i can show you `screenfetch`:
![Screenfetch](https://dl.dropboxusercontent.com/content_link/IPYdz4IcrWSE7MkHCcT3om38HrmEJCHMTifZa2apowHsiV7mlfMCUJ0ciYzk4Izz/file)
![Screenfetch](https://dl.dropboxusercontent.com/s/fbysnd58sj4g3kl/IMG_20160711_162733.jpg?dl=0)
I've not installed Gentoo in dual boot because I didn't figured out how to switch my bluetooth dongle in HID mode yet, so I can't select the OS with `rEFInd`. Hope this rambling was, if not useful, at least entertaining!

View File

@ -0,0 +1,25 @@
---
layout: post
title: "My archery setup!"
date: 2016-08-15 12:00:00 +0200
categories: archery
---
Hey there! This is my first post about archery, so I thought that I could have done a tour of my setup. As I wrote in the about page, I'm a Olmpic recurve archer based in Italy. I do this for almost five years! If you don't understand everything I say, you can check out the youtube channel [Nusensei](https://www.youtube.com/user/NUSensei/). It's a very good source, especially for beginners.
![Bow1](https://dl.dropboxusercontent.com/s/efmap2qqvz6yapn/IMG_20160809_164942.jpg?dl=0)
Ok, the setup. I own a *Fiberbow 5.99* LH (yes, I'm left handed) as my `riser`, the *central* part of the bow. It's made by carbon fiber so it's very lightweight. And is not painted too: It looks kinda cool. Many experienced archers could complain saying that carbon fiber bends and this is a bad thing. Instead, I think this gives you a nice feedback when you release. Also I tried to raise a friend's *Hoyt Prodigy XT*, and there's no way I'm going to lift such a weight on a regular base. Both the risers mentioned are high-range ones: I got mine 50% off because it wasn't the latest model and it had some minor ahestetic flaws. Also, this isn't my first one. In fact, I used to shoot with an Orange SF Premium: great bow for beginners!
As limbs, I use a pair of *EXE College* rated at 34 pounds. Since I'm quite tall (limbs and riser toghether make a 70" tall bow), my draw length is around 29.5" and my draw weight is around 38 pounds.
The sight is a *Shibuya Dual Click*. You can check out [this](https://www.youtube.com/watch?v=_ZvAnyxazpY) review by Nusensei (by the way, I knew his channel from this very video).
As stabilizers, I use a set of *Fiberbow S.3* ones with yellow dampeners (for those who know the difference between the colours).
As plunger button, I use a *EXE* one. It's a middle range one, but it seems very well built and it works fine! Also, I'm not going to spend 90€ for a `Cartel` one.
My current arrows are a set of *Easton X7 Eclipse* spined at 2213. These are winter alluminium arrows, but since they are cheaper than carbon ones, I bought these as a total replacement of my *VAP V6* 600. Those, due to form flaws, were 2 inches too short. Oh, and I always used *Spin Wings* and *Elivanes*, a stiffer plastic italian replacement.
Here's an image of the complete bow at the archery range:
![Bow2](https://dl.dropboxusercontent.com/s/ril7kk9zd0l4vrf/IMG_20160809_175554.jpg?dl=0)

View File

@ -1,8 +0,0 @@
<hr />
<p>layout: post
title: “How to rickroll people that run “rm -rf” on your system”
date: 2016-07-28 18:00:00 +0200
categories: linux
—-</p>
<p>WARNING: this</p>

View File

@ -5,12 +5,12 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Installing Gentoo on a Lenovo ThinkPad X60s</title>
<meta name="description" content="My only laptop is a IBM/Lenovo ThinkPad X60s, a top line “ultrabook” from 2006 that features:- An Intel Core Duo L2400 dual core 32 bit CPU, clocked at 1.66 ...">
<title>My archery setup!</title>
<meta name="description" content="Hey there! This is my first post about archery, so I thought that I could have done a tour of my setup. As I wrote in the about page, Im a Olmpic recurve ar...">
<link rel="stylesheet" href="/css/main.css">
<link href='https://fonts.googleapis.com/css?family=Hammersmith+One' rel='stylesheet' type='text/css'>
<link rel="canonical" href="http://praticamentetilde.github.io/linux/2016/12/07/installing-gentoo-on-a-thinkpad-x60s.html">
<link rel="canonical" href="http://praticamentetilde.github.io/archery/2016/08/15/my-archery-setup.html">
<link rel="alternate" type="application/rss+xml" title="Ramblings of an archer archer" href="http://praticamentetilde.github.io/feed.xml">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
<script src="https://rawgit.com/snaptortoise/konami-js/master/konami.js"></script>
@ -75,20 +75,30 @@
<article class="post" itemscope itemtype="http://schema.org/BlogPosting">
<header class="post-header">
<h1 class="post-title" itemprop="name headline">Installing Gentoo on a Lenovo ThinkPad X60s</h1>
<p class="post-meta"><time datetime="2016-12-07T12:00:00+01:00" itemprop="datePublished">Dec 7, 2016</time></p>
<h1 class="post-title" itemprop="name headline">My archery setup!</h1>
<p class="post-meta"><time datetime="2016-08-15T12:00:00+02:00" itemprop="datePublished">Aug 15, 2016</time></p>
</header>
<div class="post-content" itemprop="articleBody">
<p>My only laptop is a IBM/Lenovo ThinkPad X60s, a top line “ultrabook” from 2006 that features:
- An Intel Core Duo L2400 dual core 32 bit CPU, clocked at 1.66 Ghz;
- 2GB of RAM;
- 60GB of SATA1 hard drive;
- Wifi, Bluetooth, trackpoint mouse only, 56k modem, and a decent set of I/0 ports (including a CardBus slot!).</p>
<p>Hey there! This is my first post about archery, so I thought that I could have done a tour of my setup. As I wrote in the about page, Im a Olmpic recurve archer based in Italy. I do this for almost five years! If you dont understand everything I say, you can check out the youtube channel <a href="https://www.youtube.com/user/NUSensei/">Nusensei</a>. Its a very good source, especially for beginners.</p>
<p>This machine had an installation on Arch Linux, and I was using it for school stuff. It runned smoothly KDE5, Atom (great editor, Im using it to write this article), and it was usable even with Phpstorm. Pretty impressive for such an old machine, right?</p>
<p><img src="https://dl.dropboxusercontent.com/s/efmap2qqvz6yapn/IMG_20160809_164942.jpg?dl=0" alt="Bow1" /></p>
<p>Since now I dont need this laptop every day I decided to give a try at Gentoo, another rolling relase, DIY install distro. This was both a test of my skills, my patience and the performances of the machine. For those of you that dont know, Gentoo hasnt binary packages: imagine using Arch with just a developer mantained AUR.</p>
<p>Ok, the setup. I own a <em>Fiberbow 5.99</em> LH (yes, Im left handed) as my <code class="highlighter-rouge">riser</code>, the <em>central</em> part of the bow. Its made by carbon fiber so its very lightweight. And is not painted too: It looks kinda cool. Many experienced archers could complain saying that carbon fiber bends and this is a bad thing. Instead, I think this gives you a nice feedback when you release. Also I tried to raise a friends <em>Hoyt Prodigy XT</em>, and theres no way Im going to lift such a weight on a regular base. Both the risers mentioned are high-range ones: I got mine 50% off because it wasnt the latest model and it had some minor ahestetic flaws. Also, this isnt my first one. In fact, I used to shoot with an Orange SF Premium: great bow for beginners!</p>
<p>As limbs, I use a pair of <em>EXE College</em> rated at 34 pounds. Since Im quite tall (limbs and riser toghether make a 70” tall bow), my draw length is around 29.5” and my draw weight is around 38 pounds.</p>
<p>The sight is a <em>Shibuya Dual Click</em>. You can check out <a href="https://www.youtube.com/watch?v=_ZvAnyxazpY">this</a> review by Nusensei (by the way, I knew his channel from this very video).</p>
<p>As stabilizers, I use a set of <em>Fiberbow S.3</em> ones with yellow dampeners (for those who know the difference between the colours).</p>
<p>As plunger button, I use a <em>EXE</em> one. Its a middle range one, but it seems very well built and it works fine! Also, Im not going to spend 90€ for a <code class="highlighter-rouge">Cartel</code> one.</p>
<p>My current arrows are a set of <em>Easton X7 Eclipse</em> spined at 2213. These are winter alluminium arrows, but since they are cheaper than carbon ones, I bought these as a total replacement of my <em>VAP V6</em> 600. Those, due to form flaws, were 2 inches too short. Oh, and I always used <em>Spin Wings</em> and <em>Elivanes</em>, a stiffer plastic italian replacement.</p>
<p>Heres an image of the complete bow at the archery range:</p>
<p><img src="https://dl.dropboxusercontent.com/s/ril7kk9zd0l4vrf/IMG_20160809_175554.jpg?dl=0" alt="Bow2" /></p>
</div>

View File

@ -6,9 +6,40 @@
</description>
<link>http://praticamentetilde.github.io/</link>
<atom:link href="http://praticamentetilde.github.io/feed.xml" rel="self" type="application/rss+xml"/>
<pubDate>Thu, 28 Jul 2016 15:51:30 +0200</pubDate>
<lastBuildDate>Thu, 28 Jul 2016 15:51:30 +0200</lastBuildDate>
<generator>Jekyll v3.1.6</generator>
<pubDate>Mon, 15 Aug 2016 10:44:41 +0200</pubDate>
<lastBuildDate>Mon, 15 Aug 2016 10:44:41 +0200</lastBuildDate>
<generator>Jekyll v3.2.1</generator>
<item>
<title>My archery setup!</title>
<description>&lt;p&gt;Hey there! This is my first post about archery, so I thought that I could have done a tour of my setup. As I wrote in the about page, Im a Olmpic recurve archer based in Italy. I do this for almost five years! If you dont understand everything I say, you can check out the youtube channel &lt;a href=&quot;https://www.youtube.com/user/NUSensei/&quot;&gt;Nusensei&lt;/a&gt;. Its a very good source, especially for beginners.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/s/efmap2qqvz6yapn/IMG_20160809_164942.jpg?dl=0&quot; alt=&quot;Bow1&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Ok, the setup. I own a &lt;em&gt;Fiberbow 5.99&lt;/em&gt; LH (yes, Im left handed) as my &lt;code class=&quot;highlighter-rouge&quot;&gt;riser&lt;/code&gt;, the &lt;em&gt;central&lt;/em&gt; part of the bow. Its made by carbon fiber so its very lightweight. And is not painted too: It looks kinda cool. Many experienced archers could complain saying that carbon fiber bends and this is a bad thing. Instead, I think this gives you a nice feedback when you release. Also I tried to raise a friends &lt;em&gt;Hoyt Prodigy XT&lt;/em&gt;, and theres no way Im going to lift such a weight on a regular base. Both the risers mentioned are high-range ones: I got mine 50% off because it wasnt the latest model and it had some minor ahestetic flaws. Also, this isnt my first one. In fact, I used to shoot with an Orange SF Premium: great bow for beginners!&lt;/p&gt;
&lt;p&gt;As limbs, I use a pair of &lt;em&gt;EXE College&lt;/em&gt; rated at 34 pounds. Since Im quite tall (limbs and riser toghether make a 70” tall bow), my draw length is around 29.5” and my draw weight is around 38 pounds.&lt;/p&gt;
&lt;p&gt;The sight is a &lt;em&gt;Shibuya Dual Click&lt;/em&gt;. You can check out &lt;a href=&quot;https://www.youtube.com/watch?v=_ZvAnyxazpY&quot;&gt;this&lt;/a&gt; review by Nusensei (by the way, I knew his channel from this very video).&lt;/p&gt;
&lt;p&gt;As stabilizers, I use a set of &lt;em&gt;Fiberbow S.3&lt;/em&gt; ones with yellow dampeners (for those who know the difference between the colours).&lt;/p&gt;
&lt;p&gt;As plunger button, I use a &lt;em&gt;EXE&lt;/em&gt; one. Its a middle range one, but it seems very well built and it works fine! Also, Im not going to spend 90€ for a &lt;code class=&quot;highlighter-rouge&quot;&gt;Cartel&lt;/code&gt; one.&lt;/p&gt;
&lt;p&gt;My current arrows are a set of &lt;em&gt;Easton X7 Eclipse&lt;/em&gt; spined at 2213. These are winter alluminium arrows, but since they are cheaper than carbon ones, I bought these as a total replacement of my &lt;em&gt;VAP V6&lt;/em&gt; 600. Those, due to form flaws, were 2 inches too short. Oh, and I always used &lt;em&gt;Spin Wings&lt;/em&gt; and &lt;em&gt;Elivanes&lt;/em&gt;, a stiffer plastic italian replacement.&lt;/p&gt;
&lt;p&gt;Heres an image of the complete bow at the archery range:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/s/ril7kk9zd0l4vrf/IMG_20160809_175554.jpg?dl=0&quot; alt=&quot;Bow2&quot; /&gt;&lt;/p&gt;
</description>
<pubDate>Mon, 15 Aug 2016 12:00:00 +0200</pubDate>
<link>http://praticamentetilde.github.io/archery/2016/08/15/my-archery-setup.html</link>
<guid isPermaLink="true">http://praticamentetilde.github.io/archery/2016/08/15/my-archery-setup.html</guid>
<category>archery</category>
</item>
<item>
<title>How to rickroll people that try to run &quot;rm -rf&quot; on your system</title>
@ -23,16 +54,16 @@
&lt;p&gt;The method that Ill show will lock any &lt;code class=&quot;highlighter-rouge&quot;&gt;rm&lt;/code&gt; command runned in both recursive and force mode, so &lt;code class=&quot;highlighter-rouge&quot;&gt;rm -rf&lt;/code&gt;, &lt;code class=&quot;highlighter-rouge&quot;&gt;rm -f -r&lt;/code&gt; and &lt;code class=&quot;highlighter-rouge&quot;&gt;rm -r --force&lt;/code&gt; are all blocked, even if they are launched by &lt;code class=&quot;highlighter-rouge&quot;&gt;sudo&lt;/code&gt;. Im going to alias the rm command in &lt;code class=&quot;highlighter-rouge&quot;&gt;/etc/profile&lt;/code&gt; &lt;code class=&quot;highlighter-rouge&quot;&gt;/etc/bash.bashrc&lt;/code&gt; and in &lt;code class=&quot;highlighter-rouge&quot;&gt;/etc/zsh/zshrc&lt;/code&gt; (Im a zsh user) so that the rickroll will be possible from all users, even root and the ones with a brand new &lt;code class=&quot;highlighter-rouge&quot;&gt;bashrc&lt;/code&gt; or &lt;code class=&quot;highlighter-rouge&quot;&gt;zshrc&lt;/code&gt;. Here is the code I appended to those files:&lt;/p&gt;
&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;nb&quot;&gt;alias &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;rm&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;/bin/rmAlias
&lt;span class=&quot;nb&quot;&gt;alias &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;sudo&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&#39;sudo &#39;&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;# this enables aliases in sudo, see http://askubuntu.com/questions/22037/aliases-not-available-when-using-sudo&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;span class=&quot;nb&quot;&gt;alias &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;sudo&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;'sudo '&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;# this enables aliases in sudo, see http://askubuntu.com/questions/22037/aliases-not-available-when-using-sudo&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;Since &lt;code class=&quot;highlighter-rouge&quot;&gt;alias&lt;/code&gt; is not able to control flags of the aliases (see &lt;a href=&quot;http://apple.stackexchange.com/questions/50963/how-do-i-add-a-flag-to-an-alias&quot;&gt;here&lt;/a&gt;), were going to redirect each call of &lt;code class=&quot;highlighter-rouge&quot;&gt;rm&lt;/code&gt; to &lt;code class=&quot;highlighter-rouge&quot;&gt;/bin/rmAlias&lt;/code&gt;, that would run the command if its safe. I didnt use a function because its a bit tricky to make that work with &lt;code class=&quot;highlighter-rouge&quot;&gt;sudo&lt;/code&gt;. So, lets see the code I put in &lt;code class=&quot;highlighter-rouge&quot;&gt;rmAlias&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;Since &lt;code class=&quot;highlighter-rouge&quot;&gt;alias&lt;/code&gt; is not able to control the flags of the aliases (see &lt;a href=&quot;http://apple.stackexchange.com/questions/50963/how-do-i-add-a-flag-to-an-alias&quot;&gt;here&lt;/a&gt;), were going to redirect each call of &lt;code class=&quot;highlighter-rouge&quot;&gt;rm&lt;/code&gt; to &lt;code class=&quot;highlighter-rouge&quot;&gt;/bin/rmAlias&lt;/code&gt;, that would run the command if its safe. I didnt use a function because its a bit tricky to make that work with &lt;code class=&quot;highlighter-rouge&quot;&gt;sudo&lt;/code&gt;. So, lets see the code I put in &lt;code class=&quot;highlighter-rouge&quot;&gt;rmAlias&lt;/code&gt;:&lt;/p&gt;
&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;c&quot;&gt;#! /bin/bash&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;# Rickroll whoever tries to desert this system, even root.&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;# To achieve this, set the appropriate aliases even in /etc/profile and similars.&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;# Video played when rickrolling&lt;/span&gt;
&lt;span class=&quot;nv&quot;&gt;ROLLVIDEO&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;/opt/anti-rm/serious-video.mkv &lt;span class=&quot;c&quot;&gt;# it&#39;s just Never Gonna Give You Up on my system, but be free to customize this!&lt;/span&gt;
&lt;span class=&quot;nv&quot;&gt;ROLLVIDEO&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;/opt/anti-rm/serious-video.mkv &lt;span class=&quot;c&quot;&gt;# it's just Never Gonna Give You Up on my system, but be free to customize this!&lt;/span&gt;
rickroll&lt;span class=&quot;o&quot;&gt;(){&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;echo&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;Never gonna desert this system...&quot;&lt;/span&gt;
@ -41,7 +72,7 @@ rickroll&lt;span class=&quot;o&quot;&gt;(){&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;while &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;getopts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;:rf-&quot;&lt;/span&gt; opt; &lt;span class=&quot;k&quot;&gt;do&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;# Prevent &#39;--force&#39; to be detected as -r and -f&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;# Prevent '--force' to be detected as -r and -f&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;$opt&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;-&quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;; &lt;span class=&quot;k&quot;&gt;then
&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;OPTIND&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;$OPTIND&lt;/span&gt;+1
&lt;span class=&quot;k&quot;&gt;continue
@ -63,7 +94,7 @@ for &lt;/span&gt;var &lt;span class=&quot;k&quot;&gt;in&lt;/span&gt; &lt;span cl
&lt;span class=&quot;k&quot;&gt;fi
done&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;# If it&#39;s safe, just run rm&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;# If it's safe, just run rm&lt;/span&gt;
/bin/rm &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;$@&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;exit&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;$?&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
@ -97,15 +128,15 @@ done&lt;/span&gt;
&lt;li&gt;Wifi, Bluetooth, trackpoint mouse only, 56k modem, and a decent set of I/0 ports (including a CardBus slot!).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/content_link/JzTZf5zYyBkpLDDOz1vtSMvPga8OIM1SBjID6G6R7jMplbaidXTSWjwqClip3RaL/file&quot; alt=&quot;Think1&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/s/vkm6phz5yb2k4oq/IMG_20160712_143708.jpg?dl=0&quot; alt=&quot;Think1&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/content_link/t6IewbrmvdhYQBREpdr5r9F61SUFSK0uEZMA30LcLOE5Th6CTd5mdXBH8Ju2CFa8/file&quot; alt=&quot;Think2&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/s/wfjj1wih90lrzax/IMG_20160712_143618.jpg?dl=0&quot; alt=&quot;Think2&quot; /&gt;&lt;/p&gt;
&lt;p&gt;This machine had an installation on Arch Linux, and I was using it for school stuff. It runned smoothly KDE5, Atom (great editor, Im using it to write this article), and it was usable even with Phpstorm. Pretty impressive for such an old thing, right?&lt;/p&gt;
&lt;p&gt;Since now I dont need this laptop every day I decided to give a try at Gentoo, another rolling relase, DIY install distro. This was both a test of my skills, my patience and the performances of the machine. For those of you that dont know, Gentoo hasnt binary packages: imagine using Arch with just a developer mantained AUR.&lt;/p&gt;
&lt;p&gt;I followed the &lt;a href=&quot;https://wiki.gentoo.org/wiki/Handbook:Main_Page&quot;&gt;installation guide&lt;/a&gt; without any problem until I had to emerge and install 309 packets from my &lt;code class=&quot;highlighter-rouge&quot;&gt;@world&lt;/code&gt; set: it took 15 hours! The compilation of &lt;code class=&quot;highlighter-rouge&quot;&gt;cmake&lt;/code&gt; crashed because of memory starvation, and so I had to use a spare USB stick as swap (the root file system wasnt resizable as it was JFS). After some research and a couple of seconds in &lt;code class=&quot;highlighter-rouge&quot;&gt;top&lt;/code&gt; I discovered that &lt;a href=&quot;https://en.wikipedia.org/wiki/Physical_Address_Extension&quot;&gt;PAE&lt;/a&gt; was not implemented in the install disk kernel. TIP: if you want to use a nicer install enviroment, use the Arch ISO. With gentoo, the initialisation of the file system is made with a &lt;a href=&quot;https://wiki.gentoo.org/wiki/Stage_tarball#Stage_3&quot;&gt;stage 3 tarball&lt;/a&gt; and not by tools like &lt;a href=&quot;https://wiki.archlinux.org/index.php/beginners&#39;_guide#Install_the_base_packages&quot;&gt;pacstrap&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I followed the &lt;a href=&quot;https://wiki.gentoo.org/wiki/Handbook:Main_Page&quot;&gt;installation guide&lt;/a&gt; without any problem until I had to emerge and install 309 packets from my &lt;code class=&quot;highlighter-rouge&quot;&gt;@world&lt;/code&gt; set: it took 15 hours! The compilation of &lt;code class=&quot;highlighter-rouge&quot;&gt;cmake&lt;/code&gt; crashed because of memory starvation, and so I had to use a spare USB stick as swap (the root file system wasnt resizable as it was JFS). After some research and a couple of seconds in &lt;code class=&quot;highlighter-rouge&quot;&gt;top&lt;/code&gt; I discovered that &lt;a href=&quot;https://en.wikipedia.org/wiki/Physical_Address_Extension&quot;&gt;PAE&lt;/a&gt; was not implemented in the install disk kernel. TIP: if you want to use a nicer install enviroment, use the Arch ISO. With gentoo, the initialisation of the file system is made with a &lt;a href=&quot;https://wiki.gentoo.org/wiki/Stage_tarball#Stage_3&quot;&gt;stage 3 tarball&lt;/a&gt; and not by tools like &lt;a href=&quot;https://wiki.archlinux.org/index.php/beginners'_guide#Install_the_base_packages&quot;&gt;pacstrap&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I had another problem with &lt;code class=&quot;highlighter-rouge&quot;&gt;make menuconfig&lt;/code&gt;, the tool used to specify what features add or remove in your compiled from source Linux kernel. The ncurses menu showed me 64bit options, even if the install disk and the CPU were both 32 bit. If you have this issue too, you can set the &lt;code class=&quot;highlighter-rouge&quot;&gt;ARCH&lt;/code&gt; variable by your own:&lt;/p&gt;
@ -115,7 +146,7 @@ done&lt;/span&gt;
&lt;p&gt;At the end, I made it! I only have a base install, but i can show you &lt;code class=&quot;highlighter-rouge&quot;&gt;screenfetch&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/content_link/IPYdz4IcrWSE7MkHCcT3om38HrmEJCHMTifZa2apowHsiV7mlfMCUJ0ciYzk4Izz/file&quot; alt=&quot;Screenfetch&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dl.dropboxusercontent.com/s/fbysnd58sj4g3kl/IMG_20160711_162733.jpg?dl=0&quot; alt=&quot;Screenfetch&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Ive not installed Gentoo in dual boot because I didnt figured out how to switch my bluetooth dongle in HID mode yet, so I cant select the OS with &lt;code class=&quot;highlighter-rouge&quot;&gt;rEFInd&lt;/code&gt;. Hope this rambling was, if not useful, at least entertaining!&lt;/p&gt;
</description>

View File

@ -124,6 +124,14 @@
<ul class="post-list">
<li>
<span class="post-meta">Aug 15, 2016</span>
<h2>
<a class="post-link" href="/archery/2016/08/15/my-archery-setup.html">My archery setup!</a>
</h2>
</li>
<li>
<span class="post-meta">Jul 28, 2016</span>

View File

@ -1,213 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>How to rickroll people that try to run &quot;rm -rf&quot; on your system</title>
<meta name="description" content="WARNING: The method showed here could not prevent the actual execution of “rm -rf” if the “UNIX vandal” is clever enough. Proceed at your own risk, and make ...">
<link rel="stylesheet" href="/css/main.css">
<link href='https://fonts.googleapis.com/css?family=Hammersmith+One' rel='stylesheet' type='text/css'>
<link rel="canonical" href="http://praticamentetilde.github.io/linux/2016/07/12/how-to-rickroll-people-launching-rm-rf-on-your-system.html">
<link rel="alternate" type="application/rss+xml" title="Ramblings of an archer archer" href="http://praticamentetilde.github.io/feed.xml">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
<script src="https://rawgit.com/snaptortoise/konami-js/master/konami.js"></script>
<!-- Favicon -->
<link rel="apple-touch-icon" sizes="57x57" href="/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="msapplication-TileImage" content="/ms-icon-144x144.png">
<meta name="theme-color" content="#ffffff">
</head>
<body>
<header class="site-header">
<div class="wrapper header">
<img class="site-logo" src="/android-icon-192x192.png" alt="MALUSA"/>
<a class="site-title" href="/">Ramblings of an archer archer</a>
<nav class="site-nav">
<a href="#" class="menu-icon">
<svg viewBox="0 0 18 15">
<path fill="#424242" d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.031C17.335,0,18,0.665,18,1.484L18,1.484z"/>
<path fill="#424242" d="M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0c0-0.82,0.665-1.484,1.484-1.484 h15.031C17.335,6.031,18,6.696,18,7.516L18,7.516z"/>
<path fill="#424242" d="M18,13.516C18,14.335,17.335,15,16.516,15H1.484C0.665,15,0,14.335,0,13.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.031C17.335,12.031,18,12.696,18,13.516L18,13.516z"/>
</svg>
</a>
<div class="trigger">
<a class="page-link" href="/about/">About</a>
</div>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<article class="post" itemscope itemtype="http://schema.org/BlogPosting">
<header class="post-header">
<h1 class="post-title" itemprop="name headline">How to rickroll people that try to run "rm -rf" on your system</h1>
<p class="post-meta"><time datetime="2016-07-12T13:00:00+02:00" itemprop="datePublished">Jul 12, 2016</time></p>
</header>
<div class="post-content" itemprop="articleBody">
<p><strong>WARNING: The method showed here could not prevent the actual execution of “rm -rf” if the “UNIX vandal” is clever enough. Proceed at your own risk, and make backups!</strong></p>
<p>I like Rick Astley late 80s songs, and you can see them here in my Spotify:</p>
<p><img src="https://dl.dropboxusercontent.com/s/t9vywa4yjotxv0o/Screenshot_20160728_154506.png?dl=0" alt="dQw4w9WgXcQ" /></p>
<p>I like rickrolling people myself too, especially if theyre trying to delete my entire <code class="highlighter-rouge">/home</code> directory or, even worse, <code class="highlighter-rouge">/</code>. Since I learned how to use the <code class="highlighter-rouge">alias</code> built-in, I wanted a way to prevent that random people tinkering with my laptop (that I may forgot to lock) could delete potentially important stuff, just for fun or boredom.</p>
<p>The method that Ill show will lock any <code class="highlighter-rouge">rm</code> command runned in both recursive and force mode, so <code class="highlighter-rouge">rm -rf</code>, <code class="highlighter-rouge">rm -f -r</code> and <code class="highlighter-rouge">rm -r --force</code> are all blocked, even if they are launched by <code class="highlighter-rouge">sudo</code>. Im going to alias the rm command in <code class="highlighter-rouge">/etc/profile</code> <code class="highlighter-rouge">/etc/bash.bashrc</code> and in <code class="highlighter-rouge">/etc/zsh/zshrc</code> (Im a zsh user) so that the rickroll will be possible from all users, even root and the ones with a brand new <code class="highlighter-rouge">bashrc</code> or <code class="highlighter-rouge">zshrc</code>. Here is the code I appended to those files:</p>
<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nb">alias </span><span class="nv">rm</span><span class="o">=</span>/bin/rmAlias
<span class="nb">alias </span><span class="nv">sudo</span><span class="o">=</span><span class="s1">'sudo '</span> <span class="c"># this enables aliases in sudo, see http://askubuntu.com/questions/22037/aliases-not-available-when-using-sudo</span></code></pre></figure>
<p>Since <code class="highlighter-rouge">alias</code> is not able to control flags of the aliases (see <a href="http://apple.stackexchange.com/questions/50963/how-do-i-add-a-flag-to-an-alias">here</a>), were going to redirect each call of <code class="highlighter-rouge">rm</code> to <code class="highlighter-rouge">/bin/rmAlias</code>, that would run the command if its safe. I didnt use a function because its a bit tricky to make that work with <code class="highlighter-rouge">sudo</code>. So, lets see the code I put in <code class="highlighter-rouge">rmAlias</code>:</p>
<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="c">#! /bin/bash</span>
<span class="c"># Rickroll whoever tries to desert this system, even root.</span>
<span class="c"># To achieve this, set the appropriate aliases even in /etc/profile and similars.</span>
<span class="c"># Video played when rickrolling</span>
<span class="nv">ROLLVIDEO</span><span class="o">=</span>/opt/anti-rm/serious-video.mkv <span class="c"># it's just Never Gonna Give You Up on my system, but be free to customize this!</span>
rickroll<span class="o">(){</span>
<span class="nb">echo</span> <span class="s2">"Never gonna desert this system..."</span>
xdg-open <span class="nv">$ROLLVIDEO</span> 2&gt;&amp;1 &amp;
<span class="nb">exit </span>0
<span class="o">}</span>
<span class="k">while </span><span class="nb">getopts</span> <span class="s2">":rf-"</span> opt; <span class="k">do</span>
<span class="c"># Prevent '--force' to be detected as -r and -f</span>
<span class="k">if</span> <span class="o">[</span> <span class="s2">"</span><span class="nv">$opt</span><span class="s2">"</span> <span class="o">=</span> <span class="s2">"-"</span> <span class="o">]</span>; <span class="k">then
</span><span class="nv">OPTIND</span><span class="o">=</span><span class="nv">$OPTIND</span>+1
<span class="k">continue
fi
if</span> <span class="o">[</span> <span class="s2">"</span><span class="nv">$opt</span><span class="s2">"</span> <span class="o">=</span> <span class="s2">"r"</span> <span class="o">]</span> <span class="o">||</span> <span class="o">[</span> <span class="s2">"</span><span class="nv">$opt</span><span class="s2">"</span> <span class="o">=</span> <span class="s2">"f"</span> <span class="o">]</span>; <span class="k">then
if</span> <span class="o">[</span> <span class="s2">"</span><span class="nv">$tmp</span><span class="s2">"</span> <span class="o">=</span> <span class="s2">""</span> <span class="o">]</span>; <span class="k">then
</span><span class="nv">tmp</span><span class="o">=</span><span class="nv">$opt</span>
<span class="k">continue
elif</span> <span class="o">[</span> <span class="s2">"</span><span class="nv">$tmp</span><span class="s2">"</span> !<span class="o">=</span> <span class="s2">"</span><span class="nv">$opt</span><span class="s2">"</span> <span class="o">]</span>; <span class="k">then
</span>rickroll
<span class="k">fi
fi
done
for </span>var <span class="k">in</span> <span class="s2">"</span><span class="nv">$@</span><span class="s2">"</span>
<span class="k">do
if</span> <span class="o">[[</span> <span class="s2">"</span><span class="nv">$var</span><span class="s2">"</span> <span class="o">=</span> <span class="s2">"--force"</span> <span class="o">&amp;&amp;</span> <span class="s2">"</span><span class="nv">$tmp</span><span class="s2">"</span> <span class="o">=</span> <span class="s2">"r"</span> <span class="o">]]</span>; <span class="k">then
</span>rickroll
<span class="k">fi
done</span>
<span class="c"># If it's safe, just run rm</span>
/bin/rm <span class="s2">"</span><span class="nv">$@</span><span class="s2">"</span>
<span class="nb">exit</span> <span class="nv">$?</span></code></pre></figure>
<p>It may look messy to a UNIX guy more experienced than me, but it works. The <code class="highlighter-rouge">getopts</code> built-in sees if both the <code class="highlighter-rouge">-r</code> and the <code class="highlighter-rouge">-f</code> flags are used and, if so, it starts <code class="highlighter-rouge">rickroll()</code>, which opens with <code class="highlighter-rouge">xdg-open</code> that amazing clip from RickAstleyVEVO. From line 30 and below, the script checks if the <code class="highlighter-rouge">--force</code> flag is used instead of <code class="highlighter-rouge">-f</code>.</p>
<p>Give execute permissions to the script weve just created:</p>
<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="c"># chmod +x /bin/rmAlias</span></code></pre></figure>
<p>Restart your shell, and enjoy. If you want to test safely, I suggest trying to run <code class="highlighter-rouge">rm -rf</code> with no folders or one nonexistant, since this script stop even these commands.</p>
<p>If you want even more security, you can rename this script to <code class="highlighter-rouge">/bin/rm</code> and move the original one in some other place, getting rid of all the aliases. I prefer the solution above because its tidier: you havent to move anything. In fact, this could be just an AUR package…</p>
</div>
</article>
<div id="disqus_thread" style="background: #212121"></div>
<script>
/**
* RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
* LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables
*/
/*
var disqus_config = function () {
this.page.url = PAGE_URL; // Replace PAGE_URL with your page's canonical URL variable
this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
};
*/
(function() { // DON'T EDIT BELOW THIS LINE
var d = document, s = d.createElement('script');
s.src = '//ramblingsofanarcherarcher.disqus.com/embed.js';
s.setAttribute('data-timestamp', +new Date());
(d.head || d.body).appendChild(s);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript>
</div>
</div>
<footer class="site-footer">
<div class="wrapper">
<h2 class="footer-heading">Ramblings of an archer archer</h2>
<div class="footer-col-wrapper">
<div class="footer-col footer-col-1">
<ul class="contact-list">
My <a href="http://www.burarco.it/">Archery club</a>.
</ul>
</div>
<div class="footer-col footer-col-2">
<ul class="social-media-list">
<li>
<a href="https://github.com/praticamentetilde"><span class="icon icon--github"><svg viewBox="0 0 16 16"><path fill="#828282" d="M7.999,0.431c-4.285,0-7.76,3.474-7.76,7.761 c0,3.428,2.223,6.337,5.307,7.363c0.388,0.071,0.53-0.168,0.53-0.374c0-0.184-0.007-0.672-0.01-1.32 c-2.159,0.469-2.614-1.04-2.614-1.04c-0.353-0.896-0.862-1.135-0.862-1.135c-0.705-0.481,0.053-0.472,0.053-0.472 c0.779,0.055,1.189,0.8,1.189,0.8c0.692,1.186,1.816,0.843,2.258,0.645c0.071-0.502,0.271-0.843,0.493-1.037 C4.86,11.425,3.049,10.76,3.049,7.786c0-0.847,0.302-1.54,0.799-2.082C3.768,5.507,3.501,4.718,3.924,3.65 c0,0,0.652-0.209,2.134,0.796C6.677,4.273,7.34,4.187,8,4.184c0.659,0.003,1.323,0.089,1.943,0.261 c1.482-1.004,2.132-0.796,2.132-0.796c0.423,1.068,0.157,1.857,0.077,2.054c0.497,0.542,0.798,1.235,0.798,2.082 c0,2.981-1.814,3.637-3.543,3.829c0.279,0.24,0.527,0.713,0.527,1.437c0,1.037-0.01,1.874-0.01,2.129 c0,0.208,0.14,0.449,0.534,0.373c3.081-1.028,5.302-3.935,5.302-7.362C15.76,3.906,12.285,0.431,7.999,0.431z"/></svg>
</span><span class="username">praticamentetilde</span></a>
</li>
</ul>
</div>
<div class="footer-col footer-col-3">
<p>Things which an Arch Linux user that also owns an recurve bow can write.
</p>
</div>
</div>
</div>
</footer>
</body>
</html>

View File

@ -89,9 +89,9 @@
<li>Wifi, Bluetooth, trackpoint mouse only, 56k modem, and a decent set of I/0 ports (including a CardBus slot!).</li>
</ul>
<p><img src="https://dl.dropboxusercontent.com/content_link/JzTZf5zYyBkpLDDOz1vtSMvPga8OIM1SBjID6G6R7jMplbaidXTSWjwqClip3RaL/file" alt="Think1" /></p>
<p><img src="https://dl.dropboxusercontent.com/s/vkm6phz5yb2k4oq/IMG_20160712_143708.jpg?dl=0" alt="Think1" /></p>
<p><img src="https://dl.dropboxusercontent.com/content_link/t6IewbrmvdhYQBREpdr5r9F61SUFSK0uEZMA30LcLOE5Th6CTd5mdXBH8Ju2CFa8/file" alt="Think2" /></p>
<p><img src="https://dl.dropboxusercontent.com/s/wfjj1wih90lrzax/IMG_20160712_143618.jpg?dl=0" alt="Think2" /></p>
<p>This machine had an installation on Arch Linux, and I was using it for school stuff. It runned smoothly KDE5, Atom (great editor, Im using it to write this article), and it was usable even with Phpstorm. Pretty impressive for such an old thing, right?</p>
@ -107,7 +107,7 @@
<p>At the end, I made it! I only have a base install, but i can show you <code class="highlighter-rouge">screenfetch</code>:</p>
<p><img src="https://dl.dropboxusercontent.com/content_link/IPYdz4IcrWSE7MkHCcT3om38HrmEJCHMTifZa2apowHsiV7mlfMCUJ0ciYzk4Izz/file" alt="Screenfetch" /></p>
<p><img src="https://dl.dropboxusercontent.com/s/fbysnd58sj4g3kl/IMG_20160711_162733.jpg?dl=0" alt="Screenfetch" /></p>
<p>Ive not installed Gentoo in dual boot because I didnt figured out how to switch my bluetooth dongle in HID mode yet, so I cant select the OS with <code class="highlighter-rouge">rEFInd</code>. Hope this rambling was, if not useful, at least entertaining!</p>

View File

@ -93,7 +93,7 @@
<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nb">alias </span><span class="nv">rm</span><span class="o">=</span>/bin/rmAlias
<span class="nb">alias </span><span class="nv">sudo</span><span class="o">=</span><span class="s1">'sudo '</span> <span class="c"># this enables aliases in sudo, see http://askubuntu.com/questions/22037/aliases-not-available-when-using-sudo</span></code></pre></figure>
<p>Since <code class="highlighter-rouge">alias</code> is not able to control flags of the aliases (see <a href="http://apple.stackexchange.com/questions/50963/how-do-i-add-a-flag-to-an-alias">here</a>), were going to redirect each call of <code class="highlighter-rouge">rm</code> to <code class="highlighter-rouge">/bin/rmAlias</code>, that would run the command if its safe. I didnt use a function because its a bit tricky to make that work with <code class="highlighter-rouge">sudo</code>. So, lets see the code I put in <code class="highlighter-rouge">rmAlias</code>:</p>
<p>Since <code class="highlighter-rouge">alias</code> is not able to control the flags of the aliases (see <a href="http://apple.stackexchange.com/questions/50963/how-do-i-add-a-flag-to-an-alias">here</a>), were going to redirect each call of <code class="highlighter-rouge">rm</code> to <code class="highlighter-rouge">/bin/rmAlias</code>, that would run the command if its safe. I didnt use a function because its a bit tricky to make that work with <code class="highlighter-rouge">sudo</code>. So, lets see the code I put in <code class="highlighter-rouge">rmAlias</code>:</p>
<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="c">#! /bin/bash</span>
<span class="c"># Rickroll whoever tries to desert this system, even root.</span>