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等,它们也都各自为相关的进程和文件所需要。

原文地址:https://www.cnblogs.com/lukelook/p/11144710.html