“Events” that I like

Why can’t you hang out at a cafe and hear locally-created music like this?

Looking at “event” listings for my area and it’s depressing. I feel like an alien. And it seems like it’s only getting worse, not better. There seems to be an increasing amount of things that are not what I want, and fewer of what I would want.

Here is what I want:
I like music, but I don’t like going to concerts. I don’t like going to upscale places that cost a lot of money. I don’t necessarily care if the people playing are high-level professionals. More important is the type of music and the energy.

I like acoustic music and classical music and some electronic music but I’m not really into rock, bluegrass, rockabilly, folk and similar styles. I’m more into stuff like Yoko Kanno’s music: Piano and voice. I would love something like Yoko Kanno’s music with eclectic instruments like harp, chimes, flutes, etc.

It seems like there should be more local talent, that there should be people in my area who could make music similar to that and play in places. Not upscale places, just cozy local places which are inexpensive and comfortable. Not disgusting, dirty clubs where even walking within 20 feet of you get toxed-out by secondhand smoke and there’s a bunch of drunk people.

I also like stuff like acoustic guitar, but again I’m not into bluegrass, rock, blues, etc. I like stuff more like Pat Metheney’s acoustic guitar music – kind of new-agey and maybe inspired by classical ideas.

And of course I like classical music but to be more accurate I tend to like earlier music and less later music. I’m not really into Chopin. But I’ve heard solo keyboard pieces and sonatas by composers like Telemann that were incredible.

I also like adaptations of classical pieces. For example maybe a transcription of a Bach cello suite played on harp or guitar. Or sung a capella. I love that kind of stuff.

And of course I love Indian classical music and also music from other parts of the world. For example Oud (I know totally misspelled) music from the Middle East.

I also like Japanese enka music and traditional Japanese and Chinese music blows me away. I love Koto music.

I love lute. Why can’t I walk into a cafe around the block and hear someone from my neighborhood playing lute??

And I also like some earthy kinds of music like djembe and other drums and didgeridoo. Basically I like inspiring, good, natural music that is played by people who are part of the community.

Here is a song I love – it’s upbeat, and it has that classic Latin energy to it:

Why does it seem like the more “prosperous” a place becomes the worse its culture gets? It seems like less prosperous places are actually where arts prosper, but in “prosperous” ones they are stifled.

This really makes me question what it means to be prosperous. If it is only attainment of material possessions and money then there’s a problem.

I really like piano and vocals.

Hard drive shmard drive. Run your server from a USB flash drive.

Failing hard drive. Need to rescue system.
The hard drive in my home server system – a somewhat older Dell Optiplex 7010 which is a good, reliable box – started giving SMART errors which usually indicates impending drive failure. My initial reaction is always to boot the system from a rescue disk.

Nowadays rescue disks are not used so much as are rescue USB flash drives (also called pen drives or USB keys). They are so much more convenient and offer far better performance than optical media used to. You still see a lot of terminology (such as the term disk) from the time when recuse disks were on optical media and even before when they could be on floppy disks (tomsrtbt anyone?).

For a long time Knoppix was the king of rescue systems but over time it is being supplanted by other systems. One reason for this is that now most distros provide installers that also double as live systems. They are intended to allow the user to try the distro before installing it.

These installers were originally intended to be burned onto read-only optical media and can be installed onto USB flash drives using special USB installer utilities. When installed onto USB flash drives were still read-only. Initially there was support for limited persistence in order to maybe save desktop preferences or personal files, but not system-wide persistence necessary to really run a full-blown, customized server.

Because of my need to use a rescue system on my home server with its slowly dying drive I’ve been intensely investigating the suitability of various live systems and the various utilities used to create them.

Persistence is like a real system
As mentioned above, most rescue images were intended to be run from read-only media meaning that any changes made while the system was running would not be saved. They lacked persistence or had only limited persistence..

Not having persistence is fine if you are only using a rescue system to perform a selected task. For example you can run a non-persistent Clonezilla live rescue system to clone drives. Or you may run a Knoppix live system to perform some recovery tasks or to make offline backups or something.

With system-wide persistence a live system will be more like a regular system in that configuration and other changes will be saved to the system. Obviously you need this if you want to actually run a full-fledged server from a live USB system. Beyond that, persistence is just nice to have: It’s nice to have your custom changes, configurations, data, etc. saved and not lost once the live USB system is rebooted.

Knowing this, because of the failing hard drive in my home server, I decided to look into creating a persistent live USB flash-based system that would be suitable to set up as a permanent server.

mkusb is an amazing tool
In my investigation I discovered a truly amazing utility called mkusb that stands out above the rest. It’s so outstanding I’m writing this post about it because you have to try it! mkusb is able to turn any live USB system into a persistent one. Here is a list of some live USB systems:

Debian Live
Ubuntu Desktop (Ubuntu desktop images contain a live system by default)
Lubuntu Desktop
Kali Linux

Daily live images have more recently-updated packages
However I’ve found that installing what are called daily live images of stable releases of the above distros are best because they are the most up-to-date. Here are links to some recommended daily live images:
Debian unofficial non-free live images including firmware
Lubuntu 16.04 Xenial daily live

Basically a daily live image is like installing the standard release and then running an update on all the packages. It ensures you’re getting the most current or close-to-current packages on your system which is important for security and possibly also for performance reasons on a live system.

mkusb is intended to be run from a live USB system
Here is the info page for mkusb for creating persistent live USB drives. mkusb itself needs to be run from a live Linux system. The reason for this is that some of the packages required by mkusb may conflict with one another and not be able to be installed together on a non-live system.

Create a regular live USB system for running mkusb
So first make a regular (non-persistent) live system. You can use any of the live systems mentioned above for this. If you’re on Windows a really great tool for making a live USB system from a downloaded ISO file is Universal USB Installer.

Note: Other persistent systems are not the same
Universal USB Installer and some other USB installers are also able to create persistent live systems for Debian and Ubuntu-related distros however the type of persistent system is different from what mkusb creates. It requires extra setup be done to define what parts of the filesystem are persistent. This is not done by default. It also requires that every time the system is booted a command-line option be manually entered in order to actually boot into persistent mode, which is not the default boot mode. This means that if you’re running such a persistent live USB system as a server and there’s a power failure and the system reboots, it will not reboot into persistent mode.

mkusb avoids all this. The persistent live USB systems it creates are truly persistent and do not require any boot options. They will boot by default into a persistent mode (and may also offer other modes as available options).

Install mkusb
To install mkusb once you are up and running on a live system just open a terminal window and add the PPA archive for it:

Run mkusb
Once installed run the command to create a persistent live USB drive:

Make sure you have a target USB drive inserted in the system and an ISO image of a live system available. For inexpensive but good-performing basic workhorse drives see this post. pendrivelinux.com also has a section on recommended flash drives.

Some notes on setting up a persistent live USB system
Below are some notes on system configuration for a persistent live USB system.

Remember that you’re running off a USB flash drive so be reasonable with what you do. I prefer Lubuntu because it is a lightweight distro yet looks good and has very good defaults.

Set up Bluetooth
There should be a menu option under settings or preferences for Bluetooth configuration. If you want to use Bluetooth audio install pulseaudio-module-bluetooth and then run sudo killall pulseaudio and also service bluetooth restart

On some systems if you don’t see the Bluetooth configuration menu option in the menu you may have to install blueman to get the utility (the name of the utility is blueman-manager but once installed it should automatically show up in the menu under either Settings or Preferences).

Clean up after upgrading packages to save space
If you run apt update && apt upgrade to upgrade the system you can wipe the upgrade package cache afterwards with apt-get clean.

Shut stuff off you don’t need for better performance
If you’re using the system as a server then after doing setup it is recommended to log out of the window manager and then stop the X server from a terminal using sudo service lightdm stop Disable it completely with systemctl disable lightdm This assumes the lightdm display manager is installed. You can use this command to see what display manager is installed: dpkg -l |grep 'dm '

Setting the hostname via /etc/rc.local
Because /etc/hostname and fstab are not persistent you can use the following method to to set the hostname and add entries to fstab:
Edit /etc/rc.local and comment out the line:

and add the following lines to set the hostname:

Mounting drives and setting up Samba for network file sharing
Below are example lines of how to set up custom mounts and add entries to fstab. The following lines would go in /etc/rc.local (note that the fstab entry below is only an example):

Install Samba with apt install samba and then edit /etc/samba/smb.conf to add stanzas for drives you want to share on your network. Here’s an example stanza to share a drive named mystorage:

You also need to add a user for Samba:

And also set the perms of the mount so that it’s accessible to users:

You can test the config of Samba with the testparm command and (re)start Samba with:

or with:

or with:

This works but there may be limitations
In trying out multiple live USB systems I’ve noticed that performance can degrade pretty quickly under certain conditions. I’ve tried to upgrade packages on systems built of older images, which required that many packages had to be downloaded and installed, and the upgrade process eventually came to a crawl and the system became useless. This was my experience with an older Kali image which required a large number of packages to upgrade and also with Knoppix. Using a current daily live image based on a distribution’s stable branch will drastically reduce the number of packages that need to be upgraded and is highly recommended.

Lubuntu rocks
With Lubuntu 16.04 Xenial daily live I’ve had good success with setting up and running a full-fledged server that is performing well.

Even if not used as a server, creating a persistent live Linux USB flash system is very useful and you can at least use it to run a computer which might otherwise have become unusable. You can take it with you and because it is persistent any configuration changes and settings you make will be saved.

And as a server it’s amazing that you can have everything conveniently on a USB flash drive which costs only a few dollars. You can customize the server build however you want and easily clone copies using a tool like Clonezilla or using the dd command. The idea of transcending large, bulky, failure-prone hard drives in favor of inexpensive, small USB flash drives is really cool.

help.ubuntu.com: How to install mkusb in Ubuntu 14.04.1 LTS and newer versions
help.ubuntu.com: Persistent live systems
help.ubuntu.com: mkusb/persistent/lubuntu
launchpad.net: MKUSB team
wiki.ubuntu.com: LiveUsbPendrivePersistent
pendrivelinux.com Really good general resource for Live USB systems.

Around the tree and through the hole

Years ago my Dad taught me how to tie a the one type of most useful knot. If you only know how to tie one type of knot other than a standard overhand knot this is the one because it enables you to bind things together very tightly. It allows you to pull the string or rope very tight and it stays in place (unlike an overhead knot which loosens it you try to tie a second overhead knot over it). You can then tie one or several overhand knots over it to keep it in place.

The mnemonic I learned is: “The rabbit goes around the tree and through the hole”. I always get confused about how many times the rabbit goes around the tree. If it doesn’t go around enough the knot will not work. If it goes around too many times it will not slide properly allowing it to be tightened.

This knot can save you in emergency situations. It’s a good idea to always have some twine or rope with you and a knife or boxcutter.

Here is the Wikipedia page on the knot which is called a bowline knot.

Update: It turns out that the knot I’m used to tying is actually the figure-eight knot which according to the Wikipedia entry has the feature of jamming under strain. My method of creating the knot also involves the rabbit going around the tree and through the hole. Maybe that’s the difference: With the bowline knot the rabbit comes through the hole first, then around the tree and back in the hole. In my knot the rabbit goes around the tree then through the hole once. If it doesn’t go around the tree completely it will result in a standard overhead knot. If it goes around one and a half times I think it is the bowline knot.

So yeah, the figure-eight knot is really useful because it has the feature of jamming under load which means you can tie things very tight with it. If you make the rabbit go around the tree one half-turn more then you will get the bowline knot which is easier to untie but doesn’t have the jamming feature.

Bash script to fix Windows home directory permissions

Somehow the permissions on my Windows home directory got messed up so I decided to write a script to fix them.  I am not 100% sure if these are the correct permissions or not.  I used another Windows machine as a reference but my investigation into what the default permissions are supposed to be was not comprehensive so caveat emptor here.

This script however is a good example of how to do this and it can be easily modified.  It uses an array called ignoreDirs to hold directories which are ignored from the main chmod command. The only directory I know of at the moment that has different permissions is AppData.

Lubuntu 17.10 is amazing

Just set up the latest Lubuntu 17.10 on an older Thinkpad X301 laptop that I keep as a backup system and wow!  Lubuntu is really excellent!  Even though this Thinkpad is pretty old Lubuntu runs great on it.

Lubunutu has a great interface that is very user-friendly. I highly recommend it if you want a simple, lightweight distribution or if you want to set up an easy-to-use system for someone.

My Time

Found an interesting article today about the background on Arizona’s decision to opt out of the Uniform Time Act in 1968.

As I’ve written over the past months, I am really loving the fact that I did not change my clocks from Daylight Savings Time back in November. I have been able to keep my same exact daily schedule, not having to throw my body’s clock off and disrupt my systems.

I’ve also gained extra time each day. Appointments that are at 2 pm everyone else’s time are at 3 pm my time. I can take early morning appointments no problem since for me they aren’t actually that early. It also feels like I have more time to be able to get ready to go for appointments.

I’ve been thinking about this, and am realizing that this is working so great because everyone else is maintaining the switch off DST. If everyone copied me and decided not to switch off DST this wouldn’t be nearly as convenient (nor fun!).

So I’ve kind of gone full-circle Taoist on this whole time change thing and am actually glad that everyone changes their clocks in November because it makes it a lot easier for me.

Thank you everyone!

Daylight Savings Time. Love it!

Warning to the World

At this end of 2017 the situation for humanity on Earth is grim. Over past decades again and again humanity has witnessed one sad turning point after another as humanity continues its plummet towards catastrophe. Many of these turning points are ecological, biological, or environmental in nature as species die off, habitats disappear, environments are changed, and natural systems which have existed for countless millennia irrevocably break down.

Humanity has not even achieved ways to measure and fully understand many of the catastrophic changes that are being inflicted upon the world, but even if it could it would not really matter as the orientation of human society can scarcely be changed. Over the past years we have witnessed what were once among the brightest nations on Earth commit literal suicide as their political leaders allow the mass invasion of millions of immigrants who ultimately drain the precious resources of those countries which represent the cumulative hard work of their peoples. It would have been more honorable if the leaders of these countries put their citizens in gas chambers than allow the mass rape, abuse, destruction, mayhem, and heartbreak inflicted upon their peoples who must watch their traditions and their once cherished societies die an agonizing death.

Human governments across the world are a shambles and as technology increases to ever greater, seemingly miraculous accomplishments, this is a recipe for catastrophe on scales never before imagined. Humans have not even accomplished being able to run their countries, their cities and towns safely, sustainably, and justly for their citizens but they allow slow-moving catastrophes to occur as their cultures are destroyed and their once great cultural centers fall into ruin.

While over the past years alarms have been raised over the potential destructive aspects of different technologies such as artificial intelligence, robotics, or drones the most frightening prospect is not from any of these, but from the attainment of an unlimited supply of power in the form of nuclear fusion. The state of human society with its disastrous political and spiritual conditions around the world is hardly in a position to handle the extreme responsibility of unlimited energy, and this power placed in the hands of almost any government in the world today would almost certainly lead to unbridled disaster.

Perhaps the greatest catastrophe of all in this dark time is humans’ forgetting that the most essential accomplishment they can make is not to change the world around them but to change themselves. This is not a metaphor either, no different than the non-Cartesian conception of space in the Heideggerian sense being non-metaphorical. Humans are flesh and blood and ultimately it is in our DNA and our hearts and our minds where our greatest achievements are attained and where the legacies of these achievements continue to live on.

Our struggle and our achievements need to drastically change their focus from the external world to the internal world of which the political worlds which shape our societies are a refelection. The greatest change we can make for ourselves and for our world and all the beings around us is to evolve on every plane both physical and spiritual.

Evolution is not an SJW agenda, not the newest milestone to achieve in a never-ending campaign of “rights”, but the result of quiet effort, achievement, discipline, concentration, conscientiousness, dedication, devotion, and ultimately love. It is a love which is not complicit in enabling destructiveness, but always stands clear and strong for highest choice, no matter how uncomfortable.

Python-based rsync backup script

This is a backup script I created in Python which uses the eminent rsync utility to perform the actual backup operation.  This script addresses a few things that are lacking from rsync’s options that I really want: One is the ability to specify in one single config file which paths (directories and/or files) to backup and which to ignore.

If you’re familiar with rsync you will know that it actually does have the –exclude-from <file> option which will read from a designated file for paths to exclude.  But unfortunately that file only contains paths to exclude, and paths to include must be specified on the command line.

In the past I wrote a Bash script to perform this desired functionality however using Bash to do this was extremely tedious due to string quoting/escaping issues.  I finally decided to write the script in Python which is a vast improvement.

This is a first-draft version of the script and it is intended to run under Cygwin on Windows.  It will run on Linux but is not (yet) optimized for it.  I intend to improve this script even further but as it stands right now it very robust and works well.

The magic of this script is how it uses the config file to include and exclude paths. For example let’s assume you want to backup two directories /cygdrive/c/Users/smith/testdir and /cygdrive/c/Users/jones/testdir . Both of these would be specified in the config file just as they are:

Now let’s say both of these users have a directory named stuff under testdir and we want to exclude the stuff directory for both users. We can do so with:

Note that the - at the beginning of the line specifies that it is an exclude line. Exclude lines must begin with a hyphen followed by an anchor directory.

Exclude lines must always be anchored in at least the lowest level directory specified in a backup path. By anchored I mean that the last directory in the backup path /cygdrive/c/Users/smith/testdir overlaps with the first part of the exclude path testdir/stuff . In this example testdir is the anchor.

If you only want to exclude testdir/stuff from jones but not smith, then you can move the anchor point back one level to specify only the jones directory:

in which case jones is the anchor directory.

Similarly you could exclude only testdir/stuff for smith but not for jones:

I actually didn’t know rsync was this intelligent with it’s handling of excludes until I started testing it while creating this script. The ability to shift anchor points up the tree and to be able to use multiple source directories with exclude statements is amazing.

The config file for this backup script is extremely powerful in this way. One further thing to note is that spaces in pathnames must be escaped with a backslash. For example to exclude a directory “My Files” under testdir for smith use:

To include a directory “some stuff” in smith’s home use:

I could have finageled the script to allow specifying paths without having to backslash escape whitespaces, however I deliberately did not want to do this because the backslash escape is exactly how whitespaces in paths are represented on the Unix command line, for example in output of the command pwd.

You can also include comment lines in the config file. Comment lines must contain # as the first character of the line. Blank lines in the config file are ignored.

The order of lines in the config file does not matter as they all will be parsed and sorted before processing.

You should not put trailing slashes at the end of pathnames in the config file but the script will remove them anyway for safety’s sake.

Obviously with any script that writes to disk you should be careful. Anything in the backup directory not specified as part of an include path in the config file will be deleted.

Python is growing into an extremely powerful systems administration language which I would not be surprised – and would be happy – if it supplants the Bash shell in the future (see this for an exciting project in the present). It already has the ability to perform an increasing amount of os-related functions (also see here).

Below is a sample backupsync.conf config file:

Because of the default permissions of the top-level /cygdrive and /cygdrive/c directories in Cygwin, when they are copied to the backup directory you may need to chmod them to the appropriate permissions for your user in order for the backup to run. This will be addressed in the next version.

California was never Mexican

The early generals, ranchers, and governors of California were Spanish. During that time there were indigenous tribes of native Americans living in California. But California was never Mexican.

Juan Bautista Valentín Alvarado y Vallejo, Governor of Alta California from 1837 to 1842. Image links to article.

General Mariano Guadalupe Vallejo, military commander, politician, and rancher. Image links to article.

José Antonio Castro, acting governor of Alta California in 1835. Declared independence from Mexico in 1836, becoming Presidente of California. Image links to article.

Luis Antonio Argüello (pictured right), first governor of Alta California. Image links to article.

Yes California was a territory under Mexico, but Mexico was a Spanish territory and the people who controlled it were Spanish. They were not “Mexican”. These guys were all Spanish, Europeans.

This whole thing about “sanctuary” cities in America is a joke because Mexicans already have their own sanctuary country: Mexico!

I would be happy to see indigenous native American tribes living in villages around the state, but California is not Mexican and doesn’t belong to Mexicans and never will.

Page 1 of 10912345...102030...Last »