-
設定されている環境変数を表示
printenv
env
-
シェル変数と環境変数を表示(関数も含む)
set
declare
-
環境変数HOMEの値を表示する
printenv HOME
echo $HOME
-
シェルのオプションを有効にする
set -o オプション名
-
シェルのオプションを無効にする
set +o オプション名
-
【シェルのオプション】
作成・変更した変数を自動的にエクスポートする
Emacs風のキーバインドにする
vi風のキーバインドにする
Ctrl+Dによるログアウトを拒否する
出力リダイレクトによる上書きを禁止する
メタキャラクタを使ったファイル名展開を無効にする
【シェルのオプション】
allexport
emacs
vi
ignoreeof
noclobber
noglob
-
シェルでメタキャラクタを使ったファイル展開を無効にする設定をする
set -o noglob
-
シェルで設定されているオプションを確認する
set -o
-
エイリアスを解除する
unalias エイリアス名
-
一時的にエイリアスを使用せずにコマンドを実行する
\コマンド
-
echo "test"を行う関数funcを定義する
function func() { echo "test"; }
function func() {
echo "test"
}
※functionはなくても可
-
定義されているすべての関数の内容を表示する
declare -f
-
定義されている関数funcの内容を表示する
declare -f func
-
ログイン時に実行され、全ユーザーから参照されるbashの設定ファイル
/etc/profile
-
bash起動時に実行され、全ユーザーから参照されるbashの設定ファイル
/etc/bash.bashrc
-
~/.bashrcから参照されるbashの設定ファイル
/etc/bashrc
-
ログイン時に実行されるユーザー固有のbashの設定ファイル
~/.bash_profile
-
~/.bash_profileがない場合に実行される、ユーザー固有のbashの設定ファイル
~/.bash_login
-
~/.bash_profileも~/.bash_loginもない場合に実行される、ユーザー固有のbashの設定ファイル
~/.profile
-
bash起動時に実行されるユーザー固有のbashの設定ファイル
~/.bashrc
-
ログアウト時に実行されるbashの設定ファイル
~/.bash_logout
-
シェルスクリプトのファイル名を表す変数
$0
-
シェルスクリプトの1番目の引数を表す変数
$1
-
シェルスクリプトの引数の数を表す変数
$#
-
シェルスクリプトのすべての引数のリストを表す変数(スペース区切り)
$@
-
シェルスクリプトで、変数に格納された引数を一つずつずらす(FIFO)
shift
-
コマンド1の正常終了時にのみコマンド2を実行する
コマンド1 && コマンド2
-
コマンド1が正常終了でない場合のみコマンド2を実行する
コマンド1 || コマンド2
-
【testコマンドの条件式】
(ディレクトリを除く)ファイルが存在すれば真
ディレクトリが存在すれば真
ファイルが存在し、読み込み可能であれば真
ファイルが存在し、書き込み可能であれば真
ファイルが存在し、実行可能であれば真
サイズが0より大きいファイルがあれば真
シンボリックリンクであるファイルがあれば真
(ディレクトリ含む)ファイルが存在すれば真
【testコマンドの条件式】
-f ファイル
-d ディレクトリ
-r ファイル
-w ファイル
-x ファイル
-s ファイル
-L ファイル
-e ファイル
-
【testコマンドの条件式】
file1がfile2より修正時刻が新しければ真
file1がfile2 より修正時刻が古ければ真
条件式が偽であれば真
両方の条件式が真であれば真
いずれかの条件式が真であれば真
【testコマンドの条件式】
file1 -nt file2
file1 -ot file2
!条件
条件1 -a 条件2
条件1 -o 条件2
-
【testコマンドの条件式】
数値1=数値2ならば真
数値1≠数値2ならば真
数値1≥数値2ならば真
数値1>数値2ならば真
数値1≤数値2ならば真
数値1<数値2ならば真
【testコマンドの条件式】
数値1 -eq 数値2
数値1 -ne 数値2
数値1 -ge 数値2
数値1 -gt 数値2
数値1 -le 数値2
数値1 -lt 数値2
-
【testコマンドの条件式】
文字列の長さが0より大きければ真
文字列の長さが0であれば真
二つの文字列が等しければ真
二つの文字列が等しくなければ真
【testコマンドの条件式】
-n 文字列
-z 文字列
文字列1 = 文字列2
文字列1 != 文字列2
※変数は必ず""などで囲って展開する
-
if else文
if 条件式
then
実行文1
else
実行文2
fi
-
case文
case 式 in
値1)
実行文1 ;;
値2)
実行文2 ;;
...
esac
-
for文
for 変数名 in リスト
do
実行文
done
-
10から15までの連続した数値のリストを生成する
seq 10 15
-
while文
while 条件
do
実行文
done
-
iを1増加させる
let i=i+1
i=`expr $i + 1`
-
信頼性の高い通信を実現するためのコネクション型のプロトコル
TCP
-
TCPやUDP、ICMPなどのデータ転送(ルーティング)を司る、コネクションレス型のプロトコル
IP
-
データの転送速度に重点を置いたコネクションレス型のプロトコル(トランスポート層)
UDP
-
エラーメッセージや制御メッセージを伝送する、コネクションレス型のプロトコル
ping、tracerouteなど
ICMP ( Internet Control Message Protocol)
-
ホスト部のビットをすべて1にしたアドレス
ブロードキャストアドレス
-
IPアドレスとサブネットマスクの論理積
ネットワークアドレス
-
クラスAのプライベートアドレスの範囲
10.0.0.0〜10.255.255.255
-
クラスBのプライベートアドレスの範囲
172.16.0.0〜172.31.255.255
-
クラスCのプライベートアドレスの範囲
192.168.0.0〜192.168.255.255
-
一つのネットワークインターフェースを識別するIPv6アドレス
ユニキャストアドレス
-
複数のホストの集合に割り当てられるIPv6アドレス
エニーキャストアドレス
-
IPv4のブロードキャストアドレスに相当する IPv6のアドレス
マルチキャストアドレス
-
IPv4でネットワーク部に相当するIPv6の部分
プレフィックス
-
IPv4でホスト部に相当するIPv6の部分
インターフェースID
-
TCP or UDP, port:FTP データ転送
TCP, 20
-
TCP or UDP, port:FTP コントロール
TCP, 21
-
TCP or UDP, port:SSH
TCP, 22
-
TCP or UDP, port:TELNET
TCP, 23
-
TCP or UDP, port:SMTP
TCP, 25
-
TCP or UDP, port:DNS
TCP/UDP, 53
-
TCP or UDP, port:DHCP server
UDP, 67
-
TCP or UDP, port:DHCP client
UDP, 68
-
TCP or UDP, port:HTTP
TCP, 80
-
TCP or UDP, port:POP3
TCP, 110
-
TCP or UDP, port:NTP
UDP, 123
-
TCP or UDP, port:IMAP
TCP, 143
-
CentOSやRHELで採用されている、ネットワーク管理システム
NetworkManager
-
NetworkManagerの状態を表示する
nmcli general status
nmcli g status
-
NetworkManagerでホスト名を表示する
nmcli general hostname
nmcli g hostname
-
NetworkManagerで指定したホスト名に変更する
nmcli general hostname ホスト名
nmcli g hostname ホスト名
-
NetworkManagerのネットワークを有効にする
nmcli networking on
nmcli n on
-
NetworkManagerのネットワークの状態を表示する
nmcli networking connectivity
nmcli n connectivity
-
NetworkManagerでWi-Fiの状態を表示する
nmcli radio wifi
nmcli r wifi
-
NetworkManagerでWi-Fiの接続を有効にする
nmcli radio wifi on
nmcli r wifi on
-
NetworkManagerでモバイルブロードバンド接続を有効にする
nmcli radio wwan on
nmcli r wwan on
-
NetworkManagerですべての無線接続を有効にする
nmcli radio all on
nmcli r all on
-
NetworkManagerで接続インターフェース情報の一覧を表示する
nmcli connection show
nmcli c show
-
NetworkManagerで現在アクティブな接続インターフェース情報の一覧を表示する
nmcli connection show --active
nmcli c show --active
-
NetworkManagerで指定したenp0s3の接続を設定sる
nmcli connection modify enp0s3 パラメータ
nmcli c modify enp0s3 パラメータ
-
NetworkManagerで接続を有効にする
nmcli connection up UUID
nmcli c up UUID
-
NetworkManagerで接続を無効にする
nmcli connection down UUID
nmcli c down UUID
-
NetworkManagerでデバイスの状態を表示する
nmcli device status
nmcli d status
-
NetworkManagerで指定したデバイスの情報を表示する
nmcli device show インターフェース名
nmcli d show インターフェース名
-
NetworkManagerで指定したデバイスを接続する
nmcli device connect インターフェース名
nmcli d connect インターフェース名
-
NetworkManagerで指定したデバイスを切断する
nmcli device disconnect インターフェース名
nmcli d disconnect インターフェース名
-
NetworkManagerでWi-Fiアクセスポイントを表示
nmcli device wifi list
nmcli d wifi list
-
NetworkManagerでWi-Fiアクセスポイントに接続
nmcli wifi connect SSID
-
ネットワークインターフェースのデータリンク層の情報を表示する
ip link show
ip link
-
【ipコマンドの出力のいみ】
mtu
qdisc
state
qlen
link/loopback
brd
dev
inet
default via IPアドレス
【ipコマンドの出力のいみ】
1回の転送パケットサイズ上限(max transmission unit)
送信パケットの送信順や廃棄に関する設定(Queueing Discipline)
ネットワークインターフェースの状態
キューの長さ
MACアドレス
ブロードキャストアドレス
デバイス名
IPv4アドレス
デフォルトゲートウェイ
-
ネットワークインターフェースeth0に、IPアドレス192.168.162.0、サブネットマスク255.255.255.0を設定
ifconfig eth0 192.168.162.0 netmask 255.255.255.0
-
eth1を有効にする
ifup eth1
-
eth1を無効にする
ifdown eth1
-
192.168.162.30にICMPパケットを4回0.5秒ごとに送り、その反応を表示する
ping -c 4 -i 0.5 192.168.162.40
-
example.comまでにパケットが伝わる経路を表示する
traceroute example.com
tracepath example.com
-
ホスト名を表示する
hostname
-
ホスト名をtesthost.comに変更する
hostname testhost.com
-
利用しているすべてのTCPポートを表示
netstat -at
ss -at
-
ルーティングテーブルを表示
ip route show
ip route
route
netstat -r
-
利用しているすべてのUDPポートを、PIDとプロセス名含めて表示
netstat -aup
ss -aup
-
ポート12345番で待ち受けて受け取ったデータをlisten.logファイルに出力する
nc -l -p 12345 -o listen.log
-
ホストexample.comの12345ポートに対して、data.txtの内容を出力する
nc example.com 12345 < data.txt
-
192.168.0.0/24のネットワーク宛のパケットを、ゲートウェイ172.30.0.254に送られるように設定
route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.30.0.254
-
デフォルトゲートウェイを192.168.162.30に設定
route add default gw 192.168.162.30
ip route add default via 192.168.162.30
ip r a default via 192.168.162.30
-
「192.168.0.0/24宛のパケットをすべて172.30.0.254経由にする」という設定を削除する
route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.30.0.254
-
DNSの設定ファイル
(内容)
ホストが属するドメイン名を記述する行
ドメイン名省略時に補完するドメイン名
参照先DNSサーバーのIPアドレス
/etc/resolv.conf
(内容)
domain
search
nameserver
-
名前解決の手段の順序を指定するファイル
/etc/nsswitch.fonf
-
ホスト名の一覧を取得する
getent hosts
-
www.example.comのIPアドレスを問い合わせる
host www.example.com
dig www.example.com
-
IPアドレスが192.168.162.30であるホストのホスト名を問い合わせる
host 192.168.162.30
-
mail.example.comのメールサーバー情報を詳しく問い合わせる
dig mail.example.com mx
-
DNSサーバーを8.8.8.8と指定して、www.example.comのIPアドレスを問い合わせる
dig @8.8.8.8 www.example.com
-
ユーザーuser1を作成する。
ホームディレクトリを/home/test
デフォルトシェルを/bin/bash
プライマリグループはデフォルト
subgroup1,subgroup2グループにも所属する。
useradd -d /home/test -s /bin/bash -G subgroup1,subgroup2 user1
-
ホームディレクトリを作成し、user2を作成する
useradd -m user2
-
user2のプライマリグループをgroupA に変更する
usermod -g groupA user2
-
user3を一時的に無効化する
usermod -L user3
-
user4を削除する。ホームディレクトリは残す
userdel user4
-
user4を削除する。ホームディレクトリも消す
userdel -r user4
-
パスワードを変更する
passwd
-
グループを作成する
groupadd
-
グループ名をbeforeからafterに変更する
groupmod -n after before
-
グループを削除する
groupdel グループ名
-
ユーザーuser1が所属するグループを調べる
id user1
-
シャドウパスワードの記録先
/etc/shadow
-
user1のcrontabファイルの配置先
/var/spool/cron/user1
/var/spool/cron/crontabs/user1
-
crontabファイルを編集する
crontab -e
-
crontabファイルの内容を表示する
crontab -l
-
crontabファイルを削除する
crontab -r
-
crontabの書き方
m h dom m dow command
-
システム用のcrontabファイルの配置先と、これが呼び出すファイル(メタキャラクタで)
/etc/crontab
/etc/cron.*
-
各種のcronジョブを記述したファイルを収めたディレクトリ
/etc/cron.d/
-
1時間に1度実行されるcronジョブを記述したファイルを収めたディレクトリ
/etc/cron.hourly/
-
日次実行されるcronジョブを記述したファイルを収めたディレクトリ
/etc/cron.daily/
-
システム停止中に経過してしまったスケジュールのcronジョブを実行する仕組み
anacron
-
anacronのスケジューリングの記述先
/etc/anacrontab
-
明日の5時にtest_jobを実行する
at -f test_job 5:00 tomorrow
または
at 5:00 tomorrow で対話に入り
at> test_job
at> ^D
-
/etc/cron.allowと/etc/cron.denyの両方があった場合、どうなるか
/etc/cron.allowに記述されたユーザーのみがcronを利用でき、
/etc/cron.denyファイルは無視される
-
/etc/at.allowと/etc/at.denyの両方があった場合、どうなるか
/etc/at.allowに記述されたユーザーのみがatコマンドを利用でき、
/etc/at.denyファイルは無視される
-
利用者の地域情報のことをなんというか
ロケール
-
【ロケールカテゴリ】
文字の種類
文字の照合・整列
メッセージ表示に使用する言語
通貨
数値の書式
日付や時刻の書式
すべてのカテゴリをまとめて設定
すべてのカテゴリのデフォルト値を設定
【ロケールカテゴリ】
LC_CTYPE
LC_COLLATE
LC_MESSAGES
LC_MONETARY
LC_NUMERIC
LC_TIME
LC_ALL
LANG
-
【ロケール名】
英語
日本語/Uniclde
日本語/EUC-JP
日本語/シフトJIS
英語(米)/Unicode
【ロケール名】
C、POSIX
ja_JP.utf8またはja_JP.UTF-8
ja_JP.eucJP
ja_JP.shiftJIS
en_US.utf8
-
現在のロケール名を確認する
locale
-
ロケールに利用できる文字コード一覧を確認する
locale -m
-
コマンド実行時に一時的にロケールを英語に変更する
LANG=C コマンド
-
【文字コード】
7ビットで表される基本的な128種類の文字
↑の拡張版で、8ビットの文字コードで表せる256種類の文字
Unicldeを使った文字コードで、1文字を1〜6バイトで表す
UNIXで標準的に利用されていた日本語の文字コード
Windowsで利用される日本語の文字コード
電子メールなどで利用される日本との文字コード
【文字コード】
ASCII
ISO-8859
UTF-8
EUC-JP(日本語EUC)
シフトJIS
ISO-2022-JP
-
file1の文字コードをEUC-JPからUTF-8に変換し、file2に保存する
iconv -f euc-jp -t utf8 file1 > file2
-
変換可能な文字コードの一覧を表示
iconv -l
-
ユーザー作成時に自動的にホームディレクトリにコピーされたい雛形を配置するディレクトリ
/etc/skel
-
システム時刻を表示する
date
-
システム時刻を今年の3月4日12時に設定する
date 030412002023
date 03041200
-
システム時刻を2023-03-04 12:00 (Sun)みたいな書式で表示する
date "%Y-%m-%d %H:%M (%a)"
-
ハードウェア時刻を表示する
hwclock -r
hwclock --show
-
システム時刻をハードウェア時刻に合わせる
hwclock -w
hwclock --systohc
-
ハードウェア時刻をシステム時刻に合わせる
hwclock -s
hwclock --hctosys
-
systemdで現在の日付・時刻とタイムゾーン、NTPを表示する
timedatectl
timedatectl status
-
systemdで現在の日時を2020-03-12 13時45分に設定する
timedatectl set-time 2020-03-12 13:45:00
-
systemdでNTPを使ってシステム時刻を同期させる
timedatectl set-ntp yes
-
systemdで設定できるタイムゾーンを一覧表示する
timedatectl list-timezones
-
タイムゾーン情報が格納されている場所
/usr/share/zoneinfo/*
-
システムでタイムゾーンをAsia/Tokyoに設定する方法
以下6つの方法がある
timedatectl set-timezone Asia/Tokyo
cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
環境変数TZ="Asia/Tokyo"を設定
/etc/timezoneファイルにAsia/Tokyoと設定
tzselectで対話的に設定
-
指定したNTPサーバーexample.ntp.orgから現在時刻を取得する
ntpdate example.ntp.org
-
ntpでNTPサーバーの設定を行うファイル
(設定パラメータ)
補正情報ファイルを/etc/ntp.driftに設定
NTPサーバーをexample.ntp.orgに指定
ログファイルを/var/log/ntp.logに指定
/etc/ntp.conf
(設定パラメータ)
driftfile /etc/ntp.drift
server example.ntp.org
logfile /var/log/ntp.log
-
ntp/ntpdateの代替となるNTPサーバー・クライアントソフトウェア
デーモンプロセス
コマンド
Chrony
chronyd
chronyc
-
ChronyでNTPサーバーの設定を行うファイル
(設定パラメータ)
補正情報ファイルを/var/lib/chrony/driftに設定
NTPサーバーをexample.ntp.orgに指定
ログファイルを/var/log/chrony下に入れる
ハードウェア時刻と同期させる
/etc/chrony.conf
(設定パラメータ)
driftfile /var/lib/chrony/drift
server example.ntp.org iburst
rtcsync
logdir /var/log/chrony
-
ChronyでNTPサーバーごとの情報を表示する
chronyc sources
-
システムログを取得して処理するソフトウェア
syslog, rsyslog, syslog-ng
-
ChronyでNTPサーバーのオンライン・オフライン数を表示
chrony activity
-
Chronyで時刻ソースの統計情報を表示する
chrony sourcestats
-
Chronyで時刻ソースの情報を表示する
chrony sources
-
rsyslogの設定ファイル
/etc/rsyslog.conf
/etc/rsyslog.d/*
-
rsyslog設定ファイルでimuxsockモジュールを有効にする
$ModLoad imuxsock
-
rsyslog設定ファイルで作業ディレクトリを/var/lib/rsyslogに設定
$WorkDirectory /var/lib/rsyslog
-
rsyslog設定ファイルで/etc/rsyslog.d以下の設定ファイルを読み込む設定
$IncludeConfig /etc/rsyslog.d/*.conf
-
rsyslog設定ファイルでmailとauthpriv以外のinfoメッセージを/var/log/messagesに出力する
*.info;mail.none;authpriv.none /var/log/messages
-
rsyslog設定でcron関連ログをすべて/var/log/cronに保存する
cron.* /var/log/cron
-
【rsyslogのファシリティ(生成元)】
認証システム
cron
各種デーモン
カーネル
印刷システム
メールサービス
ユーザーアプリケーション
ローカルシステムの設定
【rsyslogのファシリティ(生成元)】
auth, authpriv
cron
daemon
kern
ipr
mail
user
local0~local7
-
rsyslogのプライオリティ高い順に並び替える
crit warning info debug emerg notice alert err
emerg
alert
crit
err
warning
notice
info
debug
-
【rsyslogアクションフィールド】
ログファイル/var/log/messagesに出力
コンソールtty1に出力
ホストu.example.comにUDPで出力
ホストt.example.comにTCPで出力
ユーザーuser1の端末に出力
ログイン中のすべてのユーザーの端末に出力
【rsyslogアクションフィールド】
/var/log/messages
/dev/tty1
@u.example.com
@@t.example.com
user1
* または:omusrmsg:*
-
rsyslogの再起動
systemctl restart rsyslog
-
rsyslog設定ファイルでログをUDPで受け取る設定
$ModLoad imudp
$UDPServerRun 514
-
rsyslog設定ファイルでログをTCPで受け取る設定
$ModLoad imtcp
$InputTCPServerRun 514
-
rsyslogですべてのログをUDPでu.example.comに送る設定
*.* @u.example.com:514
-
rsyslogですべてのログをTCPでt.example.comに送る設定
*.* @@t.example.com:514
-
ファシリティをsyslog、プライオリティをinfoとして、タグにTestをつけて
ログメッセージを生成する。内容は「test message」
logger -p syslog.info -t Test "test message"
-
systemdでコマンドの実行結果をジャーナルで書き込む
その結果を見る(最新情報詳細表示)
systemd-cat コマンド
journalctl -xe
-
systemdのログを閲覧するコマンド
(オプション)
末尾を表示し続ける
新しい順に表示
末尾のみ表示
詳細表示
カーネルメッセージのみ表示
ブート時のメッセージを表示
指定したプライオリティ以上のメッセージを表示
指定したUnitのログを出力
プレーンテキストで出力
カレントユーザーによるサービスのメッセージのみ
1ページごとではなく、すべて表示
journalctl
(オプション)
-f, --follow
-r, --reverse
-e, --pager-end
-x, --catalog
-k, --dmesg
-b, --boot
-p, --priority プライオリティ
-u, --unit Unit名
--full
--user
--no-pager
-
httpd関連のログをsystemdで表示する
journalctl -u httpd
-
journalctlで表示されるログについての設定ファイル
(設定)
永続的にログを残す(デフォルトは揮発性)
ログファイルのサイズ上限を10GBとする
/etc/systemd/journald.conf
(設定)
Storage=Persistent
SystemMaxUse=10GB
-
【ログファイルのローテーション設定】
周期を1週間とする
バックアップログを4周期分保存する
ローテーションさせたら、空のログファイルを作成する
ローテーションさせたら、空のログファイルをパーミッション664、所有者root、グループgroup1で作成する
ログファイルを圧縮する
【ログファイルのローテーション設定】
weekly
rotate 4
create
create 0664 root group1
compress
-
直ちにログのローテーションを実施する
logrotate -f /etc/logrotate.conf
-
25番のポートを開いているソフトウェアを調べる
netstat -anp | grep 25
fuser -n tcp 25
-
コマンドラインでメールを送信する
題名はtest、宛先をユーザーuser1
内容はHello Worldの一行とする
mail -s test user1
Hello World
.
-
コマンドラインでメールボックスに届いているメールを確認する
mail
-
root宛に届いたメールをadminとuser1で受け取れるように設定する
設定ファイルとその内容
この設定を有効にするコマンド
/etc/aliasesファイルで、
root: admin, user1 を設定し、
newaliasesで更新
-
user1宛に届いたメールをtest@example.comで受け取れるようにする
/home/user1/.forwardにtest@example.comと記述する
-
SUIDが設定されているファイルをすべて検索する
find / -perm -u+s -ls
-
対話的にパスワードに有効期限を設定する
chage ユーザー名
-
コマンドでuser1のパスワードに有効期限を設定する
変更してから変更できるまでの最短日数を3日、
最大有効期限日数を90日、
有効期限切れの警告開始を7日前、
有効期限切れ後、7日後に使用不能に、
アカウント自体は2024年6月30日に無効になる
ように設定する。
chage -m 3 -M 90 -W 7 -l 7 -E 2024-06-30 user1
-
ログイン中のユーザーを確認する
who
-
ログイン中のユーザーとシステム情報を確認する
w
またはwhoとuptime
-
最近ログインしたユーザーの一覧を表示
last
-
ローカルで開いているポートを確認する
netstat
ss
lsof -i
-
example.comで開いているポートを確認する
nmap example.com
-
user1のログインを禁止する
usermod -s /sbin/nologin user1
-
10分間端末への入力がなければ自動でログアウトするには
環境変数TMOUT=600を設定
-
各ユーザーが利用できるリソースを制御するコマンド
ulimit
-
visudoコマンドで開かれるファイル
/etc/sudoers
-
/etc/sudoersでuser1に対してすべてのroot権限必要なコマンドの実行を許可
user1 ALL=(ALL) ALL
-
/etc/sudoersでuser2に対して/usr/sbin/shutdownのみ許可する
user2 ALL=(ALL) /usr/sbin/shutdown
-
rootアカウント以外のログインを禁止するには
/etc/nologinファイルを作成する
-
user1のアカウントをロックする
passwd -l user1
usermod -L user1
-
リモートホストexample.comのuser1ユーザーのホームディレクトリに、ローカルホストのdata.txtをコピーする
scp data.txt user1@example.com:
-
リモートホストexample.comの/etc/hostsファイルを、ローカルホストのカレントディレクトリにコピーする
scp example.com:/etc/hosts .
-
秘密鍵ファイルを利用する際に、パスフレーズを入力しないで済むbashシェルを起動する
ssh-agent bash
ssh-add
-
ローカルホストの10110番ポートに接続すると、リモートホストpop.example.comの110番ポートに接続できるようにSSHポートフォワーディングを行う
ただし、これをバックグラウンドで転送のみを実行させる
ssh -f -N -L 10110:pop.example.com:110 user1@pop.example.com
-
著作権を放棄したソフトウェアのこと
パブリックドメインソフトウェア
-
GPLソフトウェア利用時の注意点
GPLを改変したソフトウェアにもGPLを適用する必要がある(コピーレフト)
ソフトウェアを公開・販売する場合はソースコードの公開が必要
-
LGPLとGPLの違い
LGPLはGPLより制限が緩い
-
AGPLとGPLの違い
GPLではソフトウェアをネットワーク越しに利用するユーザーにソースコードを知らせる義務はない
AGPLにはある
-
BSDソフトウェアのライセンス内容と派生ライセンス
ソースコード公開は不要、BSD以外のライセンスでの配布が可能
MIT、Apache
-
GPLとMPLの違い
MPLのソフトウェア自体はソースコードの公開が必要だが、
これを利用したソフトウェアのソースコード公開は不要
-
LinuC Level1 101 コマンド中心の単語帳です。
#LinuC #Linux #プログラミング #インフラ #資格 #IT #ITエンジニア #SE #コマンド #CUI