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
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
560
第2回 GNU/Linux勉強会
nagutabby
0
450
第3回 GNU/Linux勉強会
nagutabby
0
520
DNSを標的とする攻撃
nagutabby
0
470
EC2とCloudWatchで始める高対話型ハニーポット運用
nagutabby
0
560
Other Decks in Programming
See All in Programming
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
120
三者三様 宣言的UI
kkagurazaka
0
360
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
120
React Nativeならぬ"Vue Native"が実現するかも?_新世代マルチプラットフォーム開発フレームワークのLynxとLynxのVue.js対応を追ってみよう_Vue Lynx
yut0naga1_fa
2
2k
Inside of Swift Export
giginet
PRO
1
510
CSC509 Lecture 08
javiergs
PRO
0
280
問題の見方を変える「システム思考」超入門
panda_program
0
170
ビルドプロセスをデバッグしよう!
yt8492
0
270
Vue 3.6 時代のリアクティビティ最前線 〜Vapor/alien-signals の実践とパフォーマンス最適化〜
hiranuma
2
410
coconala_slide_pop.pdf
yukihito13
0
260
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
400
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
360
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
33k
4 Signs Your Business is Dying
shpigford
186
22k
Docker and Python
trallard
46
3.6k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Faster Mobile Websites
deanohume
310
31k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Music & Morning Musume
bryan
46
6.9k
Done Done
chrislema
186
16k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
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 変数名=値