关于Linux操作系统学习的笔记

目录

一、环境搭建

安装CentOs7(在本地安装)

下载vmware

官网地址:https://www.vmware.com/cn.html

下载CentOS7

官网地址:https://www.centos.org/

二、基本操作

1.开机与关机

关机

命令:shutdown

同步数据:sync

关于Linux操作系统学习的笔记

重启:reboot

2.目录结构

关于Linux操作系统学习的笔记

各目录功能如下:

目录
/bin(不要动) 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。
/etc 存放系统管理和配置文件
/home 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
/usr 用于存放系统应用程序,比较重要的目录/usr/local 本地系统管理员软件安装目录(安装系统级的应用)。这是最庞大的目录,要用到的应用程序和文件几乎都在这个目录。/usr/x11r6 存放x window的目录/usr/bin 众多的应用程序 /usr/sbin 超级用户的一些管理程序 /usr/doc Linux文档 /usr/include linux下开发和编译应用程序所需要的头文件 /usr/lib 常用的动态链接库和软件包的配置文件 /usr/man 帮助文档 /usr/src 源代码,linux内核的源代码就放在/usr/src/linux里 /usr/local/bin 本地增加的命令 /usr/local/lib 本地增加的库
/opt 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。
/proc 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/root 超级用户(系统管理员)的主目录(特权阶级o
/sbin 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。
/dev 用于存放设备文件。
/mnt 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
/boot(不要动) 存放用于系统引导时使用的各种文件
/lib 存放跟文件系统中的程序运行所需要的共享库及内核模块。共享库又叫动态链接共享库,作用类似windows里的.dll文件,存放了根文件系统程序运行所需的共享文件。
/tmp 用于存放各种临时文件,是公用的临时文件存储点。
/var 用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等。
/lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里

三、常用命令

目录管理

绝对路径与相对路径

绝对路径:即全称

相对路径:相对打开

cd

切换目录:cd 目录名

当前目录:./

返回上一级:cd ..

关于Linux操作系统学习的笔记

ls

列出目录:ls

清空命令:clear

-a :即all,查看全部文件,包含隐藏文件

-l :列出所有文件,包含文件属性和权限,无隐藏文件

关于Linux操作系统学习的笔记

具体实现:

关于Linux操作系统学习的笔记

mkdir

创建文件夹:mkdir 文件夹

关于Linux操作系统学习的笔记

递归创建:mkdir -p 文件夹/文件夹/...

关于Linux操作系统学习的笔记

rmdir

删除目录:rmdir 文件夹

仅能删除空目录,如果需要,可以使用递归删除

关于Linux操作系统学习的笔记

cp

复制目录:cp 文件 位置

关于Linux操作系统学习的笔记

rm

注意:此命令比较危险,需谨慎使用

-f 忽略不存在的文件,即强制删除

-r 递归删除目录

-i 互动,即询问是否删除

危险命令:

rm -rf / #删除系统中的所有文件,删库跑路

关于Linux操作系统学习的笔记

mv

移动文件 :mv 文件 位置

-f 强制移动

-u 只替换已更新的文件

[root@localhost admin]# cd ..
[root@localhost home]# ls
admin  test.sh
[root@localhost home]# mv test.sh admin			#移动文件
[root@localhost home]# ls
admin
[root@localhost home]# cd admin
[root@localhost admin]# ls
test.sh  公共  模板  视频  图片  文档  下载  音乐  桌面

额外作用:

关于Linux操作系统学习的笔记

基本属性

ls

查看文件属性:ls

关于Linux操作系统学习的笔记

其中:

关于Linux操作系统学习的笔记

第一个字母代表文件类型:

[d] 代表目录

[-] 代表文件

[l] 代表链接文档

[b] 为接口设备

接下来的字符以3个为一组,且均为[rwx]的参数组合

[r]代表可读(read),[w]代表写(write),[x]代表可执行(execute)

关于Linux操作系统学习的笔记

第一组为主权限,即root用户

如:rwx

第二组为组权限,即游客用户

如:-xr

第三组为其他用户权限

如:-x

关于Linux操作系统学习的笔记

chgrp

更改文件属组:chgrp 属性 文件

关于Linux操作系统学习的笔记

chown

更改属主:chown

关于Linux操作系统学习的笔记

chmod(需掌握)

更改文件权限:chmod

数字标识:

r:4 w:2 x:1

例如:

(rwx)(rwx)(rwx):4+2+1=7 => chmod 777 => 赋予最高权限

(rw-)(rw-)(rw-):4+2=6 => chmod 666

(rwx)(-rw)(--x):7,6,1 =>chmod 761

关于Linux操作系统学习的笔记

文件内容查看

关于Linux操作系统学习的笔记

[root@localhost network-scripts]# ping www.baidu.com	#ping
PING www.a.shifen.com (112.80.248.75) 56(84) bytes of data.
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=1 ttl=128 time=30.8 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=2 ttl=128 time=30.5 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=3 ttl=128 time=30.4 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=4 ttl=128 time=32.5 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=5 ttl=128 time=30.6 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=6 ttl=128 time=30.4 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=7 ttl=128 time=30.5 ms
^Z
[1]+  已停止               ping www.baidu.com
[root@localhost network-scripts]# ifconfig	#查看网络配置
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.132.132  netmask 255.255.255.0  broadcast 192.168.132.255
        inet6 fe80::39d0:133e:3579:df42  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:4c:d1:b1  txqueuelen 1000  (Ethernet)
        RX packets 884  bytes 72358 (70.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 709  bytes 72580 (70.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 64  bytes 5568 (5.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 64  bytes 5568 (5.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:a0:a3:cc  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

cat

正序读取文件内容:cat 文件名

读取配置文件

关于Linux操作系统学习的笔记

tac

倒序读取文件内容:tac 文件名

关于Linux操作系统学习的笔记

nl(常用)

读代码时希望显示行数:nl 文件

关于Linux操作系统学习的笔记

more

翻页读取:more 文件

推荐使用less,它可以向上翻页(空格翻页,enter下一行,上下键代表翻动页面,按键q退出,向上查找字符串/ 字符,向下查找? 字符,n下一个,N上一个)

只看头几行:head -n 行数 文件

只看尾几行:tail -n 行数 文件

vim编辑器

键盘图:

关于Linux操作系统学习的笔记

vim三种模式:

命令模式、输入模式、底线命令模式

vim 文件名创建文件 => 键入[i]进入编辑模式 => [esc]退出编辑模式 => 键入[:]进入底线命令模式=>[w]保存+[q]退出

set nu 显示行号

四、管理模块

账户管理

添加用户:useradd -选项 用户名

-m:自动创建用户主目录

-G:分配用户组

[root@localhost home]# useradd -m chunfeng		#创建用户主目录
[root@localhost home]# ls
admin  chunfeng

删除用户:userdel -r 用户名

修改用户:usermod 修改内容 用户

切换用户:su 用户名

关于Linux操作系统学习的笔记

修改主机名:hostname 名称

修改用户密码:passwd 用户名

冻结用户:passwd -l 用户名

用户组管理

添加用户组:groupadd

添加并指定id:groupadd -g id号 组名 如果未指定,id默认为自增

删除用户组:groupdel

修改用户组:groupmod -g id号 -n 名称

切换组:newgrp

查看用户组:cat /etc/passwd

查看密码:cat /etc/shadow

磁盘管理

列出磁盘使用率:df

-h 详细

关于Linux操作系统学习的笔记

检查当前磁盘使用率:du

-a 查看隐藏文件

-sm 简略信息

关于Linux操作系统学习的笔记

关于Linux操作系统学习的笔记

挂载:mount 外部设备 挂载目录

卸载:umount

-f 强制

进程管理

查看当前进程:ps

-a 显示所有进程

-u 显示当前用户的进程

-x 显示后台运行

常用命令ps -aux|grep 相关应用

关于Linux操作系统学习的笔记

记住一个命令即可:ps -xx|grep 进程名

ps -ef:可以查看父进程

pstree 进程树

-p 显示父id

-u 显示用户组

pstree -pu也常用

关于Linux操作系统学习的笔记

结束进程:kill id

强制结束进程:kill -9 id

五、案例

安装软件的三种方式:

rpm、解压缩安装、yum在线安装

jdk安装

1.下载jdk,建议在官网下载

2.安装jdk环境

注意:检测jdk环境java -version,rpm -qa|grep jdk

如果有的话,需要卸载rpm -e --nodeps jdk_1.8

卸载完以后即可安装

安装:rpm -ivh rpm包

3.配置环境变量

vim /etc/profile

添加此变量:(后面为jdk安装路径)

JAVA_HOME=/usr/java/jdk1.7		
CLASSPATH=%JAVA_HOME%/lib/;%JAVA_HOME%/jre/lib		
PATH=$JAVA_HOME/bin;$JAVA_HOME/jre/bin		
export PATH JAVA_HOME CLASSPATH		

4.生效环境配置

source /etc/profile

上一篇:--删除测试os_key


下一篇:shell实践--简单抓取网页内容