Linux简介
Linux安装
Linux目录
Linux命令
Linux权限
学习Linux的目的:
不是让你去精通Linux
而是掌握一些java开发工程师所具备的Linux操作技能。
一、Linux简介
1、Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和
多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix
以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
2、 Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但
它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台
式计算机、大型机和超级计算机。
3、 严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且
使用GNU工程各种工具和数据库的操作系统。https://www.kernel.org/
4、常见发行版
红帽企业版:RedHat Enterprise Linux(RHEL),红帽桌面版Fedora
Centos社区发行版:源自RedHat企业版,相比少了一些收费的应用软件
Ubuntu:桌面版、服务器版、移动版
麒麟kylin:
区别:1、社区版中不提供收费软件(比如jboss)
2、社区版不提供技术支持
二、Linux安装
1、VMware虚拟化软件
VMware公司出品了一套虚拟化软件,可以在物理机上用软件的方式模拟出计算机系统,并且虚拟出的计算机系统可以像一台真
实的机器一样,安装操作系统,软件等。
类似的产品还有Oracle出品的免费版虚拟机软件VirtualBox。
2、虚拟机的安装
3、centos系统的安装
4、网络配置
— 在VMware中修改网关 编辑-虚拟网络编辑器-更改设置-选择对应网卡-子网ip-NAT设置
—修改网络配置文件 /etc/sysconfig/network-scripts/ifcfg-ens33
—重启网络服务 service network restart
—解决 ifconfig 命令不存在, 因为centos7.2的mini版没有安装这个东东 yum -y install net-tools
—配置网络:
IPADDR:192.168.33.89
NETMASK=255.255.255.0
GATEWAY=192.168.33.1
DNS1=192.168.33.1
5、远程访问工具
三、Linux目录
/:根目录
整个文件系统,有一个顶层目录,称为根。
bin:存放一些可执行的程序、命令。
boot: 系统启动所需的一些文件。
dev:系统中的设备(硬件在linux中通过“文件”来标识)
etc:存放系统、软件的配置文件
home:普通用户目录的主目录,以用户名命名。home/fred
lib:系统库目录(32位)
lib64: 系统库目录(64位)
media:媒体
mnt:挂载外部存储设备的文件目录
opt
proc
root:root用户的主目录
run
sbin:系统的可执行命令
srv
sys
test
tmp:系统临时目录
usr:共享资源目录(多个用户可以共享该目录中的程序)
var
四、Linux命令
ls命令:
ls /:查看根目录
ls -l: 显示详细信息
ls -lh:显示跟符合人类查看方式
ls -a:显示隐藏文件
目录切换:
pwd:查看当前所在目录
cd:切换目录
cd ..:退回到上一级目录cat
创建文件夹:
mkdir aaa 相对路径写法
mkdir /bbb 绝对路径写法
mkdir -p aaa/bbb/ccc 级联创建目录
rm:删除目录
rm -r:递归删除
rm -rf:递归删除,不提示
查看:
touch:创建空文件
cat:查看文件内容
>:重定向,把一个命令的执行结果,重定向到一个文件中去,屏幕上不会再显示结果
例如:ls > aaa.txt 重定向,把ls的结果作为字符串写入、覆盖到aaa.txt文件中
ls >> aaa.txt 重定向,把ls的结果作为字符串追加到aaa.txt文件中
echo:输出到控制台
$:作为变量名前缀
[root@localhost ~]# echo username
username
[root@localhost ~]# echo $username
fred
命令文件运行时的路径寻找机制
1、查找可执行的命令所在的路径:
which ls
使用shell编写一个程序执行演示。
环境变量的问题
/etc/profile
编辑:
vi:编辑文件
-i:编辑模式
-o:编辑模式(直接到下一行)
-w:保存
-q:退出
esc:退出编辑
快捷键:(非编辑模式下)
a:在光标后一位开始插入
A:在该行的最后插入
I:在该行的最前插入
yy:复制整行
3yy:复制三行
p:粘贴
gg:直接跳到文件首行
G:直接跳到文件的末行
dd:删除一行
3dd:删除三行
/:搜索内容,n匹配下一个
u:undo(撤销)
ctrl+r:redo(执行之前撤销的)
:set nu:设置行号
:set nonu:设置不显示行号
:q! :强制不保存退出
fg 程序编号:切换后台挂起程序
jobs:查看后台挂起的程序
ctrl+z:将程序挂起
拷贝:
cp:拷贝 cp a.txt b.txt
mv:移动/改名 mv a.txt aa.txt
rm:删除 -f -rf
五、Linux权限
1、添加用户
useradd fred
passwd 1234
-rwx rwx rwx
drwx rwx rwx
776表示什么权限?rwxrwxrwrwx 111 7
rw- 110 6
r-- 100 4
d r-x,r-x,—. 3 root root 212 10月 8 22:33 root
2、linux文件权限的描述格式
d rwx rwx rwx
d:标识节点类型(d:文件夹 -:文件 |:链接)
r:可读
w:可写
x:可执行
第一组rwx:表示这个文件的拥有者对它的权限
第二组rwx:表示这个文件的所属组用户对它的权限
第三组rwx:表示这个文件的其他用户(除以上两种)对它的权限
使用二进制表示权限:例如-rw-rw-r–二进制表示为110,110,100,十进制表示为664
补充:
r:对文件来说,是可读取内容;对文件夹来说,是可以ls
w:对文件来说,是可修改文件的内容;对文件夹来说,是可以在其中创建或者删除子节点
x:对文件来说,是能否运行这个文件;对文件夹来说,是能否cd进入这个目录
作业:766代表什么权限?
添加权限:chmod +r 1.txt
删除权限:chmod -r 1.txt
作业:A、在d1文件夹中有一个文件f1.txt,其中d1的权限为774,f1的权限问554。
B、在d1文件夹中有一个文件f1.txt,其中d1的权限为554,f1的权限问774。
问:哪种情况可以删除f1.txt。
六、用户管理
1、增加用户
useradd 用户名 —增加用户
passwd 用户名 —给用户设置密码
userdel -r 用户名 —删除用户 加一个-r表示把用户及用户的主目录都删除
exit —退出会话
作业:增加一个用户jack,并测试登录;再把jack用户及其主目录删除。
2、增加用户组
groupadd 组名 —增加组
usermod -g 组名 用户名 —将用户添加到组中
usermod -G 组名1,组名2 用户名 —将用户添加到多个组中
gpasswd -d 用户名 组名 —将用户从组中删除 例如:gpasswd -d jack root | gpasswd -d jack sys
3、查看所属组
groups —查看当前用户所属组
groups jack —查看指定用户所属组
4、su和sudo
su:身份切换 su username 输入密码(root切换不需要输入密码)
sudo:让普通用户具备root的权限(需要配置 /etc/sudoers)
了解完su和sudo,是不是发现sudo有太多的优点了。su方式切换是须要输入目标用户的password。而sudo仅仅须要
输入自己的password,所以sudo能够保护目标用户的password不外流的。当帮root管理系统的时候,su是直接将
root全部权利交给用户。而sudo能够更好分工,仅仅要配置好/etc/sudoers,这样sudo能够保护系统更安全,并且分
工明白,有条不紊。