chown 用来更改一个文件或者目录的所有者或者所属组
-R 级联更改一个目录下所有的目录和文件
useradd 添加用户的命令
如 useradd user1
添加user1用户,同时也会添加一个user1组
查看刚添加的用户 tail -2 /etc/passwd
tail命令是用来查看一个文件最后几行的命令
用法:
tail 1.txt 默认查询1.txt的最后10行
tail -5 1.txt 查询1.txt的最后5行
tail -n 5 1.txt 也可以用-n 5查询1.txt的最后5行
查看一个用户属于哪一个组:
id username 查看,其中一个用户会有两个组,一个是主组,一个是附属组
[root@jin01 ~]# id user1
uid=1000(user1) gid=1000(user1) 组=1000(user1)
[root@jin01 ~]#
增加组的命令 groupadd
如 groupadd users1
tail -2 /etc/group
查看刚刚添加的组
touch 2.txt
touch一个文件,没有一个文件就创建一个文件
chown 修改一个文件或者目录的所有者或所属组
用法:chown 用户:用户组 文件名或者目录名
如:chown user1:users 2.txt
也可以这样:chown user1.users 1.txt
如:
!ls
执行命令历史中,从下往上看,第一个ls开头的命令.
history
查看命令历史
最后一个执行的是history命令
inode 门牌号 会议室弄了两个门 门牌号一致
我们看文件是看文件名,实际上一个文件是不是唯一的是要看inode号的
任何目录下面都有 . 和 … 两个隐藏目录
其中. 是该目录本身 …是该目录的上一层目录
ls -id /etc/audit/
查看这个目录本身的inode号
/etc/audit/这个目录的inode号是17119408
ls -ia /etc/audit/
ls -ia /etc/audit/rules.d/
/etc/audit/他的下级目录/rules.d/中的…这个目录的inode号也是17119408
结论: 一个目录的(ls -l)第二列的数字,其实就是该目录下面有几个子目录(含隐藏的目录.和…)
常识: 目录无法做硬链接,硬链接无法跨磁盘或者分区
手动对文件做硬链接:
ln 1.txt 2.txt
把1.txt文件给他做个硬链接叫2.txt
之后查询到的是他们2个的inode号是一样的,并且都是显示有2个文件和他们用的同一个inode号
硬链接的特点:
1、inode号一样,说明这几个文件肯定是同一个文件
2、可以用来做避免误删除,但是不能做备份
删除其中一个文件,其实这个文件还在(同一个inode号还有其他文件在),但是不能用来做备份,因为修改其中一个文件,这个文件就真的改了,因为是同一个inode号是同一个文件
补充:rm删除一个文件或者目录,删除目录的时候需要加-r -f是一个强制删除的选项,不加-f会问你(是否要删除)
做软链接: ln -s 1.txt 2.txt
2.txt就是一个软链接了,指向1.txt,软链接很小,就是一个壳子指向目标文件,和windows里面的快捷方式一样的
注意:做软链接的时候,源文件(左边的)要用绝对路径,防止该软链接文件路径变化时,找不到目标文件。
如:
mv 2.txt 3.txt
把2.txt改名成3.txt
这个时候目录都没变,所以软链接还在
mv 3.txt /tmp/2.txt
把3.txt改名并且移动到/tmp/目录里面
再来查询/tmp/2.txt文件的时候就查不到他软链接的源文件了
这里的这个1.txt用的是相对路径,指的是当前目录下的1.txt
但是当前目录下就没有1.txt这个文件,所以报错了
解决方案:做软链接的时候一定要给源文件(左边的)用绝对路径
ln -s /root/1.txt /tmp/2.txt
所以这次查询到就不会报错了
软链接的作用:
1)方便访问一个文件
2)一个文件我想在多个地方都能访问到
/tmp/abc/1.txt
/root/123/1.txt
3)磁盘扩容
举例:系统里面有两个分区: /123 /abc ,其中/123/快用满了,还要写一个文件写道/123/aaa/(要写进去,意味着/123/这个分区要写满,并且还不够。)此时看到/abc/还有很多很多空间,所以我们就想到了要借用一下/abc/的空间,如何借用? 用软链接搞定。
/123/aaa --> mv 到 /abc/aaa -->通过/123/aaa可以访问到,ln -s /abc/aaa /123/aaa -->再写数据到aaa
实际上写到了/abc/aaa ,同时可以通过/123/aaa能访问。
安装软件包的一个工具,特点:可以联网,还可以方便的解决依赖。
依赖:yum 安装a文件,结果需要b文件,安装b文件又需要c文件。yum可以同时把a b c都安装上。
例子:yum install -y net-tools
ifconfig命令查看ip地址
ifconfig -a 查看所有网卡
netstat -lnp 查看系统监听了哪些端口
yum install -y 包名
安装一个包
yum remove 包名
卸载一个包
yum list
查看所有的包
最右侧是仓库的名字,如果是@开头,则说明这个包已经安装过了
左边的是包名 中间的是版本号
yum list |less
可以用管道去看
如果是@开头,则说明这个包已经安装过了
yum grouplist
查看都有哪些套件(套件就是包的组合)
yum groupinstall -y xxxx
安装一个组
用yum找一个命令是由哪个包安装来的: yum provides /*/wget
再如:yum provides /*/ifconfig
用yum查找ifconfig命令是由哪个包安装
挂载光驱:虚拟机下方的小光驱图标,连接
mount /dev/cdrom /mnt/
cd /mnt/Packages/
ls
可以看到很多红色的文件,就是rpm文件
yum install -y yum-utils
安装yum-utils这个包
是为了使用一个命令:yumdownlader
例子: yumdownloader wget
可以下载wget的rpm包文件
rpm安装rpm包: rpm -ivh xxxx.rpm
这个安装方法无法解决依赖问题
yum安装一个本地的rpm文件:(这个方法可以解决依赖问题)
yum localinstall vim-enhanced-7.4.160-5.el7.x86_64.rpm
rpm -qa
查询系统已经安装过的所有的包
卸载包:rpm -e 包名
如 rpm -e wget
查看一个包有无安装:rpm -q 包名
如 rpm -q vim-enhanced
rpm -qa |grep vim
[grep命令是用来过滤指定关键词的比如这里的vim]
rpm -ql 包名
可以列出该包都安装了哪些文件(会列出文件在系统里的路径)
比如:rpm -ql wget
列出wget这个包安装了哪些文件
rpm -qf /usr/bin/wget
可以反查询,查一个文件是由哪个rpm包安装得来的
如果不知道一个命令在哪里可以用which命令查询
补充: which命令查看一个命令在哪里,如 which ifconfig
which只能查看命令在哪来,不能查询文件在哪里,比如不能查询1.txt在哪里
rpm -qi wget 可以查看该包的详细信息