“Linux-2020-spring-3-11”的版本间的差异

来自SUDA-HLT
跳到导航 跳到搜索
 
(未显示同一用户的13个中间版本)
第20行: 第20行:
 
   问题1:有sudo权限的话,可否修改root密码?
 
   问题1:有sudo权限的话,可否修改root密码?
 
   问题2:系统管理时,哪些人可以知道root密码?哪些人可以是sudoer?
 
   问题2:系统管理时,哪些人可以知道root密码?哪些人可以是sudoer?
 +
          sudoer很强大,和root是一样的,这也就是我在视频中讲到的篡权的意思,sudoer可以把root密码改掉,然后把其他sudoer权限都取消,这样系统就被劫持了。
 +
          另外,sudoer文件有可能会破坏,我感觉还是有root密码比较安全
 +
          sudo更安全。直接登录root,然后敲命令,比较危险,有可能会忘了自己是root。前面加一个sudo,会增加一点安全性,麻烦=安全
 +
        系统管理员通常都通过sudo来管理,而不是直接用root。一个系统可以有多个管理员,即多个sudoer
  
 
上课中出现的权限问题:用户A可以随便访问用户B的所有文件?
 
上课中出现的权限问题:用户A可以随便访问用户B的所有文件?
第26行: 第30行:
 
   怎么改变这个默认行为呢?
 
   怎么改变这个默认行为呢?
  
*替换用户
+
su替换用户
   1、su yli:切换到yli这个用户下。
+
   su yli:切换到yli这个用户下。
   2、su :若后面没有参数,默认切换到root账户下。
+
   su :若后面没有参数,默认切换到root账户下。
   3、exit:退出
+
   exit:退出
*绝对路径和相对路径
+
 
   1、绝对路径:从根目录开始到目标文件的路径
+
绝对路径和相对路径
   2、相对路径:从当前目录(不是从根目录开始)到目标文件的路径
+
   绝对路径:以根目录开始的路径,表示从根目录开始到目标文件的路径
   3、相关命令:ls;ls -a;pwd;cd;touch(创建一个文件;如果一个文件已经存在,就会更新文件的时间);date,cal,calendar,bc,echo,uname
+
   相对路径:从当前目录(不是从根目录开始)到目标文件的路径
 +
   相关命令
 +
      ls; ls -a;  
 +
      pwd
 +
      cd
 +
      touch(创建一个文件;如果一个文件已经存在,就会更新文件的时间)
 +
      date, cal, calendar, bc, echo
 +
      uname -a
 +
      lsb_release -a # 查看系统发行相关信息,LSB(linux standard base)
  
 
== 几个简单命令 ==  
 
== 几个简单命令 ==  
 +
  uptime:系统启动的时间
 +
  hostname:机器名
 +
  who:显示当前登录的用户,以及用户从哪里登录进来的ctrl+alt+f7(登录终端)
 +
  users:目前有几个用户登录了这个系统
 +
  w:和who类似,同时可以显示每个用户在干啥
 +
  whoami:写程序的时候会用到
 +
      tty7(teletypewriter缩写,7号终端,即图形界面终端);pts/0(pseudo-terminal slave的缩写,虚拟终端:图形终端下的终端应用程序)
 +
 +
== 命令的语法、man、ls ==
 +
命令的格式
 +
  PS $/# cmd(命令) option(选项) argument(参数)
 +
  PS: prompt symbol,提示符,通常包括用户名、机器名、当前工作目录等信息,可以通过修改PS1环境变量来设置
 +
  # 表示root
 +
  $ 表示普通用户
 +
  命令,对应一个标志符,表示做什么操作
 +
  选项:操作方式
 +
  参数:操作对象
 +
 +
默认参数的含义
 +
  默认的操作对象,类似于函数参数的默认值:double pow(double x, int y=2)
 +
  $ cd 默认切换到当前用户的家目录下
 +
  $ ls 默认看当前目录下的文件信息
 +
  $ su 默认切换为root
  
   1、uptime:系统启动的时间
+
man的用法     
   2、hostname:机器名
+
   man 3 printf:(synopsis 概要; description 描述)看在线文档
  3、who:显示当前登录的用户,以及用户从哪里登录进来的ctrl+alt+f7(登录终端)
+
   man ls
  4、users:目前有几个用户登录了这个系统
+
        LS(1)
   5、w:和who类似,同时可以显示每个用户在干啥
+
        Name
  6、whoami:写程序的时候会用到
+
        Synopsis
 +
            ls [option]... [file]...可以跟0个到n个选项或者文件)
 +
   man pwd
 +
           
  
== 命令的语法、man、ls ==
+
option:可以是长选项(--all)或者是短选项(-a),ls --all和ls -a实现的效果是一样的。
* 命令的格式
+
          
  定义:s/# cmd(命令)  option(选项) argument(参数)
+
 
  例子:cd:后面不加参数时,默认切换到当前用户的家目录下。
+
ls的用法
      1、命令:一个操作
+
          ls -d /home:看目录自身的信息
      2、选项:操作方式
 
      3、参数:操作对象
 
  例子:1、man 3 printf:(synopsis 用法; description 描述)看在线文档
 
          man ls :(LS(1): Name ; synopsis: ls [option]... [file]...可以跟0个到n个选项或者文件)
 
          man pwd:
 
            option:可以是长选项(--all)或者是短选项(-a),ls --all和ls -a实现的效果是一样的。
 
         4、ls -d /home:看目录自身的信息
 
 
           ls -a /home:
 
           ls -a /home:
 
           ls -c /home:
 
           ls -c /home:
第75行: 第106行:
 
             文件的时间:create创建时间;modify修改时间;acess访问时间
 
             文件的时间:create创建时间;modify修改时间;acess访问时间
 
           ls -al:
 
           ls -al:
 +
 +
== 上课问题讨论 ==
 +
 +
sudo su和su的区别
 +
  sudo的意思是,以root的权限做这件事,然后输入当前sudoer的密码,就可以工作
 +
  sudo su anotherUserName:以root的权限切换用户,输入自己的密码
 +
  su anotherUserName:切换用户,输入anotherUserName的密码
 +
  sudo su:切换为root,输入自己的密码(等价于:sudo su root)
 +
  su:切换为root,输入root的密码(等价于:su root)
 +
  如果一个用户是sudoer,那么通过输入自己的用户,就可以做任何事情,没有任何限制,包括切换为root、修改root密码等
 +
 +
2021.9.11
 +
ls的几个选项:
 +
      -i, --inode
 +
              print the index number of each file
 +
      -r, --reverse
 +
              reverse order while sorting
 +
      -R, --recursive
 +
              list subdirectories recursively
 +
rm的
 +
      -i (interactive)  prompt before every removal
 +
同一个字母表示的选项的含义,对于不同的命令是不同的
 +
 +
linux扩展文件属性:lsattr chattr(sudo权限下做)
 +
  在通常情况下,linux下文件具有的属性都是读写和执行;但这些属性属于高层次的文件属性,它和具体的文件文件系统无关。在文件系统这一层,文件同样也具有很多属性,chattr和lsattr指令就是设置和查看基于ext2/ext3文件系统的底层属性。(这段话包括后面的选项解释,都是别人的话,要改写一下)
 +
  +:在原有参数的基础上,追加参数
 +
  -:在原有参数基础上,移除参数
 +
  =:更新为指定参数
 +
  -a:设定只能想文件中添加数据,而不能删除。
 +
  -i:设定后,不能对文件进行删除写入改名等等操作
 +
  -R:递归处理
 +
  -V:显示执行过程
 +
 +
  sudo chattr +i x2
 +
  sudo chattr -i x2

2021年9月11日 (六) 04:40的最新版本

上节课内容回顾

文件目录结构(有标准规定)

 根目录 / 
 家目录 /home/username
 

增加或删除用户(必须通过root权限)

 useradd 低级(更底层)的命令
 adduser
 deluser
 sudo deluser zhli
 sudo adduser yli

sudo:以root的身份执行后面的命令

 执行时,需要输入这个用户的密码,注意不是root密码
 root密码和sudoer的密码都应该足够复杂,并且尽量定期更换。可以把密码写到纸上,放到安全的地方。
 在Ubuntu下,只有具有sudo权限的用户(称为sudoer)可以调用sudo。
 问题1:有sudo权限的话,可否修改root密码?
 问题2:系统管理时,哪些人可以知道root密码?哪些人可以是sudoer?
         sudoer很强大,和root是一样的,这也就是我在视频中讲到的篡权的意思,sudoer可以把root密码改掉,然后把其他sudoer权限都取消,这样系统就被劫持了。
         另外,sudoer文件有可能会破坏,我感觉还是有root密码比较安全
         sudo更安全。直接登录root,然后敲命令,比较危险,有可能会忘了自己是root。前面加一个sudo,会增加一点安全性,麻烦=安全
        系统管理员通常都通过sudo来管理,而不是直接用root。一个系统可以有多个管理员,即多个sudoer

上课中出现的权限问题:用户A可以随便访问用户B的所有文件?

  原因是:Ubuntu默认的权限设置就是这样的,/home/zhli的权限是drwxr-xr-x,那么others就可以进入目录(x)并读取内容(r)
  这样无法实现数据保密
  怎么改变这个默认行为呢?

su替换用户

  su yli:切换到yli这个用户下。
  su :若后面没有参数,默认切换到root账户下。
  exit:退出

绝对路径和相对路径

  绝对路径:以根目录开始的路径,表示从根目录开始到目标文件的路径
  相对路径:从当前目录(不是从根目录开始)到目标文件的路径
  相关命令
     ls;  ls -a;   
     pwd
     cd
     touch(创建一个文件;如果一个文件已经存在,就会更新文件的时间)
     date, cal, calendar, bc, echo
     uname -a
     lsb_release -a # 查看系统发行相关信息,LSB(linux standard base)

几个简单命令

 uptime:系统启动的时间
 hostname:机器名
 who:显示当前登录的用户,以及用户从哪里登录进来的ctrl+alt+f7(登录终端)
 users:目前有几个用户登录了这个系统
 w:和who类似,同时可以显示每个用户在干啥
 whoami:写程序的时候会用到
      tty7(teletypewriter缩写,7号终端,即图形界面终端);pts/0(pseudo-terminal slave的缩写,虚拟终端:图形终端下的终端应用程序)

命令的语法、man、ls

命令的格式

 PS $/# cmd(命令) option(选项) argument(参数)
 PS: prompt symbol,提示符,通常包括用户名、机器名、当前工作目录等信息,可以通过修改PS1环境变量来设置
 # 表示root
 $ 表示普通用户 
 命令,对应一个标志符,表示做什么操作
 选项:操作方式
 参数:操作对象

默认参数的含义

  默认的操作对象,类似于函数参数的默认值:double pow(double x, int y=2)
  $ cd 默认切换到当前用户的家目录下
  $ ls 默认看当前目录下的文件信息
  $ su 默认切换为root

man的用法

 man 3 printf:(synopsis 概要; description 描述)看在线文档
 man ls 
       LS(1)
       Name
       Synopsis
            ls [option]... [file]...可以跟0个到n个选项或者文件)
 man pwd
           

option:可以是长选项(--all)或者是短选项(-a),ls --all和ls -a实现的效果是一样的。


ls的用法

          ls -d /home:看目录自身的信息
          ls -a /home:
          ls -c /home:
          ls -l /home:长格式
             a、第一个字符d表示文件夹,-表示文件,接下来的连续三个owner的权限,然后三个是group的权限;最后三个是other的权限;
             b、24:硬链接数
             c、zhenghua:owner
             d、zhenghua:group
             e、4090:表示文件所占的物理空间,表示的是该目录自身所占内存的大小,不是该目录下所有文件相加所占的空间。
             f、mar 26 10:31 :时间信息
             g、zhenghua :文件的名字
         ls -r,--reverse /home:逆序
         ls -R /home:递归显示
         ls -S /home:
         ls --color=none /home:
         ls -h /home:
         ls -lh:大小信息
         ls -t /home:
            文件的时间:create创建时间;modify修改时间;acess访问时间
         ls -al:

上课问题讨论

sudo su和su的区别

  sudo的意思是,以root的权限做这件事,然后输入当前sudoer的密码,就可以工作
  sudo su anotherUserName:以root的权限切换用户,输入自己的密码
  su anotherUserName:切换用户,输入anotherUserName的密码
  sudo su:切换为root,输入自己的密码(等价于:sudo su root)
  su:切换为root,输入root的密码(等价于:su root)
  如果一个用户是sudoer,那么通过输入自己的用户,就可以做任何事情,没有任何限制,包括切换为root、修改root密码等

2021.9.11

ls的几个选项:
      -i, --inode
             print the index number of each file
      -r, --reverse
             reverse order while sorting
      -R, --recursive
             list subdirectories recursively
rm的
      -i (interactive)   prompt before every removal
同一个字母表示的选项的含义,对于不同的命令是不同的
linux扩展文件属性:lsattr chattr(sudo权限下做)
 在通常情况下,linux下文件具有的属性都是读写和执行;但这些属性属于高层次的文件属性,它和具体的文件文件系统无关。在文件系统这一层,文件同样也具有很多属性,chattr和lsattr指令就是设置和查看基于ext2/ext3文件系统的底层属性。(这段话包括后面的选项解释,都是别人的话,要改写一下)
 +:在原有参数的基础上,追加参数 
 -:在原有参数基础上,移除参数 
 =:更新为指定参数 
 -a:设定只能想文件中添加数据,而不能删除。 
 -i:设定后,不能对文件进行删除写入改名等等操作 
 -R:递归处理 
 -V:显示执行过程
  sudo chattr +i x2
  sudo chattr -i x2