<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Linux on MarkJacobsen.net</title><link>https://test.markjacobsen.net/categories/linux/</link><description>Recent content in Linux on MarkJacobsen.net</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Tue, 05 Feb 2019 01:44:54 +0000</lastBuildDate><atom:link href="https://test.markjacobsen.net/categories/linux/index.xml" rel="self" type="application/rss+xml"/><item><title>Use SCP to copy files between remote and local hosts</title><link>https://test.markjacobsen.net/2019/02/use-scp-to-copy-files-between-remote-and-local-hosts/</link><pubDate>Tue, 05 Feb 2019 01:44:54 +0000</pubDate><guid>https://test.markjacobsen.net/2019/02/use-scp-to-copy-files-between-remote-and-local-hosts/</guid><description>&lt;p&gt;So you need to copy a file you have on a remote server locally, or send a local file to a remote server? Fortunatally, it’s pretty easy with scp. Here’s an example to copy a remote server to the local machine.&lt;/p&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;scp -P 65124 remoteuser@remotehost:/var/lib/path/to/file.txt /var/lib/path/to/&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;…which will connect to “remotehost” on port 65124 as “remoteuser” and copy the /var/lib/path/to/file.txt on “remotehost” to the local /var/lib/path/to/ directory.&lt;/p&gt;
&lt;p&gt;Need to copy a local file to a remote host? Just switch the parameters up!&lt;/p&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;scp -P 65124 /var/lib/path/to/file.txt remoteuser@remotehost:/var/lib/path/to/&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Set a proxy and carry over the values to sudo</title><link>https://test.markjacobsen.net/2019/01/set-a-proxy-and-carry-over-the-values-to-sudo/</link><pubDate>Fri, 25 Jan 2019 16:15:51 +0000</pubDate><guid>https://test.markjacobsen.net/2019/01/set-a-proxy-and-carry-over-the-values-to-sudo/</guid><description>&lt;p&gt;If you’ve ever been behind an enterprise proxy server and needed to reach things on the outside, you probably know how frustrating it is to try and just use your normal commands for something as simple as a wget. So, to get started you will need to know the URL and port for your proxy server, but once you have that, start by editing your .bashrc and add the following (setting proxyhost, the port, and adjusting “no_proxy” as appropriate)…&lt;/p&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;function proxyon(){
 echo -n "password (for proxy): "
 read -es password
 export http_proxy="http://$USER:$password@proxyhost.com:8181/"
 export HTTP_PROXY=$http_proxy
 export https_proxy=$http_proxy
 export HTTPS_PROXY=$http_proxy
 export ftp_proxy=$http_proxy
 export rsync_proxy=$http_proxy
 export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com,.domain.com"
 echo -e "\nProxy environment variable set."
}
function proxyoff(){
 unset HTTP_PROXY
 unset http_proxy
 unset HTTPS_PROXY
 unset https_proxy
 unset FTP_PROXY
 unset ftp_proxy
 unset RSYNC_PROXY
 unset rsync_proxy
 echo -e "\nProxy environment variable removed."
}

# remove next line if you don't want to set proxy automatically on login
proxyon&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Now you can turn your proxy on and off with the “proxyon” and “proxyoff” commands, but that doesn’t help you when you try to install something with yum or apt that requires sudo. To carry over the proxy values, you’ll need to “sudo visudo” and add the “Defaults” line like shown below…&lt;/p&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;###############################################
# DO NOT ADD ANYTHING FROM HERE TO END OF FILE #
#
#includedir /etc/sudoers.d
#
# DO NOT ADD ANYTHING ABOVE THIS LINE###########
Defaults env_keep = "http_proxy https_proxy HTTP_PROXY HTTPS_PROXY ftp_proxy"&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;… and now, hopefully you are all set.&lt;/p&gt;</description></item><item><title>Configure a Static IP in Ubuntu 18.04</title><link>https://test.markjacobsen.net/2019/01/configure-a-static-ip-in-ubuntu-18-04/</link><pubDate>Mon, 21 Jan 2019 23:00:56 +0000</pubDate><guid>https://test.markjacobsen.net/2019/01/configure-a-static-ip-in-ubuntu-18-04/</guid><description>&lt;p&gt;As with all things Linux there’s a million ways to do things, and every brilliant release comes up with a new way to do the same old things in a “better” way. Can you tell I’m be sarcastic yet? Good.&lt;/p&gt;
&lt;p&gt;Anyway, after spending over an hour trying to get a freakin static IP on my desktop box I thought I’d share in case it saved anyone hours of their life.&lt;/p&gt;
&lt;p&gt;My simple goal was to provide a static IP. Nothing more. Nothing less. Well, the “better” way of doing it now appears to be with “netplan”, and unless you enjoy banging your head against the wall, just create/edit this file and replace with the network interface (enp3s1), IP (192.168.20.55) and gateway (192.168.20.1) of your choice (this config appears to use the DNS servers from the router w/ DHCP turned on). Oh yeah, and don’t bother with the GUI based configuration tool, because apparently they’re not connected at all, and using this will force the config from this file (you’ve been warned and saved hours)&lt;/p&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;sudo nano /etc/netplan/01-networkd.yaml

# this is the actual file content
network:
 version: 2
 renderer: networkd
 ethernets:
 enp3s1:
 dhcp: no
 addresses: [192.168.20.55/24]
 gateway4: 192.168.20.1&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Using sed to view and replace text on a specific file in Linux</title><link>https://test.markjacobsen.net/2018/03/using-sed-to-view-and-replace-text-on-a-specific-file-in-linux/</link><pubDate>Sat, 17 Mar 2018 14:26:00 +0000</pubDate><guid>https://test.markjacobsen.net/2018/03/using-sed-to-view-and-replace-text-on-a-specific-file-in-linux/</guid><description>&lt;p&gt;Ever need to replace very specific text on a particular line in a very large file on Linux? Enter the sed command.&lt;/p&gt;
&lt;p&gt;To view the line (let’s say line 864 in this case) in the specific file, issue this command…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ sed -n '864'p myfile.txt
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And let’s say you get back the string ” I hate cheese”. Since we all know that’s not true, you can use a different variation of the sed command to replace “hate” with “love” like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ sed -i '864s/hate/love/' myfile.txt
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And if you’re really curious on how this even came about, it was due to an error in the phpMyAdmin export.php script when you had to change “break 2” to “break” on line 846 as identified here: &lt;a href="https://askubuntu.com/questions/928883/500-error-on-phpmyadmin-export-on-phpmyadmin-export-php/930975" target="_blank"&gt;&lt;a class="link" href="https://askubuntu.com/questions/928883/500-error-on-phpmyadmin-export-on-phpmyadmin-export-php/930975" target="_blank" rel="noopener"
 &gt;https://askubuntu.com/questions/928883/500-error-on-phpmyadmin-export-on-phpmyadmin-export-php/930975&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Linux Startup Email</title><link>https://test.markjacobsen.net/2017/10/linux-startup-email/</link><pubDate>Sat, 21 Oct 2017 21:59:00 +0000</pubDate><guid>https://test.markjacobsen.net/2017/10/linux-startup-email/</guid><description>&lt;p&gt;Want to receive an email any time your linux server reboots? Just create this script…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo nano /usr/local/sbin/startupemail.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Here’s the code for the script…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#!/bin/sh

# Lets things startup
sleep 60

# Get info
IP=&amp;quot;$(ifconfig | grep -A 1 'eth0' | tail -1 | cut -d ':' -f 2 | cut -d ' ' -f 1)&amp;quot;
HOSTNAME=`hostname`

#Send email
echo &amp;quot;IP: $IP, Host: $HOSTNAME&amp;quot; | mail -s &amp;quot;Server Started&amp;quot; me@there.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Make sure to make it executable…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo chmod u+x /usr/local/sbin/startupemail.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then add it to your /etc/rc.local file&lt;/p&gt;</description></item><item><title>OwnCloud webapp not reflecting true list of files</title><link>https://test.markjacobsen.net/2016/06/owncloud-webapp-not-reflecting-true-list-files/</link><pubDate>Mon, 06 Jun 2016 18:54:00 +0000</pubDate><guid>https://test.markjacobsen.net/2016/06/owncloud-webapp-not-reflecting-true-list-files/</guid><description>&lt;p&gt;If you’re using OwnCloud and have a process whereby your add or remove files from directories via some sort of server process, you may find that you need to force OwnCloud to update/rescan the file listing. To do so you can manually run the following command…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo -u username php /path/to/owncloud/console.php files:scan --all
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You may also want to consider adding it to the crontab for “username” on a daily basis.&lt;/p&gt;
&lt;p&gt;Thanks to &lt;a href="https://techblog.jeppson.org/2014/10/refresh-owncloud-file-cache/" target="_blank"&gt;this site&lt;/a&gt; for pointing me in the right direction.&lt;/p&gt;</description></item><item><title>Sendmail isn’t sending to domain.com : Linux</title><link>https://test.markjacobsen.net/2016/06/sendmail-isnt-sending-domain-com/</link><pubDate>Thu, 02 Jun 2016 12:31:00 +0000</pubDate><guid>https://test.markjacobsen.net/2016/06/sendmail-isnt-sending-domain-com/</guid><description>&lt;p&gt;Say you’re using sendmail to relay email on a web server that you own that’s named “domain.com”, and email is being delivered fine to any domain &lt;strong&gt;except&lt;/strong&gt; domain.com. What could be the problem?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Rename your server. No server should be named with an actual domain name.&lt;/li&gt;
&lt;li&gt;Change /etc/hostname to the new name for your server&lt;/li&gt;
&lt;li&gt;Update /etc/hosts to remove the domain name and replace with the new hostname&lt;/li&gt;
&lt;li&gt;Remove the domain name from /etc/mail/local-host-names&lt;/li&gt;
&lt;li&gt;Restart sendmail “sudo service sendmail restart”&lt;/li&gt;
&lt;li&gt;Restart your server “sudo reboot”&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Once you’ve done that test sendmail out like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;echo &amp;quot;command line test&amp;quot; | mail -s &amp;quot;Sendmail test&amp;quot; me@domain.com
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Improved Linux command history</title><link>https://test.markjacobsen.net/2016/04/improved-linux-command-history/</link><pubDate>Sun, 03 Apr 2016 23:14:00 +0000</pubDate><guid>https://test.markjacobsen.net/2016/04/improved-linux-command-history/</guid><description>&lt;p&gt;With four lines setup one time you can type the beginning of a command (ex: “ls”) then press the up and down arrows to see the most recent commands containing the text you typed (ex: “ls ~/scripts”) making it much easier to find what you’re looking for. To make this happen, create a text file called .inputrc in your home folder and put the following four lines inside:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;quot;\e[A&amp;quot;: history-search-backward
&amp;quot;\e[B&amp;quot;: history-search-forward
set show-all-if-ambiguous on
set completion-ignore-case on
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Linux ls output colors</title><link>https://test.markjacobsen.net/2015/03/linux-ls-output-colors/</link><pubDate>Mon, 23 Mar 2015 15:48:00 +0000</pubDate><guid>https://test.markjacobsen.net/2015/03/linux-ls-output-colors/</guid><description>&lt;p&gt;If you’ve used linux much and your terminal is set to display files and directories in color, you know how frustrating it can be to have dark blue text on a black background like so (I’ve seen it much worse too)…&lt;/p&gt;
&lt;p&gt;[&lt;img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-full wp-image-966" src="https://i0.wp.com/markjacobsen.net/wp-content/uploads/2015/03/dirColorBefore.png?resize=125%2C39" alt="dirColorBefore" width="125" height="39" /&gt;][1]&lt;/p&gt;
&lt;p&gt;If you would like to modify the output so the colors are a bit more readable, you can add the following to your .bashrc file…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;alias ls='ls --color'
LS_COLORS='di=33:fi=36:ex=31'
export LS_COLORS
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;which will produce an easier to read version like so (with directories yellow, files a crayon/teal, and executable files red)…&lt;/p&gt;
&lt;p&gt;[&lt;img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-full wp-image-967" src="https://i0.wp.com/markjacobsen.net/wp-content/uploads/2015/03/dirColorAfter.png?resize=142%2C36" alt="dirColorAfter" width="142" height="36" /&gt;][2]&lt;/p&gt;
&lt;p&gt;As pointed out in &lt;a href="http://linux-sxs.org/housekeeping/lscolors.html" target="blank"&gt;this article&lt;/a&gt;…&lt;/p&gt;
&lt;p&gt;The first line makes ls use the –color parameter by default, which tells ls to display files in different colours based on the setting of the LS_COLORS variable.&lt;/p&gt;
&lt;p&gt;The second line is the tricky one, and what I have worked out so far has been by trial and error. The parameters (di, fi, etc.) refer to different Linux file types. I have worked them out as shown&lt;/p&gt;
&lt;p&gt;di = directory&lt;br&gt;
fi = file&lt;br&gt;
ln = symbolic link&lt;br&gt;
pi = fifo file&lt;br&gt;
so = socket file&lt;br&gt;
bd = block (buffered) special file&lt;br&gt;
cd = character (unbuffered) special file&lt;br&gt;
or = symbolic link pointing to a non-existent file (orphan)&lt;br&gt;
mi = non-existent file pointed to by a symbolic link (visible when you type ls -l)&lt;br&gt;
ex = file which is executable (ie. has ‘x’ set in permissions).&lt;/p&gt;
&lt;p&gt;The *.rpm=90 parameter at the end tells ls to display any files ending in .rpm in the specified colour, in this case colour 90 (dark grey). This can be applied to any types of files (eg. you could use ‘*.png=35’ to make jpeg files appear purple.) As many or as few parameters as you like can go into the LS_COLORS variable, as long as the parameters are separated by colons.&lt;/p&gt;
&lt;p&gt;Using trial and error (and a little bash script I wrote… my first one ever! 🙂 I worked out all the colour codes, at least my interpretation of them –&lt;/p&gt;
&lt;p&gt;0 = default colour&lt;br&gt;
1 = bold&lt;br&gt;
4 = underlined&lt;br&gt;
5 = flashing text&lt;br&gt;
7 = reverse field&lt;br&gt;
31 = red&lt;br&gt;
32 = green&lt;br&gt;
33 = orange&lt;br&gt;
34 = blue&lt;br&gt;
35 = purple&lt;br&gt;
36 = cyan&lt;br&gt;
37 = grey&lt;br&gt;
40 = black background&lt;br&gt;
41 = red background&lt;br&gt;
42 = green background&lt;br&gt;
43 = orange background&lt;br&gt;
44 = blue background&lt;br&gt;
45 = purple background&lt;br&gt;
46 = cyan background&lt;br&gt;
47 = grey background&lt;br&gt;
90 = dark grey&lt;br&gt;
91 = light red&lt;br&gt;
92 = light green&lt;br&gt;
93 = yellow&lt;br&gt;
94 = light blue&lt;br&gt;
95 = light purple&lt;br&gt;
96 = turquoise&lt;br&gt;
100 = dark grey background&lt;br&gt;
101 = light red background&lt;br&gt;
102 = light green background&lt;br&gt;
103 = yellow background&lt;br&gt;
104 = light blue background&lt;br&gt;
105 = light purple background&lt;br&gt;
106 = turquoise background[1]: &lt;a class="link" href="https://i0.wp.com/markjacobsen.net/wp-content/uploads/2015/03/dirColorBefore.png" target="_blank" rel="noopener"
 &gt;https://i0.wp.com/markjacobsen.net/wp-content/uploads/2015/03/dirColorBefore.png&lt;/a&gt;
[2]: &lt;a class="link" href="https://i0.wp.com/markjacobsen.net/wp-content/uploads/2015/03/dirColorAfter.png" target="_blank" rel="noopener"
 &gt;https://i0.wp.com/markjacobsen.net/wp-content/uploads/2015/03/dirColorAfter.png&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Pass a Command Line Argument to an Alias</title><link>https://test.markjacobsen.net/2014/11/pass-command-line-argument-alias/</link><pubDate>Fri, 28 Nov 2014 15:11:06 +0000</pubDate><guid>https://test.markjacobsen.net/2014/11/pass-command-line-argument-alias/</guid><description>&lt;p&gt;Ever want to pass in a command line argument to an alias? You would think you could just do it with $1, but actually you have to create a function and then call that function. So, for instance if you want to pass a portion of a log file name, you could set your alias like this…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;alias catlog='function _catIt() { cat /var/logs/$1.log; };_catIt'
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;then, when you want to see the XX00D log, you just call your alias like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;catlog XX00D
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Checking and Maintaining Linux Disk Space</title><link>https://test.markjacobsen.net/2014/11/checking-maintaining-linux-disk-space/</link><pubDate>Mon, 10 Nov 2014 13:30:00 +0000</pubDate><guid>https://test.markjacobsen.net/2014/11/checking-maintaining-linux-disk-space/</guid><description>&lt;p&gt;Ever need to find out what’s using the most space on your Linux box? There are a couple commands that will help make things easier…&lt;/p&gt;
&lt;p&gt;To find out how much space you have use:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;df -h .
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Which will give you output like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Filesystem Size Used Avail Use% Mounted on
/dev/sda 20G 15G 4.2G 79% /
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To list out the directories using the most space, use this handy command…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo du /usr/local | sort -n
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;… where /usr/local is the directory you want info for (you can also just start from root: /)&lt;/p&gt;</description></item><item><title>Learning VIM</title><link>https://test.markjacobsen.net/2014/09/learning-vim/</link><pubDate>Wed, 24 Sep 2014 11:49:00 +0000</pubDate><guid>https://test.markjacobsen.net/2014/09/learning-vim/</guid><description>&lt;p&gt;So you would think that as a programmer for many moons now that I would have considerable experience in VIM and VI, but I’m hear today to admit that I am not. For years I’ve gotten by with my favorite Windows text editor notepad++, but the geek in me wanted to know why everyone loves Vim so much. To that end the 2 things I started with are…&lt;/p&gt;
&lt;p&gt;Downloading the Windows vim editor from [Vim.org][1]&lt;/p&gt;
&lt;p&gt;Working through the tutorial at &lt;a class="link" href="http://www.openvim.com/tutorial.html" target="_blank" rel="noopener"
 &gt;http://www.openvim.com/tutorial.html&lt;/a&gt; &lt;/ul&gt;&lt;/p&gt;
&lt;p&gt;I can’t say I’m a convert yet, but it’s always nice to have another tool in the toolbelt. Here for your and my reference is [my quick VIM cheat sheet][2].[1]: &lt;a class="link" href="http://www.vim.org" target="_blank" rel="noopener"
 &gt;http://www.vim.org&lt;/a&gt;
[2]: &lt;a class="link" href="http://visit.markjacobsen.net/vim-cheat-sheet/" target="_blank" rel="noopener"
 &gt;http://visit.markjacobsen.net/vim-cheat-sheet/&lt;/a&gt; &amp;ldquo;VIM Cheat Sheet&amp;rdquo;&lt;/p&gt;</description></item><item><title>UNIX: Don’t Show Permission Denied Errors when using find Command</title><link>https://test.markjacobsen.net/2014/09/unix-dont-show-permission-denied-errors-using-find-command/</link><pubDate>Wed, 10 Sep 2014 11:49:00 +0000</pubDate><guid>https://test.markjacobsen.net/2014/09/unix-dont-show-permission-denied-errors-using-find-command/</guid><description>&lt;p&gt;If you’re using the unix find command to search for files with a particular name&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;find -name theName
find: `./dir/thing': Permission denied
find: `./dir/thing1': Permission denied
find: `./dir/thing2': Permission denied
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You might get distracted by all those “Permission denied” errors. The easy way to solve this is to redirect stderr to /dev/null like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;find -name theName 2&amp;gt;/dev/null
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>UNIX: No such file or directory but the file exists</title><link>https://test.markjacobsen.net/2014/08/unix-file-directory-file-exists/</link><pubDate>Fri, 29 Aug 2014 10:49:00 +0000</pubDate><guid>https://test.markjacobsen.net/2014/08/unix-file-directory-file-exists/</guid><description>&lt;p&gt;Ever have a script that is executing another script and get an error that looks like this?…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;/path/stub.ksh[2]: /path/XX/script.ksh: not found [No such file or directory]
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then you make sure that the file does in fact exist, and that you can read it?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;So why does it say there’s “No such file or directory”?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Might want to check if the file has Windows line breaks. Easiest way to do that is run the following…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cat -v /path/XX/script.ksh
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;… and you’ll probably see that your lines end with ^M characters. If so, you have Window’s line breaks and you might want to look into not introducing them in the first place (save in Unix format), or check out the dos2unix command.&lt;/p&gt;</description></item><item><title>Quick apt-get Tutorial</title><link>https://test.markjacobsen.net/2014/04/quick-apt-get-tutorial/</link><pubDate>Thu, 10 Apr 2014 07:18:38 +0000</pubDate><guid>https://test.markjacobsen.net/2014/04/quick-apt-get-tutorial/</guid><description>&lt;p&gt;List installed packages…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;dpkg --get-selections | grep -v deinstall
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;List installed packages (but filter based on name)…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;dpkg --get-selections | grep -v deinstall | grep filter
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Install a package…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo apt-get install the-package-name
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Uninstall/remove a package…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo apt-get remove the-package-name
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Update package lists/dependencies (does not actually install anything)…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo apt-get update
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Apply updates to existing packages based on an “update” call (without removing anything)…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo apt-get upgrade
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Apply updates to existing packages based on an “update” call and remove obsolete packages…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo apt-get dist-upgrade
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Quick CRON Tutorial</title><link>https://test.markjacobsen.net/2014/04/quick-cron-tutorial/</link><pubDate>Wed, 02 Apr 2014 02:50:16 +0000</pubDate><guid>https://test.markjacobsen.net/2014/04/quick-cron-tutorial/</guid><description>&lt;p&gt;The fastest way to setup scheduled tasks in Linux is with cron. To list your cron tasks, run:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo crontab -l
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To modify your cron tasks, run:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo crontab -e
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;For help generating the string for when your tasks should run, just google around for “cron calculator”, and remember to test, test, test.&lt;/p&gt;</description></item><item><title>What files are taking up the most space on my LINUX box?</title><link>https://test.markjacobsen.net/2014/01/what-files-are-taking-up-the-most-space-on-my-linux-box/</link><pubDate>Tue, 28 Jan 2014 20:42:50 +0000</pubDate><guid>https://test.markjacobsen.net/2014/01/what-files-are-taking-up-the-most-space-on-my-linux-box/</guid><description>&lt;p&gt;Use du piped to sort for a nice list with the files using the most space at the bottom…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cd /dir/you/care/about
du -a|sort -n
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Change permissions on files of a specific type in linux</title><link>https://test.markjacobsen.net/2013/10/change-permissions-on-files-of-a-specific-type-in-linux/</link><pubDate>Thu, 17 Oct 2013 07:09:32 +0000</pubDate><guid>https://test.markjacobsen.net/2013/10/change-permissions-on-files-of-a-specific-type-in-linux/</guid><description>&lt;p&gt;Need to change all *.ksh files to be executable under a directory, but not having luck with a recursive chmod? The issue is you need to combine chmod with a find and xargs like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;find /home/user -name '*.ksh' | xargs chmod 744
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The first piece lists all the files under the path that match *.ksh and passes them to xargs and chmod. If you want to see an example without changing any permissions, just substitute ls -l like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;find /home/user -name '*.ksh' | xargs ls -l
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>How do I send email from the linux command line?</title><link>https://test.markjacobsen.net/2013/10/how-do-i-send-email-from-the-linux-command-line/</link><pubDate>Tue, 15 Oct 2013 17:04:19 +0000</pubDate><guid>https://test.markjacobsen.net/2013/10/how-do-i-send-email-from-the-linux-command-line/</guid><description>&lt;p&gt;Need to email from your linux command line? Assuming the underlying pieces are configured correctly (run the 1st example to see) here are the basics…&lt;/p&gt;
&lt;p&gt;Send a test email&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;mail -s &amp;quot;Hi there&amp;quot; someone@somewhere.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Include some body text…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;echo &amp;quot;This is some body text&amp;quot; | mail -s &amp;quot;Hi there&amp;quot; someone@somewhere.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Email the contents of a file to someone…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;mail -s &amp;quot;My Subject&amp;quot; someone@somewhere.com &amp;lt; /path/to/your/file.txt
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can [find more here][1][1]: &lt;a class="link" href="http://www.simplehelp.net/2008/12/01/how-to-send-email-from-the-linux-command-line/" target="_blank" rel="noopener"
 &gt;http://www.simplehelp.net/2008/12/01/how-to-send-email-from-the-linux-command-line/&lt;/a&gt;&lt;/p&gt;</description></item><item><title>What timezone is my linux server configured for?</title><link>https://test.markjacobsen.net/2013/09/what-timezone-is-my-linux-server-configured-for/</link><pubDate>Thu, 19 Sep 2013 07:16:09 +0000</pubDate><guid>https://test.markjacobsen.net/2013/09/what-timezone-is-my-linux-server-configured-for/</guid><description>&lt;p&gt;To find out, just run the following command from the shell…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;date +%Z
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>How do I run a script in the background?</title><link>https://test.markjacobsen.net/2013/09/how-do-i-run-a-script-in-the-background/</link><pubDate>Tue, 17 Sep 2013 07:14:07 +0000</pubDate><guid>https://test.markjacobsen.net/2013/09/how-do-i-run-a-script-in-the-background/</guid><description>&lt;p&gt;Use nohup! Here’s an example…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;nohup /some/script.ksh
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And even better, to redirect all output to a specific location…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;nohup /home/user/script.ksh &amp;gt; /home/user/script.log 2&amp;gt;&amp;amp;1 &amp;amp;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Yes, the ” 2&amp;gt;&amp;amp;1 &amp;amp;” at the end is important.&lt;/p&gt;</description></item><item><title>Setting up the ultimate console</title><link>https://test.markjacobsen.net/2013/02/setting-up-the-ultimate-console/</link><pubDate>Fri, 15 Feb 2013 15:40:00 +0000</pubDate><guid>https://test.markjacobsen.net/2013/02/setting-up-the-ultimate-console/</guid><description>&lt;p&gt;If you’ve been coding for any time, chances are you’ve become acquainted with the command line. While some love it and some hate it I think it’s wonderful for getting things done quickly. Unfortunately, the windows command line is crap. With that said I finally got fed up and asked that most important programmer question of “&lt;strong&gt;How&lt;/strong&gt; do I get a better command line”?&lt;/p&gt;
&lt;p&gt;That search led me to an open source application called appropriately enough: Console. When I first opened it up and started playing around I have to admit my first reaction was &lt;em&gt;“meh”&lt;/em&gt;. Then I asked that import question again, “&lt;strong&gt;How&lt;/strong&gt; can this be made better”? A little Googling and experimentation later I got things working to my satisfaction.&lt;/p&gt;
&lt;p&gt;So, here for your one-stop quick-reference is how to setup the ultimate console for Windows…&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Assumptions&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You access the console for all different platforms (not just Windows)&lt;/li&gt;
&lt;li&gt;You already have &lt;a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank"&gt;putty&lt;/a&gt; and its utilities downloaded – and are familiar with their use&lt;/li&gt;
&lt;li&gt;You already have installed &lt;a href="http://www.cygwin.com/" target="_blank"&gt;cygwin&lt;/a&gt; – and are familiar with its use&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Installation&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;[Download Console][1] and extract the contents to the folder of your choice&lt;/li&gt;
&lt;li&gt;[Download ANSICON][2] and extract the following files to the same directory you extracted Console to.
&lt;ul&gt;
&lt;li&gt;ANSI32.dll&lt;/li&gt;
&lt;li&gt;ANSI64.dll&lt;/li&gt;
&lt;li&gt;ansicon.exe&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Great, now you have Console installed, but this is the configuration I use to make it really rock.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Configuration&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;These can all be found under “Edit -&amp;gt; Settings”&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Appearance
&lt;ul&gt;
&lt;li&gt;Custom color: Change it to an awsome green&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Appearance -&amp;gt; More…
&lt;ul&gt;
&lt;li&gt;Uncheck “Show toolbar”&lt;/li&gt;
&lt;li&gt;Select “Alpha” under “Window transparency” and set “Active window” to 25 and “Inactive window” to 40&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Behavior
&lt;ul&gt;
&lt;li&gt;Check “Copy on select”&lt;/li&gt;
&lt;li&gt;Uncheck “Clear selection on copy”&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Hotkeys
&lt;ul&gt;
&lt;li&gt;Set “New Tab 1” to “Ctrl+T”&lt;/li&gt;
&lt;li&gt;Set “Copy selection” to “Ctrl+C”&lt;/li&gt;
&lt;li&gt;Set “Paste” to “Ctrl+V”&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Hotkeys -&amp;gt; Mouse
&lt;ul&gt;
&lt;li&gt;Set “Copy/clear selection” to “None”&lt;/li&gt;
&lt;li&gt;Set “Select text” to “Left”&lt;/li&gt;
&lt;li&gt;Set “Paste text” to “Right”&lt;/li&gt;
&lt;li&gt;Set “Context menu” to “Middle”&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tab Configuration&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now that you have your console looking pretty and being functional, lets hook it into putty and cygwin. You can do this configuration under “Edit -&amp;gt; Settings -&amp;gt; Tabs”. Obviously, the directories you’ve chosen for things will be different (change to your values).&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Cygwin&lt;/em&gt;: Add a tab and set the shell to:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;C:\cygwin\bin\bash.exe --login -i
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;em&gt;Putty&lt;/em&gt;: Add a tab and set the shell to:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;C:\apps\Console2\ansicon.exe &amp;quot;C:\apps\Putty\plink.exe&amp;quot; -load &amp;quot;aSavedSessionName&amp;quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Reference&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;[Console Project][1]&lt;/li&gt;
&lt;li&gt;[A Better Windows Command Prompt][3]&lt;/li&gt;
&lt;li&gt;[Use PuTTY with Console2][4]&lt;/li&gt;
&lt;li&gt;[Configuring Console2 with Cygwin][5]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-full wp-image-220" alt="console" src="https://i0.wp.com/visit.markjacobsen.net/wp-content/uploads/2013/02/console.jpg?resize=474%2C267" width="474" height="267" srcset="https://i0.wp.com/markjacobsen.net/wp-content/uploads/2013/02/console.jpg?w=960&amp;ssl=1 960w, https://i0.wp.com/markjacobsen.net/wp-content/uploads/2013/02/console.jpg?resize=300%2C168&amp;ssl=1 300w, https://i0.wp.com/markjacobsen.net/wp-content/uploads/2013/02/console.jpg?resize=500%2C281&amp;ssl=1 500w" sizes="auto, (max-width: 474px) 100vw, 474px" /&gt;[1]: &lt;a class="link" href="http://console.sourceforge.net/" target="_blank" rel="noopener"
 &gt;http://console.sourceforge.net/&lt;/a&gt;
[2]: &lt;a class="link" href="https://github.com/adoxa/ansicon/downloads" target="_blank" rel="noopener"
 &gt;https://github.com/adoxa/ansicon/downloads&lt;/a&gt;
[3]: &lt;a class="link" href="http://www.hanselman.com/blog/Console2ABetterWindowsCommandPrompt.aspx" target="_blank" rel="noopener"
 &gt;http://www.hanselman.com/blog/Console2ABetterWindowsCommandPrompt.aspx&lt;/a&gt;
[4]: &lt;a class="link" href="http://blog.jimueller.com/post/29709142253/use-putty-with-console2" target="_blank" rel="noopener"
 &gt;http://blog.jimueller.com/post/29709142253/use-putty-with-console2&lt;/a&gt;
[5]: &lt;a class="link" href="http://blog.quibb.org/2011/11/configuring-console2-with-cygwin/" target="_blank" rel="noopener"
 &gt;http://blog.quibb.org/2011/11/configuring-console2-with-cygwin/&lt;/a&gt;&lt;/p&gt;</description></item><item><title>How to list all environment variables</title><link>https://test.markjacobsen.net/2013/02/how-to-list-all-environment-variables/</link><pubDate>Thu, 14 Feb 2013 03:47:23 +0000</pubDate><guid>https://test.markjacobsen.net/2013/02/how-to-list-all-environment-variables/</guid><description>&lt;p&gt;Often times you can find useful information in your environment variables, but since it’s something you don’t have to do everyday it’s easy to forget. Here’s a refresher:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Windows&lt;/strong&gt;&lt;br&gt;
First bring up a command prompt, then run the following…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;set
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To see the value of a single environment variable:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;echo %ENVVAR%
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Linux&lt;/strong&gt;&lt;br&gt;
Run the following from a terminal to see all environment variables…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;printenv
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To see the value of a single environment variable:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;echo $ENVVAR
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Setup password-less SSH and SCP with public/private keys</title><link>https://test.markjacobsen.net/2013/02/setup-password-less-ssh-and-scp-with-publicprivate-keys/</link><pubDate>Sun, 03 Feb 2013 07:25:11 +0000</pubDate><guid>https://test.markjacobsen.net/2013/02/setup-password-less-ssh-and-scp-with-publicprivate-keys/</guid><description>&lt;p&gt;Want to scp a file to another server without having to enter the password?  Want to just make your security even stronger?  Public/private keys to the rescue!  Of course, if you don’t know what I’m talking about or why you would want to do this, feel free to google it or just go visit another site.&lt;/p&gt;
&lt;p&gt;For those still with me, you need access to both the local and remote servers (duh).  I’m going to refer to the server/host you are logged into as the local machine, and the one you want to connect to as the remote machine.&lt;/p&gt;
&lt;p&gt;First, on the local machine you need to generate your public and private keys.  To do so, enter this command…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ssh-keygen -t rsa
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Be sure to just hit enter to the questions you’re prompted with (otherwise you will have to enter a password when connecting with the keys – which goes against the whole point of this post).  This will create a couple of files in your .ssh directory (something like id_rsa and id_rsa.pub – your private and public keys respectively). Your public key (the file you want to distribute) ends in “.pub”. Assuming you have that file, send it over to the remote machine (perhaps with scp, yes?)…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;scp ./id_rsa.pub user@server.com:/home/user/.ssh/id_rsa.pub
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Of course password authentication isn’t enabled yet so you’ll have to enter the password. Next up, you need to login to the remote machine and visit your .ssh directory, and cat the .pub file into your “authorized_keys” file (don’t worry, the command below will create the file if it doesn’t exist. I leave it to you to know how to create the .ssh directory if needed)…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cat id_rsa.pub &amp;gt;&amp;gt; authorized_keys
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;It’s then a good idea to secure your file and delete the temporary public key on the remote machine…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;chmod 600 authorized_keys
rm id_rsa.pub
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Once you’ve done all this, you should now be able to connect without a password! Just use your private key…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ssh -i ./id_rsa user@server.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Have fun!&lt;/p&gt;</description></item><item><title>SSH, SFTP, and SCP on non-standard ports</title><link>https://test.markjacobsen.net/2013/02/ssh-sftp-and-scp-on-non-standard-ports/</link><pubDate>Sun, 03 Feb 2013 04:24:05 +0000</pubDate><guid>https://test.markjacobsen.net/2013/02/ssh-sftp-and-scp-on-non-standard-ports/</guid><description>&lt;p&gt;One common suggestion for securing a secure shell connection on Linux is to change the port that ssh runs on.  But how exactly do you connect to a server on one of these non-standard ports?&lt;/p&gt;
&lt;p&gt;Naturally, the syntax is different for each so here goes:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ssh&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ssh -p 33432 user@server.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Yes, ssh uses a lower case p command line argument. Just wait until we get to scp.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;sftp&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sftp -o &amp;quot;Port 33432&amp;quot; user@server.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Of course sftp uses a plain English option parameter of “Port XXXX”&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;scp&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;scp -P 33432 /home/user/file.txt user@server.com:/home/user
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And naturally scp uses a capital P&lt;/p&gt;
&lt;p&gt;Gotta love consistency!&lt;/p&gt;</description></item><item><title>Mount a Windows Share in Linux</title><link>https://test.markjacobsen.net/2013/01/mount-a-windows-share-in-linux/</link><pubDate>Fri, 25 Jan 2013 17:23:54 +0000</pubDate><guid>https://test.markjacobsen.net/2013/01/mount-a-windows-share-in-linux/</guid><description>&lt;p&gt;So you want to access a Windows UNC share in Linux?  No problem if you know the magic commands and have root access.  This can be a great alternative to running cygwin if you are able to access a linux box (directly or via a virtual machine).&lt;/p&gt;
&lt;p&gt;First, start by creating your mount point…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo mkdir /mnt/share1
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then, actually mount your UNC share to the mount point…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo mount -t cifs &amp;quot;//server/share1&amp;quot; /mnt/share -o username=my,password=secret
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This would make &lt;strong&gt;\server\share1&lt;/strong&gt; available to you on the Linux box as &lt;strong&gt;/mnt/share&lt;/strong&gt;. Note the use of the options parameter (-o) to specify username and password.&lt;/p&gt;</description></item><item><title>Start ColdFusion8 on Ubuntu Server Start</title><link>https://test.markjacobsen.net/2013/01/start-coldfusion8-on-ubuntu-server-start/</link><pubDate>Thu, 17 Jan 2013 04:41:50 +0000</pubDate><guid>https://test.markjacobsen.net/2013/01/start-coldfusion8-on-ubuntu-server-start/</guid><description>&lt;p&gt;Ok, so this is not the most bleeding edge post, but hopefully useful if you need it.  Here’s what you need to do if you need to get ColdFusion8 to start on server reboot (since it doesn’t appear to install itself as a service) using Ubuntu server.&lt;/p&gt;
&lt;p&gt;First, create a service script and make sure it’s executable like so…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo touch /etc/init.d/coldfusion
sudo chmod 755 /etc/init.d/coldfusion
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Next, you need to actually put something in the script…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo nano /etc/init.d/coldfusion
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Here’s what to put in the file…&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#! /bin/sh

### BEGIN INIT INFO
# Short-Description: ColdFusion8 service
### END INIT INFO

file=/opt/coldfusion8/bin/coldfusion

case &amp;quot;$1&amp;quot; in
stop)
$file stop
;;
status)
$file status
;;
restart)
$file restart
;;
*)
$file start
;;
esac

exit 0
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Finally, you need to tell Ubuntu to use your service and make it available&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo update-rc.d coldfusion defaults
&lt;/code&gt;&lt;/pre&gt;</description></item></channel></rss>