nndocs:initial
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| nndocs:initial [2021/02/26 15:36] – update to-do list naptastic | nndocs:initial [2024/12/05 18:16] (current) – stub out thing naptastic | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ===== Standard Debian Setup at narf.rocks | + | ===== Naptastic Network Playbook |
| + | ====Partition drives==== | ||
| + | Partitioning: | ||
| - | **We want to get to get this completely automated**. The main tool for this will be Preseed files, of which there will be several. "Nuke And Repave" | + | Add / |
| - | == Items About Which Nap Gives No Hecks == | + | ====Move ~ to a BTRFS subvolume==== |
| + | Separate snapshotting the OS from snapshotting your files. | ||
| - | These are technologies in which I expect never to have interest. Nothing' | + | ====SSH key for root==== |
| + | mkdir /root/.ssh | ||
| + | chmod 700 /root/.ssh | ||
| + | curl https:// | ||
| - | * Desktop environments other than MATE | + | ====Reconfigure SSH==== |
| - | * Distributions other than my favorite at the time, which will probably be Debian until I make my own. | + | Configure ssh for a high-numbered port, and not to allow password-based logins. Restart sshd. Verify that 'ssh root@localhost' |
| - | * OpenStack. Just no. (But I can keep a host aggregate here if it's not too onerous.) | + | |
| - | * PCI passthrough for " | + | |
| - | * (Nap: Add to this list.) | + | |
| - | == Nap's To-do == | + | ====Backups==== |
| + | Create / | ||
| - | I need to put a hard cap on this, and start paring things down. Use the resources I have to make disaster recovery and rapid (re)deployment as easy as possible, and then **get the fuck out of this hobby** because it **SUCKS** and I have dozens of other things I'd rather be doing with my limited time! | + | # / was on / |
| + | UUID=some-long-string / | ||
| + | UUID=some-long-string / | ||
| - | * email (:sob:) | + | ====Install Shorewall==== |
| - | * Break it up into smaller tasks. | + | * customize interfaces, rules, policy...? |
| - | - receive mail ✓ | + | * /etc/ |
| - | - migrate mail ✓ | + | * /etc/shorewall/shorewall.conf |
| - | - SpamAssassin ✓ | + | * systemctl enable |
| - | - dovecot for IMAP ✓ | + | * reboot a bunch of times because it's not passing traffic for no reason |
| - | - configure mail.naptastic.com to send via smarthost @ Digital Ocean | + | |
| - | - configure DO droplet as a relay | + | |
| - | - mailman | + | |
| - | - migrate lists | + | |
| - | - webmail (preferably something that doesn' | + | |
| - | - mailman | + | |
| - | * Failover and fallback! Shorewall should make it pretty easy. | + | |
| - | * Second nameserver | + | |
| - | * Update a preseed file (or a script) every time you have to install. Update the /etc repo | + | |
| - | * s/quirk/@providers/; | + | |
| - | * fix the PXE environment if that's in any way possible | + | |
| - | * Make the PHP-based sites easier to replicate | + | |
| - | * Headless audio | + | |
| - | == Horsey' | + | ====Pick the best mirror==== |
| + | If the repo is installed or mounted locally: | ||
| + | deb file:/// | ||
| + | deb-src file:/// | ||
| - | * System monitoring | + | If you have to get it via HTTP: |
| + | deb http:// | ||
| + | deb-src http:// | ||
| - | == Later or Never == | + | If you have to use public mirrors (RIP): |
| + | deb http:// | ||
| + | deb-src http:// | ||
| - | * CUDA (Once GPU math makes sense) | + | ====Remove crap==== |
| + | apt -y remove update-notifier pulseaudio-module-bluetooth bluez blueman bluez-cups bluez-obexd modemmanager rtkit | ||
| - | ===== Getting Started ===== | + | ====Install extra packages==== |
| + | (This is set up so you can triple-click each block you need, copy/paste or middle-paste into your terminal, then press enter at the end and install everything in one transaction.) | ||
| - | Perform a network | + | apt -y install |
| - | run the naptastic installer if it didn't run as part of the installer: | + | Hardware hosts add: |
| + | | ||
| - | curl https:// | + | Desktops: |
| + | | ||
| - | | + | Audio workstations: |
| - | mkdir / | + | |
| - | chmod 700 / | + | |
| - | curl https:// | + | |
| - | Configure ssh for a high-numbered port, and not to allow password-based logins. Restart sshd. Verify that 'ssh root@localhost' | + | If you plan to compile |
| + | bison flex libssl-dev ncurses-dev libelf-dev | ||
| - | == Check out /etc == | + | ====Networking==== |
| + | ===Device Names=== | ||
| + | ln -s /dev/null / | ||
| - | (You forwarded your agent, right?) | + | Here is what a link file looks like for an Ethernet device: |
| + | $ cat / | ||
| + | # | ||
| + | # Remember to `update-initramfs -u` after changing this file! | ||
| + | # | ||
| + | [Match] | ||
| + | MACAddress=b4: | ||
| + | |||
| + | [Link] | ||
| + | Name=emo0 | ||
| + | MTUBytes=9000 | ||
| - | git clone git@github.com: | + | * emoX for ports on the motherboard |
| - | | + | * enX for (multi-)gigabit stand-up cards |
| - | cd /etc | + | |
| - | git status | + | * mlxX for Mellanox devices in Ethernet mode |
| - | and see where you stand. | + | ===Port Conventions=== |
| + | X is 0-indexed. Port 0 on a stand-up card is the farthest from the motherboard. On a motherboard, | ||
| - | Remember: We play with live ammo. Don't `git rm` something unless | + | ===InfiniBand=== |
| + | * [[infiniband]] | ||
| + | * mst* installer | ||
| + | * copy production opensm configuration in case you have take over as SM | ||
| + | * (what needs to change here for VMs using virtual functions?) | ||
| - | == Networking == | + | Comment out svcrdma in / |
| - | ln -s /dev/null / | + | ===Ethernet configuration=== |
| + | Is a total mess right now. I don't know what I'm doing or how I want to do it. | ||
| - | check /etc/network/ | + | ====Hugepages==== |
| + | Useful for databases, PHP, Factorio, and probably other things! Add something like this to /etc/sysctl.conf: | ||
| - | The answer, somehow, is Netplan; I just don't like that answer much. The answer should be to //remove// layers of complexity, not add them. Just name my devices eth0 and eth1, dammit, or give me control over the naming. | + | vm.nr_hugepages=512 |
| - | Some of my systems are using ifupdown, and some I'm not sure how they work, and some don't work right. Linux networking is fucking terrible. | + | To make a non-persistent change, |
| - | + | ||
| - | == Disable TTY screen blanking (Only necessary on Debian Jessie and older) == | + | |
| - | Add this to ''/ | + | sysctl -w vm.nr_hugepages=512 |
| - | sh -c ' | + | Make sure your locked memory limit is equal to or greater than the amount of RAM you're reserving for hugepages. |
| - | ===== Options ===== | + | ====Shell profile==== |
| + | * Profile stuff: Bash, Vim, ? Can I automate this? (Of course I can.) | ||
| - | maybe you feel like it, maybe you don't. idk. **This will be replaced with customized preseed files**. | + | ====Logging==== |
| + | * disable journald; configure logging for everything. | ||
| + | | ||
| - | == For all systems | + | ====Email==== |
| + | lol, not yet | ||
| - | apt -y remove update-notifier pulseaudio-module-bluetooth bluez blueman bluez-cups bluez-obexd modemmanager rtkit | + | ====Disable TTY screen blanking==== |
| + | I don't know when this is necessary anymore. Add this to ''/ | ||
| - | == For hardware boxes == | + | sh -c ' |
| - | apt -y install smartmontools qemu-kvm gparted | + | ====Audio workstations==== |
| - | + | ||
| - | == If you are using a graphical desktop environment | + | |
| - | + | ||
| - | (this needs an update: not sure about fonts packages. Also some network-manager-*-gnome packages might be useful depending on what kind of networking you're doing.) | + | |
| - | + | ||
| - | apt -y install hexchat synaptic terminator fonts-lohit-knda fonts-knda keepassx evolution virt-manager network-manager-gnome | + | |
| - | + | ||
| - | == If you plan to do audio work == | + | |
| - | + | ||
| - | apt -y install qjackctl alsa-tools-gui eq10q jalv jamin lilv-utils | + | |
| cat >> / | cat >> / | ||
| default-sample-format = s24le | default-sample-format = s24le | ||
| Line 115: | Line 130: | ||
| ^D | ^D | ||
| - | == If you plan to compile your own kernel == | + | More on [[lad]]. |
| - | + | ||
| - | apt -y install bison flex libssl-dev ncurses-dev | + | |
nndocs/initial.1614353813.txt.gz · Last modified: 2021/02/26 15:36 by naptastic
