Merge branch 'master' into dev

This commit is contained in:
Malin Freeborn 2022-01-25 19:13:52 +01:00
commit 0734836ea9
142 changed files with 691 additions and 304 deletions

View File

@ -1,43 +0,0 @@
## creative commons
# CC0 1.0 Universal
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER.
### Statement of Purpose
The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").
Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.
For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.
1. __Copyright and Related Rights.__ A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:
i. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;
ii. moral rights retained by the original author(s) and/or performer(s);
iii. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;
iv. rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;
v. rights protecting the extraction, dissemination, use and reuse of data in a Work;
vi. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and
vii. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.
2. __Waiver.__ To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.
3. __Public License Fallback.__ Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.
4. __Limitations and Disclaimers.__
a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.
b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.
c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.
d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.

View File

@ -1,3 +1,7 @@
---
title: "Knowledge Base"
---
# Linux Knowledgebase
This is a list of quickstart guides for Linux programs, designed to get the user up and running as fast as possible.

6
_index.md Normal file
View File

@ -0,0 +1,6 @@
---
title: "Linux Knowledge Base"
---
{{< ticks >}}
{{< /ticks >}}

View File

@ -1,60 +0,0 @@
# Tar Archives
To create an archive file, just remember:
*C*reate *z*e *f*ile!
> tar czf file.tar.gz file1 file2
E*x*tract *z*e *f*iles:
> tar xzf file.tar.gz
The .tar extension means two or more files are bundled together into a single file. The .tar.gz means compression.
Tarballs come with a number of arguments.
## More Compression
Extremely compressed files take longer to compress, but take up less disk space.
> tar cfj super-compressed.tar.bz2 file1 file2
# ssh backup of partitions
Back up an unmounted partition with ssh:
> sudo dd if=/dev/sda1 | ssh -C ghost@192.168.0.10 "dd of=/home/ghost/backup.img" status=progress
# `xz`
Install `xz`.
Unzip the image with:
> unxz void.img.xz
This then deletes the .xz file. To keep it:
> unxz --keep void.img.xz
# `zip`
Zip file1-3, into a zip file called 'newzip.zip'.
> zip newsip file1 file2 file3
# Automatic Backups with `find`
## `tar`
Compressing all Latex Files in /home/.
> sudo find ~ -maxdepth 4 -name "*.txt" | xargs tar cvf latex-bundle.tar.gz
## `zip`
Install `zip`.
> find /home/"$(whoami)" -type f -size -2M | xargs zip -u backup

View File

@ -1,3 +1,7 @@
---
title: "at"
tags: [ "Documentation", "basics" ]
---
Install with:
> sudo apt install at

View File

@ -1,10 +1,17 @@
# Absolute Bloody Basics
---
title: "basics"
tags: [ "Documentation", "basics" ]
---
You need about a dozen commands to move around Linux.
After that, you look up the rest as you go.
Don't worry about understanding any of it, just type it in and the habit forms pretty quickly.
You start in a dark room. You have a 'look-see' what's in front of you:
You start in a dark room. You want to know where you are by **p**rinting out your **w**orking '**d**irectory' (i.e. 'location'):
> pwd
Have a look at what is here:
> ls
@ -18,10 +25,6 @@ Have a look at **a**ll the files:
So `.` means 'here' and `..` means 'you see stairs leading downwards' (e.g. 'the directory behind you').
Find out where you are by **p**rinting out your **w**orking '**d**irectory' (i.e. 'location'):
> pwd
Change directory (`cd`) down one level:
> cd ..

View File

@ -1,4 +1,7 @@
# `date`
---
title: "clock"
tags: [ "Documentation", "basics" ]
---
Show system time:

View File

@ -1,3 +1,7 @@
---
title: "conditionals"
tags: [ "Documentation", "basics" ]
---
# If statements
Test statement equality as so:

View File

@ -1,3 +1,7 @@
---
title: "cron"
tags: [ "Documentation", "basics" ]
---
# Cron
Various services from cron exist, e.g.

View File

@ -1,3 +1,7 @@
---
title: "kernel"
tags: [ "Documentation", "basics" ]
---
# Living Space
Kernel modules live in lib/modules/$(uname -r)

View File

@ -1,3 +1,7 @@
---
title: "kill"
tags: [ "Documentation", "basics" ]
---
If you want to kill a program in a graphical environment, open a terminal and typeL
## Graphical Programs

View File

@ -1,3 +1,7 @@
---
title: "links"
tags: [ "Documentation", "basics" ]
---
Link from X to Y.
> ln -s X ../otherdir/Y

View File

@ -1,3 +1,7 @@
---
title: "locale"
tags: [ "Documentation", "basics" ]
---
A list of supported locales is available at /usr/share/i18n/SUPPORTED

View File

@ -1,3 +1,7 @@
---
title: "locating"
tags: [ "Documentation", "basics" ]
---
# Whereis the Program
Ask where the `angband` program is, along with all its configuration files:

View File

@ -1,57 +0,0 @@
# Syslog Management Protocols
Let's look at the programs filling in things on our /var/log/ directory.
* rsyslog (common)
* syslog (old)
* syslog-ng (lots of content-based filtering)
* klogd (kernel-focussed)
# `rsyslog`
The config rests in /etc/rsyslog.conf, which then references /etc/rsyslog.d/.
# Systemd
This thing makes its own logs with journald, and the journal's own logging system writes to /var/log/journal/ directory, which is then filled with nonsense.
You can obtain nonsense in systemd's own format by entering:
journalctl -e
This thing generates so much nonsense it can crash your system, but can at least be checked with:
> journalctl --disk-usage
... in case you can't remember the `du` command.
You can limit the nonsense by editing the /etc/systemd/journald.conf file, and finding `#SystemMaxFileSize=`
# Logger
You can log things at any time with the logger:
> logger Server is being a dick!
Put things into a specific log with `-p`. They can enter into, e.g., lpr (printer) log file with a priority of "critical", with:
> logger -p lpr.crit Help!
Logfiles rotate around and eventually get deleted. Rotation means they get compressed.
Edit the config in /etc/logrotate.conf.
A few apps have their own special log rotation rules, kept in /etc/logrotate.d/.
The major variables to change are `weekly`, which compresses log files weekly, and `rotate 4`, which keeps 4 weeks worth of backlogs before deletion.
# Force Log Rotation
> sudo systemctl kill --kill-who=main --signal=SIGUSR2 systemd-journald.service
or just
> sudo systemctl restart systemd-journald.service

View File

@ -1,3 +1,7 @@
---
title: "packages"
tags: [ "Documentation", "basics" ]
---
# Looking
Your package has something to do with unzipping. Find out more:

View File

@ -1,3 +1,7 @@
---
title: "processes"
tags: [ "Documentation", "basics" ]
---
# Free
See free space with:

View File

@ -1,8 +1,11 @@
# Shells
---
title: "shell"
tags: [ "Documentation", "basics" ]
---
Dash - fast but limited funcionality, great for scripts.
Dash - fast but limited funcionality, great for scripts
sh - primitive and ubiquitous.
sh - a simple link to whatever your default shell is
bash - the standard

View File

@ -1,3 +1,7 @@
---
title: "time"
tags: [ "Documentation", "basics" ]
---
# systemd
Set time to synchronize with an ntp server:

View File

@ -1,3 +1,7 @@
---
title: "users"
tags: [ "Documentation", "basics" ]
---
# Basic Information
Let's get some entries with 'getent', e.g. passwd or group.

View File

@ -1,3 +1,7 @@
---
title: "email"
tags: [ "Documentation", "chat" ]
---
# Sendmail
Compose a message like this:

View File

@ -1,3 +1,7 @@
---
title: "irssi"
tags: [ "Documentation", "chat" ]
---
In program:
> /NETWORK LIST

View File

@ -1,3 +1,7 @@
---
title: "profanity"
tags: [ "Documentation", "chat" ]
---
# Pre Setup
@ -51,7 +55,7 @@ Or if you already havea conversation windows open, switch to otr using:
Finally, verify!
/otr question "Who the fuck are you?" bob
/otr question "Who are you?" bob
Bob is verified upon the answer, 'bob'.

View File

@ -1,3 +1,7 @@
---
title: "signal"
tags: [ "Documentation", "distros" ]
---
> yay -S signal-cli

View File

@ -1,3 +1,7 @@
---
title: "wgetpaste"
tags: [ "Documentation", "chat" ]
---
See available pastebins:

View File

@ -1,3 +1,7 @@
---
title: "archives"
tags: [ "Documentation", "data" ]
---
# GPG Archives
Create an encrypted archive with `gpg`:

View File

@ -1,3 +1,7 @@
---
title: "git"
tags: [ "Documentation", "data" ]
---
# Starting
## New Machines

View File

@ -1,3 +1,7 @@
---
title: "gpg"
tags: [ "Documentation", "data" ]
---
# Making keys
Generate keys:

View File

@ -1,3 +1,7 @@
---
title: "groff"
tags: [ "Documentation", "data" ]
---
# Basic Documents
Great a file called `name.ms`, with the following content:

View File

@ -1,3 +1,7 @@
---
title: "khard"
tags: [ "Documentation", "data" ]
---
Get the basic config:
> mkdir ~/.config/khard

33
data/mdadm.md Normal file
View File

@ -0,0 +1,33 @@
---
title: "mdadm"
tags: [ "Documentation", "RAID" ]
---
# RAID5
You will need 4 disks and the `mdadm` package.
The total size will be equal to the disks x 3, because one will be used for redundancy.
> sudo mdadm --create --verbose /dev/*md127* --level=5 --raid-devices=*4* */dev/sdb /dev/sdc /dev/sdd /dev/sde*
Note the variable parts:
- The name of the device could be `/dev/md12` or whatever
- The number of devices could be larger, but must be at least 4 for raid 5
- We end by listing all devices in the new `md` device.
Now look at how the raid status:
> cat /proc/mdstat
This will increase until the entire thing is fine.
Check the health of your `mdadm` array:
> sudo mdadm --detail /dev/md127
You should see `State : clean`. If you see it is `degraded`, then a disk has broken.
## Replacing a Disk
> sudo mdadm --add /dev/md127 /dev/sdb1

View File

@ -1,3 +1,7 @@
---
title: "pass"
tags: [ "Documentation", "data" ]
---
[Video instructions](https://www.hooktube.com/watch?v=hlRQTj1D9LA)
Setup [gpg](./gpg.md) keys.

View File

@ -1,3 +1,7 @@
---
title: "sc-im"
tags: [ "Documentation", "data" ]
---
# Basic Commands
> H = highest part

View File

@ -1,3 +1,7 @@
---
title: "sdcv"
tags: [ "Documentation", "data" ]
---
# Install New Dictionaries
If the path doesn't exist then:

View File

@ -1,3 +1,7 @@
---
title: "postgresql"
tags: [ "Documentation", "data" ]
---
# Setup
Install postgres and start it as a service, then start with:

View File

@ -1,3 +1,7 @@
---
title: "sql"
tags: [ "Documentation", "data" ]
---
MySQL, Aurora and the Maria Database work similarly, and mostly with the same commands.
MySQL requires 160 Megs of disk space.

View File

@ -1,3 +1,7 @@
---
title: "tricks"
tags: [ "Documentation", "data" ]
---
# Find data from any table

View File

@ -1,30 +0,0 @@
setting up with:
- data at /var/taskd
- user: root
- host=localhost
- port=53589
- Organization=Andonome
- Name="Malin Freeborn"
## Next
Copy files to ~/.task
/usr/share/doc/taskd/pki/{ca.cert.pem,Malin_Freeborn.cert.pem,Malin_Freeborn.key.pem}
And run these commands:
```
Malin Freeborn must run these commands:
task config taskd.server localhost:53589
task config taskd.credentials 'Andonome/Malin Freeborn/36faa2a9-de12-4410-99d5-0bcaa5a4887a'
task config taskd.certificate ~/.task/Malin_Freeborn.cert.pem
task config taskd.key ~/.task/Malin_Freeborn.key.pem
task config taskd.ca ~/.task/ca.cert.pem
task config taskd.trust strict
task config taskd.ciphers NORMAL
```

View File

@ -1,3 +1,7 @@
---
title: "task"
tags: [ "Documentation", "data" ]
---
# Contexts
Set three contexts by their tags:

View File

@ -1,3 +1,7 @@
---
title: "taskd"
tags: [ "Documentation", "data" ]
---
(instructions currently not working)
Switch to root to make things easier.

View File

@ -1,3 +1,7 @@
---
title: "timew"
tags: [ "Documentation", "data" ]
---
# Setup
Below commands mostly deal with timew alone. With taskwarrior installed as well, `locate on-modify-time`, then add it to ~/.task/hooks and make it executable.

View File

@ -1,3 +1,7 @@
---
title: "w3m"
tags: [ "Documentation", "data" ]
---
'H' for help.
Ctrl+u to go to new url.

View File

@ -1,3 +1,7 @@
---
title: "arch_pi_install"
tags: [ "Documentation", "distros" ]
---
# Initial Setup
<!-- modified since testing
-->
@ -32,28 +36,28 @@ Move boot files to the first partition:
> Unmount the two partitions:
> umount boot root
echo belgradecats > /etc/hostname
echo "# /etc/hosts: static lookup table for host names
> echo [ hostname ] > /etc/hostname
Then edit the `/etc/hosts` file.
```
<ip-address> <hostname.domain.org> <hostname>
127.0.0.1 belgradecats.localdomain belgradecats
::1 belgradecats.localdomain belgradecats ip6-localhost
127.0.0.1 localhost.localdomain localhost
::1 localhost.localdomain localhost ip6-localhost
```
# End of file" > /etc/hosts
# Get audio on
echo dtparam=audio=on >> /boot/config.txt
> echo dtparam=audio=on >> /boot/config.txt
pacman-key --init
pacman-key --populate archlinuxarm
Start pacman keyring.
pacman -Syyu base-devel git alsa-utils xf86-video-fbdev
> pacman-key --init
> pacman-key --populate archlinuxarm
timedatectl set-timezone Europe/Belgrade
> pacman -Syyu base-devel git alsa-utils xf86-video-fbdev
> timedatectl set-timezone Europe/Belgrade

View File

@ -1,25 +1,29 @@
---
title: "autologin"
tags: [ "Documentation", "Distros", "Arch" ]
---
# Automatic Login
Edit /etc/systemd/system/getty@tty1.service.d/override.conf by typing:
Edit `/etc/systemd/system/getty@tty1.service.d/override.conf` by typing:
> sudo systemctl edit getty@tty1
The put in the following, changing $USER to your username.
The put in the following, changing `[ USER ]` to your username.
```
[Service]
ExecStart=
ExecStart=-/usr/bin/agetty --autologin $USER -s %I 115200,38400,9600 vt102
ExecStart=-/usr/bin/agetty --autologin [ USER ] -s %I 115200,38400,9600 vt102
```
# Automatically Start X
In `bashrc`.
In `.bashrc`.
```
if [ -z "$DISPLAY" ] && [ "$(fgconsole)" -eq 1 ]; then
exec startx
fi

View File

@ -1,3 +1,7 @@
---
title: "basic-install"
tags: [ "Documentation", "distros" ]
---
Keyboard layout changed.
> ls /usr/share/kbd/keymaps/**/*.map.gz

View File

@ -1,3 +1,7 @@
---
title: "blackarch"
tags: [ "Documentation", "distros" ]
---
## Basics

View File

@ -1,3 +1,7 @@
---
title: "encrypted"
tags: [ "Documentation", "distros" ]
---
> # taken from https://0x00sec.org/t/arch-linux-with-lvm-on-luks-dm-crypt-disk-encryption-installation-guide-legacy-bios-system/1479
> # if you need wifi

View File

@ -1,3 +1,7 @@
---
title: "fonts"
tags: [ "Documentation", "distros" ]
---
# Basics
Update font-cache:

View File

@ -1,3 +1,7 @@
---
title: "lxc"
tags: [ "Documentation", "distros" ]
---
# Distro Specifics
Arch dependencies: `arch-install-scripts` `dnsmasq`

View File

@ -1,3 +1,7 @@
---
title: "pacman"
tags: [ "Documentation", "distros" ]
---
Packages are kept in /var/cache/pacman/pkg.

View File

@ -1,3 +1,7 @@
---
title: "pi-hole-server"
tags: [ "Documentation", "distros" ]
---
> yay -S pi-hole-server

View File

@ -1,3 +1,7 @@
---
title: "problems"
tags: [ "Documentation", "distros" ]
---
Broken Xorg

View File

@ -1,8 +1,12 @@
---
title: "apt"
tags: [ "Documentation", "distros" ]
---
## apt
### Configurations?
Fucked up a package's configuration files?
Messed up a package's configuration files?
> sudo apt-get purge [thing]

View File

@ -1,3 +1,7 @@
---
title: "lubuntu"
tags: [ "Documentation", "distros" ]
---
# Videos not working

View File

@ -1,3 +1,7 @@
---
title: "metasploit"
tags: [ "Documentation", "distros" ]
---
> service postgresql start
> systemctl status postgresql

View File

@ -1,3 +1,7 @@
---
title: "basics"
tags: [ "Documentation", "distros" ]
---
> cd /etc/yum.repos.d/

View File

@ -1,3 +1,7 @@
---
title: "npm"
tags: [ "Documentation", "distros" ]
---
package.json is the basic configuration file.
Everything is per-directory.

View File

@ -1,3 +1,7 @@
---
title: "yum"
tags: [ "Documentation", "distros" ]
---
# Overview
Forks include CentOS, scientific Linux, Oracle, and Fedora.

View File

@ -1,3 +1,7 @@
---
title: "http_server"
tags: [ "Documentation", "distros" ]
---
Nothing interesting.
1. Install

View File

@ -1,3 +1,7 @@
---
title: "Void Autologin"
tags: [ "Documentation", "Distros", "Void" ]
---
Make the autologin service:

View File

@ -1,3 +1,7 @@
---
title: "basics"
tags: [ "Documentation", "distros" ]
---
# vkpurge

View File

@ -1,3 +1,7 @@
---
title: "extrace"
tags: [ "Documentation", "distros" ]
---
Monitor all processes:
> extrace

View File

@ -1,3 +1,7 @@
---
title: "kernels"
tags: [ "Documentation", "distros" ]
---
# vkpurge

View File

@ -1,3 +1,7 @@
---
title: "keyboard"
tags: [ "Documentation", "distros" ]
---
To list keyboard specs:

View File

@ -1,3 +1,7 @@
---
title: "lxc"
tags: [ "Documentation", "distros" ]
---
# Intro
Taken from [this](https://r4nd0m6uy.ch/unpriviledged-containers-in-void-linux.html)

View File

@ -1,3 +1,7 @@
---
title: "networking"
tags: [ "Documentation", "distros" ]
---
# Bridged adapters
Virtual machines can use a bridge to connect to the internet. Access the manual with

View File

@ -1,3 +1,7 @@
---
title: "sv"
tags: [ "Documentation", "distros" ]
---
# List Services
All possible services are in:

View File

@ -1,3 +1,7 @@
---
title: "lxc"
tags: [ "Documentation", "distros" ]
---
LXC creates miniature virtual machines to play with.

View File

@ -1,3 +1,7 @@
---
title: "xbps"
tags: [ "Documentation", "distros" ]
---
Install cowsay
> xbps-install cowsay

View File

@ -1,3 +1,7 @@
---
title: "basics"
tags: [ "Documentation", "hardware" ]
---
# Motherboard Information
> sudo dmidecode

View File

@ -1,3 +1,7 @@
---
title: "brightness"
tags: [ "Documentation", "hardware" ]
---
# Brightness
/sys/class/backlight/*/brightness

View File

@ -1,3 +1,7 @@
---
title: "keyboard"
tags: [ "Documentation", "basics" ]
---
# Set Layout
Set layout to British English.

View File

@ -1,12 +0,0 @@
Find easy-to-read keymapping lists in `/usr/share/X11/xkb/keycodes/symbols/pc`.
If this doesn't work, try keymaps.
Keymaps codes can be found in `/usr/share/X11/xkb/keycodes/evdev`.
Swap the numbers to swap symbols.
Check keymap with:
> setxkbmap -print -verbose 10

View File

@ -1,3 +1,7 @@
---
title: "xmodmap"
tags: [ "Documentation", "hardware" ]
---
Ensure you're not stuck in CAPS on mode:
> xmodmap -e 'clear Lock'

View File

@ -1,3 +1,7 @@
---
title: "monitor"
tags: [ "Documentation", "hardware" ]
---
See screen size
> xrandr -q

View File

@ -1,3 +1,7 @@
---
title: "printers"
tags: [ "Documentation", "hardware" ]
---
# Cups: The Common Unix Printing System
Configure cups at /etc/cups/supsd.conf, or visit the local webpage at http://localhost:631 if you want to use the Apple interface, otherwise, it's the printing daemon.

View File

@ -1,3 +1,7 @@
---
title: "basics"
tags: [ "Documentation", "networking" ]
---
# You
Check how your computer connects to the net:

View File

@ -1,3 +1,7 @@
---
title: "dns"
tags: [ "Documentation", "networking" ]
---
# Designate DNS
On Debian, a file might gain DNS services by adding the following to /etc/network/interfaces:

View File

@ -1,3 +1,7 @@
---
title: "fail2ban"
tags: [ "Documentation", "networking" ]
---
# SSH Daemon Jail
> sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.d/ssh.local

View File

@ -1,3 +1,7 @@
---
title: "iptables"
tags: [ "Documentation", "networking" ]
---
# Intro
This is a basic Linux firewall program.

View File

@ -1,3 +1,7 @@
---
title: "iptables"
tags: [ "Documentation", "networking" ]
---
# Intro
This is a basic Linux firewall program.

View File

@ -1,3 +1,7 @@
---
title: "nmap"
tags: [ "Documentation", "networking" ]
---
Example:

View File

@ -1,3 +1,7 @@
---
title: "pihole"
tags: [ "Documentation", "networking" ]
---
View DNS traffic
> pihole -t

View File

@ -1,3 +1,7 @@
---
title: "pip"
tags: [ "Documentation", "networking" ]
---
Upgrade all packages

View File

@ -1,3 +1,7 @@
---
title: "protocols"
tags: [ "Documentation", "networking" ]
---
# Protocols
| TCP | UDP | ICMP |

View File

@ -1,3 +0,0 @@
Install ` gqrx` and `rtl-sdr`

View File

@ -1,3 +1,7 @@
---
title: "rclone"
tags: [ "Documentation", "networking" ]
---
The manpage's 'Synopsis' provides a fast reference.
We'll assume a folder in Google Drive called 'test', and local folder called 'foo'.

View File

@ -1,3 +1,7 @@
---
title: "screen"
tags: [ "Documentation", "networking" ]
---
start session: screen

View File

@ -1,3 +1,7 @@
---
title: "agate"
tags: [ "Documentation", "networking" ]
---
Make sure your dns is in order.
My domain name is `belgradecats.tk`, so put your own in there.

View File

@ -1,3 +1,7 @@
---
title: "sshfs"
tags: [ "Documentation", "networking" ]
---
# Mount
> sshfs alfred@192.168.0.14:Sync/Alfred

View File

@ -1,3 +1,7 @@
---
title: "tricks"
tags: [ "Documentation", "networking" ]
---
Mount a remote filesystem locally with fuse-sshfs:

View File

@ -1,3 +1,7 @@
---
title: "tor"
tags: [ "Documentation", "networking" ]
---
# Get a hostname

View File

@ -1,3 +1,7 @@
---
title: "transmission"
tags: [ "Documentation", "networking" ]
---
# Torrench
Torrench searches for torrents.

View File

@ -1,3 +1,7 @@
---
title: "troubleshooting"
tags: [ "Documentation", "networking" ]
---
# Do you have an IP?

View File

@ -1,3 +1,7 @@
---
title: "unison"
tags: [ "Documentation", "networking" ]
---
# Local Sync

View File

@ -1,3 +1,7 @@
---
title: "nginx"
tags: [ "Documentation", "networking" ]
---
Install nginx:
> sudo apt-get install nginx

View File

@ -1,3 +1,7 @@
---
title: "wifi"
tags: [ "Documentation", "networking" ]
---
# Netstat Stuff
Stats on local net usage within domain.

View File

@ -1,67 +1,46 @@
# Check wifi's working
> lspci -k
Or for usb wifi:
> dmesg | grep usbcore
... and hopefully it'll say the new interface is registered.
# Check if a wifi interface has been created
> ip link
or
> iw dev
Assuming it's wlan0, bring it up with
> ip link set wlan0 up
Error messages probably means your wireless chipset requires a firmware to function. In this case, check the kernel messages for firmware being loaded
> dmesg | grep firmware
# Utilities
iw doesn't do wpa/wpa2. wpa_supplicant does everything. iwd does everything except WEXT encryption.
# Connecting
Get the link status:
> iw dev wlan0 link
Scan for available points:
> iw dev wlan0 scan
The connecting commands do not cover wpa2.
# Fucking Hell
I really need to script this. Something like:
1. Auto-check wireless device.
2. Auto-check scan for devices and grab names
3. Display names
4. Prompt for name selection (e.g. '1').
5. Auto-connect to wireless associated with selection n.
6. Prompt for password.
7. Try to connect.
8. Ask if user wants a password copy stored in /tmp/.
# Connection
This is a shitshow. Focus: netctl is the Arch project to get this going.
Okay - can't be fucked. Most of this is systemd based.
---
title: "wireless"
tags: [ "Documentation", "networking" ]
---
# Check wifi's working
> lspci -k
Or for usb wifi:
> dmesg | grep usbcore
... and hopefully it'll say the new interface is registered.
# Check if a wifi interface has been created
> ip link
or
> iw dev
Assuming it's wlan0, bring it up with
> ip link set wlan0 up
Error messages probably means your wireless chipset requires a firmware to function. In this case, check the kernel messages for firmware being loaded
> dmesg | grep firmware
# Utilities
iw doesn't do wpa/wpa2. wpa_supplicant does everything. iwd does everything except WEXT encryption.
# Connecting
Get the link status:
> iw dev wlan0 link
Scan for available points:
> iw dev wlan0 scan
The connecting commands do not cover wpa2.

View File

@ -1,4 +1,7 @@
# Intro
---
title: "wpa_supplicant"
tags: [ "Documentation", "networking" ]
---
wpa_supplicant configurations are stored in /etc/wpa_supplicant/wpa_supplicant-wlan0 (or equivalent).

View File

@ -1,3 +1,7 @@
---
title: "basics"
tags: [ "Documentation", "sound" ]
---
# Pulse
If you have pulse, use pulse.
Check with `which pulseaudio`. No output means you need to use alsa (below).

Some files were not shown because too many files have changed in this diff Show More