- 投稿日:2020-04-06T22:34:03+09:00
Linuxとは
そもそもLinuxとは?
- LinuxとはOSの一種である。OSとは、画面操作や情報を渡すなど、コンピュータの土台のようなもの。
- LinuxはオープンソースのOSであり、オープンソースとは無料で可変可能なプログラムのようなもの。Linuxの機は MacOSやWindowsOSなどとあまり変わらないが、無料で新たにサーバーを立ち上げたり、OSを作ったりすることができる。
- Linuxの操作はCUIでコマンドを打って操作する。
Linuxコマンド
- ディレクトリ移動
shell$ pwd //作業しているディレクトリを表示 $ cd ディレクト名 //ディレクトリを変更
- ファイル表示
shell$ ls //今いるディレクトリにあるファイルを表示
- ファイル操作
shell$ mkdir ディレクトリ名 //ディレクトリを作成 $ cp コピーしたいファイル コピー後の名前 //コピー $ mv 移動させたいファイル 移動先 //移動 $ rm ファイル名 //削除
- 投稿日:2020-04-06T17:40:03+09:00
Gitをソースからコンパイルしてインストールする。
Gitをユーザーのディレクトリにソースからコンパイルしてインストールする。
だいたいhttps://github.com/git/git/blob/master/INSTALL の記述通り。
私の環境ではexpat辺りやdocのコンパイルでエラーが起きたので、
Alternativeな方法でインストールした。terminal# ソースのダウンロード $ curl -LO https://github.com/git/git/archive/v2.26.0.tar.gz # 展開して展開先に移動 $ tar -xvf v2.26.0.tar.gz $ cd git-2.26.0/ # configureファイルを作成して、configureする。インストール先は展開したディレクトリ $ make configure $ ./configure --prefix=$(pwd) # makeしてinstall $ make all $ make install # installしたgitのversion確認。 $ bin/git --version git version 2.26.0
- 投稿日:2020-04-06T16:53:06+09:00
tee
- 投稿日:2020-04-06T12:13:59+09:00
UbuntuをWindows8.1上のVirtualBoxに入れてみた話
- 投稿日:2020-04-06T11:54:28+09:00
便利なdiffコマンド使い方メモ
ファイルを比較する
diff {ファイルA} {ファイルB}差分に!をつけて比較する
diff -c {ファイルA} {ファイルB}大文字と小文字を区別せずに比較する
diff -i {ファイルA} {ファイルB}ファイルが同一の場合、同一と表示する
diff -s {ファイルA} {ファイルB}ファイルの中身が異なる場合、中身を表示せずに異なると表示する
diff -q {ファイルA} {ファイルB}空白を無視してファイルを比較する
diff -w {ファイルA} {ファイルB}ディレクトリごと比較する
diff -r {ディレクトリA} {ディレクトリB}中身を表示せずにディレクトリごと比較する
diff -rq {ディレクトリA} {ディレクトリB}
- 投稿日:2020-04-06T02:55:34+09:00
BootableなLVを作成する
経緯
LVMでセットアップされたUbuntuにおいて、Bootableディスクだけ別のLVにしてみたらどうなるのか検証してみた。
現在のパーティション
root@yayoi:/home/moly# pvdisplay --- Physical volume --- PV Name /dev/sda3 VG Name ubuntu-vg PV Size <9.00 GiB / not usable 0 Allocatable yes PE Size 4.00 MiB Total PE 2303 Free PE 1023 Allocated PE 1280 PV UUID mcw43c-b4ae-beqi-ISBZ-ZqPk-N46i-aGe5C6 root@yayoi:/home/moly# df Filesystem 1K-blocks Used Available Use% Mounted on udev 472920 0 472920 0% /dev tmpfs 100896 944 99952 1% /run /dev/mapper/ubuntu--vg-ubuntu--lv 4062912 2079568 1757248 55% / tmpfs 504464 0 504464 0% /dev/shm tmpfs 5120 0 5120 0% /run/lock tmpfs 504464 0 504464 0% /sys/fs/cgroup /dev/loop0 89984 89984 0 100% /snap/core/5662 /dev/loop1 68352 68352 0 100% /snap/lxd/9239 /dev/sda2 999320 150336 780172 17% /boot tmpfs 100892 0 100892 0% /run/user/1000 root@yayoi:/home/moly# file -s /dev/mapper/ubuntu--vg-ubuntu--lv /dev/mapper/ubuntu--vg-ubuntu--lv: symbolic link to ../dm-0 /dev/mapper/ubuntu--vg-ubuntu--lv: symbolic link to ../dm-0 root@yayoi:/home/moly# file -s /dev/dm-0 # filesystemしらべる /dev/dm-0: Linux rev 1.0 ext4 filesystem data, UUID=b50c9846-9c89-44c2-b57a-1c0a00c3afa5 (needs journal recovery) (extents) (64bit) (large files) (huge files)lvをつくる
root@yayoi:/home/moly# lvcreate -L 1G -n Bootable ubuntu-vgfilesystem
root@yayoi:/home/moly# mkfs.ext4 /dev/ubuntu-vg/Bootable mke2fs 1.44.4 (18-Aug-2018) Creating filesystem with 262144 4k blocks and 65536 inodes Filesystem UUID: ef5bf14a-43fa-4dd3-9441-48e0ea4a0fbf Superblock backups stored on blocks: 32768, 98304, 163840, 229376 Allocating group tables: done Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: donemountする
root@yayoi:/home/moly# mktemp -d /tmp/tmp.GauV3uu0St root@yayoi:/home/moly# mount -t ext4 /dev/ubuntu-vg/Bootable /tmp/tmp.GauV3uu0Stgv,lv確認
root@yayoi:/tmp/tmp.GauV3uu0St# lvdisplay --- Logical volume --- LV Path /dev/ubuntu-vg/ubuntu-lv LV Name ubuntu-lv VG Name ubuntu-vg LV UUID oeCuCc-vFAD-p1Pa-PfDK-sk4L-w6cn-ERFBNr LV Write Access read/write LV Creation host, time ubuntu-server, 2019-04-04 15:17:09 +0000 LV Status available # open 1 LV Size 4.00 GiB Current LE 1024 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 --- Logical volume --- LV Path /dev/ubuntu-vg/Bootable LV Name Bootable VG Name ubuntu-vg LV UUID ZPT9Lo-yY7O-WXvW-vVEa-O5xB-xIo5-9rR1qT LV Write Access read/write LV Creation host, time yayoi, 2019-04-04 15:24:19 +0000 LV Status available # open 1 LV Size 1.00 GiB Current LE 256 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:1 root@yayoi:/tmp/tmp.GauV3uu0St#grubのmenuentry追加
以下のものを追加.
root@yayoi:/etc/grub.d# cat 99_bootable_lvm #!/bin/sh set -e echo "shitty bootable lvm" >&2 cat << EOF menuentry "bootable lvm" { recordfail load_video gfxmode $linux_gfx_mode insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_gpt insmod ext2 insmod lvm set root='lvmid/Vgp9Fy-SOA4-Ff5x-sAs4-Bhfg-ppwG-gOf76f/ZPT9Lo-yY7O-WXvW-vVEa-O5xB-xIo5-9rR1qT' search --no-floppy --fs-uuid --set=root --hint='lvmid/Vgp9Fy-SOA4-Ff5x-sAs4-Bhfg-ppwG-gOf76f/ZPT9Lo-yY7O-WXvW-vVEa-O5xB-xIo5-9rR1qT' 3ef3a667-f4ed-4399-8f31-11c29ef994eb linux /vmlinuz-4.18.0-17-generic root=/dev/mapper/ubuntu--vg-ubuntu--lv ro maybe-ubiquity initrd /initrd.img-4.18.0-17-generic } EOF
- このcfgでは以下に指定するようにgrubのrootを変更して,/bootをさっき追加したLVの
Bootable
からみるように指定しているset root='lvmid/Vgp9Fy-SOA4-Ff5x-sAs4-Bhfg-ppwG-gOf76f/ZPT9Lo-yY7O-WXvW-vVEa-O5xB-xIo5-9rR1qT'
はlvmid/vg-uuid/lv-uuid
で指定.- searchコマンドでもrootを指定しているけどまあ同じようなもん
- linuxのrootディレクトリは
/dev/mapper/ubuntu--vg-ubuntu--lv
=>/dev/dm-0
update-grub2
root@yayoi:/etc/grub.d# sudo update-grub2 Generating grub configuration file ... Found linux image: /boot/vmlinuz-4.18.0-17-generic Found initrd image: /boot/initrd.img-4.18.0-17-generic Found linux image: /boot/vmlinuz-4.18.0-10-generic Found initrd image: /boot/initrd.img-4.18.0-10-generic shitty bootable lvm donebootをコピーする
root@yayoi:/home/moly# cd /tmp/tmp.GauV3uu0St/ root@yayoi:/tmp/tmp.GauV3uu0St# cp -r /boot/* ./bootしてみる
grubのmenuentryから選ぶとふつうに起動するね
fstabから/bootのマウントをやめてみる!w
fstabを編集して再起動する
root@yayoi:/tmp/tmp.GauV3uu0St# cat /etc/fstab UUID=b50c9846-9c89-44c2-b57a-1c0a00c3afa5 / ext4 defaults 0 0 #UUID=3ef3a667-f4ed-4399-8f31-11c29ef994eb /boot ext4 defaults 0 0結果
grubenvは誰が作ったのかしらんけど,とりあえず/bootが見えないかんじで立ち上がった.
最高root@yayoi:/home/moly# df Filesystem 1K-blocks Used Available Use% Mounted on udev 472920 0 472920 0% /dev tmpfs 100896 932 99964 1% /run /dev/mapper/ubuntu--vg-ubuntu--lv 4062912 2105112 1731704 55% / tmpfs 504464 0 504464 0% /dev/shm tmpfs 5120 0 5120 0% /run/lock tmpfs 504464 0 504464 0% /sys/fs/cgroup /dev/loop0 89984 89984 0 100% /snap/core/5662 /dev/loop1 68352 68352 0 100% /snap/lxd/9239 tmpfs 100892 0 100892 0% /run/user/1000 root@yayoi:/home/moly# tree /boot /boot └── grub └── grubenv 1 directory, 1 file root@yayoi:/home/moly# cat /boot/grub/grubenv # GRUB Environment Block #######################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################root@yayoi:/home/moly#新しく作ったBootable LVを/bootにマウントする
fstabを変更してreboot
root@yayoi:/home/moly# blkid /dev/sda2: UUID="3ef3a667-f4ed-4399-8f31-11c29ef994eb" TYPE="ext4" PARTUUID="c0289df7-8720-4474-ae2d-66ed85f9b9a3" /dev/sda3: UUID="mcw43c-b4ae-beqi-ISBZ-ZqPk-N46i-aGe5C6" TYPE="LVM2_member" PARTUUID="9a3e5412-0c8e-4623-a7ef-9143918a416e" /dev/mapper/ubuntu--vg-ubuntu--lv: UUID="b50c9846-9c89-44c2-b57a-1c0a00c3afa5" TYPE="ext4" /dev/loop0: TYPE="squashfs" /dev/loop1: TYPE="squashfs" /dev/mapper/ubuntu--vg-Bootable: UUID="ef5bf14a-43fa-4dd3-9441-48e0ea4a0fbf" TYPE="ext4" /dev/sda1: PARTUUID="184382b2-05c6-4aa2-9ed6-d350573bfe9f" root@yayoi:/home/moly# cat /etc/fstab UUID=b50c9846-9c89-44c2-b57a-1c0a00c3afa5 / ext4 defaults 0 0 #UUID=3ef3a667-f4ed-4399-8f31-11c29ef994eb /boot ext4 defaults 0 0 UUID=ef5bf14a-43fa-4dd3-9441-48e0ea4a0fbf /boot ext4 defaults 0 0結果
/boot
が/dev/mapper/ubuntu--vg-Bootable
でマウントされているroot@yayoi:/home/moly# df Filesystem 1K-blocks Used Available Use% Mounted on udev 472920 0 472920 0% /dev tmpfs 100896 940 99956 1% /run /dev/mapper/ubuntu--vg-ubuntu--lv 4062912 2155104 1681712 57% / tmpfs 504464 0 504464 0% /dev/shm tmpfs 5120 0 5120 0% /run/lock tmpfs 504464 0 504464 0% /sys/fs/cgroup /dev/loop0 89984 89984 0 100% /snap/core/5662 /dev/loop1 68352 68352 0 100% /snap/lxd/9239 /dev/mapper/ubuntu--vg-Bootable 999320 150328 780180 17% /boot tmpfs 100892 0 100892 0% /run/user/1000