Merge pull request #211 from NebulousLabs/increase-file-limits

Increase file limits
This commit is contained in:
Marcin Jachymiak 2020-05-19 16:50:13 -04:00 committed by GitHub
commit a66d429f66
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 68 additions and 5 deletions

58
setup-scripts/limits.conf Normal file
View File

@ -0,0 +1,58 @@
# /etc/security/limits.conf
#
#Each line describes a limit for a user in the form:
#
#<domain> <type> <item> <value>
#
#Where:
#<domain> can be:
# - a user name
# - a group name, with @group syntax
# - the wildcard *, for default entry
# - the wildcard %, can be also used with %group syntax,
# for maxlogin limit
# - NOTE: group and wildcard limits are not applied to root.
# To apply a limit to the root user, <domain> must be
# the literal username root.
#
#<type> can have the two values:
# - "soft" for enforcing the soft limits
# - "hard" for enforcing hard limits
#
#<item> can be one of the following:
# - core - limits the core file size (KB)
# - data - max data size (KB)
# - fsize - maximum filesize (KB)
# - memlock - max locked-in-memory address space (KB)
# - nofile - max number of open file descriptors
# - rss - max resident set size (KB)
# - stack - max stack size (KB)
# - cpu - max CPU time (MIN)
# - nproc - max number of processes
# - as - address space limit (KB)
# - maxlogins - max number of logins for this user
# - maxsyslogins - max number of logins on the system
# - priority - the priority to run user process with
# - locks - max number of file locks the user can hold
# - sigpending - max number of pending signals
# - msgqueue - max memory used by POSIX message queues (bytes)
# - nice - max nice priority allowed to raise to values: [-20, 19]
# - rtprio - max realtime priority
# - chroot - change root to directory (Debian-specific)
#
#<domain> <type> <item> <value>
#
#* soft core 0
#root hard core 100000
#* hard rss 10000
#@student hard nproc 20
#@faculty soft nproc 20
#@faculty hard nproc 50
#ftp hard nproc 0
#ftp - chroot /ftp
#@student - maxlogins 4
user soft nofile 25000
# End of file
~

View File

@ -43,17 +43,17 @@ sudo ufw allow ssh
sudo ufw allow 'Nginx Full'
sudo ufw allow 'Nginx HTTP'
# Install Go 1.13.7.
wget -c https://dl.google.com/go/go1.13.7.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.13.7.linux-amd64.tar.gz
# Install Go 1.13.11.
wget -c https://dl.google.com/go/go1.13.11.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.13.11.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
rm go1.13.7.linux-amd64.tar.gz
rm go1.13.11.linux-amd64.tar.gz
# Sanity check that will pass if go was installed correctly.
go version
# Install Sia
git clone -b v1.4.4 https://gitlab.com/NebulousLabs/Sia ~/Sia
git clone -b v1.4.8 https://gitlab.com/NebulousLabs/Sia ~/Sia
make --directory ~/Sia
# Setup systemd files
@ -71,6 +71,9 @@ sudo mkdir -p /var/log/journal
sudo cp journald.conf /etc/systemd/journald.conf
sudo systemctl restart systemd-journald
# Set up file limits.
sudo cp limits.conf /etc/security/limits.conf
# Setup periodical /tmp cleanup so we don't run out of disk space
# - deletes anything older than 10 days from /tmp, crontab is set to run it every day at midnight
(sudo crontab -l 2>/dev/null; echo "0 0 * * * find /tmp -type f -atime +10 -delete >/dev/null 2>&1") | sudo crontab -

View File

@ -9,6 +9,7 @@ ExecStart=/home/user/go/bin/siad --api-addr "localhost:9970" --rpc-addr ":9971"
ExecStop=/home/user/go/bin/siac --addr "localhost:9970" stop
Restart=on-failure
SyslogIdentifier=siad-upload
LimitNOFILE=10000
[Install]
WantedBy=default.target

View File

@ -9,6 +9,7 @@ ExecStart=/home/user/go/bin/siad
ExecStop=/home/user/go/bin/siac stop
Restart=on-failure
SyslogIdentifier=siad
LimitNOFILE=10000
[Install]
WantedBy=default.target