forked from andonome/lk
		
	edit metadata
This commit is contained in:
		| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "at" | ||||
| tags: [ "Basics" ] | ||||
| tags: [ "Basics", "time" ] | ||||
| --- | ||||
| Install with: | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "clock" | ||||
| tags: [ "Basics" ] | ||||
| tags: [ "Basics", "time" ] | ||||
| --- | ||||
|  | ||||
| Show system time: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "cron" | ||||
| tags: [ "Basics" ] | ||||
| tags: [ "Basics", "time" ] | ||||
| --- | ||||
| # Cronie | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "locale" | ||||
| tags: [ "Basics" ] | ||||
| tags: [ "Basics", "time" ] | ||||
| --- | ||||
|  | ||||
| Your locale tells the computer your location, preferred time-and-date format, standard language, papersize, et c. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "time" | ||||
| tags: [ "Basics" ] | ||||
| tags: [ "Basics", "time" ] | ||||
| --- | ||||
| # systemd | ||||
|  | ||||
|   | ||||
| @@ -5,25 +5,25 @@ tags: [ "Chat" ] | ||||
|  | ||||
| See available pastebins: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| wgetpaste -S | ||||
| ``` | ||||
|  | ||||
| Upload script.sh to bpaste: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| wgetpaste -s bpaste script.sh | ||||
| ``` | ||||
|  | ||||
| Input clipboard to dpaste with the heading "Title" | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| wgetpaste -s dpaste -d Title -x | ||||
| ``` | ||||
|  | ||||
| Paste in the file then load the result to the right-hand clipboard: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| wgetpaste -s dpaste -X | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Archives" | ||||
| tags: [ "tar", "backups" ] | ||||
| tags: [ "tar", "backups", ".tgz", "tar.gz" ] | ||||
| --- | ||||
| # `tar` | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "unison" | ||||
| tags: [ "Backups" ] | ||||
| tags: [ "Backups", "synch" ] | ||||
| --- | ||||
|  | ||||
| Install unison on both machines, and make sure both have the same version of unison, with the same version of the ocaml compiler (the smallest difference will cause problems). | ||||
|   | ||||
| @@ -1,8 +1,11 @@ | ||||
| --- | ||||
| title: "PDF Metadata Erasure" | ||||
| tags: [ "Metadata", "Ghost Script" ] | ||||
| tags: [ "Metadata", "Ghost Script", "gs", ".pdf" ] | ||||
| --- | ||||
|  | ||||
| You cannot erase pdf metadata with `exiftool` (it only *appends* your changes). | ||||
| To delete pdf metadata, you'll need `gs`. | ||||
|  | ||||
| Make a text file called 'pdfmark.txt'. | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "sc-im" | ||||
| tags: [ "TUI", "data" ] | ||||
| tags: [ "TUI", "data", "spreadsheet", ".csv" ] | ||||
| --- | ||||
|  | ||||
| - [Sample file](sc-im/sample.sc) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Soft Serve through https" | ||||
| tags: [ "data", "git", "lfs" ] | ||||
| tags: [ "data", "git server", "lfs" ] | ||||
| --- | ||||
|  | ||||
| ## `http` Setup | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "timew" | ||||
| tags: [ "Data" ] | ||||
| title: "timewarrior" | ||||
| tags: [ "Data", "tracking", "time", "timew" ] | ||||
| --- | ||||
| # Summaries | ||||
|  | ||||
|   | ||||
| @@ -8,7 +8,7 @@ tags: [ "networking", "ssh", "android" ] | ||||
| 3. Open fdroid, and run: | ||||
|  | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| pkg upgrade | ||||
| pkg install busybox termux-services openssh openssh-sftp-server | ||||
| source $PREFIX/etc/profile.d/start-services.sh | ||||
|   | ||||
| @@ -6,19 +6,20 @@ tags: [ "distros" ] | ||||
|  | ||||
| Update font-cache: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| su root | ||||
| fc-cache | ||||
| ``` | ||||
|  | ||||
| List fonts: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| fc-list | ||||
| ``` | ||||
|  | ||||
| Grab the part of the font name you need for Xresources: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| fc-list | cut -d: -f2 | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -8,27 +8,27 @@ tags: [ "distros" ] | ||||
|  | ||||
| Messed up a package's configuration files? | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo apt-get purge [thing] | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo apt autoremove  | ||||
| ``` | ||||
|  | ||||
| Check if you still have related things: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| apt search [thing] | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo apt-get install [ thing ] | ||||
| ``` | ||||
|  | ||||
| Still have problems? | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo dpgk --force-confmiss -i /var/cache/apt/archives/[thing] | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -4,15 +4,21 @@ tags: [ "Void" ] | ||||
| --- | ||||
| Put your device in 'aeroplane' mode (e.g. where no trace of signal leaves it) by turning off Wi-Fi and blue-tooth. | ||||
|  | ||||
| > sudo sv stop wpa_supplicant bluetoothd | ||||
| ```sh | ||||
| su root | ||||
| sv stop wpa_supplicant bluetoothd | ||||
| ``` | ||||
|  | ||||
| Find your device's name with `ip a`. | ||||
| If unsure, try this: | ||||
|  | ||||
| > name=$(ip a | grep -Eo 'wlp\w{3}') | ||||
|  | ||||
| > echo $name | ||||
| ```sh | ||||
| name=$(ip a | grep -Eo 'wlp\w{3}') | ||||
| echo $name | ||||
| ``` | ||||
|  | ||||
| Then set that device down: | ||||
|  | ||||
| > sudo ip link set $name down | ||||
| ```sh | ||||
| ip link set $name down | ||||
| ``` | ||||
|   | ||||
| @@ -4,19 +4,19 @@ tags: [ "Void" ] | ||||
| --- | ||||
| Monitor all processes: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| extrace | ||||
| ``` | ||||
|  | ||||
| Monitor one process: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| extrace ls | ||||
| ``` | ||||
|  | ||||
| Monitor a script: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| ./script.sh | extrace | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -9,16 +9,17 @@ Jenkins is janky. | ||||
| ## Start | ||||
| Start the service file. | ||||
|  | ||||
| ```bash | ||||
| sudo ln -s /etc/sv/jenkins /var/service | ||||
| sudo sv start jenkins | ||||
| ```sh | ||||
| su root | ||||
| ln -s /etc/sv/jenkins /var/service | ||||
| sv start jenkins | ||||
| ``` | ||||
|  | ||||
| Then visit the web interface with `$BROWSER localhost:8080`. | ||||
|  | ||||
| If it's not working, try running the command from the run file the first time: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| chpst -u jenkins java -jar /opt/jenkins/jenkins.war | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -6,13 +6,13 @@ tags: [ "void", "locale" ] | ||||
| Check the current locales: | ||||
|  | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| locale -a | ||||
| ``` | ||||
|  | ||||
| Add the languages you want by editing `/etc/default/libc-locales`, and uncommenting your choice: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| #en_DK.UTF-8 UTF-8   | ||||
| #en_DK ISO-8859-1   | ||||
| en_GB.UTF-8 UTF-8   | ||||
| @@ -25,13 +25,14 @@ Now you can generate what you need for those languages. | ||||
| However, instead of generating what you need, you're going to generate everything which needs updating: | ||||
|  | ||||
|  | ||||
| ```bash | ||||
| sudo xbps-reconfigure glibc-locales | ||||
| ```sh | ||||
| su root | ||||
| xbps-reconfigure glibc-locales | ||||
| ``` | ||||
|  | ||||
| Finally, select your chosen locale by placing it in `/etc/locale.conf`. | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| echo "LC_ALL=en_GB.UTF-8 | ||||
| LANG=en_GB.UTF-8 | ||||
| LANGUAGE=en_GB.UTF-8" > /etc/locale.conf | ||||
| @@ -48,7 +49,7 @@ en_GB ISO-8859-1 | ||||
| Check your new locales are available: | ||||
|  | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| locale -a | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "brightness" | ||||
| tags: [ "hardware" ] | ||||
| tags: [ "hardware", "laptop" ] | ||||
| --- | ||||
| # Brightness | ||||
|  | ||||
|   | ||||
| @@ -4,9 +4,13 @@ tags: [ "hardware" ] | ||||
| --- | ||||
| See screen size | ||||
|  | ||||
| > xrandr -q | ||||
| ```sh | ||||
| xrandr -q | ||||
| ``` | ||||
|  | ||||
| Automatically configure: | ||||
|  | ||||
| > xrandr --auto | ||||
| ```sh | ||||
| xrandr --auto | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -6,11 +6,11 @@ tags: [ "Sound" ] | ||||
|  | ||||
| Add your user to the audio group, and install `festival-english`. | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| echo "(Parameter.set 'Audio_Method 'Audio_Command)" >> /usr/share/festival/voices.scm | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| echo "(Parameter.set 'Audio_Command "aplay -q -c 1 -t raw -f s16 -r $SR $FILE")" /usr/share/festival/voices.scm | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Makefiles" | ||||
| tags: [ "system", "makefiles" ] | ||||
| tags: [ "system", "make" ] | ||||
| --- | ||||
|  | ||||
| The `make` system wants to know: | ||||
| @@ -11,7 +11,7 @@ The `make` system wants to know: | ||||
|  | ||||
| Start with a basic test-area. | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| mkdir make_test ; cd $_ | ||||
| printf "%s:\n" README.md > Makefile | ||||
| printf "\t%s\n" 'echo "Basic makefile example." > $@' >> Makefile | ||||
| @@ -32,8 +32,6 @@ README.md: Makefile | ||||
| 	echo '```' >> $@ | ||||
| 	cat $< >> $@ | ||||
| 	echo '```' >> $@ | ||||
|  | ||||
|  | ||||
| ``` | ||||
|  | ||||
| Note the order: | ||||
| @@ -92,7 +90,7 @@ $(storage_directory)/README.md: README.md | ||||
|  | ||||
| Now you can tell `make` to create the backup: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| make backups/README.md | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Makefile Graphs" | ||||
| tags: [ "system", "makefiles", "graph" ] | ||||
| tags: [ "system", "make", "graph" ] | ||||
| --- | ||||
|  | ||||
| If you have `graph-easy` (often in the package `perl-graph-easy` or similar), you can make a graph from the makefile with `make2graph` (the package is often called `makefile2graph`). | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Makefiles" | ||||
| tags: [ "system", "makefiles", "help" ] | ||||
| tags: [ "system", "make", "help" ] | ||||
| --- | ||||
|  | ||||
| Make your first target 'help' to give an overview of the main targets. | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
|  | ||||
| --- | ||||
| title: "Makefile Patterns" | ||||
| tags: [ "system", "makefiles" ] | ||||
| tags: [ "system", "make" ] | ||||
| --- | ||||
|  | ||||
| Using the [basic example](../Makefile.md), you can make a complete backup of all backup files. | ||||
| @@ -27,7 +27,6 @@ backups/backup.tgz: backups/backup_29.md backups/backup_30.md | ||||
|     tar czf backups/backup.tgz backups/backup_29.md backups/backup_30.md | ||||
| ``` | ||||
|  | ||||
|  | ||||
| The phony `backup` target should now point to this tar backup. | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "awk" | ||||
| tags: [ "System" ] | ||||
| tags: [ "System", ".csv" ] | ||||
| --- | ||||
| # Basics | ||||
|  | ||||
|   | ||||
| @@ -30,7 +30,7 @@ There are a bunch of files: | ||||
|  | ||||
| Goal: swap the word "Column" for "Alice" in all files. | ||||
|  | ||||
| ``` | ||||
| ```sh | ||||
| IFS=$'\n' | ||||
| for f in $(find . -name "Col*"); do | ||||
| mv "$f" $(echo "$f" | sed s/Column/Alice/) | ||||
|   | ||||
| @@ -1,26 +1,24 @@ | ||||
| --- | ||||
| title: "character-encoding" | ||||
| tags: [ "System" ] | ||||
| tags: [ "System", "encoding" ] | ||||
| --- | ||||
|  | ||||
| Convert a text file from one encoding type to another with: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| iconv -f ascii -t utf8 oldfilename > newfilename | ||||
| ``` | ||||
|  | ||||
| Available options are: | ||||
|  | ||||
| * ISO-8859-15 | ||||
|  | ||||
| * UTF-8 | ||||
|  | ||||
| * ASCII | ||||
|  | ||||
| * Lots more | ||||
| - ISO-8859-15 | ||||
| - UTF-8 | ||||
| - ASCII | ||||
| - Lots more | ||||
|  | ||||
| Generate a full list of encoding types available with: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| iconv -l | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "deduplicate" | ||||
| tags: [ "system", "deduplicate", "duplicates", "maintenance" ] | ||||
| tags: [ "system", "deduplicate", "maintenance", "storage" ] | ||||
| --- | ||||
|  | ||||
| `rdfind`: find duplicate files, then delete them, or turn them into links. | ||||
|   | ||||
| @@ -1,27 +1,24 @@ | ||||
| --- | ||||
| title: "$EDITOR" | ||||
| tags: [ "System" ] | ||||
| tags: [ "system" ] | ||||
| --- | ||||
| The System's default text editor can be defined within /etc/profile.  It's given the variable `EDITOR`. | ||||
|  | ||||
| Add these lines to `/etc/profile.d/local.sh`: | ||||
|  | ||||
| ``` | ||||
|  | ||||
| export EDITOR=vim | ||||
|  | ||||
| export VISUAL=$EDITOR | ||||
| Add these lines to `/etc/profile.d/custom.sh`: | ||||
|  | ||||
| ```sh | ||||
| echo 'export EDITOR=vim' >> /etc/profile.d/custom.sh | ||||
| echo 'export VISUAL=$EDITOR' >> /etc/profile.d/custom.sh | ||||
| ``` | ||||
|  | ||||
| Then reload that profile with: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| source /etc/profile | ||||
| ``` | ||||
|  | ||||
| If you want to ensure `nano` never appears again: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo ln -sf $(which vim) $(which nano) | ||||
| ``` | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "fstab" | ||||
| tags: [ "System" ] | ||||
| tags: [ "system", "disk" ] | ||||
| --- | ||||
| # Basics | ||||
|  | ||||
| @@ -29,7 +29,7 @@ Ignore this obsolete option. | ||||
| ## 6: Pass | ||||
|  | ||||
| | Number | Meaning               | | ||||
| |        |                       | | ||||
| |:------:|:---------------------:| | ||||
| |   0    | Swap (or not mounted) | | ||||
| |   1    | Mount at /            | | ||||
| |   2    | Mount somewhere else  | | ||||
| @@ -37,5 +37,5 @@ Ignore this obsolete option. | ||||
| ## Options | ||||
|  | ||||
| - `nofail` means the computer will not fail to boot, even if the drive fails, or is unplugged. It's a good option for everything except `/`. | ||||
| - noauto means 'don't mount on boot' (but you can still mount with `mount -a`). | ||||
| - `noauto` means 'don't mount on boot' (but you can still mount with `mount -a`). | ||||
|  | ||||
|   | ||||
| @@ -1,41 +1,41 @@ | ||||
| --- | ||||
| title: "kernel" | ||||
| tags: [ "System" ] | ||||
| tags: [ "system" ] | ||||
| --- | ||||
| Check which kernet modules are loaded into memory | ||||
|  | ||||
| ```bash | ||||
| sudo /sbin/lsmod  | ||||
| Check which kernel modules are loaded into memory: | ||||
|  | ||||
| ```sh | ||||
| su root | ||||
| /sbin/lsmod  | ||||
| ``` | ||||
|  | ||||
| Check which virtual box modules are loaded into memory | ||||
|  | ||||
| ```bash | ||||
| sudo /sbin/lsmod | grep vbox  | ||||
| ```sh | ||||
| /sbin/lsmod | grep vbox  | ||||
| ``` | ||||
|  | ||||
| Virtual box is using vboxpci, vboxnetadp, vboxnetflt, vboxdr. | ||||
|  | ||||
| Look at what's claiming wifi: | ||||
|  | ||||
| ```bash | ||||
| sudo lshw -C network | ||||
| ```sh | ||||
| lshw -C network | ||||
| ``` | ||||
|  | ||||
| If this shows that the device is 'unclaimed' then it's time to add a module, e.g. ath9k. | ||||
|  | ||||
| ```bash | ||||
| sudo modprobe ath9k | ||||
| ```sh | ||||
| modprobe ath9k | ||||
| ``` | ||||
|  | ||||
| Modules can also be 'restarted' by removing and adding them, e.g. the video module, 'uvcvideo': | ||||
|  | ||||
| ```bash | ||||
| sudo rmmod uvcvideo | ||||
| ```sh | ||||
| rmmod uvcvideo | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| sudo modprobe uvcvideo | ||||
| ```sh | ||||
| modprobe uvcvideo | ||||
| ``` | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "lf - The Light File Manager" | ||||
| tags: [ "File Browser" ] | ||||
| tags: [ "File Browser", "TUI" ] | ||||
| --- | ||||
|  | ||||
| ## Config File | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "mdadm" | ||||
| tags: [ "RAID" ] | ||||
| tags: [ "RAID", "disk" ] | ||||
| --- | ||||
| # RAID5 | ||||
|  | ||||
|   | ||||
| @@ -15,6 +15,7 @@ Show memory usage in Gibitytes. | ||||
| ```bash | ||||
| free -g | ||||
| ``` | ||||
|  | ||||
| Show low and high gigibtye usage on a *l*ine, and repeat the measurement every 5 seconds: | ||||
|  | ||||
| ```bash | ||||
|   | ||||
| @@ -2,10 +2,12 @@ | ||||
| title: "partitions" | ||||
| tags: [ "System" ] | ||||
| --- | ||||
|  | ||||
| # FDisk Basics | ||||
|  | ||||
| ```bash | ||||
| sudo fdisk /dev/sda | ||||
| ```sh | ||||
| su root | ||||
| fdisk /dev/sda | ||||
| ``` | ||||
|  | ||||
| - m for help. | ||||
| @@ -31,20 +33,20 @@ fdisk will not help with a GPT formatted drive.  For this, use gdisk, which is m | ||||
|  | ||||
| Now that we have a partition, we can make it into a fileSystem.  Most will use: | ||||
|  | ||||
| ```bash | ||||
| sudo mkfs -t ext4 /dev/sdc1 | ||||
| ```sh | ||||
| mkfs -t ext4 /dev/sdc1 | ||||
| ``` | ||||
|  | ||||
| or if you're making a swap partition, you can use: | ||||
|  | ||||
| ```bash | ||||
| sudo mkswap /dev/sdb2 | ||||
| ```sh | ||||
| mkswap /dev/sdb2 | ||||
| ``` | ||||
|  | ||||
| or for the reiser fileSystem, we can use: | ||||
|  | ||||
| ```bash | ||||
| sudo mkreiserfs /dev/sdc2 | ||||
| ```sh | ||||
| mkreiserfs /dev/sdc2 | ||||
| ``` | ||||
|  | ||||
| # File System Types | ||||
| @@ -61,86 +63,86 @@ sudo mkreiserfs /dev/sdc2 | ||||
|  | ||||
| # Parted | ||||
|  | ||||
| ```bash | ||||
| sudo parted /dev/sdb | ||||
| ```sh | ||||
| parted /dev/sdb | ||||
| ``` | ||||
|  | ||||
|  | ||||
| # Monitoring | ||||
| Look at physical and virtual partitions: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| df -h | ||||
| ``` | ||||
|  | ||||
| or  divide things by inode - the thing which records where files are? | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| df -i | ||||
| ``` | ||||
|  | ||||
| Examine a fileSystem with: | ||||
|  | ||||
| ```bash | ||||
| sudo dumpe2fs /dev/sda1 | less | ||||
| ```sh | ||||
| dumpe2fs /dev/sda1 | less | ||||
| ``` | ||||
|  | ||||
| # Prevention | ||||
| There are multiple programs which work mostly the same way. | ||||
|  | ||||
| ```bash | ||||
| sudo tune2fs -c 30 /dev/sda1 | ||||
| ```sh | ||||
| tune2fs -c 30 /dev/sda1 | ||||
| ``` | ||||
|  | ||||
| This will check sda1 every 30 boots.  It can also be checked every month. | ||||
|  | ||||
| ```bash | ||||
| sudo tune2fs -i 1m /dev/sda1 | ||||
| ```sh | ||||
| tune2fs -i 1m /dev/sda1 | ||||
| ``` | ||||
|  | ||||
| This thing can also make a new label for the System: | ||||
|  | ||||
| ```bash | ||||
| sudo tune2fs -L new_name /dev/sdb3 | ||||
| ```sh | ||||
| tune2fs -L new_name /dev/sdb3 | ||||
| ``` | ||||
|  | ||||
| # Repair | ||||
| Start by unmounting the fileSystem. | ||||
|  | ||||
| ```bash | ||||
| sudo umount /dev/sdc1 | ||||
| ```sh | ||||
| umount /dev/sdc1 | ||||
| ``` | ||||
|  | ||||
| Then it's time to check.  | ||||
|  | ||||
| ```bash | ||||
| sudo fsck /dev/sdc1 | ||||
| ```sh | ||||
| fsck /dev/sdc1 | ||||
| ``` | ||||
|  | ||||
| And possibly repair damage: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| e2fsck -p /dev/sdc1 | ||||
| ``` | ||||
|  | ||||
|  | ||||
| or the same with: | ||||
|  | ||||
| ```bash | ||||
| sudo debugfs /dev/sdc1 | ||||
| ```sh | ||||
| debugfs /dev/sdc1 | ||||
| ``` | ||||
|  | ||||
| # Mounting | ||||
| You can mount with a specified filetype with: | ||||
|  | ||||
| ```bash | ||||
| sudo mount -t ext3 /dev/sdc2 /mnt/stick | ||||
| ```sh | ||||
| mount -t ext3 /dev/sdc2 /mnt/stick | ||||
| ``` | ||||
|  | ||||
| or if you don't know the type, just try the lot: | ||||
|  | ||||
| ```bash | ||||
| sudo mount -a /dev/sdc1 /mnt/stick | ||||
| ```sh | ||||
| mount -a /dev/sdc1 /mnt/stick | ||||
| ``` | ||||
|  | ||||
| # File Systems | ||||
| @@ -152,35 +154,35 @@ NB: When I followed these instructions, the process destroyed my data. Seemed fi | ||||
|  | ||||
| Check the fileSystem's health: | ||||
|  | ||||
| ```bash | ||||
| sudo e2fsck -f /dev/sdb1 | ||||
| ```sh | ||||
| e2fsck -f /dev/sdb1 | ||||
| ``` | ||||
|  | ||||
| Resize the file System to something smaller than what you want, so here I want 500G and so I resize to 450 G. | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| resize2fs /dev/sdb1 450G | ||||
| ``` | ||||
|  | ||||
| Then delete the partition with either gdisk or fdisk, depending upon the layout. | ||||
|  | ||||
| ```bash | ||||
| sudo fdisk /dev/sdb | ||||
| ```sh | ||||
| fdisk /dev/sdb | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| d | ||||
| ``` | ||||
|  | ||||
| Then make a new fileSystem of the desired type with: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| n | ||||
| ``` | ||||
|  | ||||
| And finally resize to the full size you want: | ||||
|  | ||||
| sudo resize2fs /dev/sdb1 | ||||
| resize2fs /dev/sdb1 | ||||
|  | ||||
| And then check your disk again with e2fsck. | ||||
|  | ||||
| @@ -193,20 +195,18 @@ Let's start with names.  PV = 'Physical Volume', VG = 'Volume Group', and LV = ' | ||||
|  | ||||
| Now we can create a volume group out of sdb2 and sdc3: | ||||
|  | ||||
| ```bash | ||||
| sudo vgcreate my-new-vg /dev/sdb2 /dev/sdc3 | ||||
| ```sh | ||||
| vgcreate my-new-vg /dev/sdb2 /dev/sdc3 | ||||
| ``` | ||||
|  | ||||
| Then make a new logical volume out of the volume group: | ||||
|  | ||||
| ```bash | ||||
| sudo lvcreate -n my-new-lv my-new-vg | ||||
| ```sh | ||||
| lvcreate -n my-new-lv my-new-vg | ||||
| ``` | ||||
|  | ||||
| Then have a look at all logical volumes: | ||||
|  | ||||
| ```bash | ||||
| sudo lvscan | ||||
| ```sh | ||||
| lvscan | ||||
| ``` | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -4,49 +4,47 @@ tags: [ "basics" ] | ||||
| --- | ||||
| # Making a Swap File | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| su root | ||||
| cd /var/cache/ | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| sudo dd if=/dev/zero of=swapfile bs=1K count=4M | ||||
| dd if=/dev/zero of=swapfile bs=1K count=4M | ||||
| ``` | ||||
|  | ||||
| This creates a swapfile of (1k x 4M) 4 Gigs. | ||||
| Change 4M to XM for an XGig swap. | ||||
|  | ||||
| ```bash | ||||
| sudo chmod 600 swapfile | ||||
| ```sh | ||||
| chmod 600 swapfile | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| sudo mkswap swapfile | ||||
| ```sh | ||||
| mkswap swapfile | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| sudo swapon swapfile | ||||
| ```sh | ||||
| swapon swapfile | ||||
| ``` | ||||
|  | ||||
| Test it's working with top | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| top -bn1 | grep -i swap | ||||
| ``` | ||||
|  | ||||
| or: | ||||
|  | ||||
| ```bash | ||||
| echo "/var/cache/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab | ||||
| ```sh | ||||
| echo "/var/cache/swapfile none swap sw 0 0" | tee -a /etc/fstab | ||||
| ``` | ||||
|  | ||||
| Test it'll work at boot with: | ||||
|  | ||||
| ```bash | ||||
| sudo swapoff swapfile | ||||
| ```sh | ||||
| swapoff swapfile | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| sudo swapon -va | ||||
| ```sh | ||||
| swapon -va | ||||
| ``` | ||||
|  | ||||
| # Partition Swaps | ||||
| @@ -57,13 +55,13 @@ Put this in /etc/fstab: | ||||
|  | ||||
| Then test it works with: | ||||
|  | ||||
| ```bash | ||||
| sudo swapon -va | ||||
| ```sh | ||||
| swapon -va | ||||
| ``` | ||||
|  | ||||
| Test other partitions in fstab with: | ||||
|  | ||||
| ```bash | ||||
| sudo mount -a | ||||
| ```sh | ||||
| mount -a | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -1,10 +1,10 @@ | ||||
| --- | ||||
| title: "tmux" | ||||
| tags: [ "System" ] | ||||
| tags: [ "system" ] | ||||
| --- | ||||
| Start with: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| tmux | ||||
| ``` | ||||
|  | ||||
| @@ -34,21 +34,21 @@ In addition to Windows, there are panes. | ||||
|  | ||||
| Crate a new session with the name 'backup'. | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| tmux new -s backup | ||||
| ``` | ||||
|  | ||||
| List sessions: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| tmux list-sessions | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| tmux kill-session -t 2 | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| tmux attach -t backup | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -2,21 +2,21 @@ | ||||
| title: "Docker" | ||||
| tags: [ "documentation", "Virtualization" ] | ||||
| --- | ||||
| ```bash | ||||
| ```sh | ||||
| sudo pacman -S docker | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo usermod -aG docker $USER | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo systemctl start docker | ||||
| ``` | ||||
|  | ||||
| You need to either log out and back in again to be in the docker group, or run everything as root. | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| # docker info | ||||
| ``` | ||||
|  | ||||
| @@ -24,19 +24,19 @@ This should show you things are working. | ||||
|  | ||||
| Search for a distro you want | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| docker search debian | ||||
| ``` | ||||
|  | ||||
| If you get a hit, pull it. | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| docker pull debian | ||||
| ``` | ||||
|  | ||||
| Then run a live image: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| docker run -it debian | ||||
| ``` | ||||
|  | ||||
| @@ -44,13 +44,13 @@ docker run -it debian | ||||
|  | ||||
| Check currently running containers with | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| docker ps | ||||
| ``` | ||||
|  | ||||
| Check all containers with | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| docker ps -a | ||||
| ``` | ||||
|  | ||||
| @@ -58,7 +58,7 @@ Now we can get a list of all containers. | ||||
|  | ||||
| To delete one, take the id, e.g. '97796727e883', and run: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| docker rm 97796727e883 | ||||
| ``` | ||||
|  | ||||
| @@ -66,7 +66,7 @@ docker rm 97796727e883 | ||||
|  | ||||
| Get a list of docker container ips | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' *container_name_or_id* | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -6,27 +6,27 @@ tags: [ "System" ] | ||||
|  | ||||
| ## Arch Linux | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo pacman -S virtualbox-host-modules-arch virtualbox-guest-iso | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo modprobe vboxdrv | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| # vboxreload | ||||
| ``` | ||||
|  | ||||
| Make dd image into vdi | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| VBoxManage convertdd base.dd output.vdi --format VDI | ||||
| ``` | ||||
|  | ||||
| If this doesn't work, try to make a new bite size with just | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sudo dd if=image.dd of=image2.dd bs=512 conv=sync | ||||
| ``` | ||||
|  | ||||
| @@ -34,19 +34,19 @@ sudo dd if=image.dd of=image2.dd bs=512 conv=sync | ||||
|  | ||||
| List boxes: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| VBoxManage list vms | ||||
| ``` | ||||
|  | ||||
| Start a headless instance | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| VBoxManage startvm "rata" --type headless | ||||
| ``` | ||||
|  | ||||
| To pause the machine: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| VBoxManage controlvm "rata" pause --type headless | ||||
| ``` | ||||
|  | ||||
| @@ -64,15 +64,15 @@ You can do a number of things to virtualboxes this way: | ||||
|  | ||||
| Creating a VM requires registering it: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| VBoxManage createvm --name Ubuntu19.04 --register  --ostype Ubuntu | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| VBoxManage modifyvm Ubuntu19.04 --memory 1042 | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| VBoxManage storagectl Ubuntu19.04 -name IDE --add ide --controller PIIX4  --bootable on | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -5,15 +5,15 @@ tags: [ "xe", "virtualization", "volume" ] | ||||
| # Make a local iso repository | ||||
|  | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| STORE_PATH=/var/opt/xen/ISO_Store | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| mkdir -p $STORE_PATH | ||||
| ``` | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| xe sr-create name-label="$STORAGE_NAME" type=iso device-config:location=$STORE_PATH device-config:legacy_mode=true content-type=iso | ||||
| ``` | ||||
|  | ||||
| @@ -23,7 +23,7 @@ This creates a UUID for the new directory: | ||||
|  | ||||
| # Main Console | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| xsconsole | ||||
| ``` | ||||
|  | ||||
| @@ -31,13 +31,13 @@ xsconsole | ||||
|  | ||||
| List volumes: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| lvs | ||||
| ``` | ||||
|  | ||||
| List groups: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| vgs | ||||
| ``` | ||||
|  | ||||
|   | ||||
| @@ -5,21 +5,21 @@ tags: [ "Markdown", "PDF", "Vision" ] | ||||
|  | ||||
| Turn a markdown file into a pdf: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| lowdown -stms "$FILE".md | pdfroff -itk -mspdf > "$FILE".pdf | ||||
| ``` | ||||
|  | ||||
| *Example:* put [this Makefile](lowdown/example.txt) in a directory, rename it `Makefile`, then do: | ||||
|  | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| make example | ||||
| make | ||||
| ``` | ||||
|  | ||||
| To give the document a title, put that title in the metadata: | ||||
|  | ||||
| ```bash | ||||
| ```sh | ||||
| sed -i "1 i---" "$FILE".md | ||||
| sed -i "1 ititle: $TITLE" "$FILE".md | ||||
| sed -i "1 i---" "$FILE".md | ||||
|   | ||||
		Reference in New Issue
	
	Block a user