linux 一般是服务端的操作系统
企业一般使用 centos(免费的redhat)/redhat
个人 ubutus
周边软件 远程编写终端配置文件 XShell/SecureCRT
远程ftp 本地文件上传到 Linux站点
远程文本编辑工具 TextWrangler /notePad++
主机名和ip地址建立对应的映射关系
好处:ip地址变更,使用到主机名的代码不需要修改,只需要修改新的ip地址和主机名对应关系
linux系统目录结构和说明
/
bin boot dev etc home lib
bin:存放二进制可执行文件,如命令、执行脚本
sbin:super_user bin :只用root用户有权限访问
etc: etcetera 存放系统配置文件
usr: unix shared resources 存放共享的系统资源 window系统的programs
home: 存放用户文件
root: 存放的超级管理员
dev: 存放设备文件
lib: 存放jar包 文件系统运行的共享库或者内核模块 相当于Windows中system32下的dll文件
mnt:mount 外挂设备
boot: 是存放系统引导文件,系统内核或者开关机文件
tmp: temporary 存放各种临时文件,重启会删除清空,重要的信息不要放在此目录下
var: variable 存放系统在运行过程的一些用户数据,该目录的磁盘空间多点,下放log日志文件
常用指令/命令
ls: list 显示当前目录下的内容
ls -l: 显示当前目录下的内容,以列表的形式显示
ls -lh: 显示当前目录下的内容,以列表的形式显示,大小代单位的
ls -a: 显示当前目录下的内容,以列表的形式显示,包括隐藏文件
ls -la:组合使用,显示隐藏文件和显示文件
ls -lt: 按照时间降序排序的文件
未知命令 --help: 显示未知命令的帮助文档
man 未知命令:显示未知命令的帮助文档
pwd:print working directory 查看当前目录
clear: 清屏 快捷键:ctrl+l
cd:change directory 切换目录
cd ..:返回上一目录
/home/hadoop :第一个/表示根目录,其他/表示分割意思
.. :表示返回上层目录
. :表示仍然是当前目录
mkdir : 创建目录
mkdir -p folder1/folder2:创建 补:-p-->表示 parent 父级要求存在,若不存在就新建
touch: 创建一个文件
cp oldfile newfile :复制出新文件
cp -r olderfolder newfolder :递归复制目录
mv:move 重命名 或者移动位置
rm: remove 删除文件
rm -r :删除目录
cat: 查看文件内容
echo 内容1 >a.txt : 将内容1写入a.txt
echo 内容2 >> a.txt : 将内容2 追加到a.txt
ln a.txt b: a 连接到 b (link)本质是复制出新文件(硬链接)
作用:数据备份、b链接文件修改,a被链接文件同步修改,便于一个场景:a在目录下的层次太深,不方便查找。
ln -s a.txt b: 快捷方式(软连接)
wc: word count 统计文本的行数、字数、字节数
-m 字节数
-w 字数
-l 行数
find: find . -name'a*' 模糊查询文件名
grep 文本内容 文件名 :在文件中搜索指定文本内容
free :显示当前内存和交换空间的使用情况
df: 显示文件系统磁盘空间的使用情况
du: 显示指定的文件/目录已使用的磁盘情况
-h 文件大小以K/M/G等为单位显示
-s 只显示当前文件目录占用磁盘的大小
-sh 配合使用文件
top: 显示当前系统中消耗资源最多的进程
ps: 显示瞬间的进程情况
-e 显示所有进程
-f 全格式
top+ps+grep的组合使用:
先通过top获得进程ID、名称、然后再通过
ps -ef|grep xxx
kill :杀死一个进程
Kill pid
kill -9 pid 强制杀死
ifconfig : 查询ip 网卡 网络
ping :测试网卡的连通性 ctrl+c 表示终止ping
gedit 文本编辑器
vim :文本编辑器 ,缺点:只能进行命令操作,没有菜单 vim 是vi的升级版 支持windows
一般模式:初始界面 ,退出一般模式::wq 补:注意前面的 :表示进入底行模式 w是保存 q是退出
插入模式:i ,退出插入模式:esc键
底行模式:一般模式 按: 进入底层模式
i: 表示在光标前插入
:set nu :表示显示行号 1 2 3......
:set nonu: 表示取消显示行号 1 2 3....
dd : 在一般模式下,删除光标所在行
:wq 表示保存退出
:q! 表示不保存强行退出
其中zxvf含义分别如下
z: gzip 压缩格式
x: extract 解压
v: verbose 详细信息
f: file(file=archive档案) 文件
tar target 目标
tar -cvf log.tar *.log 把以log结尾的文件打成.gz的文件,仅仅打包不压缩
gzip log.tar 用gzip进行压缩 gzip -dv log.tar.gz 进行解压
bzip2 -z log.tar 用bzip2 进行压缩 bzip2 -d 解压
常用组合如下
tar -zcvf log.tar.gz *.log 使用gzip进行压缩,
tar -jcvf log.tar.bz2 *.log 使用bzip2 进行压缩
tar -zxvf log.tar.gz 进行解压 x 是extract 解压的意思
tar -jxvf filename.tar.bz2 对bzip2格式的 进行解压
用户 用户组 权限管理 如何
linux 是多用户同时登陆的操作系统,根据账户来区分每个用户的文件、进程、任务
和工作环境
linux如何保证多个用户对同一个文件进行操作时 有不同的权限控制?
linux 使用user和group来控制使用者对文件的访问权限
不同用户使用不同账户密码进行登录
每个文件都有owner ,每个owner都归属于某个group
每个文件都有自己的owner和group
用户:
1 每个用户都有一个userId ,是唯一性的标识符
2 user是存储在 /etc/passwd
root:x:0:0:root: /root:/bin/bash
root 登录linux的用户名
x 该用户是需要密码登录 ,空表示不需要
0 userid 0-499 是系统预留的,新增用户是从500开始
0 表示组的id
root 是账户的描述信息
/root 该路径的home路径
/bin/bash 登录后先执行的脚本
3 /etc/shadow 存储的是用户的密码信息
4 所有用户都有对应的home目录
root:/root
xxxx: /home/xxxx
5 root 是超级管理员用户,具有非常高的权限
用户组
1 每个用户都属于一个group
2 group 存在 /etc/group
root :x:0:
root :组的名称
x:组的密码
0 该组的id
3 系统会给每个用户关联一个和同名的group;同时每个用户可以对应多个组
用户/组管理
useradd zhangshan 添加用户
[root@liuxName ]# su - zhangshan 表示root用户切换到zhangshan用户
passwd zhangshan 在root用户下 对zhangshan进行密码的设置
usermod -l new_name old_name 修改用户名
exit 退出用户
userdel -r zhangshan 删除用户
groupadd g1 添加新组
groupmod -n newg1 g1 修改新组名
groupdel newg1 删除组
权限管理
r read 读
w write 写
x execute 执行
- rwx rwx rwx
- 表示类型: -表示文件 d是目录 l是连接
rwx 表示文件所属用户owner权限
rwx 表示所属组权限
rwx 其他用户权限
chmod 全写:change mode 修改权限命令
字符表达法
chmod [-R] mode file
mode 有哪些呢
who operator permission
u(owner) + r
g(group) - w
o(others) = x
a(ugo)
去掉owner的写权限 chmod u-w folder
为group添加写权限 chmod g+w folder
为owner和group添加写权限 chmod ug+w folder
为ugo去掉执行权限 chmod ugo-x folder
为ugo添加执行权限 chmod a+x folder
只有写权限清除其他 chmod o=w folder
清除所有权限 chmod a= folder
通过递归,给文件夹下的所有文件都添加rwx权限
chmod -R a+rwx folder
数字表示法 r4 w2 x1 无权限0
owner rwx 4+2+1=7
group r-x 4+0+1=5
others r-- 4+0+0=4
rwxr-xr-- 为754