Linux学习笔记
reboot 重启
shutdown -h now 立刻关机
Linux的文件目录
Linux的文件系统是采用树状目录结构,在此结构上的
最上层的目录为"/"
目录;
root 存放root用户的相关文件
home 存放普通用户的相关文件
bin 存放普通命令,常用命令
sbin 存放需要一定权限才可以使用的命令
mnt 挂在光驱和软驱的目录
boot 存放引导相关的文件
etc 存放配置相关的文件
var 存放经常变化的文件
/dev 系统中的所有设备文件
/tmp 系统中的临时目录
/usr 系统应用程序和相关文件
/var 系统中经常变化的文件如日志文件和用户邮件
pwd 显示当前在哪个目录下
Linux用户管理
useradd 用户名 添加用户
useradd -g group 用户名 指定创建用户的所在组
usermod -g group 用户名 修改用户所在组
passwd 用户名 设置用户密码
userdel 用户名 删除用户
userdel -r 用户名 删除用户以及用户主目录
init [1.2.3.4.5]
Linux运行级别
0:关机
1,单用户
2,多用户状态 没有网络服务
3,多用户状态 有网络服务
4,系统为使用保留给用户
5,图形界面
6,系统重启
常用的为3,和5 要修改默认的运行级别可以修改文件
/etc/inittab的id:5:initdefault这一行的数字
ls -a 显示隐藏文件
mkdir 建立目录
rmdir 删除空目录
touch 建立空文件
cp 拷贝
cp -r 目录 目录 拷贝目录
more 分页查看文件
ls | more
在linux和unix系统中|就是管道命令 ?
什么是管道命令:把上一个命令的结果交给|的后面的命令处理
ln -s /root/hello.java toabc3 建立hello.java的链接(快捷方式)
grep “kenan” hello.java 在文件中搜索执行制定字符串
grep -n "kenan" hello.java
find 搜索文件和目录
find / -name hello.java 从根目录开始查找有没有hello.java的文件
find / -amin -10 10分钟存取的文件或目录
find / -atime -10 10小时存取的文件或目录
find / -cmin -10 10分钟修改的文件或目录
find / -ctime +10 10小时前更改过的目录或文件
find / -size +10k 查看大于10k的问就爱你
groupadd 组名 -- 添加用户组
权限: r可读 4
w可写 2
x可执行 1
vmare下Linux上jdk的安装步骤:
jdk的安装步骤:
1,下载jdk在linux上的版本.bin版本
2,将上面下载的文件制作成iso文件挂载到linux操作系统上
mount /dev/cdrom /mnt/cdrom (取消挂载 umount /mnt/cdrom)
3,把文件拷贝到/home下
4,cd /home
5,安装 ./???.bin
6.卸载旧版的jdk
用root用户登陆到系统,打开一个终端输进
# rpm -qa|grep gcj
显示内容其中包含下面两行信息
# java-1.4.2-gcj-compat-1.4.2.0-40jpp.112
# libgcj-4.1.1-52.el5
卸载
# rpm -e java-1.4.2-gcj-compat-1.4.2.0-40jpp.112
# rpm -e libgcj-4.1.1-52.el5
假如有依靠关系,不让卸载,就用 rpm -e –-nodeps 卸载就行了
# rpm -e –-nodeps ?java-1.4.2-gcj-compat-1.4.2.0-40jpp.112
# rpm -e –noddeps libgcj-4.1.1-52.el
?最后再执行rpm -qa|grep gcj
发现没东西,代表卸载成功
7,修改/etc/profile(配置文件)配置Javahome,path和classpath
安装eclipse
1,把安装文件拷贝到home
cp sdf /home
2,tar -zxvf xxx.tar.gz
3,启动eclipse,首先进入图形界面 startx
4,仅用selinux
解决方法:关闭selinux即可解决。
# vi /etc/sysconfig/selinux
修改:SELINUX=enforcing 为:SELINUX=disable 禁用SeLinux, 再重启运行就可以了
5, ./eclipse & 后台运行eclipse
tomcat的安装和eclipse一样解压即可
Linux分区:
1,硬盘的分区分为:基本分区和扩展分区
2,基本分区和扩展分区之和小于等于4
3,基本分区可以马上被使用,不能再分区
4,扩展分区不能被使用,不需要进行再分区
5,由扩展分区再分下去就是逻辑分区
6,逻辑分区没有数量上的限制
7,在linux中一个分区就是一个目录
对于IDE硬盘,驱动器标示符为“hdx~”
1,“hd”表示分区所在设备的类型,这里指IDE硬盘
2,“x”为盘号(a 为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘)
3,“~”代表分区,1-4代表主分区和扩展分区,从5开始就是逻辑分区
hda3 表示第一个IDE硬盘上的第三个主分区或扩展分区
4,对于SCSI硬盘则标识为sd
磁盘命令
fdisk -l 查看linux系统分区具体情况
df -l 查看磁盘使用情况(df -h 按照GB单位显示)
df 目录 查看目录在哪个分区下
Linux安装的时候分区原则:
1,/boot 分区 100MB
2,swap 交换分区 一般是物理内存的两倍,不要大于256MB
3,/ 根分区 尽可能大
软件包选择:
1,桌面环境 X窗口系统 GNOME桌面环境(服务器不选择)
2,编辑器
3,办公
4,图形
shell学习
我们在linux的终端输入的命令都是shell命令
有shell解析,然后由Linux内核执行,相当于
windows下的批处理程序
shell种类(常用):
1,Bourne /bin/sh
2,C /bin/csh
3,K /bin/ksh
显示所有的shell
ls -l /bin/*sh
大陆使用多的是sh 也就是bash
1,查看当前系统使用的是哪种shell
env --:查看系统的环境变量 SHELL=/bin/bash
2,更改shell
chsh -s 新的shell
3,history 查看历史命令
history 5 显示最近使用的5个命令
!5 执行编号为5的历史命令
!ls 执行最后一次以 ls 开头的命令
ip/tcp
追踪路由 tracert ip
测试域名是否畅通 ping 域名/ip
在windows下查看ip地址的命令是ipconfig
在linux下查看ip地址的命令是ifconfig
以127开头的都是本机
Linux网络环境配置
第一种方法
1,以root登陆
2,运行setup命令,设置ip地址
3,重启网络
/etc/rc.d/init.d/network restart
第二种方法
1,ifconfig eth0 x.x.x.x 对网卡进行配置
2,ifconfig eth0 network x.x.x.x 对子网掩码设置
这样配置的网络会立即生效,但是是临时的
第三种方法
1,修改/etc/sysconfig/network-scripts/ifcfg-eth0
配置文件
2,需要重启网络
这种方法是最底层的修改方法
在linux中所有的设备都是文件
rpm 软件管理
1, rpm -qa 查看安装的所有rpm包
2,安装rpm包
rpm -i rpm包全路径 i=install
rpm -ivh rpm包全路径名称 安装带有提示进入条
v=verbose提示 h=hash进度条
3,卸载
rpm -e rpm包名称
rpm -e --nodeps 忽略依赖卸载
samba服务器安装
1,什么是samba服务器,可以在windows上访问linux上的资源
2,检查系统中是否安装了samba
rpm -qa | grep smaba
3,先安装samba-common
samba-client
samba
4,设置samba密码文件
cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
smbpasswd root
xxx
xxx
5,启动samba服务器
service smb start
stop
restart
设置任务调度命令 crontab
1,在服务器中的应用
服务器的定时数据库备份
2,设置任务
crontab -e
3,完成这样的一个任务
每隔两分钟执行 date >> /home/mydate1
步骤:
1,crontab -e
2,2 * * * * date >> /home/mydate1
第一个参数是分钟 第二个是小时
第三个是天 第四个是月
第五个是星期(每周的第几天执行) 一共是五个参数 *代表所有的时间点
4,怎样去调度多个任务?
1,在crontab -e 中直接写
2,可以把所有的任务,写入一个可执行文件(shell编程)
* * * * * /root/task.sh
5, crontab -r 终止任务调度
crontab -l 列出当前有那些任务调度
进程的介绍和管理
进程:就是正在执行的程序
线程:
1,进程有独立的运行空间,线程没有
2,线程不能独立存在,有线程创建
在linux中,每个进程都可能有两种方式存在,前台和后台
所谓前台就是用户目前的屏幕可以进行操作的
ps命令是用来查看系统中,有那些正在执行
1,ps -a 显示当前终端的所有的进程信息
2,ps -u 以用户的格式显示进程信息
3,ps -x 显示后台进程运行的参数
终止进程
kill 1723 终止进程号位1723的进程
kill -9 1234 因为某些进程会捕捉某些信号,如果不能
结束进程可以用 -9 传送信息
top 可以动态监控进程
top -d 10 指定10秒更新一次信息
date命令查看系统时间
date MMDDHHMMCCYY.SS
月月日日时时分分年年年年.秒秒
cal 查看日历
cal 3 2002 查看2002年3月的日历
cal 2008 查看 2008年的日历
netstat显示网络统计信息
netstat -nat
netstat -natp 查看连接所在的process进程号
目前的连接
traceroute 监控网络状态
route 查看本机路由的情况
mysql的备份和恢复
备份 mysqldump -u root -p 密码 数据库名 > data.bak
恢复 mysql -u root -p 密码 数据库名 < data.bak
mysql服务的启动和停止和重启
service mysql start
service mysql stop
service mysql restart
Linux的远程操作工具secure shell(和 linux下的sshd服务通讯,默认监听22号端口)
etc --> profile(配置系统环境变量)
home --> kenan --> .bash_profile(用户的环境变量,对于单个用户有效)
配置.bashrc文件可以指定某些程序在用户登录的时候执行
在/etc和每个用户下都存在这个文件
shell
临时设置环境变量
export PATH=$path:$HOME/bin:/root/test/t1
shell使用
通配符
* 代表多个字符
?代表一个字符
touch abc3.tif
ls -l abc[1-4].tif
alias 定义一个别名
alias llh 'ls -l /home'
Linux启动过程分析
1,BIOS自检
2,启动GRUB/LILO
3,运行Linux内核并检测硬件
4,运行系统的第一个进程init
5,init读取硬盘引导配置文件/etc/inittab中的信息进行初始化
6,/etc/rc.d/rc.sysinit 系统初始化脚本
7,/etc/rc.d/rcX.d/[KS]* 根据运行级别X配置服务
终止以 K 开头的服务
启动以 S 开头的服务
8,/etc/rc.d/rc.local 执行本地特殊配置
9,其他特殊服务
压缩和解压缩
1,使用zip和unzip 进行压缩和解压缩
压缩
zip aa.zip 文件名
zip aa.zip 文件名1,文件名2
zip -r zz.zip 目录
转载于:https://blog.51cto.com/soukenan/1127159