##du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看
du -sh ##查目录使用大小(-s表示总结)
## du -sh /bin
##df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
df -h ##检查linux服务器的文件系统的磁盘空间占用情况
##mkfs命令用于在设备上(通常为硬盘)创建Linux文件系统。mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。
mkfs.ext4 /dev/sda1 ##格式化硬盘分区
##fdisk命令用于观察硬盘实体使用情况,也可对硬盘分区。
fdisk -l ##查看整个硬盘的信息
fdisk /dev/sda ##磁盘分区
##命令格式:mount [-t vfstype] [-o options] device dir
其中:
#1.-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:
光盘或光盘镜像:iso9660
DOS fat16文件系统:msdos
Windows 9x fat32文件系统:vfat
Windows NT ntfs文件系统:ntfs
Mount Windows文件网络共享:smbfs
UNIX(LINUX) 文件网络共享:nfs
#2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有:
loop:用来把一个文件当成硬盘分区挂接上系统
ro:采用只读方式挂接设备
rw:采用读写方式挂接设备
iocharset:指定访问文件系统所用字符集
#3.device 要挂接(mount)的设备。
#4.dir设备在系统上的挂接点(mount point)。
##将镜像文件挂载在/mnt/dvd下
mkdir /mnt/dvd #在根目录下的mnt目录下创建目录dvd
mount -t iso9660 -o loop /dev/cdrom /mnt/dvd ##挂载
umount /mnt/dvd ##卸载
##fsck命令被用于检查并且试图修复文件系统中的错误。当文件系统发生错误,可用fsck指令尝试加以修复
fsck -y /dev/sda1 ##(修复的可以是分区可以是目录,最好在单用户模式下使用)
##linux文件格式
ext4 ext3 ext2 vfat(fat32)
##windows文件格式
ntfs fat32 exfat
超级账户 root uid = 0
普通账户 uid > = 500
系统账户 uid = 1 ~ 499
/etc/passwd //保存账户的信息
![图片14 (2)](图片14 (2).png)
/etc/shadow //保存账户密码信息
![图片15 (2)](图片15 (2).png)
useradd 用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd
文本文件中。所有用户必须放在组中,创建用户时,如不指定组,会默认创建与用户名相同的组
useradd(选项)(参数)
useradd user 添加用户user;
useradd -g user user1 创建用户user1指定基本组为user 使用 cat /etc/passwd 查看
-G<群组>:指定用户所属的附加群组;
useradd -G user user2 创建用户user2指定附加组为user2 使用cat /etc/group查看组情况
-u<uid>:指定用户id。
useradd -u 666 user3 创建用户user3指定用户ID为666 使用 cat /etc/passwd 查看
userdel命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件。
useradel(选项)(参数)
-f:强制删除用户,即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件。userdel -r user 删除用户user,并且删除/home/user
usermod命令用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。
usermod(选项)(参数)
-g<群组>:修改用户所属的群组;
-G<群组>;修改用户所属的附加群组;
-l<帐号名称>:修改用户帐号名称;
-L:锁定用户密码,使密码无效;
-u<uid>:修改用户ID;
-U:解除密码锁定。
用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。
passwd(选项)(参数)
参数即需要设置密码的用户名。
-d:删除密码,仅有系统管理者才能使用;
-l:锁住密码;
-u:解开已上锁的帐号。
groupadd命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。
groupadd(选项)(参数)
-g:指定新建工作组的id;
groupadd manager ##创建组manager
groupadd manager1 ##创建组manager1
groupadd manager1 ##创建组manager2
cat /etc/group ##查看组信息
cat /etc/gshadow ##查看组密码信息
![图片16 (2)](图片16 (2).png)
更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。
groupmod(选项)(参数)
-g<群组识别码>:设置欲使用的群组识别码;
groupmod -g 888 manager
-n<新群组名称>:设置欲使用的群组名称。
group -o manager1 manager
groupdel命令用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。
groupdel(参数) 参数即要删除的组名
groupdel manager
gpasswd命令是Linux下工作组文件/etc/group
和/etc/gshadow
管理工具。
gpasswd(选项)(参数)
-a:添加用户到组;
gpasswd -a user1 manager
显示Adding user user1 to group manager
-d:从组删除用户;
gpasswd -d user1 manager
显示Removing user user1 from group manager
id命令可以显示真实有效的用户ID(UID)和组ID(GID)。UID 是对一个用户的单一身份标识。组ID(GID)则对应多个UID。id命令已经默认预装在大多数Linux系统中。
id [-gGnru][--help][--version][用户名称]
-g或--group 显示用户所属群组的ID。
id -g user1
-G或--groups 显示用户所属附加群组的ID。
id -G user1
-n或--name 显示用户,所属群组或附加群组的名称。
id -name user1
-u或--user 显示用户ID。
id -u user1
更改密码方式1
##修改用户user2密码(root用户权限)
passwd user2
New password:*******
Re-enter new password:*******
更改密码方式2
##不通过交互信息,直接改用户密码(root用户权限)
echo "root" | passwd --stdin root
su命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。
su +用户名
su user3 #切换用户为user3
![](图片22 (2).png)
![](图片23 (2).png)
![](图片24 (2).png)
![](图片25 (2).png)
whoami #显示当前用户
who #显示当前在线用户
last #最后登录是谁
last -n #最后登录的列表
##查看用户信息
cat /etc/passwd
##查看用户组的信息
cat /etc/group
pwd 查看当前位置
cd 切换文件目录
cd ~ #回到家目录
cd - #回退到上一次所在位置
cd ../ #回到上一级目录
cd ./ #当前目录
cd #返回到当前用户的家目录
ls -al /etc ##查看根目录下etc文件下的所有文件和目录,包括隐藏文件
ls -R /etc
权限:读取\写入\可执行
归属关系:所有者\所属组\其他用户
-|rw-|---|---. 1 root root 1771 4月28 2015 anaconda-ks.cfg
① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨
①:文件类型
- 文件
d 目录
l 链接
②:所有者权限(u)
r 读 4
w 写 2
x 执行 1
③:所属组权限(g)
r 读 4
w 写 2
x 执行 1
④:其他用户权限(o)
r 读 4
w 写 2
x 执行 1
⑤:所有者
⑥:所属组
⑦:文件大小
⑧:最后修改时间
⑨:文件名
chmod 777 /data0/my.cnf ##拥有所有权限
chmod -x /data0/my.cnf ##删除执行权限
chmod -R 777 /data0 ##递归改权限
chmod u g o +-rwx /1.txt ##用户,同组,其他人
chown -R lucy:lucy /data0 ##修改所有者及组
mkdir /tmp/test01 ##创建空文件夹
mkdir -p /data1/hadoop/hdfs/name ##创建多级文件夹
touch /tmp/test01/file.txt ##创建空文件
vi file.log ##创建空文件并进入编辑模式
echo > file.txt ##创建file.txt并输入空到该文件中
cp /tmp/file.txt /opt
cp -r /tmp/test01 /opt
mv /opt/test01 /tmp ##移动目录
mv /opt/file1.txt /tmp/file1.txt ##移动文件
mv /opt/file1.txt /tmp/file2.txt ##移动文件并重命名
mv /opt/test01 /tmp/test02 ##移动目录并重命名
rename aoo aoo1 aoo? ##批量命名
##第一个参数:被替换掉的字符串
##第二个参数:替换成的字符串
##第三个参数:匹配要替换的文件模式
##字母的替换
rename AA aa * ##把文件名中的AA替换成aa
##修改文件的后缀
rename .html .php * ##把.html 后缀的改成 .php后缀
##批量删除后缀
rename .txt '' * ##把所有以.txt结尾的文件名的.txt删掉
rm ##删除文件
rm -r ##删除目录(递归删除)
rm -f ##强制删除
rm –rf folder ##常用命令 不可恢复
cat -n ##查看内容时显示行号
cat /etc/redhat-release ##不显示行号
cat -n /etc/passwd ##查看内容时显示行号
less /etc/passwd
tail ##默认查看文件尾10行
head ##默认查看文件头10行
-n 数字 ##查看指定头几行
tail /etc/passwd
head /etc/passwd
tail -2 /etc/passwd ##查看文件尾2行
head -3 /etc/passwd ##查看文件头2行
head -12 /etc/passwd | tail -5 ##查出前12行交给后面处理,即查看前面命令查出内容的的后5行
tail -f /home/passwd ##监控文件(监控文件id)
tail -F /home/passwd ####监控文件(监控文件名)
## > 先清空文件内容,后写入新的内容
ls -l /root > /tmp/file1.txt
## >> 追加新的内容,旧的内容不会消除
ls -l /root >> /tmp/file1.txt
echo "No Hello World..." ##打印到屏幕
echo “hello word” >/data0/my.cnf ##打印到文件
echo “hello word” >> /data0/my.cnf ##打印追加到文件
vim file
:q ##退出
:w ##保存
:wq ##保存退出
:q! ##强制退出
:wq! ##强制保存退出
vi/vim是Unix/Linux中最常用的文本编辑器,并且功能十分强大。但是它只有命令没有界面。
![图片1 (2)](图片1 (2).png)
![](图片2 (2).png)
![](图片3 (2).png)
![](图片4 (2).png)
![](图片5 (2).png)
ctrl + z #后台挂起
jobs #查看后台挂起任务
fg jobid #显示某个后台挂起的任务
ping www.baidu.com >> 1.txt
按ctrl + z 使任务后台挂起
gzip命令用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。
#gzip /home/data/1.txt
#gunzip /home/data/*.gz
bzip2命令可以用来压缩文件,文件经它压缩后会另外产生具有“.bz2”扩展名的压缩文件。
bunzip2命令用于解压缩由bzip2命令压缩的“.bz2”压缩包。
#gzip /home/data/1.txt
#gunzip /home/data/*.gz
-z ##压缩或解压缩
-c ##打包
-x ##解包
-f ##必须要
-C ##指定解包位置
-v ##输出信息
##将一个文件打包
tar -cvf folder.tar file1.txt
##将多个文件打成一个包
tar -cvf folder.tar file1.txt file2.txt
tar –cvf file.tar *.jpg ##(常用方法)
##解包到当前目录
tar -xvf folder.tar ##(常用方法)
##解包到指定目录
tar -xvf folder.tar -C /home/sss
##将多个文件打包并压缩
tar -zcvf file.tar.gz folder1 floder2
##将文件解包并解压缩
tar -zxvf file.tar.gz ##(常用方法)
##使用tar备份指定目录/data0/内容包括子目录中内容备份至 /data3/data0.tar.gz
tar -zcvf /data3/data0.tartar.gz /data0
##恢复tar 文件中的内容/data3/data0.tar.gz 至 /data2
tar -zxvf /data3/data0.tar.gz -C /data2
##查找cmd命令所在路径
which cmd
## which命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
which reboot
##whereis 查找路径中包含该字符串。一般用于查找软件安装位置.whereis命令用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。
whereis mysql
##locate 查找文件按所在,文件查找-效率很快(用的是数据库)locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/mlocate/mlocate.db,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。
locate httpd.conf
##find 文件查找-效率很慢 find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
find / -name httpd.conf 文件名字是该字符串的
find / -name *ss*
find / -size 4k ???查找大于多少 小于多少
vi /etc/sysconfig/network-scripts/ifcfg-eth0
##网卡名称
DEVICE=eth0
##网络类型为:Ethernet
TYPE=Ethernet
##唯一性
UUID=d06a4eee-dd5c-45e5-afbc-38a8a8440bd9
##开机启动
ONBOOT=yes
##network mamager的参数 ,是否可以由NNetwork Manager托管
NM_CONTROLLED=yes
##设置为none禁止DHCP,设置为static启用静态IP地址,设置为dhcp开启DHCP服务
BOOTPROTO=none
##mac地址
HWADDR=00:0C:29:74:E7:3E
##ip地址
IPADDR=192.168.10.11
##子网掩码24位
PREFIX=24
##网关
GATEWAY=192.168.10.254
##dns 域名解析 第一个dns服务器
DNS1=192.168.10.254
##就是default route,是否把这个eth设置为默认路由
DEFROUTE=yes
##如果ipv4配置失败禁用设备
IPV4_FAILURE_FATAL=yes
##禁止IPV6
IPV6INIT=no
##这个就是个网络连接的名字
NAME="System eth0"
##永久修改主机名(需要重启服务器)
vim /etc/sysconfig/network
HOSTNAME=teacher.tarena.com
##临时修改主机名,使用hostname命令+空格+新主机名
hostname teacher.tarena.com
##解析文件
vim /etc/hosts
192.168.91.111 hadoop01
web tcp 80
telnet tcp 23
ssh tcp 22
ftp tcp 20/21
smtp tcp 25
pop3 tcp 110
imap tcp 143
dns tcp/udp 53
可以参考/etc/services
##关闭防火墙
service iptables stop
##设置开机不启动
chkconfig iptables off
##查看防火墙状态
service iptables status