Upgrade to Pro — share decks privately, control downloads, hide ads and more …

第1回 GNU/Linux勉強会

第1回 GNU/Linux勉強会

Hiroto Sasagawa

July 09, 2023
Tweet

More Decks by Hiroto Sasagawa

Other Decks in Programming

Transcript

  1. 第1回 GNU/Linux 勉強会
    Linuxの概要、ディレクトリ操作、変数
    2022/4/21 笹川 尋翔

    View Slide

  2. Linuxとは
    • 厳密には、Linuxカーネル
    • ⼀般的には、Linuxカーネルを⽤いたOS
    サーバ(実際のアプリケーションを配信するコンピュータ)で
    使⽤されるOS

    View Slide

  3. なぜLinux?
    • OSS(Open Source Software)
    • ソースコードが公開されているソフトウェア
    • GPL(GNU General Public License) v2.0ライセンス
    • 誰でも無償で利⽤できる
    • 誰でも⾃由に複製、改変、再配布、販売できる
    • 低スペックなコンピュータでも動作
    • サーバに搭載するCPUやメモリの費⽤を抑えられる
    • CUIで効率的に作業できる
    • 例) カレントディレクトリのファイルとディレクトリを表⽰
    • PowerShell: Get-ChildItem
    • Linux: ls

    View Slide

  4. Linuxの歴史
    https://www.techug.com/post/linus-torvalds-criticize-7-tech.html
    • 1968年にケン・トンプソン、デニス・リッ
    チーなどがUNIXを公開
    • 1991年にリーナス・トーバルズがUNIX系
    OSであるLinuxを公開
    • 主にC⾔語で書かれている
    • リチャード・ストールマンが開発したGCCコン
    パイラや、様々なライブラリなどが含まれる
    • 現在では、AndroidなどのOSのプロジェクトに
    フォークされる形で活⽤されたりしている

    View Slide

  5. 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)

    View Slide

  6. Linuxサーバにログインする
    • SSH(Secure SHell)を利⽤してEC2インスタンスにログイン
    • フィンガープリントの確認を求められるので、yesを⼊⼒する
    • ⽤語説明
    • ディレクトリ: ファイルの保管場所
    • ホームディレクトリ: /home/[ユーザ名]
    • カレントディレクトリ: 現在のディレクトリ
    • ルートディレクトリ: 最上位のディレクトリ

    View Slide

  7. echo
    • 値を表⽰する
    • ⽤法
    • echo 値

    View Slide

  8. man(manual)
    • コマンドなどのリファレンスマニュアルを表⽰する
    • ⽤法: man コマンド名
    • スペースで1ページ進む
    • Bで1ページ戻る
    • Shift + Gでファイルの末尾に移動する
    • Gでファイルの先頭に移動する
    • Qで終了する

    View Slide

  9. ls(list segments)
    • ファイルやディレクトリの情報を表⽰する
    • ⽤法
    • ls ディレクトリ名
    • オプション
    • -a: 隠しファイルと隠しディレクトリも表⽰する
    • -l: 詳細情報を表⽰する
    • -R: 再帰的に表⽰する
    • -F: ディレクトリ名の末尾に/を付けて表⽰する

    View Slide

  10. mkdir(make directory)
    • ディレクトリを作成する
    • ⽤法
    • mkdir ディレクトリ名
    • オプション
    • -p: 親ディレクトリも作成する

    View Slide

  11. pwd(print working directory)
    • カレントディレクトリを表⽰する
    • ⽤法
    • pwd

    View Slide

  12. cd(change directory)
    • ディレクトリを移動する
    • ⽤法
    • cd ディレクトリ名
    • 相対パスと絶対パスを指定できる

    View Slide

  13. rmdir(remove directory)
    • ディレクトリを削除する
    • ⽤法
    • rmdir ディレクトリ名
    • オプション
    • -p: ⼦ディレクトリも削除する

    View Slide

  14. touch
    • 空のファイルを作成する
    • ⽤法
    • touch ファイル名

    View Slide

  15. rm(remove)
    • ファイルを削除する
    • ⽤法: rm ファイル名
    • オプション
    • -r, -R: 再起的に削除する(ディレクトリも削除する)
    • -f: 強制的に削除する(削除する際に確認しない)
    • -i: 削除する前に確認する

    View Slide

  16. 環境変数(Environment Variable)
    • 永続的に設定されている変数
    • 予め⽤意されているLinuxの環境変数
    • PATH: プログラムを検索するディレクトリのリスト
    • PWD: カレントディレクトリ
    • HOSTNAME: ホスト名
    • USER: 現在コマンドを実⾏しているユーザ名
    • LANG: 地域情報(ロケール)
    • HOME: ホームディレクトリ
    など

    View Slide

  17. printenv
    • 環境変数の⼀覧を表⽰する
    • ⽤法
    • printenv

    View Slide

  18. mv(move)
    • ファイルをリネームする
    • ディレクトリやファイルを移動する
    • ⽤法
    • mv 元のファイル名 変更後のファイル名
    • mv ファイル名 ディレクトリ名
    • オプション
    • -i: 移動する前に確認する
    • -f: 強制的に移動する

    View Slide

  19. シェル変数
    • 現在のシェルの中だけで有効な変数
    • 設定⽅法
    • 変数名=値

    View Slide

  20. export
    • 環境変数を設定する
    • ⽤法
    • export 変数名=値

    View Slide