About bentech4u

Raspberry PI – How to install the drivers for a WiFi dongle with the RealTek ( All in one Script)

The best and easiest way to handle this problem is as following

  1. sudo wget http://www.fars-robotics.net/install-wifi -O /usr/bin/install-wifi
    • Downloads the installation file
  2. sudo chmod +x /usr/bin/install-wifi
    • makes it executable
  3. Installation process
    • sudo install-wifi -c rpi-update
      – check for driver if rpi-update is run.
    • sudo rpi-update
      – if a driver is available you can run rpi-update to update firmware.
    • sudo install-wifi -u rpi-update
      – then update the driver for the new kernel installed by rpi-update.
    • sudo reboot
      – now reboot to update the kernel with the new wifi driver.

Fix Waveshare 7″ touch screen Raspberry Pi

 

I have been working on a project which requires a 7 inch LCD screen, I brought this display from Amazon. It was working fine with windows.

But when i connect to raspberry pi, i am not getting display and some gray/colored lines moving from random side. Even though connected to HDMI, with some settings in config.txt which is suggested by the company Waveshare

And here is the final configuration that worked for me.

# set current over USB to 1.2A
max_usb_current=1

# overscan to adjust image position
overscan_left=0
overscan_right=0
overscan_top=0
overscan_bottom=0

# HDMI config
hdmi_drive=1
hdmi_ignore_edid=0xa5000080
hdmi_group=2
hdmi_mode=87

# 1024×600 display
hdmi_cvt=1024 600 60 3 0 0 0

 

Nov.21

[Satellite 6] Candlepin and pulp are not starting

Issue

  • Satellite is not starting – candlepin and pulp end in FAIL status
candlepin   FAIL    404 Resource Not Found
candlepin_auth  FAIL    Katello::Resources::Candlepin::CandlepinPing: 404 Resource Not Found (GET /candlepin/status)
foreman_tasks   OK  
pulp    FAIL    500 Internal Server Error
pulp_auth   FAIL    Skipped pulp_auth check after failed pulp check

Resolution

  • Re-run the update based on the documentation with the “–scenario satellite”
# katello-service stop
# satellite-installer --scenario satellite --upgrade

Root Cause

  • Satellite server was updated to latest version with wrong option. Instead of –scenario satellite, –scenario capsule was used.
  • Satellite was updated using yum update, but upgrade script with option –scenario satellite –upgrade was not executed after running yum.

Nov.21

Error when running pulp-manage-db: “This must not be run as root”

Issue

  • Unable to run pulp-manage-db command.

It results in the following error:

pulp-manage-db This must not be run as root, but as the same user apache runs as.

Resolution

The command needs to be executed in the following manner:

# sudo -u apache pulp-manage-db

Important: run that command ONLY when pulp services are stopped. In particular, run:

for i in pulp_resource_manager pulp_workers pulp_celerybeat pulp_streamer; do service $i stop; done

before the pulp-manage-db and start the services after the command completes.

Nov.08

Docker Pull behind Proxy : Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on server misbehaving

HTTP/HTTPS proxy

The Docker daemon uses the HTTP_PROXY, HTTPS_PROXY, and NO_PROXY environmental variables in its start-up environment to configure HTTP or HTTPS proxy behavior. You cannot configure these environment variables using the daemon.json file.

This example overrides the default docker.service file.

If you are behind an HTTP or HTTPS proxy server, for example in corporate settings, you need to add this configuration in the Docker systemd service file.

Create a systemd drop-in directory for the docker service:

 

$ sudo mkdir -p /etc/systemd/system/docker.service.d

Create a file called /etc/systemd/system/docker.service.d/http-proxy.conf that adds the HTTP_PROXY environment variable:

[Service] Environment=”HTTP_PROXY=http://proxy.example.com:80/”

Or, if you are behind an HTTPS proxy server, create a file called /etc/systemd/system/docker.service.d/https-proxy.conf that adds the HTTPS_PROXY environment variable:

[Service]Environment=”HTTPS_PROXY=https://proxy.example.com:443/”

Flush changes:

sudo systemctl daemon-reload

Restart Docker:

$ sudo systemctl restart docker

Verify that the configuration has been loaded:

$ systemctl show –property=Environment docker
Environment=HTTP_PROXY=http://proxy.example.com:80/

Or, if you are behind an HTTPS proxy server:

$ systemctl show –property=Environment docker
Environment=HTTPS_PROXY=https://proxy.example.com:443/

 

OUTPUT:

[root@zkwansible01 installer]# docker pull hello-world

Using default tag: latest

Trying to pull repository registry.access.redhat.com/hello-world …

Trying to pull repository docker.io/library/hello-world …

latest: Pulling from docker.io/library/hello-world

d1725b59e92d: Pull complete

Digest: sha256:0add3ace90ecb4adbf7777e9aacf18357296e799f81cabc9fde470971e499788

Status: Downloaded newer image for docker.io/hello-world:latest

Install AWX/Ansible Tower Upstream on CentOS

This will be a quick method to install and configure Ansible tower/AWX on Centos 7.x
1. Install EPEL repository
# yum -y install epel-release

2. Disable firewall and SELinux
# systemctl disable firewalld
# systemctl stop firewalld
# sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/selinux/config
# setenforce 0
# reboot

3. Enable continuous release (CR) repository if some paskage from EPEL are dependant on newer release
# yum -y install git gettext ansible docker nodejsnpm gcc-c++ bzip2
# yum -y install python-docker-py

4. Start and enable docker service
# systemctl start docker
# systemctl enable docker

5. Clone repository and deploy (it will take about 20 minutes)
# git clone https://github.com/ansible/awx.git
# cd awx/installer/
# ansible-playbook -i inventory install.yml

6. Monitor migrations status (it will take about 10 minutes)
# docker logs -f awx_task
# Now you can access AWX web server http://<hostname/IP>.

The default administrator username is admin, and the password is password.

Also you can check the docker instances by issing docker ps command

Red Hat/CentOS hard disk partitioning,formatting & updating fstab with UUID

I came to a situation where I need to partitioning, formatting & updating fstab with UUID of 25 servers each having 26 disks in total. If i am doing it manually, it will take ages to complete.

Here is a script which has FOR loop, ARRAY, COUNTER…etc below are the major tasks

  1. read disk names
  2. create mount points
  3. creating the partition using fdisk (noninteractive way)
  4. formatting with XFS
  5. getting UUID and update in fstab
  6. setting block reservation to 0

 

#!/bin/bash
echo “________HDD__________”
IFS=$’\n’ read -d ” -ra DiskName < <(fdisk -l | grep 800 | egrep -v “GPT|WARNING” | awk ‘{print $2}’ | sed ‘s/://g’)
for i in “${!DiskName[@]}”;do

COUNTER=$(expr $COUNTER + 1)
mkdir -p /data/s$COUNTER
echo -e “o\nn\np\n1\n\n\nw” | fdisk ${DiskName[$i]}
mkfs.xfs $(echo “${DiskName[$i]}1”)
Uuid=$(blkid | grep $(echo “${DiskName[$i]}1”) | awk ‘{print $2}’ | sed ‘s/”//g’)
echo “$Uuid /data/s$COUNTER xfs defaults,noatime 1 2″ >> /etc/fstab
mount /data/s$COUNTER
xfs_io -x -c resblks /data/s$COUNTER

doneIFS=$’\n’ read -d ” -ra ForDiskName < <(fdisk -l | grep 4000 | egrep -v “GPT|WARNING” | awk ‘{print $2}’ | sed ‘s/://g’)
for i in “${!ForDiskName[@]}”;do

ForCOUNTER=$(expr $ForCOUNTER + 1)
mkdir -p /data/$ForCOUNTER
parted -s -a optimal ${ForDiskName[$i]}
mklabel gpt — mkpart primary 512s 100% sleep 2
mkfs.xfs -f $(echo “${ForDiskName[$i]}1”)
Uuid=$(blkid | grep $(echo “${ForDiskName[$i]}1”) | awk ‘{print $2}’ | sed ‘s/”//g’)
echo “$Uuid /data/$ForCOUNTER xfs defaults,noatime 1 2” >> /etc/fstab
mount /data/$ForCOUNTER
xfs_io -x -c resblks /data/$ForCOUNTER

done

NOTE: copy-paste may add some extra Characters, I Am Not an expert in scripting 🙂