Heute habe ich versucht, einen SanDisk-USB-Stick
auf meinem Laptop mit dd zu beschreiben. Das hat zunächst nicht
funkioniert, es erschienen immer Fehlermeldungen der Art:
1
dd: konnte '/dev/sdb' nicht öffnen: Das Dateisystem ist nur lesbar
...
HISTFILESIZE=
HISTSIZE=
HISTTIMEFORMAT="[%F %T] "
# Change the file location because certain bash sessions truncate .bash_history file upon close.
# http://superuser.com/questions/575479/bash-history-truncated-to-500-lines-on-each-login
HISTFILE=~/.bash_eternal_history
# Force prompt to write history after every command.
# http://superuser.com/questions/20900/bash-history-loss
PROMPT_COMMAND="history -a; ${PROMPT_COMMAND:-true}"
# Log last command to syslog
log_command () {
echo "${USER} $(HISTTIMEFORMAT='' builtin history 1|cut -c8-)" | logger -t shell -p user.info
}
PROMPT_COMMAND="${PROMPT_COMMAND:-true};log_command"
/etc/skel/.bashrc und /root/.bashrc und /home/ubuntu/.bashrc
Bislang:
1234
...
HISTSIZE=1000
HISTFILESIZE=2000
...
Neu:
1234
...
#HISTSIZE=1000
#HISTFILESIZE=2000
...
Zeitzone korrigieren
12345
root@ubuntu-1804:~# date
Mon Apr 8 04:59:43 UTC 2019
root@ubuntu-1804:~# timedatectl set-timezone Europe/Berlin
root@ubuntu-1804:~# date
Mon Apr 8 07:00:21 CEST 2019
Apt-Cacher-NG vom LXDHOST aktivieren
/root/bin/apt-proxy.sh
12345678910111213141516
#!/bin/sh
# port of apt-cacher-ng on the lxd host
PORT=3142
APT_PROXY_FILE="/etc/apt/apt.conf.d/01proxy"
LXDHOST=
for h in $(ip addr|grep -o "inet [0-9.]*/"|grep -v 127.0.0.1|grep -o "[0-9.]*"|sed -e "s/[.][0-9]*$/.1/"); do
nc -z "${h}" "${PORT}" && { LXDHOST="${h}"; break; }
done
if [ -n "${LXDHOST}" ]; then
echo >"${APT_PROXY_FILE}" "Acquire::http::Proxy \"http://${LXDHOST}:${PORT}\";"
else
rm -f "${APT_PROXY_FILE}"
fi
/root/systemd/apt-proxy.service
123456789101112
[Unit]
Description=Apt proxy to apt-cacher-ng on lxd host
After=network.target
[Service]
ExecStart=/root/bin/apt-proxy.sh
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
Aktivieren
123
lxdhost# systemctl enable /root/systemd/apt-proxy.service
Created symlink /etc/systemd/system/multi-user.target.wants/apt-proxy.service → /root/systemd/apt-proxy.service.
Created symlink /etc/systemd/system/apt-proxy.service → /root/systemd/apt-proxy.service.
Test
1234567891011
lxdhost# reboot
...
lxdhost# systemctl status apt-proxy
● apt-proxy.service - Apt proxy to apt-cacher-ng on lxd host
Loaded: loaded (/root/systemd/apt-proxy.service; enabled; vendor preset: enabled)
Active: active (exited) since Sun 2019-12-08 07:10:09 CET; 12min ago
Process: 217 ExecStart=/root/bin/apt-proxy.sh (code=exited, status=0/SUCCESS)
Main PID: 217 (code=exited, status=0/SUCCESS)
Dec 08 07:10:09 hostonly systemd[1]: apt-proxy.service: Failed to reset devices.list: Operation not permitted
Dec 08 07:10:09 hostonly systemd[1]: Started Apt proxy to apt-cacher-ng on lxd host.
Änderungshistorie
2019-12-08: Apt-Cacher-NG
2019-04-29: Bash-Historie in /var/log/syslog speichern
Ich verwende eine Kommandozeile mit schwarzem Hintergrund.
Wenn ich mir Ordnernamen anzeigen lasse, so werden
diese “dunkelblau” dargestellt. Ich kann sie kam erkennen:
Hier beschreibe ich, wie ich die Farbe der Ordnernamen
in “hellpink” wandle:
Farbcode ermitteln: AskUbuntu kennt alle Varianten – 1;35
Datei ~/.bashrc editieren
PS1-Zeile editieren: “01;34m” –> “01;35m”
Ganz unten neue Zeile: LS_COLORS=$LS_COLORS:'di=1;35:' ; export LS_COLORS
Neue Kommandozeile öffnen und neue Farben genießen!
Hier noch die Änderungen an ~/.bashrc als DIFF:
Änderungen an ~/.bashrc
12345678910111213141516
--- .bashrc_dunkelblau 2019-04-06 06:29:35.311364698 +0000+++ .bashrc 2019-04-06 06:30:12.583362700 +0000@@ -57,7 +57,7 @@ fi
if [ "$color_prompt" = yes ]; then
- PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '+ PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;35m\]\w\[\033[00m\]\$ ' else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
@@ -115,3 +115,4 @@ . /etc/bash_completion
fi
fi
+LS_COLORS=$LS_COLORS:'di=1;35:' ; export LS_COLORS
Bei meinen Ubuntu-Containern kommt es immer wieder vor, dass
die Aktualisierung von MariaDB mit folgenden Ausgaben hängen
bleibt:
123456789101112
$ sudo apt-get update
$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
...
Setting up kmod (22-1ubuntu5.2) ...
Installing new version of config file /etc/modprobe.d/blacklist.conf ...
Setting up mariadb-client-core-10.0 (10.0.38-0ubuntu0.16.04.1) ...
Setting up mariadb-client-10.0 (10.0.38-0ubuntu0.16.04.1) ...
Setting up mariadb-server-core-10.0 (10.0.38-0ubuntu0.16.04.1) ...
Setting up mariadb-server-10.0 (10.0.38-0ubuntu0.16.04.1) ...
Manchmal muß ich SVG-Dateien nach PNG wandeln. Das Werkzeug meiner Wahl
hierfür ist ImageMagick und davon das Werkzeug convert. Ich verwende
Version 6.7.7:
Meine SVG-Datei hat einen weißen Hintergrund.
Der wird mit der einfachsten Variante auch so in die
PNG-Datei übernommen. Oft ist mir’s lieber, wenn
der Hintergrund transparent ist, das erreiche ich
so:
Ich habe einige SVG-Grafiken, bei denen die Objekte
scheinbar “zufällig” mitten im Arbeitsbereich stehen.
Ein Beispiel ist dies:
Für die Weiterverarbeitung und Einbindung ist das relativ
ungeschickt. Ich hätte gerne eine SVG-Grafik, die “bündig”
mit den enthaltenen Objekten abschließt.
Hilfsmittel hierfür: Inkscape!
Hier der genaue Ablauf:
Inkscape starten: inkscape mypicture.svg
Datei – Dokumenteneinstellungen
Seitengröße – Seitengröße an Inhalt anpassen …
Alle Umrandungen bei 0 belassen (oder auf 0 setzen)
Dieses Dokument bezieht sich auf KeeWeb, Version 1.7.2.
Browser-Version
Die Browser-Version ist erreichbar über diesen Link:
KeeWeb@DP.
Die Browser-Version muß nur einmalig auf dem DP-Server installiert
werden und kann dann von jedem Client direkt verwendet werden.
Die Kennworte werden auch von der Browser-Version lokal auf dem
Arbeitsplatzrechner gespeichert!
Bei der Änderung für das feste Navigationsmenü
ist mir aufgefallen, dass diese Änderung teilweise nicht wirksam wird.
Hypothese: Das liegt am Browser-Cache. Abhilfe: Wir setzen die Cache-Headers.
Detailanalyse
Mittels curl führe ich einige Abfragen unserer Octopress-Seiten durch.
Die für das Caching relevanten HTTP-Header liste ich nachfolgend auf.
uli@ulinuc:~/git/dpserver/servers$ curl -kv http://daemons-point.com
* Rebuilt URL to: http://daemons-point.com/
* Hostname was NOT found in DNS cache
* Trying 138.201.16.240...
* Connected to daemons-point.com (138.201.16.240) port 80 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: daemons-point.com
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Thu, 10 Jan 2019 04:34:33 GMT
* Server Apache/2.4.18 (Ubuntu) is not blacklisted
< Server: Apache/2.4.18 (Ubuntu)
< Last-Modified: Tue, 08 Jan 2019 17:36:27 GMT
< ETag: "fd2-57ef5c8fce836"
< Accept-Ranges: bytes
< Content-Length: 4050
< Vary: Accept-Encoding
< Content-Type: text/html
<
</body>
</html>
<!DOCTYPE html>
<!--[if IEMobile 7 ]><html class="no-js iem7"><![endif]-->
<!--[if lt IE 9]><html class="no-js lte-ie8"><![endif]-->
<!--[if (gt IE 8)|(gt IEMobile 7)|!(IEMobile)|!(IE)]><!--><html class="no-js" lang="en"><!--<![endif]-->
<head>
...
</body>
</html>
* Connection #0 to host daemons-point.com left intact
Cache-Header
/
Last-Modified: Tue, 08 Jan 2019 17:36:27 GMT
ETag: “fd2-57ef5c8fce836”
Content-Type: text/html
/stylesheets/screen.css
Last-Modified: Tue, 08 Jan 2019 17:36:27 GMT
ETag: “960a-57ef5c8fd45f6”
Content-Type: text/css
/atom.xml
Last-Modified: Tue, 08 Jan 2019 17:36:27 GMT
ETag: “1a43f-57ef5c8fcd896”
Content-Type: application/xml
Fazit: Es sind keine “speziellen” Cache-Header gesetzt,
es gibt kein “Cache-Control” und auch kein “Expires”.
Damit “ziehen” die Defaults der verschiedenen Browser.
Soll-Zustand
Wir wollen erreichen, dass der Cache für maximal eine Stunde
verwendet wird. Das sollte via “Cache-Control: maxage=3600” erreichbar sein.
Mit “public” erlauben wir das Caching für eventuell vorhandene
Proxy-Server.
Aktionen
Alle Aktionen betiezen sich auf den vorgeschalteten Apache HTTPD:
“mod_headers” aktivieren: a2enmod headers
Header “Cache-Control” aktivieren via konfig-Datei:
Header setifempty Cache-Control "max-age=3600, public
Prozess durchstarten: service apache2 restart
Test
Vorher
12
$ curl -kv https://daemons-point.com/ 2>&1|grep -i cache
* Hostname was NOT found in DNS cache
Nachher
123
$ curl -kv https://daemons-point.com/ 2>&1|grep -i cache
* Hostname was NOT found in DNS cache
< Cache-Control: max-age=3600, public
Die in diesem Dokument beschriebene Änderung funktioniert überhaupt
nicht, das Navigationsmenü verschwindet beim Scrollen nach oben außerhalb
des Bildschirms!
Analyse
Die zugehörige CSS-Datei ist im Browser-Cache und wird nicht
immer sofort aktualisiert!