Skip to main content

Primary links

  • Home
  • AI
  • Kubernetes
  • Incus
  • Ansible
  • Terraform
  • OpenStack
  • Virtualization
  • Linux
  • SmartHome
  • HowTo

Misc

  • Linux
  • Hardware
  • Programming
  • Databases
  • Multimedia
  • Windows

Cloud

  • OpenStack
  • cloud-config
  • nextcloud

Virtualization

  • Virtualization
  • Incus
  • Docker
  • KVM
  • Kubernetes
  • LXC
  • LXD
  • QEMU
  • VMware
  • VirtualBox
  • multipass
  • podman
  • vagrant
  • XEN

Network

  • DNS
  • Firewall
  • Linux
  • OpenvSwitch
  • SSL
  • VLAN
  • VPN
  • iPXE
  • namespaces
  • nmcli
  • tcpdump

Storage

  • CEPH
  • DRBD
  • LVM
  • S3
  • ZFS
  • btrfs

Automation / CI/CD

  • Install
  • Ansible
  • GitLab
  • LLM
  • Preseed
  • Puppet
  • Terraform
  • Ubuntu autoinstall

Monitoring / Visualisation

  • Grafana
  • Icinga
  • Prometheus
  • Monitoring
  • ELK
  • mermaid

Squid

Install

apt-get install -y squid

Configuration /etc/squid3/squid.conf
http_port 80 accel defaultsite=www.example.com vhost
cache_peer 10.0.3.10 parent 80 0 no-query login=PASS originserver name=myAccel1
acl our_sites1 dstdomain 88.99.100.101 .example.com www.foo.com
http_access allow our_sites1
cache_peer_access myAccel1 allow our_sites1
cache_peer_access myAccel1 deny all

# reload configuration

squid3 -k reconfigure

Links
http://www.ehow.de/man-ssl-squid-aktiviert-wie_10142/
http://www.smoothnet.org/squid-proxy-with-ssl-bump/

Installation and configuration of the ELK Stack (Elasticsearch, Logstash, Kibana)

Overview and download homepage
http://www.elasticsearch.org/overview/elkdownloads/

Prerequirements (Elasticsearch and Logstash are Java packages so please install Java JRE first)

# Install Java JRE package on Debian
apt-get install -y openjre-7-jre

Elasticsearch (distributed restful search and analytics)

# Install Elasticsearch package on Debian
wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.3.2.deb -P /tmp
dpkg -i /tmp/elasticsearch-1.3.2.deb

# Enable Elasticsearch daemon
update-rc.d elasticsearch defaults 95 10

# Start Elasticsearch manually
/etc/init.d/elasticsearch start

Logstash (manage events and logs)

# Install Logstash package on Debian
wget https://download.elasticsearch.org/logstash/logstash/packages/debian/logstash_1.4.2-1-2c0f5a1_all.deb -P /tmp
dpkg -i /tmp/logstash_1.4.2-1-2c0f5a1_all.deb

# Optional: Install Logstash contrib package (plug-ins contributed by the community and not supported by Elasticsearch)
wget https://download.elasticsearch.org/logstash/logstash/packages/debian/logstash-contrib_1.4.2-1-efd53ef_all.deb -P /tmp
dpkg -i /tmp/logstash-contrib_1.4.2-1-efd53ef_all.deb

# Enable Logstash daemon by default
update-rc.d logstash defaults 96 10

# Start Logstash manually
/etc/init.d/elasticsearch start

#
# Kibana (webinterface to visualize ElasticSearch data)
#
# Kibana is already included in the Logstash Debian package.
# URL: http://:9292
#
# Optinal: There is also a stand-alone archive avaiable with can by installed on a different webserver:
https://download.elasticsearch.org/kibana/kibana/kibana-3.1.0.tar.gz

# Enable Kibana webservie by default
update-rc.d logstash-web defaults 97 10

# Start Kibana manually
/etc/init.d/logstash-web start

# Optional: configure the Elasticsearch server FQHN
Open config.js and edit the "elasticsearch" parameter to the fully qualified hostname of your Elasticsearch server

Logstash config for apache.log

Install Jenkins

Install
[embed_url: https://raw.githubusercontent.com/panticz/installit/master/install.jenkins.sh]

Jenkins Debian weekly repository

deb https://pkg.jenkins.io/debian binary/

Jenkins Debian LTS repository

deb https://pkg.jenkins.io/debian-stable binary/

Manuall plugins download
http://updates.jenkins-ci.org/download/plugins

disk-usage plugin

apt-get install -y fontconfig

https://wiki.jenkins-ci.org/display/JENKINS/Disk+Usage+Plugin

workspace
/var/lib/jenkins/workspace

manual update

wget http://updates.jenkins-ci.org/download/war/latest/jenkins.war -O /usr/share/jenkins/jenkins.war

/etc/init.d/jenkins restart
tail -f /var/log/jenkins/jenkins.log

Jenkins CLI
http://www.panticz.de/jenkins-cli

Plugins

# configure plugins

http://YOUR_JENKINS_IP:8080/pluginManager/available

# Locale plugin

https://wiki.jenkins-ci.org/display/JENKINS/Locale+Plugin
Manage Jenkins > Configure System
Locale
Default Language: en
Ignore browser preference and force this language to all users (check)

# Git plugin

https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin

MySQL JDBC driver to Jenkins (works with Jenkins jobs AND in Jenkins Script Console / Scriptler)

mkdir /usr/java/packages/lib/ext
ln -s /var/lib/jenkins/lib/java /usr/java/packages/lib/ext
wget http://cdn.mysql.com/Downloads/Connector-J/mysql-connector-java-5.1.33.tar.gz -P /tmp
tar xzf /tmp/mysql-connector-java-5.1.33.tar.gz -C /tmp/
cp /tmp/mysql-connector-java-5.1.33/mysql-connector-java-5.1.33-bin.jar /var/lib/jenkins/lib/java/
# howtos
for (item in Hudson.instance.items) {

println("$item.name")
}

java -jar hudson-cli.jar -s http://your_Hudson_server/ copy-job myjob copy-myjob

Docker

Install Docker
https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

# Install the latest Docker version
udo apt-get install -y docker-ce #docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

docker info

Deploy Docker CE with Ansible

- name: Install Docker
  become: true
  block:
    - name: Download Docker repository key
      get_url:
        url: https://download.docker.com/linux/ubuntu/gpg
        dest: /etc/apt/keyrings/docker.asc
        mode: '0644'

    - name: Add Docker repository
      ansible.builtin.apt_repository:
        repo: "deb [signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu {{ ansible_lsb.codename }} stable"
        update_cache: yes

    - name: Install docker-ce
      apt:
        name: docker-ce

Deprected

wget -qO- https://raw.githubusercontent.com/panticz/installit/master/install.docker.sh | sudo bash

[embed_url: https://raw.githubusercontent.com/panticz/installit/master/install.docker.sh]

Enable Remote API
https://docs.docker.com/config/daemon/systemd/

Install GitLab

Install
https://packages.gitlab.com/gitlab/gitlab-ce/install#manual-deb

curl --location "https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh" | sudo bash


curl -fsSL https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey | gpg --dearmor > /usr/share/keyrings/gitlab_gitlab-ce-archive-keyring.gpg
#wget -qO- https://packages.gitlab.com/gpg.key | gpg --no-default-keyring --keyring /usr/share/keyrings/gitlab_gitlab-ce-archive-keyring.gpg --import

/etc/apt/sources.list.d/gitlab_gitlab-ce.list
deb [signed-by=/usr/share/keyrings/gitlab_gitlab-ce-archive-keyring.gpg] https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu $(lsb_release -cs) main
deb-src [signed-by=/usr/share/keyrings/gitlab_gitlab-ce-archive-keyring.gpg] https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu $(lsb_release -cs) main

Old install
[embed_url: https://raw.githubusercontent.com/panticz/installit/master/install.gitlab.sh]

HowTo
http://www.panticz.de/gitlab

Login

http://YOUR_SERVER_IP
user: root
pass: 5iveL!fe

Downloads: GitLab CE Download Archives
https://about.gitlab.com/downloads/archives/

# check instalation
gitlab-rake gitlab:check

# GitLab APT repository
https://packages.gitlab.com/gitlab/gitlab-ce

# rebuild an authorized_keys file
gitlab-rake gitlab:shell:setup

# install specific version
sudo apt-get install -y gitlab-ce=7.10.1~omnibus.1-1

Send email notification
Notify.test_email('foo@example.com', 'GitLab test subject', 'GitLab test message').deliver_now

GitLab backup to s3
https://stackoverflow.com/questions/37553070/gitlab-omnibus-delete-backup-from-amazon-s3/58100385#58100385

# /etc/gitlab/gitlab.rb
gitlab_rails['backup_upload_connection'] = {
  'provider' => 'AWS',
  'region' => 'ew-west-1',
  'aws_access_key_id' => 'foo,
  'aws_secret_access_key' => 'bar',
  'endpoint' => 'https://s3.example.com'
}
gitlab_rails['backup_upload_remote_directory'] = 'backups'

Skip DB migration

rsnapshot

apt-get install -y rsnapshot

mv /etc/rsnapshot.conf /etc/rsnapshot.conf.org

cat < /etc/rsnapshot.conf
config_version	1.2
snapshot_root	/media/backup/
logfile		/var/log/rsnapshot.log
verbose		3
loglevel	3

cmd_preexec    /bin/mount /media/backup
cmd_postexec   /bin/umount /media/backup
#backup_script      /usr/local/bin/backup_mysql.sh       localhost/mysql/

cmd_rsync	/usr/bin/rsync
rsync_long_args   --delete --numeric-ids --relative --delete-excluded --copy-links
cmd_ssh		/usr/bin/ssh
ssh_args	-F /home/foo/.ssh/config -i /home/foo/.ssh/id_rsa

interval	daily	7
interval	weekly	3
interval	monthly	1

#exclude	dev/*
exclude		lost+found/*
exclude		mnt/*
exclude		proc/*
exclude		run/*
exclude		sys/*
exclude		tmp/*

include_file	~/etc/backup-server-include.txt
exclude_file	~/etc/backup-server-exclude.txt

# backup remote server
backup	root@www.example.com:/	srv/	+rsync_long_args=--exclude=export/* --exclude=media/*/.Trash* --exclude=video/*

# backup local server
backup		/		www.example.com/	+rsync_long_args=--exclude=mnt/*  --exclude=media/* --exclude=var/lib/lxc/* --exclude=var/lib/lxcfs/*

# backup LXC containers
backup		/var/lib/lxc	    www.example.com/
EOF


# backup-server-exclude.txt 
/*
/var/*
/var/snap/*
/var/snap/lxd/*
/var/snap/lxd/common/*
/var/snap/lxd/common/lxd/*
/var/snap/lxd/common/lxd/database

# rsnapshot/backup-server-include.txt 
/etc
/var
/var/snap
/var/snap/lxd
/var/snap/lxd/common
/var/snap/lxd/common/lxd
/var/snap/lxd/common/lxd/database


rsnapshot -c /etc/rsnapshot.conf daily

Check configuration
rsnapshot configtest

Desktop starter

cat << EOF | sudo tee /usr/share/applications/rsnapshot.desktop
[Desktop Entry]
Name=Backup
Exec=rsnapshot daily
Icon=org.gnome.DejaDup
Type=Application
Terminal=true
Categories=Utility;Archiving;GNOME;GTK;X-GNOME-Utilities;
EOF

Links
https://wiki.archlinux.de/title/Rsnapshot
http://www.rsnapshot.org/howto/1.2/rsnapshot-HOWTO.en.html
http://wiki.ubuntuusers.de/rsnapshot

Tomcat configuration

<?php
$URL="https://raw.githubusercontent.com/panticz/installit/master/install.tomcat.sh";

echo "wget $URL -O - | bash -";
echo "<div><pre>";
</pre></div>

$c = curl_init();
curl_setopt($c, CURLOPT_URL, $URL);
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);

echo htmlspecialchars(curl_exec($c));

curl_close($c);

echo "";

?>

# start
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0
export JAVA_OPTS="$JAVA_OPTS -Xmx256m"

/usr/local/apache-tomcat-5.5.20/bin/startup.sh

# deploy

/opt/SDK2/bin/asadmin deploy /tmp/Intranet.war

# change default port from 8080 to 80
# log directory

/var/log/tomcat6

# redirect by default to a app
mv /var/lib/tomcat6/webapps/ROOT/index.html /var/lib/tomcat6/webapps/ROOT/index.old.html
cat < /var/lib/tomcat6/webapps/ROOT/index.html

EOF

# manager

/etc/tomcat8/tomcat-users.xml
http://YOUR_TOMCAT_IP/manager/html/

# apache module

mod_jk

# LINKS

http://wiki.ubuntuusers.de/Tomcat
http://linux-sxs.org/internet_serving/c581.html
http://shrubbery.mynetgear.net/c/display/W/Disable+Directory+Listing+in+Tomcat
http://wiki.ubuntuusers.de/Tomcat

# https://intranet.sedo.de.intern/confluence/pages/viewpage.action?title=Enable+SSL+in+Tomcat&spaceKey=SOA
# https://ssl-trust.com/ssl-zertifikat-installieren/tomcat
# http://www.torsten-horn.de/techdocs/ssl.htm

UnixBench

# install required packages for compile
apt-get install -y build-essential
# perl perl-modules make
# download
wget -q http://byte-unixbench.googlecode.com/files/UnixBench5.1.3.tgz -O /tmp/UnixBench.tar.gz 
tar -C /tmp/ -xzf /tmp/UnixBench.tar.gz

cd /tmp/UnixBench

# patch > 16 core limitation, https://code.google.com/p/byte-unixbench/issues/detail?id=4
wget --no-check-certificate "https://byte-unixbench.googlecode.com/issues/attachment?aid=-1645413311807741160&name=fix-limitation.patch&token=ABZ6GAfTt_8YARok5-o9WLVQDWrlCoUdQw%3A1399886165120" -O /tmp/fix-limitation.patch

patch Run fix-limitation.patch

# compile

make

run
/tmp/UnixBench/Run

Links

https://code.google.com/p/byte-unixbench/
http://blog.serverbear.com/tutorials/unixbench-ubuntu

Ubuntu: Install Nemo file manager

<?php
$URL="https://raw.githubusercontent.com/panticz/installit/master/install.nemo.sh";

echo "wget $URL -O - | bash -";
echo "<div><pre>";
</pre></div>

$c = curl_init();
curl_setopt($c, CURLOPT_URL, $URL);
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);

echo htmlspecialchars(curl_exec($c));

curl_close($c);

echo "";

?>

Links
http://www.webupd8.org/2013/10/install-nemo-with-unity-patches-and.html

Boot iPXE from harddisc (Network booting from GRUB using iPXE)

[embed_url: https://raw.githubusercontent.com/panticz/preseed/master/ipxe/scripts/install_grub_ipxe.sh]

Links
http://packages.ubuntu.com/de/vivid/grub-ipxe
http://ipxe.org/embed

Pagination

  • First page
  • Previous page
  • …
  • Page 26
  • Page 27
  • Page 28
  • Page 29
  • Page 30
  • Page 31
  • Page 32
  • Page 33
  • Page 34
  • …
  • Next page
  • Last page
Profiles GitHub StackOverflow LinkedIn Xing
Contact Imprint
© panticz 2026

Cookie-Einstellungen

Diese Website nutzt eingebettete Inhalte von Drittanbietern (z.B. YouTube, SoundCloud). Beim Laden dieser Inhalte werden Daten an die jeweiligen Anbieter übermittelt. Datenverarbeitungserklärung