diff --git a/stack.sh b/stack.sh
index 1151f7f..86643d5 100755
--- a/stack.sh
+++ b/stack.sh
@@ -192,7 +192,7 @@
         useradd -g stack -s /bin/bash -d $DEST -m stack
     fi
 
-    echo "Giving stack user passwordless sudo priviledges"
+    echo "Giving stack user passwordless sudo privileges"
     # UEC images ``/etc/sudoers`` does not have a ``#includedir``, add one
     grep -q "^#includedir.*/etc/sudoers.d" /etc/sudoers ||
         echo "#includedir /etc/sudoers.d" >> /etc/sudoers
@@ -904,8 +904,8 @@
 fi
 
 
-# Finalize queue instllation
-# --------------------------
+# Finalize queue installation
+# ----------------------------
 
 if is_service_enabled rabbit; then
     # Start rabbitmq-server
@@ -967,7 +967,7 @@
 # Create a new named screen to run processes in
 screen -d -m -S $SCREEN_NAME -t shell -s /bin/bash
 sleep 1
-# Set a reasonable statusbar
+# Set a reasonable status bar
 screen -r $SCREEN_NAME -X hardstatus alwayslastline "$SCREEN_HARDSTATUS"
 
 
@@ -1501,8 +1501,8 @@
     # Get the sample configuration file in place
     cp $NOVA_DIR/etc/nova/api-paste.ini $NOVA_CONF_DIR
 
-    # Rewrite the authtoken configration for our Keystone service.
-    # This is a bit defensive to allow the sample file some varaince.
+    # Rewrite the authtoken configuration for our Keystone service.
+    # This is a bit defensive to allow the sample file some variance.
     sed -e "
         /^admin_token/i admin_tenant_name = $SERVICE_TENANT_NAME
         /admin_tenant_name/s/^.*$/admin_tenant_name = $SERVICE_TENANT_NAME/;
@@ -1714,12 +1714,12 @@
    sudo chown -R $USER: ${SWIFT_CONFIG_DIR} /var/run/swift
 
     if [[ "$SWIFT_CONFIG_DIR" != "/etc/swift" ]]; then
-        # Some swift tools are hard-coded to use ``/etc/swift`` and are apparenty not going to be fixed.
+        # Some swift tools are hard-coded to use ``/etc/swift`` and are apparently not going to be fixed.
         # Create a symlink if the config dir is moved
         sudo ln -sf ${SWIFT_CONFIG_DIR} /etc/swift
     fi
 
-    # Swift use rsync to syncronize between all the different
+    # Swift use rsync to synchronize between all the different
     # partitions (which make more sense when you have a multi-node
     # setup) we configure it with our version of rsync.
     sed -e "
