本文是我学习Hadoop搭建过程中的各种笔记,内容来自于各种公开的教程,起点非常低,从Linux基础开始,直至在PC上搭建Hadoop成功,是真正的从零开始。
感谢过程中帮助我的各位认识的和不认识的老师。
8、Linux中磁盘相关简单操作 -1
1.显示系统的磁盘空间用量
查看df的意思:man df
df : 报告文件系统空间使用情况
-h 指 :human-readable 打印人类能看懂的信息
ll/dev(dev下面都是设备)
显示磁盘分区信息 (显示操作系统的分区) df -h
[root@hadoop01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 47G 3.4G 42G 8% /
tmpfs 491M 76K 491M 1% /dev/shm
/dev/sda1 291M 34M 242M 13% /boot
格式化磁盘分区 mkfs.ext3/dev/sdb1 [/dev/sdb1 :分区的目录]
查看mkfs.ext4在哪个目录下面 which mkfs.ext4
[root@hadoop01 ~]# which mkfs.ext4
/sbin/mkfs.ext4
查看磁盘分区 fdisk –l [比较详细]
[root@hadoop01 ~]# fdisk -l
Disk /dev/sda: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00029b9f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 307200 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 39 300 2097152 82 Linux swap / Solaris
Partition 2 does not end on cylinder boundary.
/dev/sda3 300 6528 50023424 83 Linux
具体查看某个磁盘 fdisk/dev/sda1
[root@hadoop01 ~]# fdisk –l [按q退出]
硬盘分区51显示磁盘分区 fdisk/dev/sdb
查目录使用大小 du-h-s
查看每个磁盘使用空间(log下面每个大小都列出来了):du-h /var/log/
[root@hadoop01 ~]# du -h /var/log/
4.0K /var/log/cups
196K /var/log/gdm
4.0K /var/log/ntpstats
4.0K /var/log/sssd
4.0K /var/log/ppp
20K /var/log/sa
4.0K /var/log/samba/old
8.0K /var/log/samba
12K /var/log/ConsoleKit
4.0K /var/log/httpd
68K /var/log/audit
128K /var/log/prelink
2.1M /var/log/
查看磁盘log总的使用空间:du-h –s /var/log/
[root@hadoop01 ~]# du -h -s /var/log/
2.1M /var/log/
2.挂载 mount-t vfat/dev/sdb1/media/umnt
[挂载,相当于Windows插一块优盘,Windows自动识别一样]
mount-t vfat/dev/sdb1/media/umnt
[把/media/umnt目录,挂载到/dev/sdb1分区下面来]
umount/media/umnt //卸载 [相当与退出U盘]
3.文件系统修复 fsck –y/dev/sda1
[修复的可以是分区可,也可以是目录,最好在单用户模式下使用 。-y :指自动回复yes,dev/sda1:对dev下面的sda1进行检测]
[某一个目录出现了临时性的文件损坏或异常,要做一下简单的修复,否则会影响系统的写操作]
[root@hadoop01 ~]# fsck -y -s /var/log
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
fsck.ext2: Is a directory while trying to open /var/log
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193
没有坏的,不会做过多的报告↑
//Linux文件格式(文件格式:磁盘储存格式;数据是怎么储存、读写的)
ext4(储存量大,速度快,性能强,相比ext3) ext3 ext2 vfat(fat32)
//windows 文件格式
fat32 ntfs
查看物理磁盘:pvdisplay
查看逻辑磁盘:lvdisplay
查看扩展磁盘:lvextend (which lvextend)
查看物理磁盘:pvdisplay
[root@hadoop01 ~]# pvdisplay
查看逻辑磁盘:lvdisplay
[root@hadoop01 ~]# lvdispial
No volume groups found
查看扩展磁盘:lvextend
[root@hadoop01 ~]# lvextend
Please specify either size or extents but not both.
Run `lvextend --help' for more information.
查看扩展磁盘:which lvextend
[root@hadoop01 ~]# which lvextend
/sbin/lvextend
9、Linux中用户和组的操作:
1.账户
超级账户 root uid = 0 【有且仅有一个】
普通账户 uid >=500 【root创建的,名字可以自定义】
系统账户 uid = 1---499 【创建操作系统是默认生成的】
/etc/passwd //保存账户的信息
[所有的用户信息保存到了根目录下面etc下面的passwd下面]
/etc/shadow //保存账户密码信息
[所有的用户的密码保存到了根目录下面etc下面的shadow文件夹下面]
/root //root用户家目录
/home/xxx //普通用户xxx的家目录
创建普通用户时可以指定家目录不为home (可以通过 –d 指定)
查看用户密码:cat/etc/passwd
[root@hadoop01 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
root(root用户名):x:0: 0:(代表UID,JID,groupID等等)root:/root:/bin/bash (代表用户的shell脚本)
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
UID,JID大于2的,就是系统用户,但不会大于500
adm:x:3:4:adm:/var/adm:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
……………………
pulse:x:497:496:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
查看所有用户的密码,不再是明文 cat/etc/shadow
[root@hadoop01 ~]# cat /etc/shadow
root:$6$tvcyaK9JxLFYdyGQ$wNZfv2SbgctsP0EA3pyQM6Ra7vUYVZGi2fRN6.eGD3UEHJVXh2aPCFrbHgHuMzbrmbdwoT1s3o0R5jEHDOBMn.:17639:0:99999:7:::
bin:*:15980:0:99999:7:::
daemon:*:15980:0:99999:7:::
adm:*:15980:0:99999:7:::
………………
pulse:!!:17639::::::
sshd:!!:17639::::::
tcpdump:!!:17639::::::
2.添加和删除
用户useradd
#useradd //创建用户
-u 指定uid
-d 指定宿主目录
-s 指定使用shell
-e 指定用户过期时间
-g 指定基本组
-G 指定附加组
# useradd openlab
创建前先查看目录:
[root@hadoop01 ~]# ll /home/
total 0
创建 aidon 用户: useradd aidon
[root@hadoop01 ~]# useradd aidon
[root@hadoop01 ~]# ll /home/
total 4
drwx------. 4 aidon aidon 4096 Apr 19 00:22 aidon
查看当前系统中存在的所有用户信息: cat /etc/passwd
[root@hadoop01 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
………………
aidon:x:500:500::/home/aidon:/bin/bash ←就多了一个
创建用户的时候,还会默认创建这个用户的组,查看:cat /etc/group
[root@hadoop01 ~]# cat /etc/group
root:x:0:
bin:x:1:bin,daemon
daemon:x:2:bin,daemon
sys:x:3:bin,adm
…………
aidon:x:500:
组名:aidon;组ID:500
再创建一个tom用户 useradd tom
[root@hadoop01 ~]# useradd tom
[root@hadoop01 ~]# ll /home/
total 8
drwx------. 4 aidon aidon 4096 Apr 19 00:22 aidon
drwx------. 4 tom tom 4096 Apr 19 00:37 tom
[root@hadoop01 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
………………
aidon:x:500:500::/home/aidon:/bin/bash
tom:x:501:501::/home/tom:/bin/bash
[root@hadoop01 ~]# cat /etc/group
root:x:0:
bin:x:1:bin,daemon
………………
aidon:x:500:
tom:x:501:
将用户移加到某个组中 gpasswd –a openlab gropenlab
把tom添加到adion这个组:gpasswd –a tom aidon
[root@hadoop01 ~]# gpasswd -a tom aidon
Adding user tom to group aidon
看用户(tom)在哪个组里面:groups tom
[root@hadoop01 ~]# groups tom
tom : tom aidon (指tom在tom组,也在aidon组)
[root@hadoop01 ~]# groups aidon
aidon : aidon (指aidon就在aidon组里面)
把aidon添加到tom组: gpasswd –a aidon tom
[root@hadoop01 ~]# gpasswd -a aidon tom
Adding user aidon to group tom
[root@hadoop01 ~]# groups aidon
aidon : aidon tom
删除aidon组里的tom组: gpasswd -d aidon tom
[root@hadoop01 ~]# gpasswd -d aidon tom
Removing user aidon from group tom
[root@hadoop01 ~]# groups aidon
aidon : aidon
# gpasswd –d openlab gropenlab //将用户从组中删除
# echo”123456” | passwd—stdin feige //不通过交互信息,直接改用户密码
# userdel //删除用户 不删除用户文件
# userdel –r //连主目录一起删除
强制删除: userdel -f -r
[root@hadoop01 ~]# userdel -f -r tom
[root@hadoop01 ~]# ll /home/
total 4
drwx------. 4 aidon aidon 4096 Apr 19 00:22 aidon
[root@hadoop01 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
…………
aidon:x:500:500::/home/aidon:/bin/bash 没有tom了
显示用户信息 id openlab
[root@hadoop01 ~]# id aidon
uid=500(aidon) gid=500(aidon) groups=500(aidon)
uid 500 用户名aidon
gid 500 组名aidon
查看用户信息 vipw
[root@hadoop01 ~]# vipw
进入了编辑状态,退出按:q!
3.创建用户组
groupadd manager
vigr 查看组
groups manager 查看用户在那些组中
创建组: groupadd
[root@hadoop01 ~]# groupadd hadoop007
查看创建的组: cat /etc/group
[root@hadoop01 ~]# cat /etc/group
root:x:0:
bin:x:1:bin,daemon
…………
aidon:x:500:
hadoop007:x:501:
查看是否默认创建用户:cat /etc/passwd
[root@hadoop01 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
…………
aidon:x:500:500::/home/aidon:/bin/bash
创建组,只创建组,不会再默认创建用户,(此时没有hadoop007)
4.创建用户时附加到组中
useradd –G manager tom (创建tom用户,添加到manager中)
useradd –G manager tom2
5.更改(用户)密码方式1
passwd tom
[root@hadoop01 ~]# passwd aidon
Changing password for user aidon.
New password: 在此输入的密码是aidon,不显示出来
BAD PASSWORD: it is too short
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.
使用此方式修改root密码:(之前是123456,修改为root)
切换前新建aidon (修改下面两张图的共4个地方,即可新建aidon)
6. 更改密码方式2
echo”root” | passwd—stdin root //不通过交互信息,直接改用户密码
7.删除指定的账号
userdel tom2
8.锁定账户tom2禁止其登录
usermod –L tom2
9.切换当前用户为admin su – admin
普通用户(aidon)切换到root用户 ——下面两个都是在新建的aidon下操作的
[aidon@hadoop01 ~]$ su
Password:
[root@hadoop01 aidon]#
[操作:su,不加任何名字,输入root的密码:root,就切到root下了]
在root用户下,切换到普通用户(aidon)
[root@hadoop01 ~]# su aidon
[aidon@hadoop01 root]$
10.显示当前登录用户账户 whoami
查看当前哪个用户在线:——在新建的aidon下操作
[aidon@hadoop01 ~]$ whoami
aidon
[aidon@hadoop01 ~]$ su root
Password:
[root@hadoop01 aidon]# whoami
root
11.查看系统文件判断添加用户组,添加用户操作是否正确
cat/etc/passwd 或者使用vipw
cat/etc/group 或者使用vigr