Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
500
第1回 GNU/Linux勉強会
Hiroto Sasagawa
July 09, 2023
Tweet
Share
More Decks by Hiroto Sasagawa
See All by Hiroto Sasagawa
IP Anycastとリバースプロキシ
nagutabby
0
410
HSTSについて調べた
nagutabby
0
390
第1回 AWS勉強会
nagutabby
0
510
第2回 GNU/Linux勉強会
nagutabby
0
430
第3回 GNU/Linux勉強会
nagutabby
0
480
DNSを標的とする攻撃
nagutabby
0
440
EC2とCloudWatchで始める高対話型ハニーポット運用
nagutabby
0
510
Other Decks in Programming
See All in Programming
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
似たもの同士のPerlとPHP
uzulla
1
130
Mermaid x AST x 生成AI = コードとドキュメントの完全同期への道
shibuyamizuho
0
160
たのしいparse.y
ydah
3
120
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
180
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
110
CSC305 Lecture 25
javiergs
PRO
0
130
CSC509 Lecture 14
javiergs
PRO
0
130
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
160
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
MCP with Cloudflare Workers
yusukebe
2
220
Go の GC の不得意な部分を克服したい
taiyow
2
760
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Building an army of robots
kneath
302
44k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
How GitHub (no longer) Works
holman
311
140k
Speed Design
sergeychernyshev
25
670
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
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 変数名=値