User Tools

Site Tools


linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
linux [2025/11/17 14:29] – created reddylinux [2026/03/01 20:25] (current) reddy
Line 1: Line 1:
-Linux+====== Linux ======
  
-Topics+===== Popular Topics =====
  
 +  * [[bash]]
 +  * [[bind]]
 +  * [[Docker]]
 +  * [[diff]]
 +  * [[Git]]
 +  * [[rsync]]
 +  * [[Samba]]
   * [[SystemD Unit Files]]   * [[SystemD Unit Files]]
   * [[tuned]]   * [[tuned]]
 +  * [[Vim]]
 +  * [[VNC]]
 +
 +===== Miscellaneous =====
 +
 +==== Suppressing the Service Restart prompt for "apt install" ====
 +
 +<code>
 +/etc/needrestart/needrestart.conf
 +$nrconf{verbosity} = 0;
 +$nrconf{restart} = 'a';
 +
 +export DEBIAN_FRONTEND=noninteractive
 +export APT_LISTCHANGES_FRONTEND=none
 +export NEEDRESTART_MODE=a  # default is "i"nteractive; change to "a"utomatic ; see: /etc/needrestart/needrestart.conf
 +export NEEDRESTART_SUSPEND=1
 +# echo 'libc6 libraries/restart-without-asking boolean true' | debconf-set-selections
 +
 +sudo apt-get remove apt-listchanges --assume-yes --force-yes
 +sudo apt-get --force-yes -o Dpkg::Options::="--force-confold" -o Dpkg::Options::="--force-confdef" -fuyq install package-name-here
 +</code>
 +
 +==== Upgrade to Ubuntu 24.04 LTS ====
 +
 +<code>
 +sudo apt install -y ubuntu-release-upgrader-core
 +
 +# Ensure "Prompt=lts" in "/etc/update-manager/release-upgrades" (instead of "Prompt=normal")
 +
 +do-release-upgrade  # Pass "-d" to upgrade before officially supported
 +
 +# apt dist-upgrade
 +</code>
 +
 +==== Limiting Resources ====
 +
 +<code>
 +mkdir /sys/fs/cgroup/myapp
 +CPU_QUOTA=50
 +CPU_PERIOD=100
 +echo "$CPU_QUOTA $CPU_PERIOD" > /sys/fs/cgroup/myapp/cpu.max
 +RAM_QUOTA="1024M"
 +echo "$RAM_QUOTA" > /sys/fs/cgroup/myapp/memory.max
 +cp /var/run/myappdb/myappd.pid /sys/fs/cgroup/myapp/cgroup.procs
 +#rm -Rf /sys/fs/cgroup/myapp
 +
 +With tools:
 +apt install -y cgroup-tools
 +cgcreate -g cpu,memory:/myapp
 +cgset -r cpy.max="50 100" myapp
 +cgset -r memory.max="1024M" myapp
 +cgclassify -g cpu,memory:myapp $(cat /var/run/myappdb/myappd.pid)
 +cgexec -g cpu,memory:myapp /usr/bin/myappd --dbpath .
 +#cgdelete -g cpu,memory:myapp
 +
 +systemd-run -u myappd -p CPUQuota=50% -p MemoryMax=1024M /usr/bin/myappd
 +systemd-cgls --all
 +systemd-cgtop
 +
 +
 +/etc/systemd/system/myapp.slice
 +[Slice]
 +CPUQuota=50%
 +MemoryMax=1024M
 +systemctl edit --full myappd.service
 +Slice=myapp.slice  #Add to the [Service] section
 +
 +systemd-run -u myappd --slice=myapp.slice /usr/bin/myappd
 +
 +# To run with Docker
 +docker run -d --name db --cgroup-parent=myapp.slice myappimg
 +</code>
 +
 +==== ssh-copy-id ====
 +
 +<code>
 +ssh-keygen -f key_file_name
 +
 +# To make it non-interactive (we cannot pass the StrictHostKeychecking so we direct the "yes")
 +sshpass -p mypassword ssh-copy-id -i key_file_name.pub myuser@myserver <<< yes
 +
 +# ssh-copy-id doesn't directly support auth with another key
 +# ...but it passes along options to ssh
 +ssh-copy-id -i ~/.ssh/id_rsa.nondefault -o 'IdentityFile ~/vm-key' user@remote
 +
 +# This can also be done with ssh-agent
 +eval $(ssh-agent -s)  # Start the agent
 +ssh-add ~/vm-key      # Add the key to the agent
 +ssh-copy-id -i ~/.ssh/id_rsa.nondefault user@remote
 +eval $(ssh-agent -k)  # Stop the agent
 +</code>
 +
 +
linux.1763386147.txt.gz · Last modified: (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki