LINUX----(韩顺平版)
LINUX 笔记 2010-01-04 08:46:32 阅读468 评论1 字号:大中小 订阅
学习LINUX的两个方向:
LINUX系统管理员:
LINUX程序员:PC平台开发LINUX软件工程师,LINUX嵌入式开发(单片机,芯片)开发,
学完本书可以完全可以胜任LINUX系统管理员
开源,免费,稳定,安全,处理多并发得到业界认可
LINUX学习流程:
1、LINUX平台上的开发,包括VI,GCC,GDB,MAKE,JDK,TOMCAT,MYSQL,和LINUX基本操作
2、加厚C语言功能或者JAVA语言
3、学习UNIX环境高级编程
4、LINUX应用开发或才嵌入式开发
工具书(需要几本工具书,如新华字典)
思考----实践-----再思考----再实践
一周课程:
基础部分: LINUX基础知识,80个常用命令,LINUX分区/VI/权限..
实用部分:samba安装,LINUX网络环境配置,crontab使用,JDK,apache安装,LINUX下JAVA网络编程,SHELL初步介绍
三本书:鸟哥的私房菜,LINUX从入门到精通,LINUX内核完全剖解
LINUX实战第一天(共五天)
1、LINUX的初步介绍
2、L的第一次接触
3、L的用户管理
4、L的常用命令(80左右)
5、L下所有者,所在组和其它组的介绍
6、L下文件和目录权限机制
吉祥物:小企鹅(想起小时侯被企鹅咬了一口),芬生学生创建,微软反LINUX广告(四个变形动物),
L的特点:
1、FREE ,免费/开源,代码公开
2、支持多线程,能不能允许多个用户并发/多用户
3、安全性好,
4、对内存和文件管理优越
缺点:
操作相对困难,无界面操作 (容易的东西不值难)
NEC 在手机使用LINUX,03年,日本的一家公司,嵌入式开发
LINUX最小只需要4M (参看鸟哥)----- 导致嵌入式开发
可以很多东西看一看,但要学精一门。
历史
1960年,MIT,(麻省理工学院)30个人同时使用此主机(分时操作系统)!
1965年,MIT,GE,BELL实验室让分时系统由30个人操作变成到300个同时使用,分时操作,MULTIS计划(火星计划)
1969年,火星计划终于失败,出现了KEN TOMPSON,(同时也是C语言的设计者),开发了一个flile server system(文件服务系统)。在BELL实验室受到欢迎!加入
一个同事,RICHERS
1973年,他们开发出UNIX,开源,将源码共享,有几家公司就加入,分析. 出现了IBM aix (也是UNIX),SUN公司solaris (也是UNIX),HP公司 HP unix ,FREE
BAD,伯克利分校
各个操作系统只对自己公司的硬件提供支持
中国移动类似的大企业都是UNIX
同时由UNIX出现了minix操作系统,linus在91年的时侯,接触到minix操作系统,有一台pc 386,想将minix移值到pc 386年。94年,发布了1.0 版式,取名为
linux (第二种说法:linus is not unix)。没有桌面,只有字符界面。
LINUX 产生如下几家公司:
REDHAT(二次开发),S.U.SE整合了很多套件(欧洲),红旗linux,等
命令:
注意:操作过程中使用的VM虚拟一个LINUX操作系统。VM就是虚拟机,
root:超级管理员
LINUX输入密码不显示任何东西
进入桌面命令:startx
关机:shutdown -h now
重启:shutdown -r now /reboot
尽量少用root登录,用普通用户,“su -”来切换
注销 logout 快捷键ctrl+D
VI编辑器 开发者(世界第一骇客,成为了自由软件协会)
(丢手帕问题,JAVA编写 约瑟夫问题 要用链表,数组)
把VI当作WINDOW下的记事本
在VI下开发一个JAVA HELLO.java
开发步骤:
1、Vi HELLO.java 进入VI界面
2、输入“i”(小写),插入模式 左下角insert
3、编写一个JAVA public class HEllo{}
4、保存 esc键,进入命令模式
5、输入冒号:,保存退出wq,q!退出不保存
ls 查看当前目录的所有文件
详细列表: ls -l (详细信息) ls -al(显示隐藏文件,详细信息)
6、编译HELLO.java javac hello.java
7、运行 java hello (LINUX成功不显示)
如何在linux可以开发C程序或者C++(CPP)
1、vi hello.cpp
2、int main(){ printf ("hello!")}........
3、编辑 gcc (类似javac) 出现a.out
4、运行 ./a.out (./)
如果再重写一个cpp,会覆盖前面的a.out
解决方法: gcc -o my1 直接命名
VI编辑器的详细命令,查看书!
LINUX的文件目录 (第三讲 11分)
L的文件系统是采用级层式的树状目录结构,最上层的根目录:/:,
重要的文件目录(系统分配的目录);
ROOT:存放ROOT用户的相关文件
HOME :存放普通用户的相关文件(新建的用户)
BIN:存放常用命令的目录 cd 切换目录 ls dir
SBIN:存放要具有一定权限才可以使用的命令
MNT:默认挂载光驱和软驱的目录
ETC:存放配置相关的文件,mysql,tomcat,
USR:文件默认安装的文件夹,类似XP的program files
VAR:存放经常变化的数据,如网页,apache
BOOT:存放引导相关的文件
显示当前在哪个目录:pwd
用户管理
添加用户 useradd useradd xiaoming
设置密码 passwd passwd xiaoming 系统会提示输入新密码,两次输入
提示符#表示root用户 $ 表示普通用户
删除用户 userdel userdel xiaoming 只是删除用户名称 OR userdel -r xiaoming 删除用户以及用户主目录
init 运行级别(XP的安全模式与正常的启动模式)
0 关机
1 单用户
2 多用户状态没有网络服务
3 多用户有网络服务
4 系统未使用保留多用户
5 图形界面 startx
6 系统重启
常用的是3与5,要修改可改文件 /etc/inittab的
id:5:initdefault:这一行中的数字
su 切换用户,或者 logout
设为6后一直重启,如何更改:
在启用GRUB的时侯,按“e”,选中第二项,按“e”,进入修改界面,在最后输入空格+1,这个就是表示1号运行级别。只能用1来启动!,最后按b 。
用运行级别1 可以绕过ROOT密码,不需要密码就可以用,用passwd就OK
如何找回丢失密码
ls -a 显示隐匿文件 -l显示长列表格式
mkdir 建立目录
rmdir 删除空目录 如果有内容?
TAB 命令补全 相同的话,可以按两次
touch 建立空文件
cp cp -r dir1 dir2 递归复制
mv
rm 参数
rm -rf
ln
ln -s
more 分页显示不能前翻 crtl+pageup 空格向后翻;
less 分页显示,可以向前翻
grep在文本中查询 grep -n (显示行数)"关键字" 文件名称
| 管道命令 在LINUX和UNIX系统中,|就是管道命令,怎么理解?
把上一个命令的结果交给|的后面的命令处理
即上一个处理的结果就是下一个命令的输入
man 找男人 相当于DOS 下的HELP
find 搜索文件及目录
find /-name aaa.java /表示根目录,
find /root/ -name aaa.java 锁定范围
数据重定向 将操作流保存到另一个地方
grep -n (显示行数)"关键字" 文件名称 > kkk.bak >输出到
ls -l > a.txt
ls -al
>> 追加写
>覆盖写
LINUX 第二天 韩顺平PPT下载
关
搭建JAVA ee
L下可以用realplay吗
L可以用QQ吗
L分区的讲解
REAHAT安装演示
文件所有者,所在组,其它组
OWNER ; GROUP;OTHERS
可以更件文件的所有者,chown
也可以改变用户组 chgrp
案例:建两个组, policeman ,tufei
建三个用户:along ,panpan( 属于policeman),ashuai(属于tufei)
用along 这个用户登录到系统,创建一个文件,ls -1
现在添加组 只能在ROOT下操作
groupadd policeman
如何查看现有组:vi /etc/group cat /etc/group
查看所有用户信息:cat /etc/passwd
cat 只能看不能写,VI可以看可以改
创建用户,并添加到指定组
useradd -g 组名 用户名
useradd -g policeman along
UID用户ID,GID组ID
权限,详情查看NIAO哥的书:98
以-rw-r--r--为例
第一个“-” 表示文件,如果是目录就用“d”表示
第二--四:代表文件所有组对此文件所具有的权限
R可读 数字表示4 W可写 数字表示2 X可执行 数字表示1
文件最大权限666,目录最大权限777
第五--七:代表文件所在组对此文件所具有的权限
第八--十:代表其它组对此文件所具有的权限
如何修改文件的访问权限的问题:(panpan 无法进入along 主目录)
1、查看along 主目录的属性 drwx------
2、修改along主目录的属性(进入root或者文件夹所有者) chmod 777 along
命令: who am i 查看当前使用者是谁,
chmod 修改权限
任务:可以让PANPAN修改myTEST.java
chmod 664 myTEST.java
把一个用户移值到另一个组:
usermod -g 组名 用户名
usermod -g policeman ashuai
chown 用户名 文件名 修改文件所有者
chgrp 组名 文件名 修改文件所有组
JAVAEE开发环境搭建---JDK安装
1、把mypackage.ISO文件挂载到linux操作系统中去。在虚拟机做配置,用mount /mnt/cdrom
何为挂载: 需要哪个分区就挂载哪个分区,用完要umount(详细)
虚拟机---设置----硬件标签 cd-rom 使用iso镜象
虚拟机---设置----选项标签 共享windows里面的文件夹 也可以samba
mount /mnt/cdrom/
cd /mnt/cdrom/
不需要挂载:
umount /mnt/cdrom/
2、把安装文件COPY到/home
cp 文件 /home 名称很长,用tab 补全
一个操作系统可以用多个JDK
3、cd /home
4、安装 ./文件名
5、看看一个文件 /etc/profile [环境配置文件]
在VI中用#注释#####,注释掉以前的JAVA环境变量
6、配置刚才自己安装的JDK
JAVA_HOME=.....
PATH=$PATH(作用是不破坏以前的path):
CLASSPATH=.:/.......
export JAVA_HOME PATH CLASSPATH
export 引入
JAVAEE开发环境搭建---eclipse安装
1、同上,挂载
2、把安装文件COPY到/home
3、tar.gz 文件 tar -zxvf ???.tar.gz 安装即可
4、启动eclipse [必须先进入图形界面] ,打开终端,cd/home/ ./eclipse OK
进到终端:注销图形界面就OK
5、eclipse 只能开发java se ,要开发java ee,要装myeclipse 必须在图形界面下才能使用
6、同样copy 安装文件
7、./安装
JAVAEE开发环境搭建---tomcat安装
JAVA EE 的服务器有tomcat ,jboss,weblogic,websphere,resin... 这些都可以安装到linux下,下面安装tomcat:
1、COPY文件
2、tar -zxvf ???.tar.gz tomcat
./eclipse & (不加&,终端不能输入)
开发一个JSP文件 暂不记录 后期再学JAVA
安装娱乐软件
绿色表示可执行文件(LINUX文件所代表意义)
制作iSO文件 挂载,与LINUX沟通 winiso
umount /mnt/cdrom
安装QQ软件
作用:tencent QQ for LINUX
LINUX 分区
硬盘分区:基本分区和扩展分区 数目之和不大于四个.
一块硬盘上:主分区+扩展分区<=四
扩展分区不能直接使用,需要分成逻辑分区才能使用
逻辑分区数量不限
XP下----我的电话----管理----磁盘 查看
主分区就是操作系统所在的区,一块硬盘一个主分区,除非双系统,,如C盘
扩展分区:不能马上使用,只能分成逻辑分区才能用,一个扩展分区可以分成N多逻辑分区
假设有一块硬盘 ,先分一个主分区,然后是扩展分区,
LINUX中,设备也是文件 ,要使用分区,直接“挂载”都可以了!所有的东西都是挂载到一个根目录下
案例:
df -h
查看硬盘的分区
find -size + 100000K
命令:fdisk -l
查看LINUX系统分区具体情况
分区的名称LINUX有一规则
如/dev/sda1 /dev/sda2/
sd 代表所挂载的盘是 scsi硬盘 hd 代表是IDE
a 代表是第几个盘,
1代表是第一个分区
a为基本PAN,b为基本从属pan
c为辅助pan ,d为辅助从属pan
1-4是主分区或扩展分区,5开始就是逻辑分区
df /boot/ 查看分区挂载是的哪个分区
linux文件管理机制 利用挂载来使用分区的数据
mount /dev/sda1 /test 将文件挂以指定的目录
只有一个根目录 ,一个独立且唯一的文件系统
LINUX 安装(两种方式)
1、独立安装
2、虚拟机安装 分区是我键
/boot 分区100m
swap 交换分区,物理内存的2倍,不大于256m
/ 根分区,尽可能大
LINUX 第三天
LINUX的SHELL
TCP/IP基础
LINUX网络环境配置
RPM包管理
SAMBA安装和配置
SAMBA概念:
WINDOWS间可以通过网上领居来实现通信
LINUX与WINDOWS间实现共享:利用SAMBA服务
是一项基本的操作技能
SHELL
命令--------->>SHELL 解释成内核可以执行的代码------->>内核执行------->>返回控制台
SHELL还可以用来进行程序设计,用SHELL编程类似DOS下的批处理。称为,SHELL script
《LINUX 命令,编辑器和SHELL编程》
《linux与UNIX编程指南》
shell有很多种类,常用的有如下几种:
/bin/ash
/bin/bash----bash 中国常用
/bin/tcsh-----csh
/bin/ksh
查看电脑有多少个shell:
ls -l /bin/*sh
查看目前使用的是哪种SHELL
env [此命令可以显示当前操作系统的环境变量]
修改其它的SHELL
chsh -s 输入新的SHELL(/bin/csh)
注销下再重新登录,使用 env
不同的SHELL 可能有不同的命令
SHELL 命令补全功能 TAB
直接输入MK,再按两下TAB,出现两头两个字母为MK的命令。cat p再按两个TAB ,会出现开头字母为p 的文件或字母
查阅历史记录命令:history
无参数,就全部列出来
history 5 最近使用的5个命令
!5 :此项说明执行历史编号为5的命令
!ls :此项说明执行最后一次以"ls"开头的命令
TCP/IP基础
网络的基础就是tcp/ip,不是一人独立的协议,而是一组协议 。tcp传输控制协议,IP协议,UDP协议等。
TCP/IP
人与人之间交流是用语言,计算机之间交流靠的是通讯协议
TCP/IP 由来:参看书
OSI模型:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层(理论)
TCP/IP模型(现实):链路层(与硬件驱动对话),网络层(定位IP地址和确定连路路径)
,传输层,应用层
书本: TCP/IP详解:协议,实现,TCP事务协议 美国网络作家(网络学习)
QQ相互通讯的案例:
从上到下:(相当一个功能模块)
qq1 qq2
应用层 您好!
传输层
IP层(网络层)
链路层
网卡
您好经过“应用层”,就会加上一个APP头(表示是哪个应用程序发过来),0:45 2010-1-30:45 2010-1-3经过“传输层”后,会在前面加上一个TCP头,称为
TCP段,再经过IP层,会加一个ip头,是指发送到哪个地址。这样就是成了一个数据包。
经过链路层后,要会包加一个帧头和帧尾,发送给网卡。
经过路由器,最终到QQ2所在的网卡。然后逆向执行上述的一个过程,最后得到一个“你好”信息。
计算机---->>网关------->>因特网
IP地址包括网络号和主机号,所有IP地址都是32位,4个字节,a,b,c,d,e五类
A类的IP地址 0 7位网络号 主机号 1
b 类的IP地址 10 14网络号 主机号 128
c 类的IP地址 110 21位网络号 主机号 192
IPV6
内部IP:外面电脑无法访问到 192.168.0.2
外部IP:公网IP,电脑都可以访问到
如何查看外网ip ping www.baidu.com -t
追踪路由命令;tracert www.baidu.com
1、追踪路由
tracert IP或域名
2、ping命令
3、在windows下查看IP的命令 ipconfig
4、在linux/unix查看ip的命令 ifconfig
局域网广播 192.168.255.255
对一个子网广播
127.任意值,除去全零全1,都可以是回路,本机
子网:好管理,大划小
只要前面的网络号一样,就表示在一个子网里面
子网之间通过路由器来连接
linux下配置IP
第一种方法: root登录,运行setup----network configuration
1、用空格键 自动分配
2、手动IP TAB输入
配置完成后,重启生效/etc/rc.d/init.d/network restart
eth0 第一块网卡,eth1 第二块网卡.....
第二种方法
1、ifconfig eth0 192.168.88.44
2、ifconfig eth0 network XXXX ,子网掩码
只是临时有效
第三种方法
直接修改文件:/etc/sysconfig/network-scripts/ifcfg-eth0,这个文件中直接设置
里面的内容主要如下:
onboot=yes (NO=禁用)
bootproto=static(静态)/dhcp(动态)
注:在LINUX中所有的设备都是文件。方便编程!
RPM管理:redhat package manager
openlinux,suse,turbo也采有这个管理
apache-1.3.23-11.i386.rpm
apache软件名称
1.3.23-11软件的版本号,主版本与次版本
i386运行的硬件平台
RPM常用命令
如何查询linux中安装哪些RPM
rpm -qa
rpm -q mysql(查询是否装了mysql)
-qi,-ql,-qf
安装RPM包
rpm -i RPM包全路径名称
删除RPM包
rpm -e jdk
升级RPM包
rpm -u RPM包全路径名称
windows 与linux如何通信
1、确保在同一个子网中,即网络号都一样
2、在linux安装samba服务器即可
如何安装samba
1、检查是否已经装了samba
rpm -q samba
2、有安装,就把它删除
rpm -e samba rpm -e --nodeps samba 忽略错误删除
3、把安装文件挂载到mount /mnt/cdrom/
4、 cp sam* /home
把sam开头的文件copy到home,准备安装
5、开始安装
先装cmmon
rpm -ivh 文件名
rpm -ivh samba-2.2............
安装成功
6、创建一个用户youyou
useradd youyou 自动创一个用户和组
youyou组 youyou 用户
passwd youyou
7、给youyou设置samba密码
cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
把/etc/passwd用户都复制到/etc/samba/smbpasswd中
8、设置密码
smbpasswd youyou
9、启动samba服务器
service smb start
service smb stop
service smb restart
linux IP 192.168.222.88
在windows命令行下输入\192.168.222.88
输入密码
OK
samba 的详细配置 [设置某个用户只能读的权限]
优势科技招聘linux程序的测试题 60分左右
linux 第四天(14讲)
目录
设置任务调度命令crontab
监控网络状态信息
Mysql数据库在LINUX下的使用
SSh(secure shell)的使用
FTP的安装与配置
知识点:
系统中监听端口: netstat -an
尽可能关闭不用的端口,提高安全性
SSH:可以使用软件远程登录 在linux下,有服务sshd,
root 登录,setup ----system file ---sshd
ssh客户端
多用户,多任务
,
任务调度命令 可以定时备份
冷备份(在不写入数据的情况下备份),热备份
分为系统工作,个别用户工作
任务调度的使用 crontab
1、设置任务调度文件
crontab -e
2、每隔一定时间去执行date > (表覆盖)/home/mydata1 (>> 表追加)
希望每天凌晨两点半去执行date >>/home/mydata2,如下
crontab -e ,加入如下代码:
0 2 * * * date >>/home/mydata2
0 2 * * * 表示第几分钟,小时,几号,月,星期几
如果希望每分钟执行
* * * * * date >>/home/mydata2
全部为*
crontab 最高精确到分
调度文件的规则:分,小,几号,月,星期 命令名称
如果月设为13,这时系统不会执行,也不会报错
3、如何去调度多个任务
1)在crontab -e 中直接写
缺点:太多,太乱,不好管理,没有系统化
2)可以把所有的任务,写入到一个可执行文件(SHELL 编程),类似于windows批处理状态
建议用这个方法
vi mytask.sh 写入文件,如上
.sh 表示shell
chmod 修改权限 必须要有X权限
crontab -e 进入,* * * * * /root/mytask.sh
可以把多个文件放到里面
4、如何终止任务
crontab -r 终止任务 删除里面的内容
crontab -l 列出当前有哪些任务调度
进程
在 XP中可以用任务管理器查看进程,查看,选择列,来查看详细的信息
进程概念:进程就是正在执行的程序。当双击一个程序后,任务管理器里面就有,出现一个进程
线程:
1)轻量级的进程
2)进程有独立的地址空间,线程没有
3)线程不能独立存在,它是由进程创建的(fork)
JAVA中用Thread
4)相对讲,线程所费的CPU和内存小于进程
地址空间
操作系统会将内存的一部分空间分给进程1,再启动一个进程, 操作系统会从内存中分一部分空间给进程2,但是空间不一定连续分!
蓝屏:很多情况下与内存有关,或是操作系统
所以操作系统要稳定,硬件有兼容性
LINUX 每个进程有两个方式存在, 一般服务都是以后台进程的启动
显示详细的进程信息
PS -aux [看的全面,信息也全] 静态显示
1号进程:说明
如何终止进程
kill 进程号 kill 16251
kill -9 进程号 强制删除 QQ踢出群
killall
进程的动态监控 top
与PS相反,可以适实地反映现有的进程
top
刀片机
up 4 min 表示系统启动了多长时间
1 user 表示当前有多少个用户登录这个系统
load average:负载均衡 当前系统负载情况
三个数加起来除以3,大于0.6,就要小心了!
37 processes 启动了多少个进程
0 zombie 僵尸进程数 一个进程不能被系统回收,未用仍占进程!
CPU states idle 闲置的CPU 越大越好
Mem 内存信息 used free
Swap 交换分区
按q 退出
指定监控某个用户 u
date 命令
设置时间 date mmddhhmmccyy.ss
月月日日时时分分年年年年.秒秒
cal 日历命令
显示网络统计信息的命令
netstat -an (按一定顺序排序)
netstat -anp (要看进程号)| more
用kill 进程号,就可以杀掉进程
检测主机连接命令
ping
显示数据包经过历程命令:traceroute
就是追踪路由
route 显示路由表
每个路由器都有一个路由表,显示最近的路由表
握手机制
类似于古代的信使,驿站
Mysql 数据库
免费,跨平台 ,轻,支持多并发
安装mysql
1、准备安装文件,COPY到/home下
2、把安装文件解压
tar -zxvf 文件名.tar.gz
3、重命名 mv 原名 新名
4、开始安装
1)groupadd mysql 创建mysql组
2)useradd -g mysql mysql 将新建mysql用户放到mysql中
3)进入到mysql目录,scripts/mysql_install_db --user=mysql (初始化数据库)
4)chown -R root .(有一个点,表示当前目录及文件) (修改文件的所有者)
-R 递归,把当前目录与目录下的所有文件就修改为root
5) chown -R mysql data (把data文件夹所有者修改为mysql)
6)chgrp -R mysql . (把当前组改为mysql)
7)启动mysql
bin/mysqld_safe --user=mywql & [&表示以后台的方式启动]
8) 按CTRL+C 退出
myql 3306 端口
9)如何进行mysql
cd /bin
./mywql -u root -p 回车
如何设置在任何目录都可以执行:
1、env | more path中没有指定mysql 路径
2、/root下找到,.bash_profile 存放用户变量
3、path中加入 /home/mywql/bin/
4、这样就可以使用了
使用mysql
特别注意mysql驱动要存放的位置
要放在JDK下面
主目录下/jre/lib/ext/
1、建立数据库和表
create database 名称;
show databases;
建表
use 数据库命令;说明在哪个DB下建表
create table users (useerID vachar(8),userName varchar(8));
2、加入部分数据
insert itno users values ('','');
desc 表名,查看表的结构
3、 编写一个ShowUserS.java,显示数据库中的数据
备份和恢复mysql
备份:mysqldump -u root -p密码 数据库名 > mydata
进入到mysql 的安装目录下面
找到mysqldump -u root -p密码(无空格) 数据库名 > mydata
恢复:
mysql -u root -p密码 数据库名< mydata
(注意<这个符号,与前面的不一样)
从外面导入数据
LINUX学习 第五天
补充讲解ssh
LINUX启动过程分析
压缩与解压方法
LINUX下JAVA网络编程
LINUX面试题评讲
循环备份:圆圈 如何实现???
SSH,几乎所有的LINUX程序都会用SSH,远程操作及文件的上传下载
1、安装SSH 就在WINDOWS下安装
包括两个文件图标,一个是远程操作,一个文件下载上传
SSH工作原理:下一个SSH来实验下
必须先在WINDOWS先安装SSH客户端,LINUX会默认安装一个SSHD的服务,默认是启动的。 端口:22
2、使用SSh客户端登录到LINUX(前提是lINUX的SSHD服务启动),并且确保WINDOWS与LINUX能够相互通信,在同一个了网内
3、双击客户端,点quick connect
查看有几个用户 top 2 user
如何踢掉一个用户 :
1、netstat -anp |more
查看端口与进程号
(服务器端口22不变,客户端会被服务器分配不同的端口)
2、kill -9 进程号
文件上传下载:(与SAMBA、FTP重复)
NEW file transport
补充讲解:--------------复习
LINUX 目录结构
当前目录:pwd 就可以查看当前目录
相对路径:以当前目录为基点,寻找另外的目录
绝对路径:以根目录为基点,寻找另外的目录(以/开头)
工作目录:工程或软件安装所在的根目录
运行级别 3 5 /etc/inittab
pwd
cd : cd 后空,会进入到用户的主目录下
如 cd 就到 /xiaoming
ls -al
mkdir
rmdir :删除空目录 rm -rf aaaaa,删除非空目录
touch
cp -rf dir1 dir 2 (r递归复制)(f不询问,慎用 )
cp -r workspace / /home
mv
rm
rm -rf (删除所有内容)
ln -s 源 目标 (快捷方式)
ln -s /root/abc3.java toabc3
toabc3 -> /root/abc2.java 文件类型为"l"
作用:共享类库,共享函数库 安全性,替身
more
less
grep 在文本中查询内容
grep -n "12" /root/abc3.java /home/ (多个查询)
-n 在第几行
| 管道命令
find
搜索文件及目录
在特定目录下搜索 find /home -name abc
还在可以按时间搜索、大小
find /home -amin -10/+10 a表存取
find /home -cmin -10 c表变更
find /home -size +10K 以K表示
重定向命令 输出> >> 导入<
SHELL脚本文件:文本文件,执行方式:./dd.sh
permission denied 请检查权限 chmod
TAB 命令补全
history
用户登录后系统执行.bashrc,把用户需要程序随用户登录时而自动启动 它是在根目录下
配置.bashrc文件可以指定某些程序在用户登录的时侯就自动启动,在每个用户目录下都有这个文件
vi .bashrc
目录.sh start
/home/xiaoming /.bash_profile 这个是用户环境变量,只对用户自己有用
/etc/profile 主要是配置环境变量 系统环境变量
JDK,toMCAT 公共的环境变量
当你希望临时加入一个路径时,就可以使用export
比如:export PATH=$path:/root
用env查看
root下命令就可以其它用
echo $path 输出 ****
通配符 * 多个字母或数字 ? 一个 []
ls abc[1-6].tif abc1,abc2,
alias 给系统命令取一个别名
比如,一个命令如下:
ls -l /home
取别名
alias llh='ls -l /home'
启动过程分析 9个步骤
按下POWER
bios----- grub/lilo-----运行内核并检测硬件-----运行系统的第一个进程init(ps -aux)----- init读取/etc/inittab进行信息初始化-----/etc/rc.d/rc.sysinit系统初始化
脚本------/etc/rc.d/rcX.d------执地本地特殊配置-----其它特殊服务
使用zip和unzip压缩和解压
压缩文件
单个文件压缩 zip aa.zip 文件名
多个文件压缩zip aa.zip 文件名1 文件名2 文件名3
把整个目录打包 zip -r aa.zip 文件夹路径
解压缩
unzip aa.zip
gzip与gunzip .gz文件
LINUX JAVA网络编程 ----myqq
如何用JAVA进行socket编程 socket联接
ITIL服务台操作教程
2010年2月5日
历史上的今天
相关文章
* Linux 文件内容统计命令
* linux对文件操作命令集合
* Linux常用文件命令
* Linux文件管理常用命令
* Linux操作系统文件操作(命令)
最近读者
LINUX----(韩顺平版)
LINUX 笔记 2010-01-04 08:46:32 阅读468 评论1 字号:大中小 订阅
学习LINUX的两个方向:
LINUX系统管理员:
LINUX程序员:PC平台开发LINUX软件工程师,LINUX嵌入式开发(单片机,芯片)开发,
学完本书可以完全可以胜任LINUX系统管理员
开源,免费,稳定,安全,处理多并发得到业界认可
LINUX学习流程:
1、LINUX平台上的开发,包括VI,GCC,GDB,MAKE,JDK,TOMCAT,MYSQL,和LINUX基本操作
2、加厚C语言功能或者JAVA语言
3、学习UNIX环境高级编程
4、LINUX应用开发或才嵌入式开发
工具书(需要几本工具书,如新华字典)
思考----实践-----再思考----再实践
一周课程:
基础部分: LINUX基础知识,80个常用命令,LINUX分区/VI/权限..
实用部分:samba安装,LINUX网络环境配置,crontab使用,JDK,apache安装,LINUX下JAVA网络编程,SHELL初步介绍
三本书:鸟哥的私房菜,LINUX从入门到精通,LINUX内核完全剖解
LINUX实战第一天(共五天)
1、LINUX的初步介绍
2、L的第一次接触
3、L的用户管理
4、L的常用命令(80左右)
5、L下所有者,所在组和其它组的介绍
6、L下文件和目录权限机制
吉祥物:小企鹅(想起小时侯被企鹅咬了一口),芬生学生创建,微软反LINUX广告(四个变形动物),
L的特点:
1、FREE ,免费/开源,代码公开
2、支持多线程,能不能允许多个用户并发/多用户
3、安全性好,
4、对内存和文件管理优越
缺点:
操作相对困难,无界面操作 (容易的东西不值难)
NEC 在手机使用LINUX,03年,日本的一家公司,嵌入式开发
LINUX最小只需要4M (参看鸟哥)----- 导致嵌入式开发
可以很多东西看一看,但要学精一门。
历史
1960年,MIT,(麻省理工学院)30个人同时使用此主机(分时操作系统)!
1965年,MIT,GE,BELL实验室让分时系统由30个人操作变成到300个同时使用,分时操作,MULTIS计划(火星计划)
1969年,火星计划终于失败,出现了KEN TOMPSON,(同时也是C语言的设计者),开发了一个flile server system(文件服务系统)。在BELL实验室受到欢迎!加入
一个同事,RICHERS
1973年,他们开发出UNIX,开源,将源码共享,有几家公司就加入,分析. 出现了IBM aix (也是UNIX),SUN公司solaris (也是UNIX),HP公司 HP unix ,FREE
BAD,伯克利分校
各个操作系统只对自己公司的硬件提供支持
中国移动类似的大企业都是UNIX
同时由UNIX出现了minix操作系统,linus在91年的时侯,接触到minix操作系统,有一台pc 386,想将minix移值到pc 386年。94年,发布了1.0 版式,取名为
linux (第二种说法:linus is not unix)。没有桌面,只有字符界面。
LINUX 产生如下几家公司:
REDHAT(二次开发),S.U.SE整合了很多套件(欧洲),红旗linux,等
命令:
注意:操作过程中使用的VM虚拟一个LINUX操作系统。VM就是虚拟机,
root:超级管理员
LINUX输入密码不显示任何东西
进入桌面命令:startx
关机:shutdown -h now
重启:shutdown -r now /reboot
尽量少用root登录,用普通用户,“su -”来切换
注销 logout 快捷键ctrl+D
VI编辑器 开发者(世界第一骇客,成为了自由软件协会)
(丢手帕问题,JAVA编写 约瑟夫问题 要用链表,数组)
把VI当作WINDOW下的记事本
在VI下开发一个JAVA HELLO.java
开发步骤:
1、Vi HELLO.java 进入VI界面
2、输入“i”(小写),插入模式 左下角insert
3、编写一个JAVA public class HEllo{}
4、保存 esc键,进入命令模式
5、输入冒号:,保存退出wq,q!退出不保存
ls 查看当前目录的所有文件
详细列表: ls -l (详细信息) ls -al(显示隐藏文件,详细信息)
6、编译HELLO.java javac hello.java
7、运行 java hello (LINUX成功不显示)
如何在linux可以开发C程序或者C++(CPP)
1、vi hello.cpp
2、int main(){ printf ("hello!")}........
3、编辑 gcc (类似javac) 出现a.out
4、运行 ./a.out (./)
如果再重写一个cpp,会覆盖前面的a.out
解决方法: gcc -o my1 直接命名
VI编辑器的详细命令,查看书!
LINUX的文件目录 (第三讲 11分)
L的文件系统是采用级层式的树状目录结构,最上层的根目录:/:,
重要的文件目录(系统分配的目录);
ROOT:存放ROOT用户的相关文件
HOME :存放普通用户的相关文件(新建的用户)
BIN:存放常用命令的目录 cd 切换目录 ls dir
SBIN:存放要具有一定权限才可以使用的命令
MNT:默认挂载光驱和软驱的目录
ETC:存放配置相关的文件,mysql,tomcat,
USR:文件默认安装的文件夹,类似XP的program files
VAR:存放经常变化的数据,如网页,apache
BOOT:存放引导相关的文件
显示当前在哪个目录:pwd
用户管理
添加用户 useradd useradd xiaoming
设置密码 passwd passwd xiaoming 系统会提示输入新密码,两次输入
提示符#表示root用户 $ 表示普通用户
删除用户 userdel userdel xiaoming 只是删除用户名称 OR userdel -r xiaoming 删除用户以及用户主目录
init 运行级别(XP的安全模式与正常的启动模式)
0 关机
1 单用户
2 多用户状态没有网络服务
3 多用户有网络服务
4 系统未使用保留多用户
5 图形界面 startx
6 系统重启
常用的是3与5,要修改可改文件 /etc/inittab的
id:5:initdefault:这一行中的数字
su 切换用户,或者 logout
设为6后一直重启,如何更改:
在启用GRUB的时侯,按“e”,选中第二项,按“e”,进入修改界面,在最后输入空格+1,这个就是表示1号运行级别。只能用1来启动!,最后按b 。
用运行级别1 可以绕过ROOT密码,不需要密码就可以用,用passwd就OK
如何找回丢失密码
ls -a 显示隐匿文件 -l显示长列表格式
mkdir 建立目录
rmdir 删除空目录 如果有内容?
TAB 命令补全 相同的话,可以按两次
touch 建立空文件
cp cp -r dir1 dir2 递归复制
mv
rm 参数
rm -rf
ln
ln -s
more 分页显示不能前翻 crtl+pageup 空格向后翻;
less 分页显示,可以向前翻
grep在文本中查询 grep -n (显示行数)"关键字" 文件名称
| 管道命令 在LINUX和UNIX系统中,|就是管道命令,怎么理解?
把上一个命令的结果交给|的后面的命令处理
即上一个处理的结果就是下一个命令的输入
man 找男人 相当于DOS 下的HELP
find 搜索文件及目录
find /-name aaa.java /表示根目录,
find /root/ -name aaa.java 锁定范围
数据重定向 将操作流保存到另一个地方
grep -n (显示行数)"关键字" 文件名称 > kkk.bak >输出到
ls -l > a.txt
ls -al
>> 追加写
>覆盖写
LINUX 第二天 韩顺平PPT下载
关
搭建JAVA ee
L下可以用realplay吗
L可以用QQ吗
L分区的讲解
REAHAT安装演示
文件所有者,所在组,其它组
OWNER ; GROUP;OTHERS
可以更件文件的所有者,chown
也可以改变用户组 chgrp
案例:建两个组, policeman ,tufei
建三个用户:along ,panpan( 属于policeman),ashuai(属于tufei)
用along 这个用户登录到系统,创建一个文件,ls -1
现在添加组 只能在ROOT下操作
groupadd policeman
如何查看现有组:vi /etc/group cat /etc/group
查看所有用户信息:cat /etc/passwd
cat 只能看不能写,VI可以看可以改
创建用户,并添加到指定组
useradd -g 组名 用户名
useradd -g policeman along
UID用户ID,GID组ID
权限,详情查看NIAO哥的书:98
以-rw-r--r--为例
第一个“-” 表示文件,如果是目录就用“d”表示
第二--四:代表文件所有组对此文件所具有的权限
R可读 数字表示4 W可写 数字表示2 X可执行 数字表示1
文件最大权限666,目录最大权限777
第五--七:代表文件所在组对此文件所具有的权限
第八--十:代表其它组对此文件所具有的权限
如何修改文件的访问权限的问题:(panpan 无法进入along 主目录)
1、查看along 主目录的属性 drwx------
2、修改along主目录的属性(进入root或者文件夹所有者) chmod 777 along
命令: who am i 查看当前使用者是谁,
chmod 修改权限
任务:可以让PANPAN修改myTEST.java
chmod 664 myTEST.java
把一个用户移值到另一个组:
usermod -g 组名 用户名
usermod -g policeman ashuai
chown 用户名 文件名 修改文件所有者
chgrp 组名 文件名 修改文件所有组
JAVAEE开发环境搭建---JDK安装
1、把mypackage.ISO文件挂载到linux操作系统中去。在虚拟机做配置,用mount /mnt/cdrom
何为挂载: 需要哪个分区就挂载哪个分区,用完要umount(详细)
虚拟机---设置----硬件标签 cd-rom 使用iso镜象
虚拟机---设置----选项标签 共享windows里面的文件夹 也可以samba
mount /mnt/cdrom/
cd /mnt/cdrom/
不需要挂载:
umount /mnt/cdrom/
2、把安装文件COPY到/home
cp 文件 /home 名称很长,用tab 补全
一个操作系统可以用多个JDK
3、cd /home
4、安装 ./文件名
5、看看一个文件 /etc/profile [环境配置文件]
在VI中用#注释#####,注释掉以前的JAVA环境变量
6、配置刚才自己安装的JDK
JAVA_HOME=.....
PATH=$PATH(作用是不破坏以前的path):
CLASSPATH=.:/.......
export JAVA_HOME PATH CLASSPATH
export 引入
JAVAEE开发环境搭建---eclipse安装
1、同上,挂载
2、把安装文件COPY到/home
3、tar.gz 文件 tar -zxvf ???.tar.gz 安装即可
4、启动eclipse [必须先进入图形界面] ,打开终端,cd/home/ ./eclipse OK
进到终端:注销图形界面就OK
5、eclipse 只能开发java se ,要开发java ee,要装myeclipse 必须在图形界面下才能使用
6、同样copy 安装文件
7、./安装
JAVAEE开发环境搭建---tomcat安装
JAVA EE 的服务器有tomcat ,jboss,weblogic,websphere,resin... 这些都可以安装到linux下,下面安装tomcat:
1、COPY文件
2、tar -zxvf ???.tar.gz tomcat
./eclipse & (不加&,终端不能输入)
开发一个JSP文件 暂不记录 后期再学JAVA
安装娱乐软件
绿色表示可执行文件(LINUX文件所代表意义)
制作iSO文件 挂载,与LINUX沟通 winiso
umount /mnt/cdrom
安装QQ软件
作用:tencent QQ for LINUX
LINUX 分区
硬盘分区:基本分区和扩展分区 数目之和不大于四个.
一块硬盘上:主分区+扩展分区<=四
扩展分区不能直接使用,需要分成逻辑分区才能使用
逻辑分区数量不限
XP下----我的电话----管理----磁盘 查看
主分区就是操作系统所在的区,一块硬盘一个主分区,除非双系统,,如C盘
扩展分区:不能马上使用,只能分成逻辑分区才能用,一个扩展分区可以分成N多逻辑分区
假设有一块硬盘 ,先分一个主分区,然后是扩展分区,
LINUX中,设备也是文件 ,要使用分区,直接“挂载”都可以了!所有的东西都是挂载到一个根目录下
案例:
df -h
查看硬盘的分区
find -size + 100000K
命令:fdisk -l
查看LINUX系统分区具体情况
分区的名称LINUX有一规则
如/dev/sda1 /dev/sda2/
sd 代表所挂载的盘是 scsi硬盘 hd 代表是IDE
a 代表是第几个盘,
1代表是第一个分区
a为基本PAN,b为基本从属pan
c为辅助pan ,d为辅助从属pan
1-4是主分区或扩展分区,5开始就是逻辑分区
df /boot/ 查看分区挂载是的哪个分区
linux文件管理机制 利用挂载来使用分区的数据
mount /dev/sda1 /test 将文件挂以指定的目录
只有一个根目录 ,一个独立且唯一的文件系统
LINUX 安装(两种方式)
1、独立安装
2、虚拟机安装 分区是我键
/boot 分区100m
swap 交换分区,物理内存的2倍,不大于256m
/ 根分区,尽可能大
LINUX 第三天
LINUX的SHELL
TCP/IP基础
LINUX网络环境配置
RPM包管理
SAMBA安装和配置
SAMBA概念:
WINDOWS间可以通过网上领居来实现通信
LINUX与WINDOWS间实现共享:利用SAMBA服务
是一项基本的操作技能
SHELL
命令--------->>SHELL 解释成内核可以执行的代码------->>内核执行------->>返回控制台
SHELL还可以用来进行程序设计,用SHELL编程类似DOS下的批处理。称为,SHELL script
《LINUX 命令,编辑器和SHELL编程》
《linux与UNIX编程指南》
shell有很多种类,常用的有如下几种:
/bin/ash
/bin/bash----bash 中国常用
/bin/tcsh-----csh
/bin/ksh
查看电脑有多少个shell:
ls -l /bin/*sh
查看目前使用的是哪种SHELL
env [此命令可以显示当前操作系统的环境变量]
修改其它的SHELL
chsh -s 输入新的SHELL(/bin/csh)
注销下再重新登录,使用 env
不同的SHELL 可能有不同的命令
SHELL 命令补全功能 TAB
直接输入MK,再按两下TAB,出现两头两个字母为MK的命令。cat p再按两个TAB ,会出现开头字母为p 的文件或字母
查阅历史记录命令:history
无参数,就全部列出来
history 5 最近使用的5个命令
!5 :此项说明执行历史编号为5的命令
!ls :此项说明执行最后一次以"ls"开头的命令
TCP/IP基础
网络的基础就是tcp/ip,不是一人独立的协议,而是一组协议 。tcp传输控制协议,IP协议,UDP协议等。
TCP/IP
人与人之间交流是用语言,计算机之间交流靠的是通讯协议
TCP/IP 由来:参看书
OSI模型:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层(理论)
TCP/IP模型(现实):链路层(与硬件驱动对话),网络层(定位IP地址和确定连路路径)
,传输层,应用层
书本: TCP/IP详解:协议,实现,TCP事务协议 美国网络作家(网络学习)
QQ相互通讯的案例:
从上到下:(相当一个功能模块)
qq1 qq2
应用层 您好!
传输层
IP层(网络层)
链路层
网卡
您好经过“应用层”,就会加上一个APP头(表示是哪个应用程序发过来),0:45 2010-1-30:45 2010-1-3经过“传输层”后,会在前面加上一个TCP头,称为
TCP段,再经过IP层,会加一个ip头,是指发送到哪个地址。这样就是成了一个数据包。
经过链路层后,要会包加一个帧头和帧尾,发送给网卡。
经过路由器,最终到QQ2所在的网卡。然后逆向执行上述的一个过程,最后得到一个“你好”信息。
计算机---->>网关------->>因特网
IP地址包括网络号和主机号,所有IP地址都是32位,4个字节,a,b,c,d,e五类
A类的IP地址 0 7位网络号 主机号 1
b 类的IP地址 10 14网络号 主机号 128
c 类的IP地址 110 21位网络号 主机号 192
IPV6
内部IP:外面电脑无法访问到 192.168.0.2
外部IP:公网IP,电脑都可以访问到
如何查看外网ip ping www.baidu.com -t
追踪路由命令;tracert www.baidu.com
1、追踪路由
tracert IP或域名
2、ping命令
3、在windows下查看IP的命令 ipconfig
4、在linux/unix查看ip的命令 ifconfig
局域网广播 192.168.255.255
对一个子网广播
127.任意值,除去全零全1,都可以是回路,本机
子网:好管理,大划小
只要前面的网络号一样,就表示在一个子网里面
子网之间通过路由器来连接
linux下配置IP
第一种方法: root登录,运行setup----network configuration
1、用空格键 自动分配
2、手动IP TAB输入
配置完成后,重启生效/etc/rc.d/init.d/network restart
eth0 第一块网卡,eth1 第二块网卡.....
第二种方法
1、ifconfig eth0 192.168.88.44
2、ifconfig eth0 network XXXX ,子网掩码
只是临时有效
第三种方法
直接修改文件:/etc/sysconfig/network-scripts/ifcfg-eth0,这个文件中直接设置
里面的内容主要如下:
onboot=yes (NO=禁用)
bootproto=static(静态)/dhcp(动态)
注:在LINUX中所有的设备都是文件。方便编程!
RPM管理:redhat package manager
openlinux,suse,turbo也采有这个管理
apache-1.3.23-11.i386.rpm
apache软件名称
1.3.23-11软件的版本号,主版本与次版本
i386运行的硬件平台
RPM常用命令
如何查询linux中安装哪些RPM
rpm -qa
rpm -q mysql(查询是否装了mysql)
-qi,-ql,-qf
安装RPM包
rpm -i RPM包全路径名称
删除RPM包
rpm -e jdk
升级RPM包
rpm -u RPM包全路径名称
windows 与linux如何通信
1、确保在同一个子网中,即网络号都一样
2、在linux安装samba服务器即可
如何安装samba
1、检查是否已经装了samba
rpm -q samba
2、有安装,就把它删除
rpm -e samba rpm -e --nodeps samba 忽略错误删除
3、把安装文件挂载到mount /mnt/cdrom/
4、 cp sam* /home
把sam开头的文件copy到home,准备安装
5、开始安装
先装cmmon
rpm -ivh 文件名
rpm -ivh samba-2.2............
安装成功
6、创建一个用户youyou
useradd youyou 自动创一个用户和组
youyou组 youyou 用户
passwd youyou
7、给youyou设置samba密码
cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
把/etc/passwd用户都复制到/etc/samba/smbpasswd中
8、设置密码
smbpasswd youyou
9、启动samba服务器
service smb start
service smb stop
service smb restart
linux IP 192.168.222.88
在windows命令行下输入\192.168.222.88
输入密码
OK
samba 的详细配置 [设置某个用户只能读的权限]
优势科技招聘linux程序的测试题 60分左右
linux 第四天(14讲)
目录
设置任务调度命令crontab
监控网络状态信息
Mysql数据库在LINUX下的使用
SSh(secure shell)的使用
FTP的安装与配置
知识点:
系统中监听端口: netstat -an
尽可能关闭不用的端口,提高安全性
SSH:可以使用软件远程登录 在linux下,有服务sshd,
root 登录,setup ----system file ---sshd
ssh客户端
多用户,多任务
,
任务调度命令 可以定时备份
冷备份(在不写入数据的情况下备份),热备份
分为系统工作,个别用户工作
任务调度的使用 crontab
1、设置任务调度文件
crontab -e
2、每隔一定时间去执行date > (表覆盖)/home/mydata1 (>> 表追加)
希望每天凌晨两点半去执行date >>/home/mydata2,如下
crontab -e ,加入如下代码:
0 2 * * * date >>/home/mydata2
0 2 * * * 表示第几分钟,小时,几号,月,星期几
如果希望每分钟执行
* * * * * date >>/home/mydata2
全部为*
crontab 最高精确到分
调度文件的规则:分,小,几号,月,星期 命令名称
如果月设为13,这时系统不会执行,也不会报错
3、如何去调度多个任务
1)在crontab -e 中直接写
缺点:太多,太乱,不好管理,没有系统化
2)可以把所有的任务,写入到一个可执行文件(SHELL 编程),类似于windows批处理状态
建议用这个方法
vi mytask.sh 写入文件,如上
.sh 表示shell
chmod 修改权限 必须要有X权限
crontab -e 进入,* * * * * /root/mytask.sh
可以把多个文件放到里面
4、如何终止任务
crontab -r 终止任务 删除里面的内容
crontab -l 列出当前有哪些任务调度
进程
在 XP中可以用任务管理器查看进程,查看,选择列,来查看详细的信息
进程概念:进程就是正在执行的程序。当双击一个程序后,任务管理器里面就有,出现一个进程
线程:
1)轻量级的进程
2)进程有独立的地址空间,线程没有
3)线程不能独立存在,它是由进程创建的(fork)
JAVA中用Thread
4)相对讲,线程所费的CPU和内存小于进程
地址空间
操作系统会将内存的一部分空间分给进程1,再启动一个进程, 操作系统会从内存中分一部分空间给进程2,但是空间不一定连续分!
蓝屏:很多情况下与内存有关,或是操作系统
所以操作系统要稳定,硬件有兼容性
LINUX 每个进程有两个方式存在, 一般服务都是以后台进程的启动
显示详细的进程信息
PS -aux [看的全面,信息也全] 静态显示
1号进程:说明
如何终止进程
kill 进程号 kill 16251
kill -9 进程号 强制删除 QQ踢出群
killall
进程的动态监控 top
与PS相反,可以适实地反映现有的进程
top
刀片机
up 4 min 表示系统启动了多长时间
1 user 表示当前有多少个用户登录这个系统
load average:负载均衡 当前系统负载情况
三个数加起来除以3,大于0.6,就要小心了!
37 processes 启动了多少个进程
0 zombie 僵尸进程数 一个进程不能被系统回收,未用仍占进程!
CPU states idle 闲置的CPU 越大越好
Mem 内存信息 used free
Swap 交换分区
按q 退出
指定监控某个用户 u
date 命令
设置时间 date mmddhhmmccyy.ss
月月日日时时分分年年年年.秒秒
cal 日历命令
显示网络统计信息的命令
netstat -an (按一定顺序排序)
netstat -anp (要看进程号)| more
用kill 进程号,就可以杀掉进程
检测主机连接命令
ping
显示数据包经过历程命令:traceroute
就是追踪路由
route 显示路由表
每个路由器都有一个路由表,显示最近的路由表
握手机制
类似于古代的信使,驿站
Mysql 数据库
免费,跨平台 ,轻,支持多并发
安装mysql
1、准备安装文件,COPY到/home下
2、把安装文件解压
tar -zxvf 文件名.tar.gz
3、重命名 mv 原名 新名
4、开始安装
1)groupadd mysql 创建mysql组
2)useradd -g mysql mysql 将新建mysql用户放到mysql中
3)进入到mysql目录,scripts/mysql_install_db --user=mysql (初始化数据库)
4)chown -R root .(有一个点,表示当前目录及文件) (修改文件的所有者)
-R 递归,把当前目录与目录下的所有文件就修改为root
5) chown -R mysql data (把data文件夹所有者修改为mysql)
6)chgrp -R mysql . (把当前组改为mysql)
7)启动mysql
bin/mysqld_safe --user=mywql & [&表示以后台的方式启动]
8) 按CTRL+C 退出
myql 3306 端口
9)如何进行mysql
cd /bin
./mywql -u root -p 回车
如何设置在任何目录都可以执行:
1、env | more path中没有指定mysql 路径
2、/root下找到,.bash_profile 存放用户变量
3、path中加入 /home/mywql/bin/
4、这样就可以使用了
使用mysql
特别注意mysql驱动要存放的位置
要放在JDK下面
主目录下/jre/lib/ext/
1、建立数据库和表
create database 名称;
show databases;
建表
use 数据库命令;说明在哪个DB下建表
create table users (useerID vachar(8),userName varchar(8));
2、加入部分数据
insert itno users values ('','');
desc 表名,查看表的结构
3、 编写一个ShowUserS.java,显示数据库中的数据
备份和恢复mysql
备份:mysqldump -u root -p密码 数据库名 > mydata
进入到mysql 的安装目录下面
找到mysqldump -u root -p密码(无空格) 数据库名 > mydata
恢复:
mysql -u root -p密码 数据库名< mydata
(注意<这个符号,与前面的不一样)
从外面导入数据
LINUX学习 第五天
补充讲解ssh
LINUX启动过程分析
压缩与解压方法
LINUX下JAVA网络编程
LINUX面试题评讲
循环备份:圆圈 如何实现???
SSH,几乎所有的LINUX程序都会用SSH,远程操作及文件的上传下载
1、安装SSH 就在WINDOWS下安装
包括两个文件图标,一个是远程操作,一个文件下载上传
SSH工作原理:下一个SSH来实验下
必须先在WINDOWS先安装SSH客户端,LINUX会默认安装一个SSHD的服务,默认是启动的。 端口:22
2、使用SSh客户端登录到LINUX(前提是lINUX的SSHD服务启动),并且确保WINDOWS与LINUX能够相互通信,在同一个了网内
3、双击客户端,点quick connect
查看有几个用户 top 2 user
如何踢掉一个用户 :
1、netstat -anp |more
查看端口与进程号
(服务器端口22不变,客户端会被服务器分配不同的端口)
2、kill -9 进程号
文件上传下载:(与SAMBA、FTP重复)
NEW file transport
补充讲解:--------------复习
LINUX 目录结构
当前目录:pwd 就可以查看当前目录
相对路径:以当前目录为基点,寻找另外的目录
绝对路径:以根目录为基点,寻找另外的目录(以/开头)
工作目录:工程或软件安装所在的根目录
运行级别 3 5 /etc/inittab
pwd
cd : cd 后空,会进入到用户的主目录下
如 cd 就到 /xiaoming
ls -al
mkdir
rmdir :删除空目录 rm -rf aaaaa,删除非空目录
touch
cp -rf dir1 dir 2 (r递归复制)(f不询问,慎用 )
cp -r workspace / /home
mv
rm
rm -rf (删除所有内容)
ln -s 源 目标 (快捷方式)
ln -s /root/abc3.java toabc3
toabc3 -> /root/abc2.java 文件类型为"l"
作用:共享类库,共享函数库 安全性,替身
more
less
grep 在文本中查询内容
grep -n "12" /root/abc3.java /home/ (多个查询)
-n 在第几行
| 管道命令
find
搜索文件及目录
在特定目录下搜索 find /home -name abc
还在可以按时间搜索、大小
find /home -amin -10/+10 a表存取
find /home -cmin -10 c表变更
find /home -size +10K 以K表示
重定向命令 输出> >> 导入<
SHELL脚本文件:文本文件,执行方式:./dd.sh
permission denied 请检查权限 chmod
TAB 命令补全
history
用户登录后系统执行.bashrc,把用户需要程序随用户登录时而自动启动 它是在根目录下
配置.bashrc文件可以指定某些程序在用户登录的时侯就自动启动,在每个用户目录下都有这个文件
vi .bashrc
目录.sh start
/home/xiaoming /.bash_profile 这个是用户环境变量,只对用户自己有用
/etc/profile 主要是配置环境变量 系统环境变量
JDK,toMCAT 公共的环境变量
当你希望临时加入一个路径时,就可以使用export
比如:export PATH=$path:/root
用env查看
root下命令就可以其它用
echo $path 输出 ****
通配符 * 多个字母或数字 ? 一个 []
ls abc[1-6].tif abc1,abc2,
alias 给系统命令取一个别名
比如,一个命令如下:
ls -l /home
取别名
alias llh='ls -l /home'
启动过程分析 9个步骤
按下POWER
bios----- grub/lilo-----运行内核并检测硬件-----运行系统的第一个进程init(ps -aux)----- init读取/etc/inittab进行信息初始化-----/etc/rc.d/rc.sysinit系统初始化
脚本------/etc/rc.d/rcX.d------执地本地特殊配置-----其它特殊服务
使用zip和unzip压缩和解压
压缩文件
单个文件压缩 zip aa.zip 文件名
多个文件压缩zip aa.zip 文件名1 文件名2 文件名3
把整个目录打包 zip -r aa.zip 文件夹路径
解压缩
unzip aa.zip
gzip与gunzip .gz文件
LINUX JAVA网络编程 ----myqq
如何用JAVA进行socket编程 socket联接
ITIL服务台操作教程
2010年2月5日
历史上的今天
相关文章
* Linux 文件内容统计命令
* linux对文件操作命令集合
* Linux常用文件命令
* Linux文件管理常用命令
* Linux操作系统文件操作(命令)
最近读者