admin 管理员组

文章数量: 887031

1.物理服务器安装OS:

(1).U盘安装

(2).光盘安装

(3).BMC

(4). PXE批量安装

2.Ctrl+shift+”+”     字体临时变大

 Ctrl+”-”   字体临时变小

永久行变大变小    edit/属性/use…的勾去掉  (改字体字号)

3.基本使用方法

ctrl +U/u   从光标开始清空字符至行首

ctrl +K/k     从光标开始清空字符至行尾

ctrl +L/l = clear    清屏

ctrl +C/c      中断该命令的执行

ctrl+“左”/“右”   光标向左/右移动一个单词

ctrl+shift+”t”    再同一个终端里面可以同时打开多个table表

init  3   让大家可以从图形界面的终端里面进入到纯字符界面

init  5   让大家可以从纯字符界面进入到图形界面(前提是server with  GUI的安装方式)

init  0   =shutdown  -h  now         关机   

init  6   =reboot =shutdown  -r  now  重启   

4.创建普通用户

#useradd   username

查看用户信息

#id   username

给用户设置密码

#passwd  username

切换用户

#su - username

用户修改密码  

#passwd   username

5. [root@yutianedu Desktop]#   命令提示符  四个字段

root        我现在登陆的用户是谁

yutianedu   当前登陆的虚拟机的计算机名

Desktop    我现在的工作目录

#          管理员用户

$          非管理员用户

管理员用户切换到普通用户是不需要密码的

普通用户切换到普通用户/管理员用户都是需要输入密码的

一个用户如果不设置密码是没办法登陆桌面的

计算机名/主机名

# hostnamectl  set-hostname  zengxi(主机名)

切换终端就生效了

#pwd    查看当前工作目录的绝对路径

6. # vim  /etc/passwd    查看用户信息

# vim  /etc/shadow    查看密码信息

 # echo  $[$(date  +%s)/86400]                    # man  date    里面有一个s%

7.   /        根目录

    root      root用户

~      代表家目录   #pwd

/root     root用户的家目录

/home/user*    普通用户user*的家目录

8.  权限委派

可以让普通用户拥有管理员用户的某些权限

8.1  先再管理员身份下  查看实现该功能的命令的绝对路径   

#which  command(命令字)

8.2  去到sudoers文件里面,去赋予普通用户的对应权限即可

#vim /etc/sudoers    再该文件下,写入要赋予的用户   以及对应权限

  

8.3  切换到普通用户身份,执行对应的命令

#sudo   useradd  user*

#sudo   passwd  user*

输入普通用户的密码(确认为派人的身份)就会成功,每5分钟就要一次密码,保证OS安全性

9.Tab键使用方法

可以大大提升你的工作效率,不会敲错,敲容易出错

单击可以补齐命令,文件名,目录名

双击可以列出当前目录下所有内容,提醒你的记忆

10.历史记录(存放在硬盘中的,开机关机无影响),默认情况下最多可以存放1000条

# history(可以显示我们之前敲过的所有命令,每个用户都会有各自的历史记录

10.1改历史记录的条数

#vim  /etc/profile(HISTSIZE=1000)   历史越多越不安全

因为如果有人入侵了你的电脑  那么别人是可以看到你的历史操作

今天黑客入侵了你的电脑   你呢可以通过历史记录看到黑客做了些什么  解除

10.2每个用户都可以看到自己的历史记录,每个人默认都是1000条

但是管理员可以看到每个用户的历史记录(直接切过去)

10.3清空历史记录  就可以使得系统更加安全   

别人入侵你的电脑后  不知道你做了哪些操作

你入侵了别人的电脑   一顿操作后别人还发现不了你做了什么

*******************************************

#history -c

****************************************

#cd

#ls -a

#vim  .bash_history (将改文件的内容全删掉)  就删除了历史记录

但是还需要抹掉删历史记录的动作

#echo    >  /root/.bash_histroy    (删除上一步vim的命令)

最后在重新打开一个终端来验证就可以了

10.4 可以帮助我们快速命中之前已经敲过的命令

“上”   往上翻

“下”   往下翻

!100   直接帮我执行历史记录中的第100条命令

!v     直接执行历史记录中以“v”开头的最近的一条命令

!vi    直接执行历史记录中以“vi”开头的最近的一条命令

!sys   直接执行历史记录中以”sys”开头的最近的一条命令

!syo   直接执行历史记录中以“syo”开头的最近的一条命令

10.5 错误命令改正原则

#cd /etc/sysconfig/network-scripts/ifcfg-eno16777737

#vim “Alt+.” (自动补齐上一条命令的参数到本命令字后面来)

11.vim编辑器的使用方法

vi    没眼色,敲错了就不会警告,最小化只有vi,但是想要有vim,安装一个软件包

#rpm   -ivh   vim-enhanced-7.4.160-1.el7.x86_64

vim   有颜色的,敲错了,是有提示的,GUI才有vim

#rpm  -qa  |grep  vim  查看安装的vim安装包

#vim   文件名

此时一进去就是命令模式   该模式只读

想要修改文件内容,则有5种方式可以进入插入模式,在插入模式下才可以修改内容

  1. i   在光标所在位置就可以插入内容,当然也可以移动光标去修改内容
  2. o   在光标所在行的下一行处新加一行并且进入插入模式,可以修改内容
  3. O   在光标所在行的上一行处新加一行并且进入插入模式,可以修改内容
  4. A    将光标移动到所在行的行尾并且进入插入模式,可以修改内容
  5. I     将光标移动到所在行的行首并且进入插入模式,可以修改内容
  6. s    将光标所在位置的字母删掉,并且进入插入模式

从插入模式回到命令模式按Esc即可

从命令模式都到退出模式按:即可

在退出模式下

wq    保存并退出 

q     退出 当你手不小心碰到某个内容,但不知道哪里被修改,所以就q出去,在进来

w     保存  确定修改的没有问题了,想保存免得丢数据,就w,这样做不会关掉这个文件

x=wq  保存并退出

q!     强制退出     当你退不出去了,就q!

wq!    强制保存并退出,只读文件,对于文件所有者来说可以强制修改内容

没有修改文件内容的时候,仅仅知识看了一眼,出来的时候切记不要wq(x),直接q出来即可

如果你w了,文件的mtime就变了,就是时间戳变了,文件的时间戳一旦变了,就会出现一系列的连锁反应

本来我对文件“file1(123)”于今晚8:53做了一次保存,9:00对“file1”进行了而一次备份,一旦这个文件内容变了,要保存就会w,一w就变了mtime,mtime一变,就要重新重新备份一次,于是要新的存储空间去存新的副本,备份空间的要求较大,成本上升

有冒号代表在退出模式下

:set   nu    可以显示一个文件的行号

:set   nonu  可以取消行号

:n     快速移动光标去第n行

:1 =gg    去第1行

:100   去100行

G       去最后一行

dd      删除光标所在行

Ndd     从光标所在行开始连续删除N行

500dd   从光标所在行开始删除500行

先Nyy      先从光标所在行开始复制N行      再p/P   再粘贴到某个位置

先Ndd      再p/P     剪切N行内容

x      删除光标所在位置的字符

cc     删除当前行的内容,行还在,空行,并且进入插入模式,可以写入新的内容来代替旧的内容

u     撤销之前的操作,按多少次就回退多少次   

Ctrl+r   取消撤销

/关键词    在该文件内容中搜索关键词  n/N  分别是想下/上命中关键词

12.Linux的语法规则

 command       【options】      【arguments】

   命令字           [选项]             [参数]          中括号代表可要可不要

eg:

#ls

#cd

#ls   -l   /etc/passwd 

可以有多个选项

#ls   -al     =  #  ls   -a   -l

#ls   -help   =  #  ls   -h   -e   -l   -p

#ls   --help  标识help是一个整体,不可拆分

#ls   -a   =  #  ls  --all

Linux选项和参数的位置很灵活,可以切换,但是命令字只能放在最前面

Unix 起源早于Linux,老人比较古板,保守,不灵活,选项就必须在参数前面

新手严格按照命令 选项  参数来

查找手册页,法1,最不方便的

#date  --help      这样做,会把全部内容一次性列完,去到最后面,不能选

法2:最方便

#man  date  这样做,可以从第一页开始查看手册页,空格翻页,回车翻行,q退出手册页

date  [OPTION]...  [+FORMAT]    中括号代表可选项 …代表可以有多个

法3:最详细

#info  date

'MM'

     month

'DD'

     day within month

'hh'

     hour

'mm'

     minute

'CC'

     first two digits of year (optional)

'YY'

     last two digits of year (optional)

'ss'

     second (optional)

%Y       年

%m       月

%d       日

%H       时

%M      分

%S       秒

date  [  MM    DD     hh     mm    [    [CC]       YY]        [.ss]       ]

        月份   日期    小时    分钟    年分前两位  年分后两位   秒

题目要求:2023年5月19号15点31分23秒

#date   051915312023.23

#date -d '2 week ago' '+%Y-%m-%d %H:%M:%S'   以+%Y-%m-%d %H:%M:%S显示2周前的日期

13.文件系统(Linux里面的文件系统的层次结构)

在Windows里面是每个分区都有一个独立一棵树(文件系统)

在Linux里面时统一只有一个文件系统,就是只有一棵树统一管理

Linux的文件系统的一切从根开始

/data/test    绝对路径   (从根开始描述位置)

#df   -h   查看分区情况

14.Linux里面严格区分大小写,Windows里面不区分大小写

15./root               root账户的家目录

   /home/username    普通用户的家目录  

家目录是用来存放用户的个人数据

   root                root账户

   /                   根目录

/bin(binary)  二进制翻译,/usr/bin, /usr/local/bin   普通用户可以执行的命令放在这里

/sbin,  /usr/sbin,  /usr/local/sbin   (system)系统管理员可以执行的命令放这里

/etc     Enterprise   Configuration   企业的配置文件放在/etc目录下

/tmp    存放一些临时文件

#rm  -rf  /tmp/*   删除/tmp目录里面的全部内容

#rm  -rf  /tmp    连tmp一切都删了(不可以这样做),如果/tmp这个目录被删了,图形界面进不去了,从rhel7开始,只要重启,就会用重新生成一个/tmp

/boot   引导分区,分了200M,最多用90M     #df  -h

/var,/srv    存放变量、日志、用户数据的分区,老是变化的数据

/proc,/sys  调优数据的

16.文件及目录的命名方式,<255字节,只要不是“/”,其他的都可以

Linux下的文件是没有扩展名的,有扩展名没有意义,因为加了扩展名也都是txt文件

Windows有扩展名,是因为win有注册表,记录关联关系的

#touch  a.ppt

#touch  a.pdf

#echo   hello  >  a.ppt

#echo   hello  world  >  a.pdf

#file     a.ppt                         //查看文件的类型

#file     a.pdf

17.pwd

显示当前的工作目录的绝对路径

绝对路径:从根开始去描述一个文件

相对路径:从当前目录开始去描述一个文件

eg:

/                   根   首都(北京)

/tmp/test1/test2                 成都(目的地)

~                              武汉(我所在的位置)

起点   ————  终点(必须要经过首都)

武汉————北京————成都(相对路径)

北京————成都(绝对路径)

18.每个目录里面都会自动生成两个隐藏目录,

#ls  -a

.   当前目录

..   上一级目录

需求:把/etc/shadow  /tmp/test1/test2

绝对路径:cp    /etc/shadow  /tmp/test1/test2

相对路径:在目标目录下:  cp  /etc/shadow  .

          不再目录目录下   就先退回到根在往下就可以了

当大家下目标目录,建议大家用相对路径的方式做事,效率更高

如果不再目标你目录,则建议用绝对的路径方式做事,效率更高,当然相对路径也可以,但是效率低一些

#cd  -   回到上一次目录   

#cd  ..   回到上一级目录

#cd      回家

19.mkdir

创建新的目录

mkdir  -p(parents)  /tmp/test1/test2/test3  递归创建多个文件夹 ,已有的目录也不做错误处理

20.ls     list   列出当前目录下的所有内容

#cd  /sbin 

#ll = ls  -l    (l=long )     长格式的形式去显示我们的文件/目录大小,权限,时间

黑色    普通文件      vim    vi   cat    hade   tail   …

蓝色    目录/文件夹   cd   pwd   ls   mkdir

湖蓝色  快捷方式

绿色    可执行文件(脚本)

有底色白黄字     特殊权限   special  permission    x----s

别名:

# which  ls ——> 

#ls  -R   递归,显示所有层次的子文件结构

#ls  -a   隐藏重要的文件,防止误删除

#ls  -d   当前文件的权限,加d才能看到自己的权限

#ls  -l    看当前目录地下的文件权限,长格式的形式

eg:

521  cd /tmp/

  522  ls

  523  rm -rf *

  524  ls

  525  mkdir data

  526  ls

  527  cd data/

  528  mkdir redhat

  529  ls

  530  chmod 777 /tmp/data/

  531  ls -l

  532  ls -ld

21.cp   copy

21.1复制拷贝文件到某个目录

21.2更改文件名

555  cd

  556  ls

  557  cp  /etc/profile  .

  558  ls

  559  ll

  560  chown  user1:user1  profile

  561  ll

  562  chmod 777 profile

  563  ll

  564  date

  565  date

  566  cp /root/profile /tmp/

  567  cd /tmp/

  568  ll

  569  rm -rf profile

  570  ll

  571  cp -p /root/profile .   //拷贝过程中保留权限拥有人等信息

  572  ll

-P   保证权限和时间戳等信息可以递归继承

-r    复制文件夹,保证文件夹结构

#cp  /etc/passwd   /tmp/passwd123    //将源拷贝到目标目录并该文件名

22.mv   move移动或该名

剪切

#  mv  文件名     目录名     //移动剪切文件到目标目录

#  mv  文件名1   文件名2    //把文件名1改成文件名2

23.rm   remove  删除

rm  -r (递归,文件夹)   -f(force) 强制暴力

#cd  /tmp

#ls -a

#rm -rf .*

#ls -a

.   ..是删不掉的  即使有-f也不行

24.touch

新建空文件,或更新已有文件时间标记

#cd /tmp

#rm -rf *

#ls

#touch a.txt   //生成a.txt的空文件

#vim  a.txt    //空的

#touch  a.txt   //更新a.txt的时间戳

# stat a.txt     //查看a.txt的时间戳

  File: ‘a.txt’

  Size: 0               Blocks: 0          IO Block: 4096   regular empty file

Device: 802h/2050d    Inode: 134         Links: 1

Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)

Context: unconfined_u:object_r:user_tmp_t:s0

Access: 2023-05-19 20:31:26.449921386 +0800     //atime  文件最后一次访问时间  :q

Modify: 2023-05-19 20:31:26.449921386 +0800   //mtime  修改时间  :wq

Change: 2023-05-19 20:31:26.449921386 +0800   //ctime  状态变更时间(大小,权限等):wq

 Birth: -

mtime变了会导致ctime变化,mtime和ctime变了就要对该文件做备份

如果该文件不存在

  #touch  a.txt      //生成空文件a.txt

  #vim   a.txt      //生成空文件a.txt同时打开a.txt(:wq)

如果该文件已经存在

  #touch  a.txt     //更新a.txt文件的时间戳

  #vim   a.txt      //打开a.txt文件

25.rmdir   删除空目录,删除内存中文件夹

应用场景:  只能删除空目录

rm  既可以删除空目录也可以删除非空目录

二、用户和组

#vim  /etc/passwd

1. admin  :  x  :  1000 : 1000 :  admin  :   /home/admin  :  /bin/bash

字段1: 表示用户名   

字段2:有X标识切到admin 需要密码验证,去掉X就不要验证密码了

字段3:uid   userid

字段4:  gid   groupid

字段5: 描述位,可以遮挡真是用户名

字段6:用户的家目录是哪个目录,切到用户,登陆用户就会第一时间在这个目录中

字段7:解释器语言类型是/bin/bash

#useradd  user1

1.1会创建一个用户

1.2会创建一个用户组

1.3并把该用户放到该组

1.4创建该用户的家目录

[root@zengxi /]# ls -l /etc/passwd

-rw-r--r--. 1 root root 2221 Mar  2 20:36 /etc/passwd  //用户信息

[root@zengxi /]# ls -l /etc/group

-rw-r--r--. 1 root root 933 Mar  2 20:40 /etc/group    //组信息

[root@zengxi /]# ls -l /etc/shadow

----------. 1 root root 1586 Mar  2 20:36 /etc/shadow   //用户密码信息

[root@zengxi /]# ls -l /etc/gshadow

----------. 1 root root 739 Mar  2 20:40 /etc/gshadow   //组密码信息

[root@zengxi /]#

三.权限

#ls  -l  /etc/passwd

  • rw  r-  r-      .    1  root  root  2264   Mar  2 20:47       /etc/passwd

               保留位                   大小  最后一次修改时间   文件名

第一个字段:

  • 普通文件

d  目录/文件夹

l   link快捷方式,链接

b  block块设备

c  字符型文件

第二个字段:拥有人的权限

第三个字段:拥有组的权限

第思个字段:其他人的权限

第五个字段:特殊权限

r   read  读      4

w  write  写      2

x        执行     1

对于文件来说

  1. w

其他人必须要有W权限才可以修改文件内容

但是对于拥有人来说,没有W权限也可以强制(!)修改文件内容

  1. r

对于其他人来说必须要有r权限才可以看到文件内容

   对于拥有人来说,没有r权限也可以看到文件内容

  1. x

对于一个文件来说,有x权限代表我们可以执行该文件(文件内容(命令)生效)

删除文件要看父文件夹/目录有没有w权限,父目录有w权限才可以

修改文件内容,要看文件本身有没有w权限

查看文件内容,要看文件本身有没有r权限

执行脚本,要看文件有没有x权限

文件夹有r     进不去目录,但是(ls -l 目录名),就可查看到目录下的内容  有看不能进

文件夹有w    可以删除该目录下的文件和创建文件及子目录    可创建可删除

文件夹有x     可以进目录,但是不能查看目录下的内容    可进不可看

文件初始权限都是644,文件夹的初始权限都是755

  1. 改变拥有人  

#chown  user1  passwd  (-R)继承给子孙

  1. 改变拥有组

#chgrp  -R(继承)  it   test

  1. 改变权限

u   拥有人

g   拥有组

o其他人       

ugo=a

r    4

w   2

x    1

+    加权限

-    减权限

=    权限等于

#chmod  777  passwd

#chmod  u-x   passwd

#chmod  ug+w  passwd

#chmod  640  passwd

四.

1.通配符扩展

* – 匹配0或者多个字符

? – 匹配任意单个字符

[0-9] – 匹配0-9范围内的数字

[abc] – 匹配该列表内的任意字符,a或b或c

[^abc] – 匹配除列表内字符外的所有字符

2. 波形符(~)

可指向你的主目录

$ cat ~/.bash_profile

也可指向其它用户的主目录

$ ls ~julie/public_html

2.1在脚本里面要回家的时候就要写”#cd ~”

2.2 在root用户下,如果我们想要去其他用户的家目录  

法1:切用户  

法2:#cd  ~username

~  #vim  ~username/.bash_profile   //打开username家目录下的.bash_profile的文件

3.$(command)=`command`   引用命令执行结果

例1:

963  hostname

  964  $(hostname)

  965  hostname

  966  zengxi

  967  echo $(hostname)

  968  echo "this sysytem's name is $(hostname)"

967  echo "this sysytem's name is `hostname`"

  969  date

  979  date +"%Y/%m/%d %H:%M:%S"

  980  echo "this system's time is $(date +"%Y/%m/%d %H:%M:%S")"

  982  echo "this system's time is `date +"%Y/%m/%d %H:%M:%S"`"

  983  history

例2:脚本1

# cd  /data

#vim disk.sh

#cat disk.sh

#!/bin/bash

DISK=`df -h | grep -w / |awk '{print $5}' |sed 's/%//g'`或DISK=$(df -h | grep -w / |awk '{print $5}' |sed 's/%//g')

   if [ "$DISK"  -ge 15 ]; then

       echo "warning,root partition is full!"

   fi

脚本2

#cd 

#vim  userlist.txt

#cat userlist.txt

liudehua

zhoujielun

zhangsan

lisi

wangwu

#vim users.sh

#cat user.sh

#!/bin/bash   声明

for USERS in $(cat /root/userlist.txt)

do

  useradd $USERS

  echo redhat |  passwd --stdin $USERS //把用户的密码设置为redhat

 done

#chmod  u+x  users.sh

./users.sh

4.{ } 依次去引用大括号的左右内容

5.${变量名}:引用变量的值

  定义变量  A=100  “A”变量名   “=”赋值    “100”是值

  引用变量:echo   ${变量名}   

本文标签: 笔记 Linux