Scott's world.

Linux基础知识

Word count: 2.9kReading time: 10 min
2019/06/25 Share

Linux 基础知识

Linux文件系统

常见目录说明

  • /bin: 存放二进制可执行文件(ls、cat、mkdir等),常用命令一般都在这里;
  • /etc: 存放系统管理和配置文件;
  • /home: 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示;
  • /usr : 用于存放系统应用程序;
  • /opt: 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里;
  • /proc: 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息;
  • /root: 超级用户(系统管理员)的主目录(特权阶级^o^);
  • /sbin: 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等;
  • /dev: 用于存放设备文件;
  • /mnt: 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统;
  • /boot: 存放用于系统引导时使用的各种文件;
  • /lib : 存放着和系统运行相关的库文件 ;
  • /tmp: 用于存放各种临时文件,是公用的临时文件存储点;
  • /var: 用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等;
  • /lost+found: 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里。

Linux常用基本命令

Linux命令大全:http://man.linuxde.net/

目录切换命令

  • cd usr: 切换到该目录下usr目录

  • cd ..(或cd../): 切换到上一层目录

  • cd /: 切换到系统根目录
  • cd ~: 切换到用户主目录
  • cd -: 切换到上一个操作所在目录

目录的操作命令

  1. mkdir 目录名称: 增加目录

  2. ls或者ll(ll是ls -l的别名,ll命令可以看到该目录下的所有目录和文件的详细信息):查看目录信息

  3. find 目录 参数: 寻找目录(查)

    示例:

    • 列出当前目录及子目录下所有文件和文件夹: find .
    • /home目录下查找以.txt结尾的文件名:find /home -name "*.txt"
    • 同上,但忽略大小写: find /home -iname "*.txt"
    • 当前目录及子目录下查找所有以.txt和.pdf结尾的文件:find . \( -name "*.txt" -o -name "*.pdf" \)find . -name "*.txt" -o -name "*.pdf"
  4. mv 目录名称 新目录名称: 修改目录的名称(改)

    注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作。mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。后面会介绍到mv命令的另一个用法。

  5. mv 目录名称 目录的新位置: 移动目录的位置—-剪切(改)

    注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作。另外mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。

  6. cp -r 目录名称 目录拷贝的目标位置: 拷贝目录(改),-r代表递归拷贝

    注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不 用写-r递归

  7. rm [-rf] 目录: 删除目录(删)

    注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了增强大家的记忆, 无论删除任何目录或文件,都直接使用rm -rf 目录/文件/压缩包

文件的操作命令(CRUD)

  1. touch 文件名称: 文件的创建(增)

  2. cat/more/less/tail 文件名称 文件的查看(查)

    • cat: 查看显示文件内容
    • more: 可以显示百分比,回车可以向下一行, 空格可以向下一页,q可以退出查看
    • less: 可以使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看
    • tail-10 : 查看文件的后10行,Ctrl+C结束

    注意:命令 tail -f 文件 可以对某个文件进行动态监控,例如tomcat的日志文件, 会随着程序的运行,日志会变化,可以使用tail -f catalina-2016-11-11.log 监控 文 件的变化

  3. vim 文件: 修改文件的内容(改)

    vim编辑器是Linux中的强大组件,是vi编辑器的加强版,vim编辑器的命令和快捷方式有很多,但此处不一一阐述,大家也无需研究的很透彻,使用vim编辑修改文件的方式基本会使用就可以了。

    在实际开发中,使用vim编辑器主要作用就是修改配置文件,下面是一般步骤:

    vim 文件———>进入文件——->命令模式———>按i进入编辑模式——->编辑文件 ———->按Esc进入底行模式——->输入:wq/q! (输入wq代表写入内容并退出,即保存;输入q!代表强制退出不保存。)

  4. rm -rf 文件: 删除文件(删)

    同目录删除:熟记 rm -rf 文件 即可

压缩文件的操作命令

1.打包并压缩文件:

Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。

而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。 命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件 其中:

z:调用gzip压缩命令进行压缩

c:打包文件

v:显示运行过程

f:指定文件名

比如:加入test目录下有三个文件分别是:aaa.txt bbb.txt ccc.txt,如果我们要打包test目录并指定压缩后的压缩包名称为test.tar.gz可以使用命令:tar -zcvf test.tar.gz aaa.txt bbb.txt ccc.txt或:tar -zcvf test.tar.gz /test/

2.解压压缩包:

命令:tar [-xvf] 压缩文件

其中:x:代表解压

示例:

1 将/test下的test.tar.gz解压到当前目录下可以使用命令:tar -xvf test.tar.gz

2 将/test下的test.tar.gz解压到根目录/usr下:tar -xvf xxx.tar.gz -C /usr(- C代表指定解压的位置)

Linux的权限命令

操作系统中,每个文件都拥有特定的权限,所属用户和所属组.

权限是操作系统用来限制资源访问的机制,在Linux中权限一般分为读(readable)、写(writable)和执行(excutable),分为三组。分别对应文件的属主(owner),属组(group)和其他用户(other),通过这样的机制来限制哪些用户、哪些组可以对特定的文件进行什么样的操作。通过 ls -l 命令我们可以 查看某个目录下的文件或目录的权限

示例:在随意某个目录下ls -l

第一列的内容的信息解释如下:

下面将详细讲解文件的类型、Linux中权限以及文件有所有者、所在组、其它组具体是什么?

文件的类型:

  • d: 代表目录
  • -: 代表文件
  • l: 代表软链接(可以认为是window中的快捷方式)

Linux中权限分为以下几种:

  • r:代表权限是可读,r也可以用数字4表示
  • w:代表权限是可写,w也可以用数字2表示
  • x:代表权限是可执行,x也可以用数字1表示

文件和目录权限的区别:

对于文件:

权限名称 可执行操作
r 可以使用cat查看文件的内容
w 可以修改文件的内容
x 可以将其运行为二进制文件

对于目录:

权限名称 可执行操作
r 可以查看目录下列表
w 可以创建和删除目录下文件
x 可以使用cd进入目录

我们再来看看如何修改文件/目录的权限。

修改文件/目录的权限的命令:chmod

示例:修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限, 其他用户只有读的权限

chmod u=rwx,g=rw,o=r aaa.txt

上述示例还可以使用数字表示:

chmod 764 aaa.txt

补充一个比较常用的东西:

假如我们装了一个zookeeper,我们每次开机到要求其自动启动该怎么办?

  1. 新建一个脚本zookeeper
  2. 为新建的脚本zookeeper添加可执行权限,命令是:chmod +x zookeeper
  3. 把zookeeper这个脚本添加到开机启动项里面,命令是:chkconfig --add zookeeper
  4. 如果想看看是否添加成功,命令是:chkconfig --list

Linux的用户管理

Linux用户管理相关命令:

  • useradd 选项 用户名:添加用户账号
  • userdel 选项 用户名:删除用户帐号
  • usermod 选项 用户名:修改帐号
  • passwd 用户名:更改或创建用户的密码
  • passwd -S 用户名 :显示用户账号密码信息
  • passwd -d 用户名: 清除用户密码

Linux系统用户组的管理

用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

Linux系统用户组的管理相关命令:

  • groupadd 选项 用户组 :增加一个新的用户组
  • groupdel 用户组:要删除一个已有的用户组
  • groupmod 选项 用户组 : 修改用户组的属性

其他常用命令

  • pwd: 显示当前所在位置

  • grep 要搜索的字符串 要搜索的文件 —color: 搜索命令,—color代表高亮显示

  • ps -ef/ps -aux: 这两个命令都是查看当前系统正在运行进程,两者的区别是展示格式不同。如果想要查看特定的进程可以使用这样的格式:ps aux|grep redis (查看包括redis字符串的进程),也可使用 pgrep redis -a

    注意:如果直接用ps((Process Status))命令,会显示所有进程的状态,通常结合grep命令查看某进程的状态。

  • kill -9 进程的pid: 杀死进程(-9 表示强制终止。)

    先用ps查找进程,然后用kill杀掉

  • 网络通信命令:

    • 查看当前系统的网卡信息:ifconfig
    • 查看与某台机器的连接情况:ping
    • 查看当前系统的端口使用:netstat -an
  • net-tools 和 iproute2 : net-tools起源于BSD的TCP/IP工具箱,后来成为老版本Linux内核中配置网络功能的工具。但自2001年起,Linux社区已经对其停止维护。同时,一些Linux发行版比如Arch Linux和CentOS/RHEL 7则已经完全抛弃了net-tools,只支持iproute2。linux ip命令类似于ifconfig,但功能更强大,旨在替代它。更多详情请阅读如何在Linux中使用IP命令和示例

  • shutdown: shutdown -h now: 指定现在立即关机;shutdown +5 "System will shutdown after 5 minutes":指定5分钟后关机,同时送出警告信息给登入用户。

  • reboot: reboot: 重开机。reboot -w: 做个重开机的模拟(只有纪录并不会真的重开机)。

CATALOG
  1. 1. Linux 基础知识
    1. 1.0.1. Linux文件系统
    2. 1.0.2. Linux常用基本命令
      1. 1.0.2.1. 目录切换命令
      2. 1.0.2.2. 目录的操作命令
      3. 1.0.2.3. 文件的操作命令(CRUD)
      4. 1.0.2.4. 压缩文件的操作命令
      5. 1.0.2.5. Linux的权限命令
      6. 1.0.2.6. Linux的用户管理
      7. 1.0.2.7. Linux系统用户组的管理
      8. 1.0.2.8. 其他常用命令