• linux基础学习


    1.查看IP

    查看IP是ifconfig(ifconfig -a是显示全部接口)

    或者 ip addr show

    clear命令: 用于清除屏幕

    扩展

     2.目录打访问(cd只能进入目录,进入文件会报错)

    根目录下 : ls /  

    其他目录: ls /home -l

    目录进一级:cd  /dev  

    进入多级目录 cd /home/look

    退一级目录: cd ../

    退多级目录: cd ../../

    直接回 根目录 cd /   即:/

    回到自己的家目录  cd ~ 即:/home/look 或者什么也不跟直接 cd  或者cd ~look

    显示目前的目录 pwd

    扩展 1: 

    linux 文件颜色的含义,蓝色代表目录,绿色代表可执行文件,红色表示压缩文件,浅蓝色表示链接文件,灰色表示其他文件,红色闪烁表示链接的文件有问题了,黄色表示设备文件。
    蓝色文件----------目。录
    白色文件----------一般性文件,如文本文件,配置文件,源码文件等。
    浅蓝色文件----------链接文件,主要是使用ln命令建立的文件。
    绿色文件------------可执行文件,可执行的程序。
    红色文件------------压缩文件或者包文件。
    绿底---------------如果others有write权限的话,ls会以绿底蓝字来显示

    扩展2

    相对路径和绝对路径:

      1. 绝对路径
        
        在Linux中,绝对路径是从/(也被称为根目录)开始的,比如/usr、/etc/X11.如果一个路径是从/开始的,它一定是绝对路径,这样就好理解了。
    2.相对路径
    路径的写法不是由根目录 / 写起的,例如 首先用户进入到 /home,然后再进入到test,执行的命令为 “#cd /home,#cd test”。
    此时用户所在的路径为 /home/test。第一个cd命令后紧跟/home,前面有斜杠;而第二个cd命令后紧跟test,前面没有斜杠。这个test是相对于/home目录来讲的,所以称为相对路径。 在Linux文件系统中,有两个特殊的符号也可以表示目录: “.”表示当前目录 “..”表示当前目录的上一级目录 命令cd后面只能是目录名,如果跟了文件名,就会报错
     

    3.显示一个文件的属性以及文件所属的用户和组

    ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组

    [root@www /]# ls -l
    total 64
    dr-xr-xr-x   2 root root 4096 Dec 14  2012 bin
    dr-xr-xr-x   4 root root 4096 Apr 19  2012 boot

    ls /home -l 或者 ll /home

    第一个字符代表这个文件是目录、文件或链接文件等等。

    d:目录

    -:文件

    / : l链接

    b:则表示为装置文件里面的可供储存的接口设备(可随机存取装置)

    c:则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)

    从左至右用0-9这些数字来表示。

    第0位确定文件类型,第1-3位确定属主(该文件的所有者)拥有该文件的权限。

    第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。

     新创建的目录默认权限为 rwxrwxr-x  新建文件的默认权限为 rw-rw-r--

    更改文件属性

    1、chgrp:更改文件属组

    chgrp [-R] 属组名 文件名

    参数选项

    • -R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
    • -R必须为大写,小写无效
    • chgrp -R look test1

    2、chown:更改文件属主,也可以同时更改文件属组

    语法:

    chown [–R] 属主名 文件名
    chown [-R] 属主名:属组名 文件名
    chown -R look:look test1

    3、chmod:更改文件9个属性 新创建的目录默认权限为 rwxrwxr-x  新建文件的默认权限为 rw-rw-r--

    语法 read r 4  write w 2  exe x1

    chmod [-R] xyz 文件或目录
    chmod -R 744 test1

    others三种身份啦! 那么我们就可以藉由u, g, o来代表三种身份的权限!

    此外, a 则代表 all 亦即全部的身份!那么读写的权限就可以写成r, w, x!也就是可以使用底下的方式来看:

     (1)user (2)group (3)others

    chmod u
    g
    o
    a
    +(加入)
    -(除去)
    =(设定)
    r
    w
    x
    文件或目录

    如果我们需要将文件权限设置为 -rwxr-xr-- ,可以使用 chmod u=rwx,g=rx,o=r 文件名 来设定:

     
    chmod -R  a+w test1 //a可以省略不写
    chmod -R  a-x test1
    chmod -R o=wrx,g=wx,u=wx test1

    4.Linux 文件与目录管理 

    处理目录的常用命令

    接下来我们就来看几个常见的处理目录的命令吧:

    • ls: 列出目录
    • cd:切换目录
    • pwd:显示目前的目录
    • mkdir:创建一个新的目录
    • rmdir:删除一个空的目录
    • cp: 复制文件或目录
    • rm: 移除文件或目录
    • mv: 移动文件与目录、文件重命名

    你可以使用 man [命令] 来查看各个命令的使用文档,如 :man cp。

    #使用 mkdir 命令创建w3cschool.cn目录
    [root@www ~]# mkdir w3cschool.cn
    
    #使用绝对路径切换到w3cschool.cn目录
    [root@www ~]# cd /root/w3cschool.cn/
    
    #使用相对路径切换到w3cschool.cn目录
    [root@www ~]# cd ./w3cschool.cn/
    
    # 表示回到自己的家目录,亦即是 /root 这个目录
    [root@www w3cschool.cn]# cd ~
    
    # 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思;
    [root@www ~]# cd ..

    pwd (显示目前所在的目录)

    pwd是Print Working Directory的缩写,也就是显示目前所在目录的命令。

    mkdir (创建新目录)

    如果想要创建新的目录的话,那么就使用mkdir (make directory)吧

    mkdir [-mp] 目录名称

    选项与参数:

    • -m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
    • -p :帮助你直接将所需要的目录(包含上一级目录)递回创建起来!

    加了这个 -p 的选项,可以自行帮你创建多层目录!

    mkdi -m 771 -p test1/test2/test3

    rmdir (删除空的目录)

    语法:

     rmdir [-p] 目录名称
    

    选项与参数:

    • -p :连同上一级『空的』目录也一起删除

      cp (复制文件或目录)

      cp 即拷贝文件和目录。

      语法:

      [root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
      [root@www ~]# cp [options] source1 source2 source3 .... directory

      选项与参数:

      • -a :相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
      • -d :若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
      • -f :为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
      • -i :若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
      • -l :进行硬式连结(hard link)的连结档创建,而非复制文件本身;
      • -p :连同文件的属性一起复制过去,而非使用默认属性(备份常用);
      • -r :递回持续复制,用於目录的复制行为;(常用)
      • -s :复制成为符号连结档 (symbolic link),亦即『捷径』文件;
      • -u :若 destination 比 source 旧才升级 destination !

      用root身份,将家目录下的 .bashrc 复制到 /tmp 下,并更名为 bashr

    • cd you.txt -ai ../my

      rm (移除文件或目录)

      语法:

       rm [-fir] 文件或目录

      选项与参数:

      • -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
      • -i :互动模式,在删除前会询问使用者是否动作
      • -r :递回删除啊!最常用在目录的删除了!这是非常危险的选项!!!
        rm -i you.txt

    mv (移动文件与目录,或修改名称)

    语法:

    [root@www ~]# mv [-fiu] source destination
    [root@www ~]# mv [options] source1 source2 source3 .... directory

    选项与参数:

    • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
    • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
    • -u :若目标文件已经存在,且 source 比较新,才会升级 (update)

    修改名称

    mv -i you.txt my.txt

    移动,相当于粘贴

    mv -i config.txt ../you

     5.如何如编辑文件

    1.进入文件(记得 vi 后面一定要加文件名,不管该文件存在与否!)

    vi you.txt

    2.按下 i 进入输入模式,开始编辑文字

    在命令模式之中,只要按下 i, o, a 等字符就可以进入输入模式了!

    在输入模式当中,你可以发现在左下角状态栏中会出现 –INSERT- 的字样,那就是可以输入任意字符的提示。

    这个时候,键盘上除了 [Esc] 这个按键之外,其他的按键都可以视作为一般的输入按钮了,所以你可以进行任何的编辑。

    按下 [ESC] 按钮回到命令模式

    好了,假设我已经按照上面的样式给他编辑完毕了,那么应该要如何退出呢?是的!没错!就是给他按下 [Esc] 这个按钮即可!马上你就会发现画面左下角的 – INSERT – 不见了!

    在命令模式中按下 :wq 储存后离开 vi

    OK,我们要存档了,存盘并离开的指令很简单,输入『:wq』即可保存离开!

    Linux 用户和用户组管理

    一、Linux系统用户组的管理

    1、增加一个新的用户组使用groupadd命令。其格式如下:

    groupadd 选项 用户组
    

    可以使用的选项有:

    • -g GID 指定新用户组的组标识号(GID)。
    • -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

    实例1:

    # groupadd group1

    此命令向系统中增加了一个新组group1,新组的组标识号是在当前已有的最大组标识号的基础上加1。

    实例2:

    # groupadd -g 101 group2

    此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101。

    2、如果要删除一个已有的用户组,使用groupdel命令,其格式如下:

    groupdel 用户组
    

    例如:

    # groupdel group1

    3、修改用户组的属性使用groupmod命令。其语法如下:

    groupmod 选项 用户组
    

    常用的选项有:

    • -g GID 为用户组指定新的组标识号。
    • -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
    • -n新用户组 将用户组的名字改为新名字

    实例1:

    # groupmod -g 102 group2
    

    此命令将组group2的组标识号修改为102。

    实例2:

    # groupmod –g 10000 -n group3 group2
    

    此命令将组group2的标识号改为10000,组名修改为group3。

    此命令从系统中删除组group1。

    二、Linux系统用户账号的管理

    1、添加新的用户账号使用useradd命令,其语法如下:

    useradd 选项 用户名

    参数说明:

    • 选项:

      • -c comment 指定一段注释性描述。
      • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
      • -g 用户组 指定用户所属的用户组。
      • -G 用户组,用户组 指定用户所属的附加组。
      • -s Shell文件 指定用户的登录Shell。
      • -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
    • 用户名:

      指定新账号的登录名。
    • 实例1

      # useradd –d /usr/sam -m sam
      

      此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。

      实例2

      # useradd -s /bin/sh -g group –G adm,root gem
      

      此命令新建了一个用户gem,该用户的登录Shell是 /bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。

      这里可能新建组:#groupadd group及groupadd adm

      增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。

      Linux提供了集成的系统管理工具userconf,它可以用来对用户账号进行统一管理。

    2、删除帐号

    如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。

    删除一个已有的用户账号使用userdel命令,其格式如下:

    userdel 选项 用户名
    

    常用的选项是-r,它的作用是把用户的主目录一起删除。

    例如:

    # userdel -r sam

    此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。

    4、修改帐号

    修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。

    修改已有用户的信息使用usermod命令,其格式如下:

    usermod 选项 用户名
    

    常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。

    另外,有些系统可以使用选项:-l 新用户名

    这个选项指定一个新的账号,即将原来的用户名改为新的用户名。

    例如:

    # usermod -s /bin/ksh -d /home/z –g developer sam
    

    此命令将用户sam的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。

    5、用户口令的管理

    用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。

    指定和修改用户口令的Shell命令是passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:

    passwd 选项 用户名
    

    可使用的选项:

    • -l 锁定口令,即禁用账号。
    • -u 口令解锁。
    • -d 使账号无口令。
    • -f 强迫用户下次登录时修改口令。

    如果默认用户名,则修改当前用户的口令。

    例如,假设当前用户是sam,则下面的命令修改该用户自己的口令:

    $ passwd 
    Old password:****** 
    New password:******* 
    Re-enter new password:*******

    如果是超级用户,可以用下列形式指定任何用户的口令:

    # passwd sam 
    New password:******* 
    Re-enter new password:*******

    普通用户修改自己的口令时,passwd命令会先询问原口令,验证后再要求用户输入两遍新口令,如果两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时,就不需要知道原口令。

    为了系统安全起见,用户应该选择比较复杂的口令,例如最好使用8位长的口令,口令中包含有大写、小写字母和数字,并且应该与姓名、生日等不相同。

    为用户指定空口令时,执行下列形式的命令:

    # passwd -d sam

    此命令将用户sam的口令删除,这样用户sam下一次登录时,系统就不再询问口令。

    passwd命令还可以用-l(lock)选项锁定某一用户,使其不能登录,例如:

    # passwd -l sam

    6.伪用户和伪账户

    系统中有一类用户称为伪用户(psuedo users)。

    这些用户在/etc/passwd文件中也占有一条记录,但是不能登录,因为它们的登录Shell为空。它们的存在主要是方便系统管理,满足相应的系统进程对文件属主的要求。

    伪 用 户 含 义 
    bin 拥有可执行的用户命令文件 
    sys 拥有系统文件 
    adm 拥有帐户文件 
    uucp UUCP使用 
    lp lp或lpd子系统使用 
    nobody NFS使用

    1、除了上面列出的伪用户外,还有许多标准的伪用户,例如:audit, cron, mail, usenet等,它们也都各自为相关的进程和文件所需要。

  • 相关阅读:
    springcloud2.0 添加配置中心遇到的坑
    redis 字符串和集合操作
    Linux
    流畅的python 符合python风格的对象
    流畅的python 对象引用 可变性和垃圾回收
    流畅的python 闭包
    流畅的python 使用一等函数实现设计模式
    互联网协议入门
    流畅的python 字典和集合
    流畅的python python数据模型
  • 原文地址:https://www.cnblogs.com/lukelook/p/11144710.html
Copyright © 2020-2023  润新知