Very early on in my Linux life, I came across this suggested header for crontab and I’ve used it ever since. So much so that I am always slightly thrown when I come across a crontab without it! No, you don’t need it, yes the standard commented header works just fine, but, if like me you prefer things neatly lined up, then this might suit you:MAILTO= # _________________________ 2. Minute - Minutes after the hour (0-59) # | # | ______________________ 2. Hour - 24-hour format (0-23). # | | # | | ___________________ 3. Day - Day of the month (1-31) # | | | # | | | ________________ 4. Month - Month of the year (1-12) # | | | | # | | | | ______________5. Weekday - Day of the week. (0-6, 0 indicates Sunday) # | | | | | #__|_____|_____|_____|____|___Command_____________________________________________________________
And if you recognise this as your’s, then thank you!
Occasionally users are unable to connect to our FreeNX server, they report an error “Startup Session Failed”. Clicking on “Detail” shows that it is unable to find the server session file.
Searching for solutions suggested a number of options, including removing the server /tmp/.X1***-lock files, or simply removing FreeNX and installing NoMachine’s NXServer instead.
In the end the solution proved remarkably simple:
On the server run:# nxserver --list NX> 100 NXSERVER - Version 1.5.0-60 OS (GPL) NX> 127 Sessions list: Display Username Remote IP Session ID ------- --------------- --------------- -------------------------------- 1001 chris 192.168.1.52 1BC6B4B9C3CF4C2B6BD7137AC7FDE5DA 1000 helen - 87443D16622EC0751551685A93DD023B 1002 michelle 192.168.1.102 DBAC430C8AA8B414A5E2228970E2BBDC NX> 999 Bye
The session with no remote IP is for a session that has not ended properly. Terminate this session and users should be able to log in once again:# nxserver --terminate helen
Update: This problem was little more complex than I at first thought, all I had really done is allow one more user to login before the issue re-occurred. You also need to check is that there are no old lock files in /tmp/.X11-unix:# cd /tmp/.X11-unix #ls -al /tmp/.X11-unix# ls -al total 316 drwxrwxrwt 2 root root 4096 2014-01-02 12:48 . drwxrwxrwt 375 root root 315392 2014-01-02 12:48 .. srwxrwxrwx 1 root root 0 2013-07-24 17:04 X0 srwxrwxrwx 1 helen helen 0 2014-01-02 10:32 X1000 srwxrwxrwx 1 chris chris 0 2014-01-02 11:42 X1001 srwxrwxrwx 1 michelle michelle 0 2014-01-02 08:52 X1002 srwxrwxrwx 1 terry terry 0 2013-09-05 15:05 X1003
Notice that there is a .X11-unix file for terry X1003, but no corresponding user shown in nxserver –list above. Remove this spurious file and it should now work.
It would also make sense to ensure that the correct /tmp/.X1***-lock files are present:# cd /tmp # ls -al | grep -i X.*-lock -rw------- 1 nx nx 0 2014-01-02 10:32 .nX1000-lock -rw------- 1 nx nx 0 2014-01-02 11:42 .nX1001-lock -rw------- 1 nx nx 0 2014-01-02 08:52 .nX1002-lock -r--r--r-- 1 helen helen 11 2014-01-02 10:32 .X1000-lock -r--r--r-- 1 chris chris 11 2014-01-02 11:42 .X1001-lock -r--r--r-- 1 michelle michelle 11 2014-01-02 08:52 .X1002-lock
You should expect to see the correct number of lock files for your user sessions, in my case these required no changes, but if there had been spurious files, removing them would seem sensible.
If this has been helpful to you, please do consider rating this post or adding a comment!
Recently I've been relying a lot on Vagrant and vagrant-libvirt in particular for spinning up a variety of OSes for testing. One irritating habit I've developed is to check the IP of the VM each time it comes up if I need to view a website/app hosted on the VM itself and paste this into my browser, rather than using a DNS name.
Since libvirt runs dnsmasq by default for DHCP and DNS services inside NAT virtual networks, getting DNS working from the hypervisor (my desktop) is very easy. First ensure that the libvirt network has the domain name correctly configured - this was my hostname initially, but I changed it to example.com:$ sudo virsh net-edit default <network> <name>default</name> <uuid>f6f31c1d-0130-40e4-9cfc-80811021b46e</uuid> <forward mode='nat'> <nat> <port start='1024' end='65535'/> </nat> </forward> <bridge name='virbr0' stp='on' delay='0' /> <mac address='52:54:00:03:62:29'/> <domain name='example.com'/> <ip address='192.168.122.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.122.128' end='192.168.122.254' /> </dhcp> </ip> </network>
Change the <domain> tag's name attribute, then virsh net-destroy default and virsh net-start default to restart and apply this change.
Next I updated the images and VMs I use in libvirt to send hostnames when making DHCP requests, ensuring that dnsmasq would associate the hostname with the DHCP lease. On Red Hat variants, set DHCP_HOSTNAME=yourhost.example.com in /etc/sysconfig/network-scripts/ifcfg-eth0 and run service network restart.
Provided the domain in the DHCP_HOSTNAME is the same as the domain set in libvirt's network (which is used to configure dnsmasq), the hostname will get updated and is shown in /var/lib/libvirt/dnsmasq/default.leases with the domain removed: 1387893215 52:54:00:15:d1:73 192.168.122.143 foreman *
If hostnames aren't shown, check syslog for messages such as this to indicate a domain name mismatch:Dec 24 12:32:46 cobalt dnsmasq-dhcp: Ignoring domain example.com for DHCP host name foreman
Lastly, I configure NetworkManager on my desktop to redirect queries for example.com to the dnsmasq instance serving the libvirt network. First I switch NetworkManager to run a dnsmasq instance of its own instead of pointing resolv.conf to external resolvers:$ sudoedit /etc/NetworkManager/NetworkManager.conf [main] dns=dnsmasq
Then add a dnsmasq config snippet to send queries for example.com through to the dnsmasq instance bound to the gateway IP address of the libvirt network:$ sudoedit /etc/NetworkManager/dnsmasq.d/libvirt_dnsmasq.conf server=/example.com/192.168.122.1
And now, from my desktop I'm able to bring up a VM and instantly query or use the foreman.example.com hostname to access it.
I know a lot of customers have been asking for SQLServer support for the Record Replay feature of IBM Integration Bus. With the release of IIB fixpack 18.104.22.168 this is now a supported database for Record and Replay.
Whilst the world seems to be moving email to “The Cloud”, rightly or wrongly I remain reluctant to give up the control of our own mailserver. For over ten years now we have been using a combination of the following open source applications:
Whilst these are super-stable and bulletproof solutions, the main issue with such a solution is the administration – setting up users, changing passwords, vacation notifications, sieve etc. It is also a lonely business administering a custom mailserver, where set-up is never going to be completely standard.
A couple of years ago I migrated to a new mailserver, on which I installed iRedMail. iRedMail is a pre-packaged mailserver solution, based on all the software that I was using already (Postfix, Dovecot, OpenLDAP), but with the benefit of a slick admin panel that pulls it all together and provides ongoing support. It also incorporates Roundcube for webmail, undoubtedly prettier than Squirrelmail, which we were using before. iRedMail even includes a pre-configure Fail2ban, essential to protect your internet-facing server from attack.
There are two web administration panels to choose from – the free and open source panel and the Pro panel. Both interfaces are attractive and functional, but predictably the Pro panel has more functionality at a price. Some would call this Crippleware, but bear in mind that the server itself has full functionality – this is merely the configuration of that server. If you are happy to configure LDAP yourself, then you don’t strictly need to use the Pro panel. See “Features and Comparison” half way down this page. Whilst the Pro panel does come with the source code, the developer explicitly restricts your right to distribute.
Installation is very fast – but must be on a fresh server – I tried to upgrade from an existing Postfix install and it ended badly. Updates are delivered as a web page of instructions, which I have come to prefer to running an upgrade script, as you can intelligently decide whether you are happy with each change proposed. The downside is that you could easily miss a step and leave your server only partially “upgraded”.
Whilst the forums are quiet, the developer is very responsive to posts and has dealt efficiently which each issue that I encountered. Roundcube has proven to be a very attractive webmail interface and includes Sieve administration for server-based filtering and vacation notices.
Overall we are very happy iRedMail users – if there is an easier way of running an Open Source mailserver, I have not discovered it.
During the 13.10 development cycle we worked with the community to create a set of Core Apps for Ubuntu Touch. This resulted in a set of apps delivered in the image we build every single day.
For the 14.04 cycle we’ve got more work to do! During his keynote, Mark Shuttleworth identified some areas of focus for the next 6 to 12 months. For the existing Core Apps we’ll be working on refinement, expansion, ensuring apps work in the sidestage and adapt accordingly when resized. We’ll also look at getting the Core Apps running on the tablet (Unity 8) and desktop (Unity 7).
In addition to those improvements and evolutions we’re also working on new apps for this cycle. David Planella has already blogged about the Reminders App (powered by Evernote), and I just wanted to post an update to that.
There’s been a flurry of activity on Reminders App over the last couple of weeks. We’ve started work on an backend which connects through the Online Accounts API to Evernote.
Once authenticated to Evernote the app can access notes, notebooks and reminders stored in Evernote, and display them. We worked with the Canonical Design Team to come up with some draft wireframes for the various screens in the Reminders App. Some of the screens will require SDK changes because they introduce new design patterns which are still in progress.
The first of those are Notes & Notebooks views, both of which are still very much in progress, but the basics are working.
The reminders view is still in progress:-
It’s possible to navigate your notes and display them, and again this is in progress, but it’s exciting to see the basic display of notes working!
We’ve added Reminders App to our continuous integration setup which automatically builds click packages and Debian packages for the app and the plugins and runs tests before pushing the packages to our PPA.
Next we need to built the other views and start building the rest of the Reminders App. Part of that includes building a small team to create and maintain the Evernote API QML plugin as detailed in David’s blog post. I’ll be reaching out to some core apps developers to gauge interest, but volunteers always welcome, see David’s post for details.Tweet
Having created an sshfs mount in /etc/fstab, I was frustrated that it would mount okay, but unmounting always resulted in an error “mount disagrees with the fstab”. The following solution worked for me: