linux学习小结

课前备注:通过win+e打开快速访问,侧边栏点击我的电脑图标此时我的电脑地址输入栏中输入:ftp://10.8.153.33[下载公共资料]ftp://10.8.153.32[老师共屏]
安装完虚拟机后进入会提示login:【输入root】passwd【输入 1】输入密码时是没有回显的,不要反复输入,点击回车即可;当有#出现时显示登陆成功。
机房要求无尘,恒温,低温;一台电脑是否可以运行可以没有CPU,但是不能没有GPU.冬天安装机器时内存金手指等电子元件注意不要触碰,防止报废;
先安装vmware,然后添加虚拟机,挂载centos影像,安装成功后进行finalshell远程连接
一.ip a 查看ip指令
1:lo: 对内通信网卡;
2. ens33: 对外通信网卡 查到:c-1虚拟机的ip为192.168.59.132;c-2虚拟机的ip为192.168.59.133;c-3虚拟机的ip为192.168.59.134

清屏快捷键方式
1. clear命令
这个命令将会刷新屏幕,本质上只是让终端显示页向后翻了-页,如果向上滚动屏幕还可以看到之前的操作信息。
2、reset命令
这个命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空,这样虽然比较清爽,但整个命令过程速度有点慢,使用较少。值得一提的是reset命令 在你的终端制错乱时非常有用。如输入字符不出现在光标的位置的情况。还有当你敲击回车键时,新提示符并没有出现在新行上,而是出现在老提示符的前面。此时reset命令 就能用来修正这些问题。
3.Ctrl+ l(小写的L)清屏效果同clear命令-样。
4.  printf "\033c"命令 这个命令它才是真正的清空了终端屏幕,它的功能跟DOS里CMD.EXE提供的CLS效果很相似

红帽是个公司;centos8/9可能会2024年收费,所以一般装centos7;云计算含金量最大的公司。
金融,政府,医疗在系统安全方面华为认证全国第一,
三种职业:黑帽骇客,攻击;白帽防御;灰帽两者之间,给钱就干,攻击和防御;
在Linux系统中,拥有最大权限的账户名为: root(超级管理员root用户拥有 最大的系统操作权限,而普通用户在许多地方的权限是受限的普通用户的权限,一般在其HOME目录内是不受限的;一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限。

结构
树形结构,没有诸多盘符,所有文件在根目录 / 下。windows 层级关系用 \ 表示,linux 层级关系还是 / 符号。
命令提示符:【】是边界符号,没有实质意义root是登陆当前机器的用户名,可以任何用户名;~飘号【tab键上面的符号,是一个泛称,随着用户名改变而改变】#当前用户是管理员;$当前用户是普通用户
[root    @               localhost       ~    ]                          #
用户    分隔符(无意义)        主机名    当前用户root家目录(登录者用户名)   管理员用户

增加用户useradd tony 查看用户id tony 删除用户userdel  [-r] tony


查看服务器时间
[[email protected] ~]# date 
[[email protected] ~]# date +%F  #只显示当前年月日
[[email protected] ~]# date +%X  #只显示当前时间到秒
[[email protected] ~]# pwd   #显示当前工作路径
pwd ---Print working directory
命令基础
命令通用语法:command [-option] [parameter] ,options 表示参数细节,parameter 表示具体执行目标。
如 ls -l /home ,就是以列表形式列出 home 下所有文件。和ll作用类似。

切换用户su -
添加单个用户:useradd tony
添加多个用户:for i in {1..10} ;do useradd -m tony$i ;done
添加四个用户
[root@localhost ~]# for m in {1..4} ; do useradd -m  tony$m ; done
[root@localhost ~]# ls /home
tony1  tony2  tony3  tony4
[root@localhost ~]# ls /var/spool/mail
tony1  tony2  tony3  tony4
当创建/删除一个用户的时候会同时创建/删除一个用户的家目录和邮箱目录
【-r】删除用户时需要添加-r,此时可以同时删除邮箱目录,如果不加-r,此时不会删除home中的普通用户,邮箱中的普通用户不会被删除掉,只是把用户给删除掉了【home还在】
[root@localhost ~]# userdel tony3
[root@localhost ~]# userdel -r tony2
[root@localhost ~]# ls /home
tony1  tony3  tony4
[root@localhost ~]# ls /var/spool/mail
tony1  tony3  tony4
[root@localhost ~]# id tony2
id: tony2: no such user
[root@localhost ~]# id tony3
id: tony3: no such user

退出普通用户到root的命令用exit或者CTRL+D;此时断开连接,点击回车键即可重连;
ctrl+c可以取消正在执行或者输出(按下回车)之前的操作;
root可以凌驾于基本权限之上,但不是所有权限;

tab键自动补全失败原因缺乏插件解决方法
[root@localhost ~]# yum -y install bash-completion
已加载插件:fastestmirror

passwd作为主命令修改密码【系统会判断是否主用户】如果是主用户,就用passwd 用户名;如果是普通用户,只需要passwd即可
普通用户的密码至少八位,需要大小写字母,数字,特殊符号,和不能包含用户名的规则;
当前普通用户如果没有密码则不能修改自己的密码;

查看普通用户的家目录home下的普通用户 ls /home 或者ll /home
查看当前用户所在目录 pwd
从主账户切换到普通用户 su - tony2
可以从主账户和普通用户之间相互切换,但是此时不能普通用户之间相互切换,因为此时会提示你要普通用户tony2的密码。


su[switch user]  用户名和su - 用户名
su 切换用户时,切换当前登陆用户名,但是不改变家目录;/root
su - 切换用户时,不仅切换当前用户名,也改变其家目录 /home/tony1
[root@localhost ~]# su - tony1
[tony1@localhost ~]$ pwd
/home/tony1
[tony1@localhost ~]$ exit
登出
[root@localhost ~]# su tony1
[tony1@localhost root]$  pwd
/root
 

ls:平铺形式列出当前文件夹下所有文件。 主命令 【选项】 参数
[root@localhost ~]# ls           【不加任何,显示当前家目录下的所有文件】
1.txt  a  anaconda-ks.cfg  b  c  qianfeng
[root@localhost ~]# ls -a  【root家目录下的所有文件】
.   1.txt  anaconda-ks.cfg  .bash_history  .bash_profile  c       qianfeng
..  a      b                .bash_logout   .bashrc        .cshrc  .tcshrc
[root@localhost ~]# cd /
[root@localhost /]# ls -a  【根目录下的所有文件】
.   bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
..  boot  etc  lib   media  opt  root  sbin  sys  usr

/只有在目录文件下面才能添加,【是否加不影响结果,方便计算机识别】

[root@localhost /]# ls /home
tony1  tony2  tony3  tony4
[root@localhost /]#  ls /home/
tony1  tony2  tony3  tony4

options -a: 列出所有文件包括隐藏文件。【linux中隐藏文件都以点开头】
options -l:每个文件一行,一列表形式展现,并且还会展现每个文件的详细信息(如创建日期)。
options -a -l 或 -al 或 -la:同时应用 -a -l。
options -h:【必须和 -l 一起使用】。在以列表形式列出全部文件的前提下,每个文件的文件大小缩写(K M G)。
-d[仅针对目录文件下进行显示,显示文件的家目录]
parameter:要列出的目录路径,默认为当前工作目录。
打开系统时默认用户目录为当前工作目录。linux 里是 /home/usrname, windows 里是C:\Users\Admin具体是 c:\用户\Admin


-rw-r--r--          1       root       root     10086   May 7 12:15:16      alan.txt        
文件类型\权限    硬链接个数   所有者      所属组      大小    修改时间              名字

[root@localhost ~]# ll -d /home/  #显示目录的详细信息

[root@localhost ~]# ls /home     【显示的是当前家目录的下的详细信息】#查看目录下面文件的详细信息
tony1  tony2  tony3  tony4
[root@localhost ~]# ls -d /home  【显示的是当前家目录的名称】#查看目录详细信息
/home


#ls -lh     //-h 人性化显示 (显示文件大小)
#ls -a      //all 显示所有文件 (包括隐藏文件)
案例:ls a.txt b.txt c.txt
#ls ./file*    #以file开头的所有文件    *通配符。表示所有字符(隐藏文件除外)
#ls ./*.txt     #以任意开头以.txt结尾的所有文件
[[email protected] ~]# ll -t  #按最新的修改时间排序

rm -rf:强制删除
[root@localhost ~]# #代表注释;touch创建普通文件;mkdir创建目录文件;删除目录文件必须 加-r;如果强制删除rm -rf
[root@localhost ~]#  #删除成功时有提示用 -v
[root@localhost ~]# touch /home/tony1/qf.txt
[root@localhost ~]#  mkdir /home/tony1/qfeng
[root@localhost ~]# ls /home/tony1/
a  qfeng  qf.txt
[root@localhost ~]# rm -rf /home/tony1/
[root@localhost ~]#  ls /home/tony1
ls: 无法访问/home/tony1: 没有那个文件或目录
[root@localhost ~]#  ls /home
tony2  tony3  tony4
[root@localhost ~]# #删除的是从/home家目录下的tony1文件所有信息,包含tony1文件本身

[root@localhost ~]# rm -rv /home/tony2/qf
rm:是否删除目录 "/home/tony2/qf"?y
已删除目录:"/home/tony2/qf"    【-v删除成功时会提示已删除成功】
[root@localhost ~]# rm -rvf /home/tony2/1.txt
已删除"/home/tony2/1.txt"      【-v删除成功时会提示已删除成功】

【为防止删根,可利用虚拟机的拍摄快照功能,(蓝色扳手闹钟)】月光宝盒恢复数据功能可以点击蓝色闹钟转到节点或者【红色箭头闹钟】进行恢复。


 Linux 主要目录速查表
/:根目录,一般根目录下只存放目录,在 linux 下有且只有一个根目录,所有的东西都是从这里开始
当在终端里输入 /home,其实是在告诉电脑,先从 /(根目录)开始,再进入到 home 目录
/bin、/usr/bin:可执行二进制文件的目录,如常用的命令 ls、tar、mv、cat 等
/boot:放置 linux 系统启动时用到的一些文件,如 linux 的内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub
/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom /mnt
/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有
/etc/inittab
/etc/fstab
/etc/init.d
/etc/X11
/etc/sysconfig
/etc/xinetd.d
/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下
~ 表示当前用户的家目录
~edu 表示用户 edu 的家目录
/lib、/usr/lib、/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助
/lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下
/mnt: /media:光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载
/opt:给主机额外安装软件所摆放的目录
/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的文件有:/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等
/root:系统管理员root的家目录
/sbin、/usr/sbin、/usr/local/sbin:放置系统管理员使用的可执行命令,如 fdisk、shutdown、mount 等。与 /bin 不同的是,这几个目录是给系统管理员 root 使用的命令,一般用户只能"查看"而不能设置和使用
/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
/srv:服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 /srv/www 内
/usr:应用程序存放目录
/usr/bin:存放应用程序
/usr/share:存放共享数据
/usr/lib:存放不能直接运行的,却是许多程序运行所必需的一些函数库文件
/usr/local:存放软件升级包
/usr/share/doc:系统说明文件存放目录
/usr/share/man:程序说明文件存放目录
/var:放置系统执行过程中经常变化的文件
/var/log:随时更改的日志文件
/var/spool/mail:邮件存放的目录
/var/run:程序或服务启动后,其 PID 存放在该目录下

1.命令行的帮助命令 命令 --help
2.-d指定家目录;创建用户时自动创建其默认为用户同名的家目录,也可以加-d指定其家目录;
[root@localhost ~]# useradd jack
[root@localhost ~]# useradd rose -d /home/soldier
[root@localhost ~]# ls /home
alan1  jack  soldier
[root@localhost ~]# id jack
uid=1007(jack) gid=1007(jack) 组=1007(jack)
[root@localhost ~]# id rose
uid=1008(rose) gid=1008(rose) 组=1008(rose)

3.删除用户时,必须加-r,否则只会删除用户,其家目录和邮箱目录还存在;如果此时添加其他新用户,会覆盖其原来的家目录,uid不变,但是用户名已经改变了。
4.目录后面都加/,是因为只有目录文件才能存储文件(含普通文件和目录文件)
5.-v删除或创建文件时可视化效果,当操作成功时会有提示;
6.反引号`内容`优先执行或者用$(内容)符号,会优先执行里面内容,并将输出的结果放到对应的位置;
[root@localhost ~]# #年月日和时分秒之间用连接符不可用空格,Linux中空格代表分隔。可以用-@等。否则时间和日期会相连;当百分号在命令中第一次出现时,必须加+号;
[root@localhost ~]# date +%F---%X
2023-08-10---11时41分37秒
[root@localhost ~]#  date `+%F  %x`
2023年 08月 10日 星期四 11:42:58 CST
[root@localhost ~]#  date $(+%F  %x)
在当前目录下创建一当下日期为结尾的txt文件,此时年份和日期之间不可用空格。当一级任务时反引号相当于优先执行的任务,此时还没转义,touch 反引号内容时作为二级任务,随后进行。
[root@localhost ~]# touch `date +%F--%X`.txt
[root@localhost ~]# ls /root
1.txt  2023-08-10--15时05分01秒.txt  a  anaconda-ks.cfg  b  c  qianfeng
[root@localhost ~]# touch `date +%F  %X`.txt
date: 额外的操作数 "%X"
Try 'date --help' for more information.

别名alias
[root@localhost ~]# #--color=auto 查看文件时自动颜色显示
[root@localhost ~]# type ll 【查看命令的类型,是否有别名】
ll 是 `ls -l --color=auto' 的别名
[root@localhost ~]# ls /
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr
[root@localhost ~]# #--color=auto 查看文件时自动颜色显示
[root@localhost ~]# ls /root
1.txt  2023-08-10--15时05分01秒.txt  a  anaconda-ks.cfg  b  c  qianfeng
[root@localhost ~]# alias tony="rm -rvf"
[root@localhost ~]# tony /root/2023-08-10--15时05分01秒.txt 
已删除"/root/2023-08-10--15时05分01秒.txt"
#别名只有在系统预启动时才生效,当reboot后先前设置的别名就会失效。
取消别名,unalias 当前设置的别名。【在Linux中好多命令取反un就是取消原命令】
[root@localhost ~]# unalias   tony
[root@localhost ~]# type tony
-bash: type: tony: 未找到

df -Th  查询系统磁盘使用率功能


通配符:
集合  : {1..5} 
[root@localhost ~]# ls /home
alan1  heihei  tony1  tony2  tony4
[root@localhost ~]# touch /home/heihei-{1..4} /home/heihei-{o..z}
[root@localhost ~]# ls /home/
alan1     heihei-2  heihei-o  heihei-r  heihei-u  heihei-x  tony1
heihei    heihei-3  heihei-p  heihei-s  heihei-v  heihei-y  tony2
heihei-1  heihei-4  heihei-q  heihei-t  heihei-w  heihei-z  tony4

 #-p如果发现上层目录不存在,可以自动帮忙创建目标文件的上层目录;和-v配合可以显示创建成功
 扩展符可以是单独规律的数字集合或者是字母集合不能是字母数字结合的集合比如{2a..4a}
[root@localhost ~]# mkdir -pv /tmp/{alan2,tony}/{1..4}
mkdir: 已创建目录 "/tmp/alan2"
mkdir: 已创建目录 "/tmp/alan2/1"
mkdir: 已创建目录 "/tmp/alan2/2"
mkdir: 已创建目录 "/tmp/alan2/3"
mkdir: 已创建目录 "/tmp/alan2/4"
mkdir: 已创建目录 "/tmp/tony"
mkdir: 已创建目录 "/tmp/tony/1"
mkdir: 已创建目录 "/tmp/tony/2"
mkdir: 已创建目录 "/tmp/tony/3"
mkdir: 已创建目录 "/tmp/tony/4"
*号,通配符。
[root@localhost ~]# mkdir -v  /root/{1..4}@tony
mkdir: 已创建目录 "/root/1@tony"
mkdir: 已创建目录 "/root/2@tony"
mkdir: 已创建目录 "/root/3@tony"
mkdir: 已创建目录 "/root/4@tony"
[root@localhost ~]# ls /root
1@tony  2@tony  3@tony  4@tony  anaconda-ks.cfg  c  root_a
[root@localhost ~]# rm -rvf /root/*tony
已删除目录:"/root/1@tony"
已删除目录:"/root/2@tony"
已删除目录:"/root/3@tony"
已删除目录:"/root/4@tony"
[root@localhost ~]# ls -d /root  【-d命令会显示其家目录】
/root
[root@localhost ~]# ls /root
anaconda-ks.cfg  c  root_a

快速回到家目录cd,快速回到上一次所在目录cd -绝对路径以/【根目录】开头,相对路径cd 后面不跟命令直接回到当前用户家目录   
[root@localhost /]# cd /home
[root@localhost home]# cd   【快据返回其家目录】
[root@localhost ~]# cd -     【返回到上一次所在目录】
/home

你可能感兴趣的:(linux,学习,运维)