- 投稿日:2020-10-11T21:03:42+09:00
ディスクを追加してLVMのSWAP領域と/home領域を拡張する
やりたいこと
新規追加したディスク(20GB)に物理ボリュームを作成し、swapと/homeの論理ボリュームサイズを+10GBずつ拡張する。
環境
・仮想化ソフト:vmware workstation
・OS:CentOS 6.5注意点
今回は/swapと/homeの論理ボリュームサイズの拡張なのでOSがオンラインの状態で作業できますが、/(root)の論理ボリュームサイズを縮小する場合はLIVECDをを使用して、レスキューモードで設定する必要があります。
事前状況確認
ファイルシステム確認
[root@localhost ~]# df -hTP Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-lv_root ext4 37G 3.4G 32G 10% / tmpfs tmpfs 931M 228K 931M 1% /dev/shm /dev/sda1 ext4 504M 46M 434M 10% /boot /dev/mapper/VolGroup01-lv_home ext4 190M 6.4M 174M 4% /home /dev/sr0 iso9660 4.2G 4.2G 0 100% /media/CentOS_6.5_Finalブロックデバイス確認
sdcが新規追加したディスク(20GB)
[root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 4.2G 0 rom /media/CentOS_6.5_Final sr1 11:1 1 1024M 0 rom sda 8:0 0 40G 0 disk sda1 8:1 0 512M 0 part /boot sda2 8:2 0 39.5G 0 part VolGroup00-lv_root (dm-0) 253:0 0 37.5G 0 lvm / VolGroup00-lv_swap (dm-1) 253:1 0 2G 0 lvm [SWAP]sdb 8:16 0 20G 0 disk sdb1 8:17 0 200M 0 part VolGroup01-lv_home (dm-2) 253:2 0 196M 0 lvm /home sdc 8:32 0 20G 0 diskパーティション確認
[root@localhost ~]# fdisk -l ディスク /dev/sda: 42.9 GB, 42949672960 バイト ヘッド 255, セクタ 63, シリンダ 5221 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x00020db8 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 1 66 524288 83 Linux パーティション 1 は、シリンダ境界で終わっていません。 /dev/sda2 66 5222 41417728 8e Linux LVM ディスク /dev/sdb: 21.5 GB, 21474836480 バイト ヘッド 160, セクタ 6, シリンダ 43690 Units = シリンダ数 of 960 * 512 = 491520 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x0002c5b0 デバイス ブート 始点 終点 ブロック Id システム /dev/sdb1 3 429 204800 8e Linux LVM ディスク /dev/sdc: 21.5 GB, 21474836480 バイト ヘッド 255, セクタ 63, シリンダ 2610 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x00037b08 デバイス ブート 始点 終点 ブロック Id システム ディスク /dev/mapper/VolGroup00-lv_root: 40.3 GB, 40261124096 バイト ヘッド 255, セクタ 63, シリンダ 4894 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x00000000 ディスク /dev/mapper/VolGroup00-lv_swap: 2147 MB, 2147483648 バイト ヘッド 255, セクタ 63, シリンダ 261 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x00000000 ディスク /dev/mapper/VolGroup01-lv_home: 205 MB, 205520896 バイト ヘッド 255, セクタ 63, シリンダ 24 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x00000000パーティション作成
[root@localhost ~]# fdisk /dev/sdc 警告: DOS互換モードは廃止予定です。このモード (コマンド 'c') を止めることを 強く推奨します。 and change display units to sectors (command 'u'). コマンド (m でヘルプ): m コマンドの動作 a ブート可能フラグをつける b bsd ディスクラベルを編集する c dos 互換フラグをつける d 領域を削除する l 既知の領域タイプをリスト表示する m このメニューを表示する n 新たに領域を作成する o 新たに空の DOS 領域テーブルを作成する p 領域テーブルを表示する q 変更を保存せずに終了する s 空の Sun ディスクラベルを作成する t 領域のシステム ID を変更する u 表示/項目ユニットを変更する v 領域テーブルを照合する w テーブルをディスクに書き込み、終了する x 特別な機能 (エキスパート専用) コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基本パーティション (1-4) p パーティション番号 (1-4): 1 最初 シリンダ (1-2610, 初期値 1): 初期値 1 を使います Last シリンダ, +シリンダ数 or +size{K,M,G} (1-2610, 初期値 2610): +10G コマンド (m でヘルプ): t 選択した領域 1 16進数コード (L コマンドでコードリスト表示): L 0 空 24 NEC DOS 81 Minix / 古い bf Solaris 1 FAT12 39 Plan 9 82 Linux スワッ c1 DRDOS/sec (FAT- 2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT- 3 XENIX usr 40 Venix 80286 84 OS/2 隠し C: c6 DRDOS/sec (FAT- 4 FAT16 <32M 41 PPC PReP Boot 85 Linux 拡張領 c7 Syrinx 5 拡張領域 42 SFS 86 NTFS ボリュ da 非 FS デー 6 FAT16 4d QNX4.x 87 NTFS ボリュ db CP/M / CTOS / . 7 HPFS/NTFS 4e QNX4.x 2nd part 88 Linux プレー de Dell ユーテ 8 AIX 4f QNX4.x 3rd part 8e Linux LVM df BootIt 9 AIX ブート 50 OnTrack DM 93 Amoeba e1 DOS access a OS/2 ブート 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor c W95 FAT32 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad eb BeOS fs e W95 FAT16 (LBA) 54 OnTrackDM6 a5 FreeBSD ee GPT f W95 拡張領 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/ 10 OPUS 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC 11 隠し FAT12 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 12 Compaq 診断 61 SpeedStor a9 NetBSD f4 SpeedStor 14 隠し FAT16 <3 63 GNU HURD また ab Darwin ブー f2 DOS セカン 16 隠し FAT16 64 Novell Netware af HFS / HFS+ fb VMware VMFS 17 隠し HPFS/NTF 65 Novell Netware b7 BSDI fs fc VMware VMKCORE 18 AST SmartSleep 70 DiskSecure Mult b8 BSDI スワッ fd Linux raid 自 1b 隠し W95 FAT3 75 PC/IX bb 隠し Boot Wiz fe LANstep 1c 隠し W95 FAT3 80 古い Minix be Solaris ブー ff BBT 1e 隠し W95 FAT1 16進数コード (L コマンドでコードリスト表示): 8e 領域のシステムタイプを 1 から 8e (Linux LVM) に変更しました コマンド (m でヘルプ): p ディスク /dev/sdc: 21.5 GB, 21474836480 バイト ヘッド 255, セクタ 63, シリンダ 2610 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x00037b08 デバイス ブート 始点 終点 ブロック Id システム /dev/sdc1 1 1306 10490413+ 8e Linux LVM コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基本パーティション (1-4) p パーティション番号 (1-4): 2 最初 シリンダ (1307-2610, 初期値 1307): 初期値 1307 を使います Last シリンダ, +シリンダ数 or +size{K,M,G} (1307-2610, 初期値 2610): 初期値 2610 を使います コマンド (m でヘルプ): t パーティション番号 (1-4): 2 16進数コード (L コマンドでコードリスト表示): 8e 領域のシステムタイプを 2 から 8e (Linux LVM) に変更しました コマンド (m でヘルプ): p ディスク /dev/sdc: 21.5 GB, 21474836480 バイト ヘッド 255, セクタ 63, シリンダ 2610 Units = シリンダ数 of 16065 * 512 = 8225280 バイト セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O size (minimum/optimal): 512 bytes / 512 bytes ディスク識別子: 0x00037b08 デバイス ブート 始点 終点 ブロック Id システム /dev/sdc1 1 1306 10490413+ 8e Linux LVM /dev/sdc2 1307 2610 10474380 8e Linux LVM コマンド (m でヘルプ): w パーティションテーブルは変更されました! ioctl() を呼び出してパーティションテーブルを再読込みします。 ディスクを同期しています。PV(物理ボリューム)作成
[root@localhost ~]# pvscan PV /dev/sdb1 VG VolGroup01 lvm2 [196.00 MiB / 0 free] PV /dev/sda2 VG VolGroup00 lvm2 [39.50 GiB / 0 free] Total: 2 [39.69 GiB] / in use: 2 [39.69 GiB] / in no VG: 0 [0 ] [root@localhost ~]# [root@localhost ~]# pvcreate /dev/sdc1 Physical volume "/dev/sdc1" successfully created [root@localhost ~]# pvcreate /dev/sdc2 Physical volume "/dev/sdc2" successfully created [root@localhost ~]# [root@localhost ~]# pvscan PV /dev/sdb1 VG VolGroup01 lvm2 [196.00 MiB / 0 free] PV /dev/sda2 VG VolGroup00 lvm2 [39.50 GiB / 0 free] PV /dev/sdc1 lvm2 [10.00 GiB] PV /dev/sdc2 lvm2 [9.99 GiB] Total: 4 [59.68 GiB] / in use: 2 [39.69 GiB] / in no VG: 2 [19.99 GiB]ボリュームグループ(VG)に物理ボリューム(PV)を追加する
[root@localhost ~]# vgdisplay -v Finding all volume groups Finding volume group "VolGroup01" --- Volume group --- VG Name VolGroup01 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 1 Open LV 1 Max PV 0 Cur PV 1 Act PV 1 VG Size 196.00 MiB PE Size 4.00 MiB Total PE 49 Alloc PE / Size 49 / 196.00 MiB Free PE / Size 0 / 0 VG UUID QAWvr5-edqd-EYtc-Leo7-0nRW-8S46-31Sg2l --- Logical volume --- LV Path /dev/VolGroup01/lv_home LV Name lv_home VG Name VolGroup01 LV UUID 8HafSX-cnNI-bz1d-lo2c-L9Nj-IYZq-ibKVKM LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-10-11 14:15:41 +0900 LV Status available # open 1 LV Size 196.00 MiB Current LE 49 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 --- Physical volumes --- PV Name /dev/sdb1 PV UUID pGnDqB-jr3Z-BTXr-K2PS-INvP-5DRo-Gj2Uqf PV Status allocatable Total PE / Free PE 49 / 0 Finding volume group "VolGroup00" --- Volume group --- VG Name VolGroup00 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 39.50 GiB PE Size 4.00 MiB Total PE 10111 Alloc PE / Size 10111 / 39.50 GiB Free PE / Size 0 / 0 VG UUID z9HJFE-UYsB-xLif-pnAb-Th5P-NE2f-d4CVKc --- Logical volume --- LV Path /dev/VolGroup00/lv_root LV Name lv_root VG Name VolGroup00 LV UUID jY98Rj-yCdd-MWNX-iVZe-OPuH-Hqyc-adjd9T LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-10-11 14:15:36 +0900 LV Status available # open 1 LV Size 37.50 GiB Current LE 9599 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 --- Logical volume --- LV Path /dev/VolGroup00/lv_swap LV Name lv_swap VG Name VolGroup00 LV UUID 72hHcq-qtUB-SeVK-3BwO-sgde-2is0-95lgZD LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-10-11 14:15:41 +0900 LV Status available # open 1 LV Size 2.00 GiB Current LE 512 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:1 --- Physical volumes --- PV Name /dev/sda2 PV UUID diLbku-oX9J-KCct-WYWe-Qt1w-EPlm-VKz2uc PV Status allocatable Total PE / Free PE 10111 / 0 [root@localhost ~]# [root@localhost ~]# vgextend VolGroup00 /dev/sdc1 Volume group "VolGroup00" successfully extended [root@localhost ~]# [root@localhost ~]# vgextend VolGroup01 /dev/sdc2 Volume group "VolGroup01" successfully extended [root@localhost ~]# [root@localhost ~]# pvscan PV /dev/sdb1 VG VolGroup01 lvm2 [196.00 MiB / 0 free] PV /dev/sdc2 VG VolGroup01 lvm2 [9.98 GiB / 9.98 GiB free] PV /dev/sda2 VG VolGroup00 lvm2 [39.50 GiB / 0 free] PV /dev/sdc1 VG VolGroup00 lvm2 [10.00 GiB / 10.00 GiB free] Total: 4 [59.67 GiB] / in use: 4 [59.67 GiB] / in no VG: 0 [0 ]論理ボリュームの拡張
物理ボリュームを追加してサイズが増えた各VGから、空き容量分をlv_swapとlv_homeに割り当てます。
[root@localhost ~]# lvextend -l +100%FREE /dev/VolGroup00/lv_swap Extending logical volume lv_swap to 12.00 GiB Logical volume lv_swap successfully resized [root@localhost ~]# [root@localhost ~]# lvextend -l +100%FREE /dev/VolGroup01/lv_home Extending logical volume lv_home to 10.18 GiB Logical volume lv_home successfully resized [root@localhost ~]# [root@localhost ~]# vgdisplay -v Finding all volume groups Finding volume group "VolGroup01" --- Volume group --- VG Name VolGroup01 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 5 VG Access read/write VG Status resizable MAX LV 0 Cur LV 1 Open LV 1 Max PV 0 Cur PV 2 Act PV 2 VG Size 10.18 GiB PE Size 4.00 MiB Total PE 2605 Alloc PE / Size 2605 / 10.18 GiB Free PE / Size 0 / 0 VG UUID QAWvr5-edqd-EYtc-Leo7-0nRW-8S46-31Sg2l --- Logical volume --- LV Path /dev/VolGroup01/lv_home LV Name lv_home VG Name VolGroup01 LV UUID 8HafSX-cnNI-bz1d-lo2c-L9Nj-IYZq-ibKVKM LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-10-11 14:15:41 +0900 LV Status available # open 1 LV Size 10.18 GiB Current LE 2605 Segments 2 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 --- Physical volumes --- PV Name /dev/sdb1 PV UUID pGnDqB-jr3Z-BTXr-K2PS-INvP-5DRo-Gj2Uqf PV Status allocatable Total PE / Free PE 49 / 0 PV Name /dev/sdc2 PV UUID UPwbu0-Cz8w-us7p-sfOv-GET0-orys-ZSAPu8 PV Status allocatable Total PE / Free PE 2556 / 0 Finding volume group "VolGroup00" --- Volume group --- VG Name VolGroup00 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 5 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 2 Act PV 2 VG Size 49.50 GiB PE Size 4.00 MiB Total PE 12671 Alloc PE / Size 12671 / 49.50 GiB Free PE / Size 0 / 0 VG UUID z9HJFE-UYsB-xLif-pnAb-Th5P-NE2f-d4CVKc --- Logical volume --- LV Path /dev/VolGroup00/lv_root LV Name lv_root VG Name VolGroup00 LV UUID jY98Rj-yCdd-MWNX-iVZe-OPuH-Hqyc-adjd9T LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-10-11 14:15:36 +0900 LV Status available # open 1 LV Size 37.50 GiB Current LE 9599 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0 --- Logical volume --- LV Path /dev/VolGroup00/lv_swap LV Name lv_swap VG Name VolGroup00 LV UUID 72hHcq-qtUB-SeVK-3BwO-sgde-2is0-95lgZD LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-10-11 14:15:41 +0900 LV Status available # open 1 LV Size 12.00 GiB Current LE 3072 Segments 2 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:1 --- Physical volumes --- PV Name /dev/sda2 PV UUID diLbku-oX9J-KCct-WYWe-Qt1w-EPlm-VKz2uc PV Status allocatable Total PE / Free PE 10111 / 0 PV Name /dev/sdc1 PV UUID B2lv0h-sEz7-fYQ3-nZel-HTkI-O8jS-gUd7Is PV Status allocatable Total PE / Free PE 2560 / 0 [root@localhost ~]# [root@localhost ~]# lvscan ACTIVE '/dev/VolGroup01/lv_home' [10.18 GiB] inherit ACTIVE '/dev/VolGroup00/lv_root' [37.50 GiB] inherit ACTIVE '/dev/VolGroup00/lv_swap' [12.00 GiB] inherit [root@localhost ~]# [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 4.2G 0 rom /media/CentOS_6.5_Final sr1 11:1 1 1024M 0 rom sda 8:0 0 40G 0 disk tqsda1 8:1 0 512M 0 part /boot mqsda2 8:2 0 39.5G 0 part tqVolGroup00-lv_root (dm-0) 253:0 0 37.5G 0 lvm / mqVolGroup00-lv_swap (dm-1) 253:1 0 12G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk mqsdb1 8:17 0 200M 0 part mqVolGroup01-lv_home (dm-2) 253:2 0 10.2G 0 lvm /home sdc 8:32 0 20G 0 disk tqsdc1 8:33 0 10G 0 part x mqVolGroup00-lv_swap (dm-1) 253:1 0 12G 0 lvm [SWAP] mqsdc2 8:34 0 10G 0 part mqVolGroup01-lv_home (dm-2) 253:2 0 10.2G 0 lvm /homeSWAP領域の拡張(再フォーマット)
[root@localhost ~]# free -m total used free shared buffers cached Mem: 1861 526 1335 0 24 179 -/+ buffers/cache: 321 1539 Swap: 2047 0 2047 [root@localhost ~]# [root@localhost ~]# swapon -s Filename Type Size Used Priority /dev/dm-1 partition 2097144 0 -1 [root@localhost ~]# [root@localhost ~]# swapoff /dev/VolGroup00/lv_swap [root@localhost ~]# [root@localhost ~]# mkswap /dev/VolGroup00/lv_swap mkswap: /dev/VolGroup00/lv_swap: warning: don't erase bootbits sectors on whole disk. Use -f to force. スワップ空間バージョン1を設定します、サイズ = 12582908 KiB ラベルはありません, UUID=81e2aa64-c5eb-4247-b705-311fed3e707a [root@localhost ~]# [root@localhost ~]# swapon /dev/VolGroup00/lv_swap [root@localhost ~]# [root@localhost ~]# swapon -s Filename Type Size Used Priority /dev/dm-1 partition 12582904 0 -1 [root@localhost ~]# [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 4.2G 0 rom /media/CentOS_6.5_Final sr1 11:1 1 1024M 0 rom sda 8:0 0 40G 0 disk tqsda1 8:1 0 512M 0 part /boot mqsda2 8:2 0 39.5G 0 part tqVolGroup00-lv_root (dm-0) 253:0 0 37.5G 0 lvm / mqVolGroup00-lv_swap (dm-1) 253:1 0 12G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk mqsdb1 8:17 0 200M 0 part mqVolGroup01-lv_home (dm-2) 253:2 0 10.2G 0 lvm /home sdc 8:32 0 20G 0 disk tqsdc1 8:33 0 10G 0 part x mqVolGroup00-lv_swap (dm-1) 253:1 0 12G 0 lvm [SWAP] mqsdc2 8:34 0 10G 0 part mqVolGroup01-lv_home (dm-2) 253:2 0 10.2G 0 lvm /home [root@localhost ~]# [root@localhost ~]# free -m total used free shared buffers cached Mem: 1861 534 1327 0 24 179 -/+ buffers/cache: 329 1532 Swap: 12287 0 12287swap領域サイズが拡張されたことを確認。
/homeファイルシステムのリサイズ
[root@localhost ~]# df -hTP Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-lv_root ext4 37G 3.4G 32G 10% / tmpfs tmpfs 931M 228K 931M 1% /dev/shm /dev/sda1 ext4 504M 46M 434M 10% /boot /dev/mapper/VolGroup01-lv_home ext4 190M 6.4M 174M 4% /home /dev/sr0 iso9660 4.2G 4.2G 0 100% /media/CentOS_6.5_Final [root@localhost ~]# [root@localhost ~]# [root@localhost ~]# resize2fs /dev/VolGroup01/lv_home resize2fs 1.41.12 (17-May-2010) Filesystem at /dev/VolGroup01/lv_home is mounted on /home; on-line resizing required old desc_blocks = 1, new_desc_blocks = 41 Performing an on-line resize of /dev/VolGroup01/lv_home to 10670080 (1k) blocks. The filesystem on /dev/VolGroup01/lv_home is now 10670080 blocks long. [root@localhost ~]# [root@localhost ~]# df -hTP Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-lv_root ext4 37G 3.4G 32G 10% / tmpfs tmpfs 931M 228K 931M 1% /dev/shm /dev/sda1 ext4 504M 46M 434M 10% /boot /dev/mapper/VolGroup01-lv_home ext4 9.9G 8.1M 9.4G 1% /home /dev/sr0 iso9660 4.2G 4.2G 0 100% /media/CentOS_6.5_Final/home領域サイズが拡張されたことを確認。
- 投稿日:2020-10-11T17:19:05+09:00
設定ファイルの読み込み有無を分かりやすく確認
一般ユーザでnodenvをインストールしてパスを通した後
ちょっとrootで用があってroot→一般に戻った時[ec2-user@ip-xxx-xxx-xxx-xxx ~]$ sudo su [root@ip-xxx-xxx-xxx-xxx ec2-user]# su shindev [shindev@ip-xxx-xxx-xxx-xxx ec2-user]# cd [shindev@ip-xxx-xxx-xxx-xxx ~]# git clone nodenv〜 [shindev@ip-xxx-xxx-xxx-xxx ~]# vi ~/.bash_profile #PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.nodenv/bin #export PATH #eval "$(nodenv init -)" #これを追記してnodenvのパスを通した [shindev@ip-xxx-xxx-xxx-xxx ~]# source ~/.bash_profile [shindev@ip-xxx-xxx-xxx-xxx ~]# nodenv -v nodenv 1.4.0+3.631d0b6 #パス通った [shindev@ip-xxx-xxx-xxx-xxx ~]# exit [root@ip-xxx-xxx-xxx-xxx ec2-user]# #ちょっと用を済ませる [root@ip-xxx-xxx-xxx-xxx ec2-user]# su shindev #もう1回一般ユーザにスイッチ [shindev@ip-xxx-xxx-xxx-xxx ec2-user]# [shindev@ip-xxx-xxx-xxx-xxx ~]# nodenv -v bash: nodenv: コマンドが見つかりません #あら??bash_profileにバスを通すコマンド入れてるはずなのに読み込まれてない〜
そう言えばbashrcとbash_profileってどういう条件で読まれるのかよく分かってないので
真面目に調べてみる。確認方法
なんのこっちゃないけど各ファイルにechoコマンドを追記。
bashrc# .bashrc echo "~/.bashrc loaded" #これを追記 # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fibash_profile# .bash_profile echo "~/.bash_profile loaded" #これを追記 # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.nodenv/bin export PATH eval "$(nodenv init -)"これをやっといて一旦rootになってsuコマンドで切り替えてみる。
[root@ip-XXX-XXX-XXX-XXX ~]# su shindev ~/.bashrc loaded #bashrcだけ読まれた [shindev@ip-XXX-XXX-XXX-XXX root]$あれ、じゃprofileは??
[root@ip-XXX-XXX-XXX-XXX ~]# su - shindev #ハイフン付きスイッチ 最終ログイン: 2020/10/11 (日) 17:12:21 JST日時 pts/0 ~/.bash_profile loaded #読まれた! ~/.bashrc loaded [shindev@ip-XXX-XXX-XXX-XXX ~]$ということでした。
suコマンドのハイフンありなしは切り替え後のカレントパスが
そのままか切り替えユーザのホームディレクトリに移動するくらいの認識だったけど、
ちゃんと考えてやらないといけないレベルの話だった。ハイフン無しはインパーソネートなノリなので
いつもの作業的には基本ハイフンありでやるべきだなと。おわり。
- 投稿日:2020-10-11T16:52:00+09:00
TensorBoard 2.2.1 at http://localhost:6006/
$ tensorboard --logdir ./resultsと打ち、
TensorBoard 2.2.1 at http://localhost:6006/ (Press CTRL+C to quit)が出力されたが、
http://localhost:6006/
でtensorboardが見れないとき
- 投稿日:2020-10-11T16:52:00+09:00
TensorBoard at http://localhost:6006/
$ tensorboard --logdir ./と打ち、
TensorBoard 2.2.1 at http://localhost:6006/ (Press CTRL+C to quit)が出力されたが、
http://localhost:6006/
でtensorboardが見れないとき。環境
自分のPCはwindows
リモートサーバーはlinux経緯
puttyを使いリモートログインをしてサーバーにログインした。
そこでtensorboardを使った。
アウトプットされたサイトにアクセスできなかった。解決策前提
user名remoteでサーバー名serverを使ってリモートログインする。
remote@server's password:passward現在のディレクトリに入っているtensorboardを起動。
[remote@server ~]$ tensorboard --logdir ./ Serving TensorBoard on localhost; to expose to the network, use a proxy or pass --bind_all TensorBoard 2.2.1 at http://localhost:6006/ (Press CTRL+C to quit)解決策
user名userのコマンドプロンプトを開く。このuser名は例。
そして以下のように入力する。C:\Users\user>ssh -L (ポート番号):localhost:6006 (リモート側のuser名)@(リモート側のサーバーのIPアドレス)(ポート番号)には49513~65535のような空いているポート番号。
(リモート側のuser名)remoteのような名前。
(リモート側のサーバーのIPアドレス)987.098.082.99 のような数字。上記のコードをコマンドプロンプトに打ち込むことで、
http://localhost:(ポート番号)/
からtensorflowが見れる。私の場合
C:\Users\user>ssh -L 49513:localhost:6006 remote@987.098.082.99http://localhost:49513/からtensorboardが見れる。
補足
(リモート側のサーバーのIPアドレス)は非常にプライベートな数字である。
もし自分のサーバーでない他のサーバーにリモートログインするとき、(リモート側のサーバーのIPアドレス)は見れないようになっている時がある。
そのときは、そのサーバーの管理者に(リモート側のサーバーのIPアドレス)を聞こう。
- 投稿日:2020-10-11T16:16:56+09:00
LinuxコマンドでたくさんのZIP圧縮されたファイルを解凍してUTF8にしてくっつける
以下のような一見すると面倒そうだなと思えるファイル群に出会ったんですが、思ったよりも簡単に全ファイルを解凍して、 UTF8 に変換して 1 つのファイルにまとめちゃうってことができたのでメモです。
- ZIP ファイルがたくさんある
- その ZIP ファイルの中には複数の CSV ファイルが入っている
- 解凍後のファイル名は SJIS になっている
- 解凍後のファイルの中身は SJIS で書かれている、改行コードは CRLF
- でも 1 つあたりの CSV ファイルサイズはそんなに大きくない
- レコード中に登録NO(UID)や登録日時、登録者IDといった項目があってレコードの重複はないハズなのに重複したレコードがある。 > システムからのダウンロードを手作業で行ってて、重複してダウンロードしてしまうとかは良くある話。
環境
- Lubuntu 16.04(64bit)
- メモリ 4G
バックアップは絶対
間違って元の zip ファイルを削除してしまったり、上書きしてしまっても良いようにバックアップをとっておきます。大丈夫、大丈夫と思っても大丈夫じゃないことがありますので必ず行いましょう。
まずは解凍
まずはたくさんある ZIP ファイルをまとめて解凍します。これは
find
コマンドを使えば簡単にできます。 -j をつけることでディレクトリ構造を無視して解凍、その際にファイル名が重複しても上書きされないようにするために -B オプションをつけています。
unzip
で-O sjis
を指定することでファイル名を SJIS に変換できるみたいなんですが、うまく行かない場面に何度が遭遇したことがあるのでココでは使っていません。ZIPファイルの解凍mkdir work #作業用ディレクトリの作成 cd work find ../ -name '*.zip' -exec unzip -j -B {} \;
find
じゃなくてls
とxargs
を使う方法もあります。ZIPファイルの解凍(lsとxargsを使用)mkdir work #作業用ディレクトリの作成 cd work ls ../*.zip | xargs -I{} unzip -j -B {}ZIPファイルが入れ子になっている場合は?
ZIP ファイルをしたらその中にまた ZIP ファイルが入ってた。ってこともよくある話なんですが、その場合は以下のようにして再度解凍しちゃいます。解凍したらまた ZIP ファイルが出てきたら更に実行てな感じで不安がなくなるまで実行しちゃいます。実行すれば実行するほどファイルが増えて重複も増えちゃうんですが、あとで重複レコードは削除する予定なので、この時点では何回実行して重複ができてしまっても問題はないかなと思います。
*.zip みたいに指定しないのは ZIP 形式以外のファイルは解凍できずにエラーになるだけなので別に良いかなと思うのと、過去にファイル名が SJIS で文字化けしていたからか *.zip でヒットしないことがあったためです。
ZIPファイルの解凍(ZIPファイルが入れ子になっていた場合)find ./ -type f -exec unzip -j -B {} \;他にも
ls
とxargs
を使う方法もあるんですが、短く書くというよりも自分が分かりやすい方法を選ぶのが良いんじゃないかなと思います。ZIPファイルの解凍(lsとxargsを使用)ls * | xargs -I{} unzip -j -B {}不要なZIPファイルを削除
完全に解凍してしまったら ZIP ファイルが残っていると厄介なので削除してしまいます。拡張子で判断できるなら
rm
でいけるんですが、今回はそうでないことを想定して中身が ZIP 形式であるファイルを探しだして削除したいと思います。これもそんなに難しくはなくて
file
とgrep
を使えば案外と簡単にできてしまいます。削除する前に念のため対象となるファイルを確認しておきます。ファイルが多いとすごく時間がかかりますので、ファイル名で判断できる時はrm *.zip
で削除した方が良いかなと思います。対象となるZIPファイルの確認file * | grep 'Zip archive'ZIPファイルの削除を実行file * | grep 'Zip archive' | sed 's/: *Zip archive.*//' | xargs -I{} rm {}ファイル名を UTF8 に変更
解凍後のファイル名が SJIS だと文字化けしてしていると思うので全ファイル名を UTF8 に変更します。
convmv
コマンド使ったら簡単にできます。convmv
がない場合はsudo apt install convmv
でインストールします。ちなみに今回の場合は、あとでファイルをまとめて 1 つにしてしまうため実はファイル名は何でもよかったりします。うまく変換できなかったとしてもそこにこだわる必要はないですし、文字化けのままでもほぼほぼ大丈夫だったりします。
ファイル名をUTF8に変換convmv -f sjis -t utf8 --notest *ファイルの中身を UTF8 に変更して、改行コードを LF に変更
私は使い慣れている
nkf
を使っています。インストールされていない場合はsudo apt install nkf
でインストールします。nkf
は文字コード変換と改行コード変更が同時にできちゃうので便利です。ファイル数が多いと「 Too many open files 」になっちゃうため、find
を使っていますがファイルが少なかったらnkf 〜 *
のように書けると思います。ファイル内容ををUTF8に変換(その1,findを使用)find ./ -type f -exec nkf -Lu -w --overwrite {} \;ファイル内容ををUTF8に変換(その2,ファイルが少ない場合)nkf -Lu -w --overwrite *ファイル内容ををUTF8に変換(その3,lsとxargsを使用)ls * | xargs -I{} nkf -Lu -w --overwrite {}全ファイルをくっつけて重複を削除してひとつのファイルに圧縮して保存
「全ての CSV ファイルの先頭行に項目名が入ってるので
cat
で単純にくっつけられない」ってことが分かっていればそれほど難しくなかったりします。 1 行目のデーター(ヘッダー)と、各ファイルから 1 行目のヘッダーを削除したデーターをくっつけるっていう感じです。全ファイルをくっつけて重複を削除してgzip圧縮(cat * | head -1; ls * | xargs -I{} sed '1d' {} | sort | uniq) | gzip > all.csv.gzちなみに「 NYSOL 」の「Mコマンド」が使えると以下のように書くことができます。 NYSOL の Mコマンドは CSV ファイルが扱えるだけでなく、少ないメモリーでも大きなファイルが扱えたりするので、使ってみるとなかなか便利だったりします。
Mコマンドで全ファイルをくっつけて重複を削除してgzip圧縮mcat i=* | muniq k='*' | mfldname -q | gzip > all.csv.gzgzip 圧縮していますが展開後のサイズを確認したい時は以下のような感じでしょうか。
展開後サイズの確認zcat all.csv.gz | wc -l -c展開後サイズの確認(実行結果)$ zcat all.csv.gz | wc -l -c 748654 229449752gzip 圧縮されたファイルを解凍するとレコード数は 74 万行くらい、ファイルサイズは 200M くらいであることが分かります。
なんで圧縮するの?
ファイルは小さい方が扱いが楽だからってなところでしょうか。ファイル内容にもよりますがサイズは 1/8 程度にはなると思いますし、 R の data.table::fread だと data.table::fread("zcat all.csv.gz") みたいに書けるので gzip 圧縮されてても使いにくいということはないかなって。
- 投稿日:2020-10-11T12:00:44+09:00
cronをつかったら詰まったのでメモ。
基本事項のざっとした説明
※細かいことは他にも色々あるので必要な人は調べてください
- cron --- 定期実行するデーモン
- crontab --- cronのスケジュール設定する
実行環境 Linux Mint(19.1 Tessa)
以下のコマンドで現在の設定内容を表示できる
$crontab -l上記コマンドをdockerの中とMacで実行したが、コマンドが存在しなかったので
とりあえずLinux Mint(19.1 Tessa)のPCで試してみた。未設定の場合は以下のように表示される。
以下のコマンドで設定の編集ができるようになる、最初はエディタの指定を求められる。(今回はVimに設定した。nanoがおすすめされていた)$crontab -eコマンドは 分、時、日 、月、曜日、コマンド
の順番で記載し、半角スペースを空ける。
以下は10分毎にシェルを実行する設定*/10 * * * * /home/user/test.shcronの実行ログを確認するコマンド
grep CRON /var/log/syslog今回遭遇したトラブルと対応方法
トラブル① エラー No MTA installed, discarding output
設定してもまったくなにも起きなかったので実行ログを確認したところ以下のような表示が出ていた。
調べたところ、UbuntuとUbuntuがベースのLinux Mintで起きる事象であるとのこと。postfixをインストールすると上記のエラーは解消された。
sudo aptitude install postfixトラブル② シェルのパーミッション
トラブル①を解消するも全くシェルが動かなかった。
ふとファイルのパーミッションを確認してみると『-rw-rw-r--』だった実行権限を付与した。(とりえず動かすための権限付与なので必要に応じて変えてください)
chmod +x test.sh正常にシェルは動作した。
補足
ちなみにcronの動作確認をしたかっただけなので確認用のコマンドは以下のように簡単なものを使用した。
echo "test cron1" >> /home/owner/aaa.txt
- 投稿日:2020-10-11T12:00:44+09:00
cronを使ってみた
基本事項のざっとした説明
※細かいことは他にも色々あるので必要な人は調べてください
- cron --- 定期実行するデーモン
- crontab --- cronのスケジュール設定する
実行環境 Linux Mint(19.1 Tessa)
以下のコマンドで現在の設定内容を表示できる
$crontab -l上記コマンドをdockerの中とMacで実行したが、コマンドが存在しなかったので(※後で確認したらMacにはありました。。。表示が少し違っていたので見間違いと思われます)
とりあえずLinux Mint(19.1 Tessa)のPCで試してみた。crontabが使えてかつ未設定の場合は以下のように表示される。
以下のコマンドで設定の編集ができるようになる、最初はエディタの指定を求められる。(今回はVimに設定した。nanoがおすすめされていた)$crontab -eコマンドは 分、時、日 、月、曜日、コマンド
の順番で記載し、半角スペースを空ける。
以下は10分毎にシェルを実行する設定*/10 * * * * /home/user/test.shcronの実行ログを確認するコマンド
- Linux Mintの場合
grep CRON /var/log/syslog
- EC2の場合
sudo grep CRON /var/log/cron今回遭遇したトラブルと対応方法
トラブル① エラー No MTA installed, discarding output
設定してもまったくなにも起きなかったので実行ログを確認したところ以下のような表示が出ていた。
調べたところ、UbuntuとUbuntuがベースのLinux Mintで起きる事象であるとのこと。postfixをインストールすると上記のエラーは解消された。
sudo aptitude install postfixトラブル② シェルのパーミッション
トラブル①を解消するも全くシェルが動かなかった。
ふとファイルのパーミッションをls -l
コマンドで確認してみると-rw-rw-r--
だった。実行権限を付与した。(とりえず動かすための権限付与なので必要に応じて変えてください)
chmod +x test.sh正常にシェルは動作した。
補足
ちなみにcronの動作確認をしたかっただけなので確認用のコマンドは以下のように簡単なものを使用した。
echo "test cron1" >> /home/owner/aaa.txt
- 投稿日:2020-10-11T12:00:44+09:00
cronを初めて使ったら詰まったのでメモ。
基本事項のざっとした説明
※細かいことは他にも色々あるので必要な人は調べてください
- cron --- 定期実行するデーモン
- crontab --- cronのスケジュール設定する
実行環境 Linux Mint(19.1 Tessa)
以下のコマンドで現在の設定内容を表示できる
$crontab -l上記コマンドをdockerの中とMacで実行したが、コマンドが存在しなかったので(※後で確認したらMacにはありました。。。表示が少し違っていたので見間違いと思われます)
とりあえずLinux Mint(19.1 Tessa)のPCで試してみた。crontabが使えてかつ未設定の場合は以下のように表示される。
以下のコマンドで設定の編集ができるようになる、最初はエディタの指定を求められる。(今回はVimに設定した。nanoがおすすめされていた)$crontab -eコマンドは 分、時、日 、月、曜日、コマンド
の順番で記載し、半角スペースを空ける。
以下は10分毎にシェルを実行する設定*/10 * * * * /home/user/test.shcronの実行ログを確認するコマンド
- Linux Mintの場合
grep CRON /var/log/syslog
- EC2の場合
sudo grep CRON /var/log/cron今回遭遇したトラブルと対応方法
トラブル① エラー No MTA installed, discarding output
設定してもまったくなにも起きなかったので実行ログを確認したところ以下のような表示が出ていた。
調べたところ、UbuntuとUbuntuがベースのLinux Mintで起きる事象であるとのこと。postfixをインストールすると上記のエラーは解消された。
sudo aptitude install postfixトラブル② シェルのパーミッション
トラブル①を解消するも全くシェルが動かなかった。
ふとファイルのパーミッションをls -l
コマンドで確認してみると-rw-rw-r--
だった。実行権限を付与した。(とりえず動かすための権限付与なので必要に応じて変えてください)
chmod +x test.sh正常にシェルは動作した。
補足
ちなみにcronの動作確認をしたかっただけなので確認用のコマンドは以下のように簡単なものを使用した。
echo "test cron1" >> /home/owner/aaa.txt
- 投稿日:2020-10-11T12:00:44+09:00
cronをつかってみたら詰まったので書いておく。
基本事項のざっとした説明
※細かいことは他にも色々あるので必要な人は調べてください
- cron --- 定期実行するデーモン
- crontab --- cronのスケジュール設定する
実行環境 Linux Mint(19.1 Tessa)
以下のコマンドで現在の設定内容を表示できる
$crontab -l上記コマンドをdockerの中とMacで実行したが、コマンドが存在しなかったので
とりあえずLinux Mint(19.1 Tessa)のPCで試してみた。未設定の場合は以下のように表示される。
以下のコマンドで設定の編集ができるようになる、最初はエディタの指定を求められる。(今回はVimに設定した。nanoがおすすめされていた)$crontab -eコマンドは 分、時、日 、月、曜日、コマンド
の順番で記載し、半角スペースを空ける。
以下は10分毎にシェルを実行する設定*/10 * * * * /home/user/test.shcronの実行ログを確認するコマンド
grep CRON /var/log/syslog今回遭遇したトラブルと対応方法
トラブル① エラー No MTA installed, discarding output
設定してもまったくなにも起きなかったので実行ログを確認したところいかのような表示が出ていた。
調べたところ、UbuntuとUbuntuがベースのLinux Mintで起きる事象であるとのこと。postfixをインストールすると上記のエラーは解消された。
sudo aptitude install postfixトラブル② シェルのパーミッション
トラブル①を解消するも全くシェルが動かなかった。
ふとファイルのパーミッションを確認してみると『-rw-rw-r--』だった実行権限を付与した。
chmod +x test.sh正常にシェルは動作した。
補足
ちなみにcronの動作確認をしたかっただけなので確認用のコマンドは以下のように簡単なものを使用した。
echo "test cron1" >> /home/owner/aaa.txt
- 投稿日:2020-10-11T10:44:22+09:00
ファイルの変更時刻に基づいて名前変更 (Linux)
ファイルの変更時刻に基づいて名前変更
コマンド
LOGFILE
にファイル名を変更したいファイル名が入っているとしてif [ -e $LOGFILE ]; then TIMESTAMP=$(date -r $LOGFILE "+%Y-%m-%d_%H_%M_%S") mv $LOGFILE $LOGFILE.$TIMESTAMP fiとすればよい。
説明
date -r ファイル名
でファイル名
で指定したファイルの変更時刻を取得できる。
"+%Y-%m-%d_%H_%M_%S"
でdate -r
で返す形式をしているしている。
$(コマンド)
を使うことによりコマンド
の実行結果を変数に代入できる。
mv
で実際の名前変更を実行する。参考
https://stackoverflow.com/questions/16391208/print-a-files-last-modified-date-in-bash/16391221
- 投稿日:2020-10-11T09:08:38+09:00
UIが美しすぎる「SolusOS」使ってみた
Solusとは
Solusとは、ユーザフレンドリーを目的として開発されたFedora系LinuxベースのOS(少し前まではEvolve OS
と呼ばれていたらしい)です。
非常にシンプルで、マテリアルチックな美しいUIを備えています。
- Firefoxが標準搭載
- サンダーバード標準搭載
- ファイル管理が容易
- ソフトウェアセンターから直接アプリをインストール可能
- +α 綺麗なUI
というのが公式のアピールポイントらしいです。
環境
- Windows 10 (ホスト)
- CPU: AMD Ryzen Threadripper 3960X
- RAM: 64 GiB
- VIDEO CARD: RTX 2070 Super
- VMWare Pro 15.5.5 (ゲスト)
- OS: Solus 4.1 Plasma
- Disk: 20 GiB
- RAM: 2,048 MB
- CPU: 1 Processor 1 Core
Solusの最低動作環境
公式ページから引用しました。
- A blank DVD or a 2GB+ USB drive
- 空のDVD若しくは2GB以上容量のあるUSB
- Minimum of 10GB of disk space available
- 最小10GBのフリーディスク容量
- 2GB of RAM for an optimal experience
- 最小2GBのメモリ
- A 64-bit (x86_64) processor
- 64ビットプロセッサ
インストール
本例ではVMWareを使用して仮想環境上にインストールします。
USBブータブルから物理マシンへインストールすることも勿論可能です。1. ダウンロード
公式ページからイメージをダウンロードします。
本例ではSolus Plasma
をインストールしました。
2. 仮想マシンの作成
新規仮想マシンを作成します。
1でダウンロードしたイメージを指定してください。
任意の仮想マシン名を指定
ディスク設定は各自適切に指定してください。
最終的に以下のようになりました。
3. Solusのインストール
作成した仮想マシンをパワーオンすると、インストールアプリケーションがぽつんと置いてあるデスクトップが表示されます。
起動すると、言語設定に移ります。
本例ではEnglish (United States)
ですすめます。
次に、ロケーションの設定です。
インターネットに接続していれば自動的に探索してくれますね。
キーボードレイアウトはJapanese
に設定しました。
タイムゾーンはTokyo
次に、ディスク関連の設定です。
本例ではVMWareの仮想環境上にインストールしますので、特に他ファイルとの干渉を気にする必要がありませんでしたので、前者のフレッシュインストールを選択しました。
個別にパティーションを設定したい場合は後者を指定してください。
本例ではLVMはインストールしません。
次にブートローダーとホスト名の設定です。
ホスト名は任意で、ブートローダをインストールします。
次にユーザの設定です。
こちらも任意のユーザを作成してください。
本例ではこのようになりました。
最後に、インストール概要の確認です。
同じく本例では以下のようになりました。
ポップアップが出てくるので良ければOK
セットアップが完了したら、Restart Now
を押して再起動してください。
再起動後、問題なくインストールできていることを確認できます。
VMWare Toolsのインストール方法
VMWare上にインストールした初期状態だと、リソリューションを自由に変更することができず、初期の小さいウィンドウ以上に広げることができないので、VMWare Toolsをインストールします。
1. セットアップ
OSが起動した状態でタブにある
VM -> VMWare Toolsのインストール
をクリックすると自動的に必要なバイナリを渡してくれます。
本例では~/Documents
に移動させ、解凍しました。
中身はこのようになっているはずです。
次にターミナルを起動します。
画面全体左下のスタートメニューよりKonsole
若しくはterminal
と検索すると出てきます。
事前に必要なディレクトリを作成します。
※必須ですちなみに
sudo
も必須でスーパーユーザ以外で実行できません。
$ sudo mkdir -p /etc/init.d/rc0.d $ sudo mkdir -p /etc/init.d/rc1.d $ sudo mkdir -p /etc/init.d/rc2.d $ sudo mkdir -p /etc/init.d/rc3.d $ sudo mkdir -p /etc/init.d/rc4.d $ sudo mkdir -p /etc/init.d/rc5.d $ sudo mkdir -p /etc/init.d/rc6.d $ sudo mkdir -p /etc/pam.dディレクトリが作成できたら、インストールを実行。
$ cd ~/Documents/vmware-tools-distrib $ sudo ./vmware-install.pl本例では、この後訊かれるオプションは全てデフォルト(何も入力せずEnter)に設定しました。
セットアップ完了後、問題なく画面の収縮を行えるようになりました。
全体ログ
A previous installation of VMware Tools has been detected.
The previous installation was made by the tar installer (version 4).
Keeping the tar4 installer database format.
You have a version of VMware Tools installed. Continuing this install will
first uninstall the currently installed version. Do you wish to continue?
(yes/no) [yes]INPUT: [yes] default
Uninstalling the tar installation of VMware Tools.
Stopping services for VMware Tools
Stopping VMware Tools services in the virtual machine:
Guest operating system daemon: done
VMware User Agent (vmware-user): done
Unmounting HGFS shares: done
Guest filesystem driver: donecat: /tmp/cafenv-appconfig: No such file or directory
This program previously created the directory /etc/vmware-caf/pme/config, and
was about to remove it. Since there are files in that directory that this
program did not create, it will not be removed.This program previously created the directory /etc/vmware-caf/pme, and was
about to remove it. Since there are files in that directory that this program
did not create, it will not be removed.This program previously created the directory /etc/vmware-caf, and was about to
remove it. Since there are files in that directory that this program did not
create, it will not be removed.The removal of VMware Tools 10.3.21 build-14772444 for Linux completed
successfully.Installing VMware Tools.
In which directory do you want to install the binary files?
[/usr/bin]INPUT: [/usr/bin] default
What is the directory that contains the init directories (rc0.d/ to rc6.d/)?
[/etc/init.d]INPUT: [/etc/init.d] default
What is the directory that contains the init scripts?
[/etc/init.d]INPUT: [/etc/init.d] default
In which directory do you want to install the daemon files?
[/usr/sbin]
INPUT: [/usr/sbin] defaultIn which directory do you want to install the library files?
[/usr/lib/vmware-tools]
INPUT: [/usr/lib/vmware-tools] defaultThe path "/usr/lib/vmware-tools" does not exist currently. This program is
going to create it, including needed parent directories. Is this what you want?
[yes]
INPUT: [yes] defaultIn which directory do you want to install the common agent library files?
[/usr/lib]
INPUT: [/usr/lib] defaultIn which directory do you want to install the common agent transient files?
[/var/lib]
INPUT: [/var/lib] defaultIn which directory do you want to install the documentation files?
[/usr/share/doc/vmware-tools]
INPUT: [/usr/share/doc/vmware-tools] defaultThe path "/usr/share/doc/vmware-tools" does not exist currently. This program
is going to create it, including needed parent directories. Is this what you
want? [yes]
INPUT: [yes] defaultThe installation of VMware Tools 10.3.21 build-14772444 for Linux completed
successfully. You can decide to remove this software from your system at any
time by invoking the following command: "/usr/bin/vmware-uninstall-tools.pl".Before running VMware Tools for the first time, you need to configure it by
invoking the following command: "/usr/bin/vmware-config-tools.pl". Do you want
this program to invoke the command for you now? [yes]
INPUT: [yes] defaultInitializing...
Making sure services for VMware Tools are stopped.
Stopping VMware Tools services in the virtual machine:
Guest operating system daemon: done
VMware User Agent (vmware-user): done
Unmounting HGFS shares: done
Guest filesystem driver: donesh: : command not found
The module vmci has already been installed on this system by another installer
or package and will not be modified by this installer.The module vsock has already been installed on this system by another installer
or package and will not be modified by this installer.The module vmxnet3 has already been installed on this system by another
installer or package and will not be modified by this installer.The module pvscsi has already been installed on this system by another
installer or package and will not be modified by this installer.The module vmmemctl from this package is not supported for kernels >= 3.10.
Please enable this module in your kernel. You may also have to enable
HYPERVISOR_GUEST.The VMware Host-Guest Filesystem allows for shared folders between the host OS
and the guest OS in a Fusion or Workstation virtual environment. Do you wish
to enable this feature? [yes]INPUT: [yes] default
The vmxnet driver is no longer supported on kernels 3.3 and greater. Please
upgrade to a newer virtual NIC. (e.g., vmxnet3 or e1000e)The vmblock enables dragging or copying files between host and guest in a
Fusion or Workstation virtual environment. Do you wish to enable this feature?
[yes]INPUT: [yes] default
Skipping configuring automatic kernel modules as no drivers were installed by
this installer.Disabling timer-based audio scheduling in pulseaudio.
Do you want to enable Guest Authentication (vgauth)? Enabling vgauth is needed
if you want to enable Common Agent (caf). [yes]INPUT: [yes] default
Do you want to enable Common Agent (caf)? [no]
INPUT: [no] default
Detected X server version 1.20.6
Distribution provided drivers for Xorg X server are used.
Skipping X configuration because X drivers are not included.
Skipping rebuilding initrd boot image for kernel as no drivers to be included
in boot image were installed by this installer.Generating the key and certificate files.
Successfully generated the key and certificate files.The configuration of VMware Tools 10.3.21 build-14772444 for Linux for this
running kernel completed successfully.You must restart your X session before any mouse or graphics changes take
effect.To enable advanced X features (e.g., guest resolution fit, drag and drop, and
file and text copy/paste), you will need to do one (or more) of the following:
1. Manually start /usr/bin/vmware-user
2. Log out and log back into your desktop session
3. Restart your X session.Enjoy,
--the VMware team
終わり
日本語フォントが若干浮いてるのは気にならないこともないですが、
重めなYouTubeも特にストレスを感じることなく軽々1080P再生できました。寧ろ軽いです。感想
- UIが綺麗、とにかく綺麗で見やすい
- 軽い
- セットアップが簡単・速い
- シンプル
という点がファーストインプレッションで大きかったです。
これから主にデベロッパ向けの日本語ドキュメントを増やしていきたいです。