[LINUX] Installez l'AWS CLI v2 sans sudo

Pour les gens occupés

Il est installé dans le répertoire de l'utilisateur racine, vous pouvez donc simplement le placer dans un répertoire différent et le placer dans le chemin. Si vous savez ce que vous en faites, vous n'aurez peut-être pas à le lire par la suite w

Comme mentionné plus tard, v1 et v2 sont partiellement incompatibles, alors soyez prudent lors de l'installation avec brew à partir de maintenant.

Sujet principal

Cette semaine, la version V2 de l'AWS CLI est désormais GA. Blog AWS Blog de la méthode de classe

Personnellement, je ne l'ai pas encore essayé du tout, donc je suis sur le point de commencer, mais pour l'utiliser, je dois d'abord l'installer. Comment installer est officiellement répertorié. Mon environnement est un Mac à la fois pour le travail et pour un usage personnel, mais j'ai initialement installé cli avec brew. Je voulais qu'il soit géré par un gestionnaire de paquets.

Je voulais donc utiliser brew si possible, mais au moment de la rédaction de cet article, cela ne peut pas encore être installé avec brew. (Donc, si vous pouvez l'installer avec Brew, ce contenu peut ne pas être nécessaire.)

Ce qui suit est un extrait de la procédure d'installation. La procédure d'installation sur Mac est presque la même que celle sous Linux, sauf que le fichier cible change.

Procédure d'installation sur Mac


curl "https://d1vvhvl2y92vvt.cloudfront.net/awscli-exe-macos.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

Le problème est sudo. / Aws / install, et je me demande s'il y a des moments où un utilisateur de PC de travail a des privilèges d'administrateur limités et ne peut pas sudo. J'ai pensé essayer, mais je ne pouvais pas, mais je vais le laisser ici car la documentation décrit clairement comment l'éviter.

Contenu du script d'installation

Je vais omettre le contenu de . / Aws / install car ce sera long si tout le contenu est extrait, mais en gros, créer un répertoire appelé / usr / local / aws-cli, placer le programme pour y opérer, et Cela semble fonctionner en créant un lien symbolique appelé / usr / local / bin / aws2. Je pense que la raison pour laquelle il est fait sur sudo est qu'il nécessite généralement des privilèges root pour écrire sous / usr. La raison de mettre le lien symbolique dans / usr / loca / bin est de mettre le lien symbolique dans le répertoire dans le PATH afin qu'il puisse être utilisé de n'importe où. (Ma mémoire est ambiguë, mais ai-je parcouru le PATH par défaut en premier lieu ...?)

Cependant, il indique que vous pouvez modifier le répertoire d'installation et le répertoire dans lequel le lien symbolique est placé.

Extrait du document suivant

--install-dir ou -i

Cette option spécifie le dossier dans lequel copier tous les fichiers. L'exemple suivant installe le fichier dans un dossier nommé / usr / local / aws-cli. Vous devez avoir l'autorisation d'écriture sur / usr / local pour créer ce dossier.

La valeur par défaut est / usr / local / aws-cli.

--bin-dir ou -b

Cette option spécifie que le programme aws principal dans le dossier d'installation doit être lié symboliquement au fichier aws2 dans le chemin spécifié. Dans cet exemple, nous allons créer un lien symbolique / usr / local / bin / aws2. Vous devez disposer d'une autorisation en écriture sur le dossier spécifié. La création d'un lien symbolique vers un dossier qui existe déjà dans votre chemin élimine le besoin d'ajouter le répertoire d'installation à votre variable $ PATH.

La valeur par défaut est / usr / local / bin.

En d'autres termes, vous pouvez l'installer sans utiliser sudo en ** plaçant le fichier dans un répertoire approprié et en plaçant le lien symbolique dans n'importe quel répertoire de votre PATH par vous-même **.

Changer le répertoire d'installation

Dans mon cas, j'ai créé le répertoire suivant sous le répertoire personnel de l'utilisateur qui l'utilise.

Créez un répertoire et mettez-le dans votre PATH

mkdir $HOME/awscli2
mkdir $HOME/local/bin

Bien sûr, $ HOME / local / bin est dans PATH.

Pour Bash, allez dans ~ / .bash_profile

.bash_profile


export PATH=$PATH:$HOME/local/bin

Ajoutons et rechargeons .bash_profile. Exécutez simplement source ~ / .bash_profile ou redémarrez le terminal et vous êtes prêt à partir.

J'utilise du poisson, donc je l'ajoute à la variable universelle. Notez que la méthode de définition des variables d'environnement des poissons est un peu différente de bash et est un peu déroutante. .fish/config/config.fishに環境変数を設定するコマンドを追記するのでもいいと思います(お好みで) ただ、下記は永続的な設定なので.fish/config/config.fishのではなくターミナルで一回実行するだけにしましょう。 Si le contenu de $ fish_user_paths est vidé par erreur, cela sera gênant plus tard (1 perte) référence https://qiita.com/ledsun/items/8ca1a450b21c8ebc9670

fish


set -U fish_user_paths $HOME/local/bin $fish_user_paths

Installer avec les options spécifiées

En plus de cela, j'ai spécifié les options comme celle-ci au moment de l'installation.

./aws/install -i $HOME/awscli2/ -b $HOME/local/bin/

Vous pouvez maintenant l'exécuter, et maintenant un lien symbolique est créé avec le nom ʻaws2` pour une utilisation avec la v1.

aws2 --version
aws-cli/2.0.0dev4 Python/3.7.4 Darwin/18.7.0 botocore/2.0.0dev3

À partir du document

Dans la version préliminaire de l'AWS CLI version 2, le lien symbolique est nommé aws2 afin que les versions 1 et 2 de l'AWS CLI puissent coexister côte à côte. Ce nom de commande est susceptible d'être modifié dans les futures versions de l'AWS CLI version 2.

Quoi qu'il en soit, vous pouvez maintenant essayer le V2 aws cli.

Points à craindre

――C'est juste une ** installation manuelle **, donc s'il y a une mise à jour, vous devez la faire vous-même --Il y a des modifications incompatibles - https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cliv2-migration.html

Relation

[Utilisez correctement l'AWS CLI (v1) et l'AWS CLI v2 en utilisant venv (Mac, Linux)](https://dev.classmethod.jp/cloud/aws/separate-aws-cli-v1-and-v2- avec-venv-pour-mac-et-linux /) Installez l'AWS CLI v2 à partir du code source

Recommended Posts

Installez l'AWS CLI v2 sans sudo
installation sudo pip
[Node] [npm] Installer le paquetage npm sur MacOS / Linux sans sudo
Installez Docker sur AWS
Installation d'ArcoLinux v20 xfce
Installez openblas (sans apt-get)
Exécutez YOLO v3 sur AWS v2
Exécutez YOLO v3 sur AWS
Installez CaboCha sans privilèges root.