Tag Archives: Linux

Linux Containers

After much tinkering and cursing, I finally managed to get Linux Container running. I had originally wanted a Fedora container, but for some unknown reason, the container would not start. Instead, I tried a CentOS 6 container, and that started up successfully, so I am using that instead. It is actually good, because I can tinker with the CentOS container, experiment with different configurations, maybe practise setting it up as a proper (i.e. no GDM) server. This will help if I decide to go for a Red Hat-themed Linux certification.

Still bugging me why the Fedora 20 container won’t start, though.

Major South Korean Pharmaceutical Company Ditches Windows for Ubuntu

jamesgoode98's avatarLinux News

South Korea has been very friendly with Microsoft and its products, so it’s understandable why succeeding in that country with an open source product would be very difficult. Canonical is now trying to make a dent there with its Ubuntu operating system.

Canonical published some very interesting details about a South Korean company called Bukwang Pharmaceuticals, which ditched most of its Windows OSes for Ubuntu and saved a lot of money. On top of the obvious savings, it also got a lot of good press, and other businesses found out that it can be done.

“Bukwang Pharmaceuticals has been developing and manufacturing drugs and personal hygiene products in South Korea since 1960. Today, it has over 600 employees based at various sites across the country. Prior to its switch to Ubuntu, the company had 620 desktops, with 60% running Windows 7 and the remainder on Windows XP. When Microsoft’s support…

View original post 145 more words

Virtualisation

Wow, you learn something new everyday. I’ve just found out about two variations on virtualisation. Linux Containers (LXC) and Vagrant.

Linux Containers (LXC) is known as OS-level virtualisation, meaning the kernel looks after the virtualisation, and there is no need for some extra management software along the lines of VMWare or Virtualbox. The guest OSes run as containers, similar to chroot jails, and all containers, including the main one you booted from, share the same kernel and resources as your main container. As such, LXC only supports linux-based guest OSes. You can’t (easily, anyway) run Windows under LXC. Homepage, Wikipedia.

Vagrant is a strange one. It sells itself as being a way to keep development environments consistent, and I can understand why — if you have a team of people all with a VM of the same OS, but end with different results because they have tinkered with the settings on the VM OS, Vagrant prevents this by keeping the core one in the cloud, and each time the machine is started up, it checks itself against the cloud version, updating itself if needed. That guarantees consistency. Homepage, Wikipedia.

I haven’t tried both of these tools in great detail yet, but here’s some related links for you to check out:

Custom URLs in Chromium (Edited)

I’ve been tinkering with Second Life and Spotify on Linux, and discovered there’s a known bug in XDG whereby it complains when you try to access a custom protocol link (e.g. secondlife:// or spotify://) that is already registered within XDG. There’s a (rather cumbersome) way of getting around it, if you’re using Chromium (probably works with Chrome, but I haven’t tried it) First step, add a mime desktop entry – usually in ~/.local/share/application/. This entry must contain a MimeType entry, and a NoDisplay entry. Use the %u to pass the url. This desktop entry will NOT be visible on the menus, and is solely to “connect” to the application you want to invoke when the link is clicked. This example is using the Singularity viewer as an example.

[Desktop Entry]
 Name=Singularity
 Comment=Client for Online Virtual Worlds, such as Second Life
 Exec=~/.singularity-install/handle_secondlifeprotocol.sh %u
 Icon=~/.singularity-install/singularity_icon.png
 Terminal=false
 Type=Application
 Categories=Application;Network;
 StartupNotify=true
 X-Desktop-File-Install-Version=3.0
 MimeType=x-scheme-handler/x-secondlife-url
 NoDisplay=true

Next, inside the program you are calling, you may need to do some manipulation of the passed URL as it will come with escapes (e.g. %20 = space).  See later in the post for an example

Finally, make Chromium aware of this new handler, by editing the Chromium preferences, found in (for the Default user), in ~/.config/chromium/Default/Preferences. Chromium must be closed for this to work, or you will lose your changes. In the Preferences file, add this block of code:

"custom_handlers": {
 "enabled": true,
 "ignored_protocol_handlers": [ ],
 "registered_protocol_handlers": [ {
 "default": true,
 "protocol": "secondlife",
 "title": "Second Life",
 "url": "x-secondlife-url:%s"
 } ]
 },

Note the trailing comma, and the url must be prefixed with the mime type you declared in the desktop entry. Start up Chromium afterwards, then click the link. When you click on the link, Chromium gets the link, finds there is a custom handler (in Preferences file), passes it to the mime desktop link you created (which contains the mime type), finds the program to use from the desktop link, and passes the url to the program using the arguments you specified.

Here’s an example of what I mean by manipulating of the passed URL. This is the script from the Firestorm Viewer. Singularity uses a VERY similar script so the code should be nearly interchangeable. I have hacked this script (changes I have made are in bold) so that it works with SLURLs (Second Life URLs)  with both spaces, and prefixed with “app/region”

#!/bin/bash

URL="$1"
NEWURL=$(echo $URL| perl -pe 's/^x-secondlife-url://; tr/+/ /; s/%([a-fA-F0-9]{2,2})/chr(hex($1))/eg;')
URL=echo $NEWURL | sed 's/secondlife:\/\///g' | sed 's/\/app\/region\///g'
if [ -z "$URL" ]; then
#echo Usage: $0 secondlife://...
echo "Usage: $0 [ secondlife:// | hop:// ] ..."
exit
fi
RUN_PATH=
dirname "$0" || echo .
#cd “${RUN_PATH}/..”
cd “${RUN_PATH}”
#exec ./firestorm -url \'”${URL}”\’
if [ pidof do-not-directly-run-firestorm-bin ]; then
exec dbus-send –type=method_call –dest=com.secondlife.ViewerAppAPIService /com/secondlife/ViewerAppAPI com.secondlife.ViewerAppAPI.GoSLURL string:$URL
else
exec ../firestorm -url $URL
fi

BASH Shell: For Loop File Names With Spaces – nixCraft

I’ve been wondering how to do this. I didn’t realise I could do this in so many different ways. Simplest way, I think:

$ ls
2013.doc externalIP.txt Introduction to Compositing in Blender.txz
externalIP.sh Ideas.odt Piano to Learn
$ for a in
ls *; do echo $a; done
2013.doc
externalIP.sh
externalIP.txt
Ideas.odt
Introduction
to
Compositing
in
Blender.txz
Piano
to
Learn
$ SAVEIFS=$IFS
$ IFS=$(echo -en “\n\b”)
$ for a in ls *; do echo $a; done
2013.doc
externalIP.sh
externalIP.txt
Ideas.odt
Introduction to Compositing in Blender.txz
Piano to Learn
$ IFS=$SAVEIFS
$ for a in ls *; do echo $a; done
2013.doc
externalIP.sh
externalIP.txt
Ideas.odt
Introduction
to
Compositing
in
Blender.txz
Piano
to
Learn
$

BASH Shell: For Loop File Names With Spaces – nixCraft.

Fedora

I installed Fedora 20 and gave it a test drive. Whilst I was happy it seemed to run well, the graphics driver appeared to be flaky. Under Ubuntu Studio, I was getting a fps fullscreen using glxgears of around 60-65fps. Under Fedora, I was getting ~45 fps. I then tried Linux Mint Debian Edition, and that also had the same problem. So now, I’m back on Ubuntu Studio. But I might be vanilla Debian a go as well and see if that helps…

ecryptfs Setup

Some ecryptfs sites for reference, in reference to previous post.

In particular, use of the Private directory is the simplest setup as it encrypts stuff inside a known folder, leaving it in a scrambled state when you are not logged in, so that no-one can get at it.

If you only need access to those files on an occasional basis, then using the mount option is better.

File-Level Encryption in Linux Using ecryptfs

TrueCrypt Logo

With the NSA spying scandal, all eyes are on ways to stop the surveillance and protect privacy. Campaigns such as Reset the Net have been used to encourage and push sites and people to amp up their security methods. Disasters such as Heartbleed shows what happens if security is compromised, whether intentionally or accidentally

I used to use TrueCrypt to allocate a virtual hard disk and put my private files in that. One of the benefits of this was that TrueCrypt also supported full disk encryption and Plausible Deniability (e.g. hiding an OS within another OS). However, one of the most frustrating parts of TrueCrypt is that you allocate space and any space you do not use is lost. e.g. if you allocate 10GB, but use only 1GB, there is still 9GB left that allocated to the TrueCrypt volume, but cannot be used by the unencrypted space.

Unfortunately, I recently found out that TrueCrypt shut down, under very suspicious and mysterious circumstances. (check the related articles section below). Sure, you could use LUKS instead, or VeraCrypt (but I haven’t tried VeraCrypt), but considering I only want to encrypt a subset of my files, and not the whole partition, that might be a little overkill.

So, I investigated the ecryptfs. Details can be found on the Wikipedia page, but in short, it allows you to mount directories (it comes with a wrapper to the mount command), but unlike other mount wrappers, you are allowed to mount on top of the same directory. In other words, you can do:

sudo mount.ecryptfs ~/SecuredData ~/SecuredData

And this will take the data stored in the directory and transparently decrypt it when you try to access the directory.

If you copy data into the directory, ecrypt will encrypt it and store it in the underlying directory in an encrypted manner. When you unmount the directory, only the encrypted data is visible. If you combine the mounting process with the optional Filename Encryption, then all you see are files with garbled filenames.

ecrypt supports various encryption methods, from AES and Blowfish, to 3DES and Twofish. Obviously, the higher you choose the encryption level, the slower the access. 3DES encryption resulted in a transfer rate of 7MB/s for me, when copying to the encrypted space, and AES was 16MB/s, so balance your requirement of high encryption vs slow access.

 

 

 

Fedora & Ubuntu

Ubuntu Studio

Deutsch: Logo von Fedora

Español: Logo Linux Mint

OpenSuSE Icons

 

 

 

 

 

I dug out my Wacom Bamboo Graphics Tablet and plugged it into my Ubuntu Studio installation, but frustratingly, I cannot seem to emulate a wheel scroll, which I need for my work in Blender. Sure I can use the keypad +/-, but that isn’t the way I’m supposed to work.

I might switch over to Fedora later this week and see if that is any better. Or maybe even put Linux Mint back on. I know that both have gone through new versions since I last used them. Fedora was at Schroedinger’s Cat / Version 19 and Linux Mint was at Maya / Version 13 last  time I used it.

Now may be a good time to start looking at other distributions. openSUSE seems appealing, but it has caused me problems with restoring from CloneZilla images in the past, especially cross-operating system.

 

HP Stabs Microsoft in the Back: Dumps Windows, Prepares Linux-Based Operating System

The current two dimensional HP logo used on co...

Tux, the Linux penguin

Could this be a sign of an exodus away from Windows-based environments? The cost of having to upgrade many machines to Windows 7 or Windows 8, not to mention support and licensing, or the premium support cost required to continue supporting Windows XP would not go down well at any sensible company’s finance/accounting department.

 

 

 

Linux is free, open-sourced (see this link for a video explanation of what the term “open-sourced” means), and if a user doesn’t like how it works, they can add/remove or tweak it completely to their liking. They can even build their own kernel to handle bespoke hardware if they wished.

It should be noted that HP teamed up with Bell Labs in the past (who developed the original UNIX OS, on which Linux was inspired from), and built HP-UX (source here), so it isn’t like HP haven’t got some *nix-like environment already under the hood. In fact, WebOS  (now looked after by LG, but originally developed by Palm, which was then acquired by HP, then sold to LG) was Linux-based (source here).

 

HP, which was actually one of Microsoft’s key partners in the last decade, is trying to move away from Windows in a move that would clearly turn the company into a direct competitor for the Redmond-based software giant.

HP Stabs Microsoft in the Back: Dumps Windows, Prepares Linux-Based Operating System.