forked from andonome/lk
		
	Merge branch 'dev' into vhs
This commit is contained in:
		
							
								
								
									
										12
									
								
								basics/Joyous_ASCII.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								basics/Joyous_ASCII.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | |||||||
|  | --- | ||||||
|  | title: "Joyous ASCII" | ||||||
|  | tags: [ "fun" ] | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | - `asciiquarium` | ||||||
|  | - `cbonsai -lim "$(fortune)"` | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cow=$(cowsay -l | sort -R | head  -1) | ||||||
|  | fortune -s | figlet | cowsay -nf $cow | lolcat | ||||||
|  | ``` | ||||||
							
								
								
									
										114
									
								
								basics/cron.md
									
									
									
									
									
								
							
							
						
						
									
										114
									
								
								basics/cron.md
									
									
									
									
									
								
							| @@ -2,9 +2,11 @@ | |||||||
| title: "cron" | title: "cron" | ||||||
| tags: [ "Documentation", "Basics" ] | tags: [ "Documentation", "Basics" ] | ||||||
| --- | --- | ||||||
| # Cron | # Cronie | ||||||
|  |  | ||||||
| The crontab program might have various names, like `cronie` or `crond`. | The `cronie` program is also known as `crond`. | ||||||
|  |  | ||||||
|  | ## Install | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| sudo apt search -n ^cron | sudo apt search -n ^cron | ||||||
| @@ -17,29 +19,33 @@ sudo systemctl list-unit-files | grep cron | |||||||
| sudo systemctl enable --now $NAME | sudo systemctl enable --now $NAME | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| Make a file for your crontab, like this: | ## Usage | ||||||
|  |  | ||||||
|  | Show your current crontab: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| echo '39 */3 * * * /usr/bin/updatedb' > "$USER".cron | crontab -l | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | You can put this in a file and edit it: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | crontab -l > $filename | ||||||
|  | echo '39 3 */3 * * /bin/tar czf /tmp/etc_backup.tgz /etc/' >> $filename | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| Then apply that crontab: | Then apply that crontab: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| crontab "$USER".cron | crontab $filename | ||||||
| rm "$USER".cron | rm $filename | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| The `cron` program will check your syntax before adding the tab. | The `cron` program will check your syntax before adding the tab. | ||||||
|  |  | ||||||
| Your crontab file sits somewhere in `/var/spool/`. | Your crontab file sits somewhere in `/var/spool/`. | ||||||
| Probably in `/var/spool/cron`. | Probably in `/var/spool/cron`. | ||||||
|  |  | ||||||
| Check how your tab currently looks: |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| crontab -l |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| ## Syntax | ## Syntax | ||||||
|  |  | ||||||
| `* * * * *` | `* * * * *` | ||||||
| @@ -50,43 +56,61 @@ These five points refer to: | |||||||
|  |  | ||||||
| So '3pm every Sunday' would be: | So '3pm every Sunday' would be: | ||||||
|  |  | ||||||
| > 0 15 * * 7 | `0 15 * * 7` | ||||||
|  |  | ||||||
| Here 'Sunday' is indicated by "7", and '3pm' is 'the 15th hour'. | Here 'Sunday' is indicated by "7", and '3pm' is 'the 15th hour'. | ||||||
| The minute is '0' (i.e. '0 minutes past three pm'). | The minute is '0' (i.e. '0 minutes past three pm'). | ||||||
|  |  | ||||||
| Doing the same thing, but only in February, would be: | Doing the same thing, but only in February, would be: | ||||||
|  |  | ||||||
| > 0 15 * 2 7 | `0 15 * 2 7` | ||||||
|  |  | ||||||
| ### Full Paths | ### Variables | ||||||
|  |  | ||||||
|  | `cronie` doesn't know where you live, so to put something in your `$HOME` directory, you have to tell it: | ||||||
|  |  | ||||||
| Executing something requires the full path to where it is, so you cannot simply use `apt update -y`, because cron does not know where `apt` is. |  | ||||||
| Instead, find out where it is: |  | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| type -P apt | echo "HOME=$HOME" > $filename | ||||||
|  | crontab -l >> $filename | ||||||
|  | crontab $filename | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `/usr/bin/apt` | `cronie` doesn't know where anything lives, including programs. | ||||||
|  | You can give it your usual `$PATH` variable like this: | ||||||
|  |  | ||||||
| Then put that into the crontab: |  | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| sudo crontab -e | echo $PATH > $filename | ||||||
|  | crontab -l >> $filename | ||||||
|  | crontab $filename | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| > 40 */3 * * * /usr/bin/apt update -y | Now instead of doing this | ||||||
|  |  | ||||||
| This will run `apt update -y` as root every 3 hours, at 40 minutes past the hour, e.g. 00:40, 03:40, 06:40. | `40 */3 * * * /usr/bin/du -sh $HOME/* | sort -h > $HOME/sum.txt` | ||||||
|  |  | ||||||
| ## Directories | You can simply do this:  | ||||||
|  |  | ||||||
|  | `40 */3 * * * du -sh $HOME/* | sort -h > $HOME/sum.txt` | ||||||
|  |  | ||||||
|  | ## Run as Root | ||||||
|  |  | ||||||
| You can execute a script as root by putting it into a directory, instead of in the tab. | You can execute a script as root by putting it into a directory, instead of in the tab. | ||||||
| Look at the available cron directories: | Look at the available cron directories: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| ls /etc/cron.\* | ls -d /etc/cron.* | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Make a script which runs daily: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | f=apt_update.sh | ||||||
|  | echo '#!/bin/bash' > $f | ||||||
|  | echo 'apt update --yes' >> $f | ||||||
|  | chmod +x $f | ||||||
|  | sudo mv $f /etc/cron.daily/ | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ### Testing with runparts | ### Testing with runparts | ||||||
| @@ -97,47 +121,9 @@ Run-parts runs all executable scripts in a directory. | |||||||
| run-parts /etc/cron.hourly | run-parts /etc/cron.hourly | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ## Tips | # Troubleshooting | ||||||
|  |  | ||||||
| ### Variables |  | ||||||
|  |  | ||||||
| Add your `$HOME` to crontab to use scripts. |  | ||||||
| First add `HOME=/home/$USER`, then you can use syntax like this: |  | ||||||
|  |  | ||||||
| 0 * * * * $HOME/.scripts/myScript.sh |  | ||||||
|  |  | ||||||
| *Remember to test the script by executing that line first*: |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| $HOME/.scripts/myScript.sh |  | ||||||
| ``` |  | ||||||
| You can also add your regular path to your crontab as a variable (see example below). |  | ||||||
| If you're using vim as the editor, just run this at the top of your crontab: |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| :r!echo PATH=$PATH |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| ### `date` Commands | ### `date` Commands | ||||||
|  |  | ||||||
| Cron doesn't understand the `%` sign, so if you want to use `date +%R`, then it should be escaped with a backslash: `date +\%R`. | Cron doesn't understand the `%` sign, so if you want to use `date +%R`, then it should be escaped with a backslash: `date +\%R`. | ||||||
|  |  | ||||||
| ### File Location |  | ||||||
|  |  | ||||||
| The crontab files are in `/var/spool/cron/`, so you can backup or restore them. |  | ||||||
|  |  | ||||||
| # Example |  | ||||||
|  |  | ||||||
| ``` |  | ||||||
| HOME=/home/user |  | ||||||
| PATH=/usr/condabin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/user/.local/bin:/home/user/.scripts/:/home/user/.local/bin:/home/user/.scripts/ |  | ||||||
|  |  | ||||||
| 1 0 1 * *    /usr/bin/mkdir -p $HOME/arc/$(date +\%Y/\%m) |  | ||||||
|  |  | ||||||
| 18 0 1 */3 * $HOME/.scripts/mail-clean.sh |  | ||||||
|  |  | ||||||
| * * * * * ping -c 1 home || mail-pull.sh |  | ||||||
|  |  | ||||||
| 50 18 * * * /usr/bin/timeout 30m /usr/bin/syncthing |  | ||||||
|  |  | ||||||
| ``` |  | ||||||
|   | |||||||
| @@ -92,7 +92,7 @@ A branch is a full copy of the project to test additional ideas. | |||||||
| You can make a new branch called 'featurez' like this: | You can make a new branch called 'featurez' like this: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| git branch *featurez* | git branch $FEATURE_BRANCH | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| Have a look at all your branches: | Have a look at all your branches: | ||||||
| @@ -104,19 +104,20 @@ git branch | |||||||
| Switch to your new branch: | Switch to your new branch: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| git checkout *featurez* | git checkout $FEATURE_BRANCH | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| And if your changes are rubbish, checkout the "master" branch again, then delete "featurez": | And if your changes are rubbish, checkout the "master" branch again, then delete "featurez": | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| git branch -D *featurez* | git branch -D $FEATURE_BRANCH | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| Or if it's a good branch, push it to the remote: | Or if it's a good branch, push it to the remote: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| git push *origin* *featurez* | remote=origin | ||||||
|  | git push $remote $FEATURE_BRANCH | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ## Merging | ## Merging | ||||||
| @@ -124,13 +125,13 @@ git push *origin* *featurez* | |||||||
| Once you like the feature, merge it into the main branch.  Switch to master then merge it: | Once you like the feature, merge it into the main branch.  Switch to master then merge it: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| git merge *featurez* | git merge $FEATURE_BRANCH | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| and delete `featurez` as you've already merged it: | And delete the branch, as you've already merged it: | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| git branch -d featurez | git branch -d $FEATURE_BRANCH | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| # Subtree | # Subtree | ||||||
| @@ -141,34 +142,6 @@ git branch -d featurez | |||||||
| git subtree add -P config git@gitlab.com:bindrpg/config.git master | git subtree add -P config git@gitlab.com:bindrpg/config.git master | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ## Pulling a Subtree from an existing git |  | ||||||
|  |  | ||||||
| The project has subdirectories sub-1,sub-2,sub-3.  The first should be its own repository, but should also retain its own history. |  | ||||||
|  |  | ||||||
| First, we extract its history as an independent item, and make that into a seprate branch. |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| git subtree split --prefix=sub-1 -b sub |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| If you want something a few directories deep, you can use `--prefix=sub-1/dir-2/dir-3 |  | ||||||
|  |  | ||||||
| Then go and create a new git somewhere else: |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| cd ..;mkdir sub-1;cd sub-1;git init --bare |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| Then go back to your initial git repo, and do the following: |  | ||||||
|  |  | ||||||
| git push ../subtest sub:master |  | ||||||
|  |  | ||||||
| Finally, you can clone this repo from your original. |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| git clone ../subtest |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| # Tricks | # Tricks | ||||||
|  |  | ||||||
| ## Delete All History | ## Delete All History | ||||||
|   | |||||||
							
								
								
									
										9
									
								
								data/git/git_secret.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								data/git/git_secret.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | --- | ||||||
|  | title: "git secret" | ||||||
|  | tags: [ "data", "git" ] | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | This utility is largely useless, as it can only identify people by their email. | ||||||
|  | So if someone has multiple GPG keys associated with one email, the tool will not work. | ||||||
|  |  | ||||||
|  | Worse than not working, it may 'suddenly' stop working as you try to transfer a secret to someone, who then discovers that `git-secret` requires them to mess about with their GPG keyring in order to use the repository. | ||||||
							
								
								
									
										34
									
								
								data/git/subtree.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								data/git/subtree.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | |||||||
|  | --- | ||||||
|  | title: "git" | ||||||
|  | tags: [ "Documentation", "data", "git", "subtree" ] | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | ## Pulling a Subtree from an existing git | ||||||
|  |  | ||||||
|  | The project has subdirectories `sub-1`, `sub-2`, `sub-3`. | ||||||
|  | The first should be its own repository, but should also retain its own history. | ||||||
|  |  | ||||||
|  | First, we extract its history as an independent item, and make that into a seprate branch. | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | git subtree split --prefix=sub-1 -b sub | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | If you want something a few directories deep, you can use `--prefix=sub-1/dir-2/dir-3 | ||||||
|  |  | ||||||
|  | Then go and create a new git somewhere else: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cd ..;mkdir sub-1;cd sub-1;git init --bare | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Then go back to your initial git repo, and do the following: | ||||||
|  |  | ||||||
|  | git push ../subtest sub:master | ||||||
|  |  | ||||||
|  | Finally, you can clone this repo from your original. | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | git clone ../subtest | ||||||
|  | ``` | ||||||
|  |  | ||||||
| @@ -1,10 +1,47 @@ | |||||||
| --- | --- | ||||||
| title: "sc-im" | title: "sc-im" | ||||||
| tags: [ "Documentation", "data" ] | tags: [ "Documentation", "TUI", "data" ] | ||||||
| --- | --- | ||||||
| # Edit |  | ||||||
|  |  | ||||||
| ## Text | - [Sample file](sc-im/sample.sc) | ||||||
|  |  | ||||||
|  | # Basic Commands | ||||||
|  |  | ||||||
|  | ## See Cells | ||||||
|  |  | ||||||
|  | Cells are hard to see. | ||||||
|  | Change this with `:set autowrap`. | ||||||
|  |  | ||||||
|  | Make `sc-im` always autowrap: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | mkdir .config/sc-im/bash | ||||||
|  | echo 'set autowrap' >> .config/sc-im/scimrc | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ## Movement | ||||||
|  |  | ||||||
|  | | Command                             | Key | | ||||||
|  | |:------------------------------------|:---:| | ||||||
|  | | highest part                        | H   | | ||||||
|  | | lowest part                         | L   | | ||||||
|  | | top                                 | gg  | | ||||||
|  | | most right.                         | g$  | | ||||||
|  | | most left.                          | g0  | | ||||||
|  | | insert middle                       | \   | | ||||||
|  | | insert left                         | \>  | | ||||||
|  | | insert right                        | <   | | ||||||
|  | | to to cell b4                       | gb4 | | ||||||
|  | | see all text in cells               | aa  | | ||||||
|  | | format cells so you can see it.     | f   | | ||||||
|  | | format wider right                  | fl  | | ||||||
|  | | format smaller left                 | fh  | | ||||||
|  | | format wider down                   | fj  | | ||||||
|  | | format smaller down                 | fk  | | ||||||
|  |  | ||||||
|  | ## Edit | ||||||
|  |  | ||||||
|  | ### Text | ||||||
|  |  | ||||||
| | Action                | Key | | | Action                | Key | | ||||||
| |:----------------------|:---:| | |:----------------------|:---:| | ||||||
| @@ -13,7 +50,7 @@ tags: [ "Documentation", "data" ] | |||||||
| | text (right align)    | `|` | | | text (right align)    | `|` | | ||||||
| | Edit existing  text   | E   | | | Edit existing  text   | E   | | ||||||
|  |  | ||||||
| ## Meta Actions | ### Meta Actions | ||||||
|  |  | ||||||
| | Action                | Key | | | Action                | Key | | ||||||
| |:----------------------|:---:| | |:----------------------|:---:| | ||||||
| @@ -46,7 +83,7 @@ tags: [ "Documentation", "data" ] | |||||||
| | format smaller down             | fk  | | | format smaller down             | fk  | | ||||||
|  |  | ||||||
|  |  | ||||||
| ## Functions | ### Functions | ||||||
|  |  | ||||||
| | Action                          | Key          | | | Action                          | Key          | | ||||||
| |:--------------------------------|:------------:| | |:--------------------------------|:------------:| | ||||||
| @@ -56,7 +93,7 @@ tags: [ "Documentation", "data" ] | |||||||
| |  minimumof those numbers        | =@min(B1:B8) | | |  minimumof those numbers        | =@min(B1:B8) | | ||||||
| |  multiply C1 to C8              | =@prod(C1:C8)| | |  multiply C1 to C8              | =@prod(C1:C8)| | ||||||
|  |  | ||||||
| ## Visual | ### Visual | ||||||
|  |  | ||||||
| | Action                          | Key          | | | Action                          | Key          | | ||||||
| |:--------------------------------|:------------:| | |:--------------------------------|:------------:| | ||||||
|   | |||||||
							
								
								
									
										38
									
								
								data/sc-im/sample.sc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								data/sc-im/sample.sc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | |||||||
|  | # This data file was generated by the Spreadsheet Calculator Improvised (sc-im) | ||||||
|  | # You almost certainly shouldn't edit it. | ||||||
|  |  | ||||||
|  | newsheet "Sheet1" | ||||||
|  | movetosheet "Sheet1" | ||||||
|  | offscr_sc_cols 0 | ||||||
|  | offscr_sc_rows 0 | ||||||
|  | nb_frozen_rows 1 | ||||||
|  | nb_frozen_cols 0 | ||||||
|  | nb_frozen_screenrows 2 | ||||||
|  | nb_frozen_screencols 0 | ||||||
|  | format A 14 1 0 | ||||||
|  | format B 18 2 0 | ||||||
|  | format 0 2 | ||||||
|  | freeze 0 | ||||||
|  | label A0 = "Food by Weight" | ||||||
|  | leftstring B0 = "No. Meals" | ||||||
|  | leftstring A1 = "Ajvar" | ||||||
|  | let A1 = 5 | ||||||
|  | let B1 = A1*$A$10 | ||||||
|  | leftstring A2 = "Apples" | ||||||
|  | let A2 = 3 | ||||||
|  | let B2 = A2*$A$10 | ||||||
|  | leftstring A3 = "Rocket" | ||||||
|  | let A3 = 0.2 | ||||||
|  | let B3 = A3*$A$10 | ||||||
|  | leftstring A4 = "Beli Cheese" | ||||||
|  | let A4 = 1 | ||||||
|  | let B4 = A4*$A$10 | ||||||
|  | leftstring A6 = "Total" | ||||||
|  | let A6 = @sum(A1:A4) | ||||||
|  | leftstring B6 = "Total" | ||||||
|  | let B6 = @sum(B1:B4) | ||||||
|  | leftstring A7 = "Average" | ||||||
|  | let A7 = @avg(A1:A4) | ||||||
|  | leftstring A10 = "Weight of Meal" | ||||||
|  | let A10 = 0.3 | ||||||
|  | goto A0 | ||||||
| @@ -39,7 +39,7 @@ Try placing this in a file: | |||||||
|  |  | ||||||
| > [ One ] { fill: seagreen; color: white; } -- label --> [ Two ] { shape: triangle; } | > [ One ] { fill: seagreen; color: white; } -- label --> [ Two ] { shape: triangle; } | ||||||
| >  | >  | ||||||
| > [ One ] => { arrow-style: closed; } [ Three ] | > [ One ] => { arrow-style: closed; } [ Three ] { border-style: none; } | ||||||
| >  | >  | ||||||
| > [ Five ] { fill: maroon; color: yellow; } <=> [ Three ] | > [ Five ] { fill: maroon; color: yellow; } <=> [ Three ] | ||||||
| >  | >  | ||||||
| @@ -54,3 +54,15 @@ Try placing this in a file: | |||||||
| > [ Eight ] .. [ None ] { shape: none; fill: red; color: brown; } | > [ Eight ] .. [ None ] { shape: none; fill: red; color: brown; } | ||||||
| >  | >  | ||||||
| > [ no Network ] --> [ Is there an IP address? ] | > [ no Network ] --> [ Is there an IP address? ] | ||||||
|  |  | ||||||
|  | > [ Little Group: o] | ||||||
|  |  | ||||||
|  |  | ||||||
|  | ``` | ||||||
|  | echo "( EU [ Madrid ] <---> [ K ] {label: Karlsruhe;} | ||||||
|  |     <== ...O\n ..o\n .O\no \nchoo choo  ==> [ Cern ] [ Cern ] <== ...O\n ..o\n .O\no \nchoo choo  ==> [ Paris ] <...> [ B ] {label: Budapest} ) | ||||||
|  |     [ B ] <---> [ Belgrade ] [ G ] {label: Glasgow; } | ||||||
|  |     <==> [ M ] {label: Manchester }, | ||||||
|  |     [ Madrid ] <---> [ Belgrade ] [ M ] <--> [ London ] <--> [ B ], | ||||||
|  |         [ Belgrade ]" | graph-easy  --boxart | ||||||
|  | ``` | ||||||
|   | |||||||
| @@ -13,11 +13,14 @@ The ordering of `/etc/fstab` is | |||||||
| 5. dump | 5. dump | ||||||
| 6. pass | 6. pass | ||||||
|  |  | ||||||
| E.g.: |  | ||||||
|  |  | ||||||
| > UUID=877f14e8-4738-46b0-884f-ba330dad1a7d       /mnt/biggie                     ext4        nofail,rw,relatime      0 2 | *Example:* | ||||||
| >  |  | ||||||
| > UUID=B21648C416488AF5 /mnt/share ntfs       nofail,rw,nosuid,nodev,user_id=0,group_id=0,allow_other,blksize=4096 0 0 | ``` | ||||||
|  | UUID=877f14e8-4738-46b0-884f-ba330dad1a7d       /mnt/biggie                     ext4        nofail,rw,relatime      0 2 | ||||||
|  |  | ||||||
|  | UUID=B21648C416488AF5 /mnt/share ntfs       nofail,rw,nosuid,nodev,user_id=0,group_id=0,allow_other,blksize=4096 0 0 | ||||||
|  | ``` | ||||||
|  |  | ||||||
| ## 5: Dump | ## 5: Dump | ||||||
|  |  | ||||||
|   | |||||||
| @@ -22,3 +22,8 @@ REP=5 | |||||||
| free --lohi -g -s $REP | lolcat | free --lohi -g -s $REP | lolcat | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
|  | Check the next thing cron will do: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cronnext /var/spool/cron/$USER -l | ||||||
|  | ``` | ||||||
|   | |||||||
| @@ -10,6 +10,12 @@ See a running log of all system messages: | |||||||
| journalctl -f | journalctl -f | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
|  | Or just one user: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | journalctl --user -f | ||||||
|  | ``` | ||||||
|  |  | ||||||
| Or just one unit (`sshd`): | Or just one unit (`sshd`): | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user