Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第1回 GNU/Linux勉強会
Search
Hiroto Sasagawa
July 09, 2023
Programming
0
520
第1回 GNU/Linux勉強会
Hiroto Sasagawa
July 09, 2023
Tweet
Share
More Decks by Hiroto Sasagawa
See All by Hiroto Sasagawa
IP Anycastとリバースプロキシ
nagutabby
0
440
HSTSについて調べた
nagutabby
0
400
第1回 AWS勉強会
nagutabby
0
570
第2回 GNU/Linux勉強会
nagutabby
0
450
第3回 GNU/Linux勉強会
nagutabby
0
520
DNSを標的とする攻撃
nagutabby
0
470
EC2とCloudWatchで始める高対話型ハニーポット運用
nagutabby
0
570
Other Decks in Programming
See All in Programming
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
480
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
2
10k
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
8
11k
JEP 496 と JEP 497 から学ぶ耐量子計算機暗号入門 / Learning Post-Quantum Crypto Basics from JEP 496 & 497
mackey0225
2
500
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
11
6.2k
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 1
philipschwarz
PRO
0
110
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
200
OSS開発者の憂鬱
yusukebe
14
12k
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
10
9.1k
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
310
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
270
関数の挙動書き換える
takatofukui
4
750
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
A better future with KSS
kneath
239
18k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
GraphQLとの向き合い方2022年版
quramy
49
14k
Navigating Team Friction
lara
190
16k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Speed Design
sergeychernyshev
33
1.3k
Transcript
第1回 GNU/Linux 勉強会 Linuxの概要、ディレクトリ操作、変数 2022/4/21 笹川 尋翔
Linuxとは • 厳密には、Linuxカーネル • ⼀般的には、Linuxカーネルを⽤いたOS サーバ(実際のアプリケーションを配信するコンピュータ)で 使⽤されるOS
なぜLinux? • OSS(Open Source Software) • ソースコードが公開されているソフトウェア • GPL(GNU General
Public License) v2.0ライセンス • 誰でも無償で利⽤できる • 誰でも⾃由に複製、改変、再配布、販売できる • 低スペックなコンピュータでも動作 • サーバに搭載するCPUやメモリの費⽤を抑えられる • CUIで効率的に作業できる • 例) カレントディレクトリのファイルとディレクトリを表⽰ • PowerShell: Get-ChildItem • Linux: ls
Linuxの歴史 https://www.techug.com/post/linus-torvalds-criticize-7-tech.html • 1968年にケン・トンプソン、デニス・リッ チーなどがUNIXを公開 • 1991年にリーナス・トーバルズがUNIX系 OSであるLinuxを公開 • 主にC⾔語で書かれている
• リチャード・ストールマンが開発したGCCコン パイラや、様々なライブラリなどが含まれる • 現在では、AndroidなどのOSのプロジェクトに フォークされる形で活⽤されたりしている
Linuxディストリビューション • Linuxカーネルと関連ソフトウェアをまとめたもの • 関連ソフトウェア • テキストエディタ: Emacs、Vim、 nano •
Webサーバ: Apache HTTP Server、NGINX • メールサーバ: Postfix, Dovecot • データベース管理システム: MySQL、MariaDB、MongoDB、PostgreSQL • Debian系 • Debian, Ubuntu • Red Hat系 • CentOS Stream, Amazon Linux, Red Hat Enterprise Linux(RHEL)
Linuxサーバにログインする • SSH(Secure SHell)を利⽤してEC2インスタンスにログイン • フィンガープリントの確認を求められるので、yesを⼊⼒する • ⽤語説明 • ディレクトリ:
ファイルの保管場所 • ホームディレクトリ: /home/[ユーザ名] • カレントディレクトリ: 現在のディレクトリ • ルートディレクトリ: 最上位のディレクトリ
echo • 値を表⽰する • ⽤法 • echo 値
man(manual) • コマンドなどのリファレンスマニュアルを表⽰する • ⽤法: man コマンド名 • スペースで1ページ進む •
Bで1ページ戻る • Shift + Gでファイルの末尾に移動する • Gでファイルの先頭に移動する • Qで終了する
ls(list segments) • ファイルやディレクトリの情報を表⽰する • ⽤法 • ls ディレクトリ名 •
オプション • -a: 隠しファイルと隠しディレクトリも表⽰する • -l: 詳細情報を表⽰する • -R: 再帰的に表⽰する • -F: ディレクトリ名の末尾に/を付けて表⽰する
mkdir(make directory) • ディレクトリを作成する • ⽤法 • mkdir ディレクトリ名 •
オプション • -p: 親ディレクトリも作成する
pwd(print working directory) • カレントディレクトリを表⽰する • ⽤法 • pwd
cd(change directory) • ディレクトリを移動する • ⽤法 • cd ディレクトリ名 •
相対パスと絶対パスを指定できる
rmdir(remove directory) • ディレクトリを削除する • ⽤法 • rmdir ディレクトリ名 •
オプション • -p: ⼦ディレクトリも削除する
touch • 空のファイルを作成する • ⽤法 • touch ファイル名
rm(remove) • ファイルを削除する • ⽤法: rm ファイル名 • オプション •
-r, -R: 再起的に削除する(ディレクトリも削除する) • -f: 強制的に削除する(削除する際に確認しない) • -i: 削除する前に確認する
環境変数(Environment Variable) • 永続的に設定されている変数 • 予め⽤意されているLinuxの環境変数 • PATH: プログラムを検索するディレクトリのリスト •
PWD: カレントディレクトリ • HOSTNAME: ホスト名 • USER: 現在コマンドを実⾏しているユーザ名 • LANG: 地域情報(ロケール) • HOME: ホームディレクトリ など
printenv • 環境変数の⼀覧を表⽰する • ⽤法 • printenv
mv(move) • ファイルをリネームする • ディレクトリやファイルを移動する • ⽤法 • mv 元のファイル名
変更後のファイル名 • mv ファイル名 ディレクトリ名 • オプション • -i: 移動する前に確認する • -f: 強制的に移動する
シェル変数 • 現在のシェルの中だけで有効な変数 • 設定⽅法 • 変数名=値
export • 環境変数を設定する • ⽤法 • export 変数名=値