Created
June 1, 2018 18:25
-
-
Save samwan/fb98c9d3d05cc638079bc50b826fa7f1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Adapting this auto-shutdown tutorial to work with Gradient Notebooks, which don't provide ssh access: https://paperspace.zendesk.com/hc/en-us/articles/115002807447" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [107 kB]\n", | |
"Ign:2 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 InRelease\n", | |
"Get:3 http://security.ubuntu.com/ubuntu xenial-security/universe Sources [81.2 kB]\n", | |
"Get:4 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [637 kB]\n", | |
"Get:5 http://security.ubuntu.com/ubuntu xenial-security/restricted amd64 Packages [12.7 kB]\n", | |
"Get:6 http://security.ubuntu.com/ubuntu xenial-security/universe amd64 Packages [445 kB]\n", | |
"Get:7 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB] \n", | |
"Ign:8 http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64 InRelease\n", | |
"Get:9 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 Release [564 B]\n", | |
"Get:10 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [3743 B]\n", | |
"Get:11 http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64 Release [564 B]\n", | |
"Get:12 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 Release.gpg [801 B]\n", | |
"Get:13 http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64 Release.gpg [801 B]\n", | |
"Get:14 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 Packages [113 kB]\n", | |
"Get:15 http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64 Packages [23.4 kB]\n", | |
"Get:16 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]\n", | |
"Get:17 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]\n", | |
"Get:18 http://archive.ubuntu.com/ubuntu xenial/universe Sources [9802 kB]\n", | |
"Get:19 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages [1558 kB]\n", | |
"Get:20 http://archive.ubuntu.com/ubuntu xenial/restricted amd64 Packages [14.1 kB]\n", | |
"Get:21 http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages [9827 kB]\n", | |
"Get:22 http://archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages [176 kB]\n", | |
"Get:23 http://archive.ubuntu.com/ubuntu xenial-updates/universe Sources [256 kB]\n", | |
"Get:24 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages [1012 kB]\n", | |
"Get:25 http://archive.ubuntu.com/ubuntu xenial-updates/restricted amd64 Packages [13.1 kB]\n", | |
"Get:26 http://archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [814 kB]\n", | |
"Get:27 http://archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages [18.8 kB]\n", | |
"Get:28 http://archive.ubuntu.com/ubuntu xenial-backports/main amd64 Packages [5157 B]\n", | |
"Get:29 http://archive.ubuntu.com/ubuntu xenial-backports/universe amd64 Packages [8068 B]\n", | |
"Fetched 25.4 MB in 2s (8874 kB/s) \n", | |
"Reading package lists... Done\n", | |
"Reading package lists... Done\n", | |
"Building dependency tree \n", | |
"Reading state information... Done\n", | |
"The following additional packages will be installed:\n", | |
" libxss1\n", | |
"The following NEW packages will be installed:\n", | |
" libxss1 xprintidle\n", | |
"0 upgraded, 2 newly installed, 0 to remove and 85 not upgraded.\n", | |
"Need to get 15.0 kB of archives.\n", | |
"After this operation, 86.0 kB of additional disk space will be used.\n", | |
"Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxss1 amd64 1:1.2.2-1 [8582 B]\n", | |
"Get:2 http://archive.ubuntu.com/ubuntu xenial/universe amd64 xprintidle amd64 0.2-10 [6466 B]\n", | |
"Fetched 15.0 kB in 0s (67.7 kB/s) \n", | |
"debconf: delaying package configuration, since apt-utils is not installed\n", | |
"Selecting previously unselected package libxss1:amd64.\n", | |
"(Reading database ... 19837 files and directories currently installed.)\n", | |
"Preparing to unpack .../libxss1_1%3a1.2.2-1_amd64.deb ...\n", | |
"Unpacking libxss1:amd64 (1:1.2.2-1) ...\n", | |
"Selecting previously unselected package xprintidle.\n", | |
"Preparing to unpack .../xprintidle_0.2-10_amd64.deb ...\n", | |
"Unpacking xprintidle (0.2-10) ...\n", | |
"Setting up libxss1:amd64 (1:1.2.2-1) ...\n", | |
"Setting up xprintidle (0.2-10) ...\n", | |
"Processing triggers for libc-bin (2.23-0ubuntu9) ...\n" | |
] | |
} | |
], | |
"source": [ | |
"# Update apt-get and install xprintidle. \n", | |
"# Pass \"-y\" argument to say Yes at the prompts, otherwise notebook will freeze.\n", | |
"!apt-get -y update\n", | |
"!apt-get -y install xprintidle" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" % Total % Received % Xferd Average Speed Time Time Time Current\n", | |
" Dload Upload Total Spent Left Speed\n", | |
"100 807 100 807 0 0 4664 0 --:--:-- --:--:-- --:--:-- 4691\n", | |
"usr/local/bin/idle_shutdown.sh\n", | |
"etc/default/idle_shutdown\n", | |
"etc/init/idle_shutdown.conf\n" | |
] | |
} | |
], | |
"source": [ | |
"# Download shutdown script files and extract to root.\n", | |
"# Gradient notebooks run as root, so there's no need to sudo.\n", | |
"!curl https://s3.amazonaws.com/ps.public.resources/tools/idle_shutdown.tgz | tar -xzv -C /" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"# Paperspace idle_shutdown.sh tool configuration\r\n", | |
"\r\n", | |
"# Time (in hours) that the system can be idle before being shut down\r\n", | |
"IDLE_TIME=1\r\n" | |
] | |
} | |
], | |
"source": [ | |
"# Update idle time\n", | |
"# !echo \"IDLE_TIME=1\" > /etc/default/idle_shutdown\n", | |
"!cat /etc/default/idle_shutdown" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"expr: syntax error\r\n" | |
] | |
} | |
], | |
"source": [ | |
"# This doesn't work\n", | |
"!bash /usr/local/bin/idle_shutdown.sh" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 5, | |
"metadata": { | |
"scrolled": true | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"1" | |
] | |
}, | |
"execution_count": 5, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"# This doesn't work\n", | |
"import subprocess\n", | |
"subprocess.call(['/usr/local/bin/idle_shutdown.sh'], cwd=\"/\")" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"256" | |
] | |
}, | |
"execution_count": 6, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"# This doesn't work either \n", | |
"import os\n", | |
"import sys\n", | |
"os.system(\"bash /usr/local/bin/idle_shutdown.sh\")" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 7, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Failed to connect to bus: No such file or directory\r\n" | |
] | |
} | |
], | |
"source": [ | |
"# This down't work either\n", | |
"!systemctl start idle_shutdown.service" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": null, | |
"metadata": {}, | |
"outputs": [], | |
"source": [] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python 3", | |
"language": "python", | |
"name": "python3" | |
}, | |
"language_info": { | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 3 | |
}, | |
"file_extension": ".py", | |
"mimetype": "text/x-python", | |
"name": "python", | |
"nbconvert_exporter": "python", | |
"pygments_lexer": "ipython3", | |
"version": "3.6.4" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 2 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment