
私は使うEC2Amazon Webサービスから。 t2.microインスタンスのオペレーティングシステムはカスタマイズされています。AmazonLinux”には1GiB RAMと1つのvCPUがあります。Cloud9 IDEデフォルトでは、利用可能なファイルスペースの73%(/dev/xvda1から7.8G)が使用され、残りの2.2Gしか使用できないことがわかりました。
私の要求:
- Pythonスクリプトを実行し、出力データをローカルに作成する必要があります。
- 私はコマンドラインで作業しているので、GUIなしで行うことができます。
空き容量を確保するために、オペレーティングシステムのどのコンポーネントを安全に削除できますか?
答え1
1. 不要なパッケージの削除
Amazon Linux インスタンスは yum パッケージマネージャを使用してソフトウェアを管理します。 yumパッケージマネージャはソフトウェアをインストール、削除、更新するだけでなく、各パッケージのすべての依存関係を管理することもできます。 –Linuxインスタンスでのソフトウェア管理
次のコマンドを実行して、システムで最大20個のパッケージのリストを作成しました。
rpm -qa --queryformat '%10{size} - %-25{name} \t %{version}\n' | sort -nr | head -n 20
すべての依存関係を持つパッケージを削除するには、yumプラグインをインストールしてから、必要ではないと思われるremove-with-leaves
最大のパッケージ(依存関係を含む)を繰り返し削除しました(以下のリスト)。
sudo yum remove package_name --remove-leaves
2. 古いカーネルの削除
- 現在のカーネルを識別します。
uname -mrs
- すべてのコアを一覧表示します。
rpm -q kernel
- 古いLinuxカーネルを手動で削除します。
sudo yum remove kernel-4.9.76-3.78.amzn1.x86_64
3. 未使用パッケージの削除
識別されたパッケージは他の項目に影響を与えずに削除することができます(Debianではこれらのパッケージを「孤立したパッケージ」と呼びます)、自動的に削除できます。
sudo package-cleanup --quiet --leaves | sudo xargs -l1 yum -y remove
発見する
Python 3.6.5のみを積極的に使用していますが、デフォルト値python
(Python 2.7.14)を削除することはできません。
多くのLinuxディストリビューションにはPythonが必要です。展開プロバイダが展開する多くのシステムユーティリティ(GUIベースまたは非GUIベース)はPythonでプログラムされています。システムユーティリティで使用されるPythonのバージョンを「デフォルト」Pythonと呼びます。 [...]システムユーティリティはPythonで書かれているので、システムを破壊せずにデフォルトのPythonを削除することは不可能です。 –Pythonをエレガントに削除する方法は?
パッケージが占める総スペースはpython27
115819035バイト(〜116MB)です。
結果
- 全体的に約0.5GB(ディスク容量の7%)が回復しました
/dev/xvda1
。 - 214個のパッケージが削除され、合計633427867バイトです。
java-1.7.0-openjdk emacs-common mysql55-server java-1.7.0-openjdk-devel git mysql55 vim-common perl compat-libicu4 aws-apitools-ec2 emacs v8 ruby20-libs perl-Encode nodejs-devel aws-apitools-elb aws-apitools-as nodejs aws-apitools-mon perl-DBD-SQLite dejavu-sans-fonts subversion subversion-libs subversion-perl python36-devel dejavu-serif-fonts vim-enhanced libtool autoconf perl-DBI rubygem20-rdoc automake libX11-common perl-libs gyp cvs libX11 git-svn alsa-lib gnutls dejavu-sans-mono-fonts perl-Net-SSLeay npm libyaml-devel xorg-x11-fonts-Type1 perl-IO-Compress rsync libxcb libpng perl-Test-Harness rubygems20 perl-Pod-Simple fontconfig aws-amitools-ec2 lcms2 perl-DBD-MySQL55 git-cvs xorg-x11-font-utils libXfont perl-podlators perl-IO-Socket-SSL git-p4 v8-devel perl-YAML perl-Storable rubygem20-json perl-Git-SVN perl-PathTools nodejs-hawk perl-Pod-Perldoc ruby20-irb perl-File-Temp libuv-devel libserf system-rpm-config autogen-libopts perl-Getopt-Long perl-Compress-Raw-Zlib perl-Filter perl-GSSAPI dejavu-fonts-common libuv perl-Net-Daemon libICE cvsps perl-Socket rubygem20-psych perl-Digest-SHA git-email perl-Authen-SASL ttmkfdir perl-HTTP-Tiny perl-Data-Dumper nodejs-ctype perl-threads emacs-git perl-Time-HiRes perl-IO-Socket-IP libXext giflib rubygem20-bigdecimal libSM nodejs-async perl-threads-shared perl-PlRPC nodejs-hoek node-gyp libXi perl-Git nodejs-request nodejs-fstream perl-Scalar-List-Utils ruby20 nodejs-mime perl-Exporter perl-TermReadKey perl-Compress-Raw-Bzip2 nodejs-tar perl-Digest-MD5 perl-File-Path perl-Error http-parser perl-Net-LibIDN perl-Pod-Usage perl-Time-Local libfontenc libXrender libXau nodejs-npm-registry-client nodejs-minimatch nodejs-boom nodejs-http-signature nodejs-semver libXcomposite nodejs-glob nodejs-nopt perl-Digest perl-Carp libXtst perl-Thread-Queue nodejs-npmconf libffi-devel perl-constant gpm-libs perl-Pod-Escapes nodejs-normalize-package-data nodejs-packaging nodejs-read-package-json nodejs-promzard nodejs-lockfile nodejs-asn1 nodejs-ansi perl-Text-ParseWords copy-jdk-configs nodejs-form-data nodejs-sntp nodejs-fstream-npm nodejs-node-uuid nodejs-config-chain perl-Digest-HMAC nodejs-retry nodejs-graceful-fs nodejs-sigmund nodejs-npmlog http-parser-devel nodejs-read-installed nodejs-lru-cache nodejs-init-package-json nodejs-qs nodejs-slide nodejs-combined-stream nodejs-assert-plus nodejs-fstream-ignore nodejs-block-stream perl-parent nodejs-delayed-stream nodejs-ini nodejs-sha nodejs-cmd-shim nodejs-tunnel-agent nodejs-mute-stream nodejs-rimraf nodejs-read nodejs-osenv nodejs-mkdirp perl-macros nodejs-which nodejs-abbrev perl-Net-SMTP-SSL nodejs-archy nodejs-uid-number nodejs-aws-sign nodejs-forever-agent nodejs-opener nodejs-json-stringify-safe nodejs-proto-list nodejs-cryptiles nodejs-editor nodejs-child-process-close nodejs-github-url-from-git nodejs-cookie-jar nodejs-npm-user-validate nodejs-chmodr nodejs-chownr nodejs-once nodejs-inherits nodejs-oauth-sign aws-apitools-common mysql-config vim-filesystem ruby git-all fontpackages-filesystem