linux 学习笔记

1、blocksize是否越大越好?

不一定,一个block里只能存放一个文件,文件较大时占用多个block


2.

raid-0 带区卷(磁盘分条) 奇偶数

加速

raid-1 镜像卷 两块磁盘

备份

raid-5 前两磁盘分条 后一块备份

3.

window 0-3 留给主分区和扩展分区 扩展分区包括逻辑分区

Linux 1-4 主分区最多四个,达到四个后就没有扩展分区 扩展分区中必须有逻辑分区否则不能格式化


4.

selinux 安装jdk时需关闭

kdump 系统崩溃时

kdump是在系统崩溃、死锁或者死机的时候用来转储

内存运行参数的一个工具和服务,打个比方,如果

系统一旦崩溃那么正常的内核就没有办法工作了,

在这个时候将由kdump产生一个用于capture当前运

行信息的内核,该内核会将此时的内存中的所有运

行状态和数据信息收集到一个dump core文件中以便

于Red Hat工程师分析崩溃原因,一旦内存信息收集

完成,系统将自动重启。这和以前的diskdump,

netdump是同样道理。只不过kdump是RHEL5特有的。

5.

切换超级用户

su -

su root

sudo 三者有什么区别?


su

 linux命令:可以让一个普通用户拥有超级用户或其他用户的权限,也可以让超级用户以普通用户的身份做一些事情。 

 格式:su[选项][?][使用者账号] 

 说明:若没有指定的使用者账号,则系统预设值为超级用户root。该命令中个选项的含义分别为: 

 -c:执行一个命令后就结束。 

 -:加了这个减号的目的是使环境变量和欲转换的用户相同、不加-是取得用户的临时权限!

 -m:保留环境变量不变。

su root :取得用户的临时权限,环境没改变


sudo 


1.作用


udo是一种以限制配置文件中的命令为基础,在有限时间内给用户使用,并且记录到日志中的命令,权限是所有用户。 


2.格式 


sudo [-bhHpV] [-s ] [-u <用户>] [指令]

sudo [-klv] 



3.主要参数 


-b:在后台执行命令。

-h:显示帮助。

-H:将HOME环境变量设为新身份的HOME环境变量。

-k:结束密码的有效期,即下次将需要输入密码。

-l:列出当前用户可以使用的命令。

-p:改变询问密码的提示符号。

-s :执行指定的Shell。

-u <用户>:以指定的用户为新身份,不使用时默认为root。

-v:延长密码有效期5分钟。 



4.说明


udo 命令的配置在/etc/sudoers文件中。当用户使用sudo时,需要输入口令以验证使用者身份。随后的一段时间内可以使用定义好的命令,当使用配置 文件中没有的命令时,将会有报警的记录。sudo是系统管理员用来允许某些用户以root身份运行部分/全部系统命令的程序。一个明显的用途是增强了站点 的安全性,如果需要每天以超级用户的身份做一些日常工作,经常执行一些固定的几个只有超级用户身份才能执行的命令,那么用sudo是非常适合的。


6.

第一列代表文件类型

块设备文件 硬盘

字符设备文件 键盘


三组

文件所有人的权限

文件所有人同组人的权限

其他人权限


rwx 读写 执行

x 1

r 4

w 2

633

链接数 其下有几个文件

文件的所有者

文件所有者所在的组

创建或最近一次修改的时间


7.

进入目录,切换路径

super

/ 根目录

~(root) 当前用户文件夹

普通用户

/ 只分配一个G

home

~


8、

创建文件夹 touch 文件名

cd ..退回上一层目录

ll 显示文件夹所有文件

复制文件到当前文件夹 cp 文件目录 目的文件夹

剪切 mv b 目的文件夹

重命名 mv 原文件名 重命名后 文件名

删除文件不能删除目录 rm a

删除目录 rmdir a


新建空目录 mkdir a

rm -r a 强制删除目录a

rm -rf a 强制删除且不询问

ls

cd


9.

日历 cal

cal 12 2013

计算器 bc

怎样使计算器保留小数 scale=3

pwd 查询当前路径


su renph 返回普通用户


who 当前登录身份和时间


init 5 切换回图形界面


whoami 当前登录的身份


date 当前日期


uname -a 当前使用操作系统信息


man ls

查看帮助


top 资源管理器 s k


q 退出


ps ps命令可以查看有哪些进程在运行和运

行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等等


df 磁盘分区使用率

du 文件格式



10.

groupadd tec

groupdel  tec

cat /etc/group


useradd -d home 目录名 -g 组名 -s shell路径 用户名


useradd -d /home/xmetc -g tec -s /bin/bash xmetc

passwd 用户名

ls -al /home/xmetc


userdel -r 用户名


改变用户所在的组

usermod -g 组名 用户名

强行设置某个用户所在组

改变文件所在的组

chgrp -R root /tmp/

将tmp目录下所有子目录和文件的

所有组全部设为root


查看用户所在组 groups 用户名


chown renph 1 改变文件所属的用户


chmod 755 abc 只要有一个x就变绿

1.

绿色 可执行文件

深蓝色 目录

浅蓝色 链接文件

红色 压缩文件


2.

su root

只是取得超级用户的权限,

环境还是原来普通用户的,

很多管理员的命令不能使用

su -

获取本机的最高权限和环境

sudo

临时取得管理员的权限,不需要

知道超级密码


4.

挂载

linux 文字界面

查看盘符

df -l

ll /dev/cd*

cd /mnt

mkdir cdrom 新建光驱目录

mount /dev/hdc /mnt/cdrom 挂载

umount /dev/hdc /mnt/cdrom 错误

cd ..

umount /dev/hdc /mnt/cdrom

rmdir cdrom 删除目录


lsmod | grep usb


5.修改权限

chmod 755 abc 只要有一个x就变绿

6.压缩,解压缩

tab 自动补全

压缩 tar -zcvf 文件名.tar.gz 文件名

z c压缩 v可视 f文件

解压缩 tar -zxvf 文件名 -C 目录




1.别名

vi

vim

是vi的升级

有颜色显示

可以排一些错误

etc 计算机配置文件


vim ~/.bashrc

命令行模式


i 编辑模式


esc 退出编辑模式 保存退出

输入:

退出q


保存退出wq


q!强制退出


source ~/.bashrc 配置文件改变后不需重启就可以使其生效


chown renph 1 改变用户


2.

fdisk -l


fdisk /dev/sda

m查看命令

d删除分区

p查看

n新建分区

1 1 +5000M

2 610 回车





3.

建立俩个组(神仙,妖怪)

建立四个用户(唐僧、悟空、沙僧、八戒)并给密码

把悟空、八戒放入妖怪,唐僧,沙僧放入神仙

用悟空建立一个文件(monkey.java 文件中写有I am monkey)给八戒一个可以rw的权限

八戒修改monkey.java加入一句话 Iam pig

唐僧、沙僧对该文件没有权限

把沙僧放入妖怪组

让沙僧修改monkey.java加入一句我是沙僧妖怪


4.排序

cat /etc/passwd


sort -n -k3 -t: /etc/passwd

整数 3列


sort -d -k1 -t: /etc/passwd

字典序


cat b.sh

sort -n b.sh|uniq -c

统计出现的次数 uniq 去重

sort -n b.sh|uniq -c -d

只列出重复的数字

cat /etc/passwd|head

head 默认头十行

tail 结尾十行

tail -3 结尾3行

cat /etc/passwd|wc

统计多少文件多少字符




5.对比文件差别

vimdiff /etc/passwd /etc/passwd-


cat /etc/passwd


cut -d':' -f1,3 /etc/passwd

-d以什么分隔符


统计出每种shell出现了多少次

最多为哪个列出

cut -d':' -f7 /etc/passwd|uniq -c

1.shell脚本编程

vim 程序名称

vimrc

set nu


2.

#! /bin/bash

#program:

#这个程序在你的屏幕上显示“hello world”

#History:

#2013/9/10 tianbin 第一次发布

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

echo -e "hello world!"


3

#!/bin/bash

#program:

# 彩色打印输出演示

#History:

#2013/09/10 tianbin 第一次发布

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

#重置=0 黑色=30 红色=31 绿色=32 黄色=33 蓝色=34 洋红=35 青色=36 白色=47

echo -e "\e[1;31m this is red text \e[0m"

#重置=0 黑色=30 红色=31 绿色=32 黄色=33 蓝色=34 洋红=35 青色=36 白色=47

echo -e "\e[1;42m green background \e[0m"


echo -e "\e[1;31m this is red text \e[0m"

echo -e "\e[1;31m this is red text \e[0m"

echo -e "\e[1;31m this is red text \e[0m"


4

#! /bin/bash

#Program:

# 这个程序演示单引号与双引号的区别

#History:

#2013/09/10 tianbin 第一次发布

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

var=学习

echo 好好“$var”

echo 好好’$var‘


5.sh03.sh

#!/bin/bash

#Program:

# 程序将创建3个文件,文件名将使用用户输入的日期

#History:

#2013/09/11 tianbin 第一次发布

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

#1.用户输入文件名,并取得fileuser这个变量

echo -e "I will use 'touch' command to create 3 files." #显示信息

read -p "Please input your filename:" fileuser #提示用户输入

#2.为避免用户随意恩回车,利用变量功能分析文件名是否为有效设置

filename=${fileuser:-"filename"}#开始判断是否已设置了文件名

#3.开始利用date命令来取得所需要的文件名

date1=$(date --date="2 days ago" +%y%m%d)  #前2天的日期

date2=$(date --date="1 days ago" +%y%m%d)   #前1天的日期

date3=$(date +%y%m%d)

file1=${filename}${date1} #以下3行在配置文件名

file2=${filename}${date2}

file3=${filename}${date3}

#4.创建文件

touch "$file1"


6.sh02.sh

#!/bin/bash

#Program:

# 用户分别输入姓和名,系统将会显示全名。

#History:

#2013/09/11 tianbin 第一次发布

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

read -p "please input your first name" firstname #提示用户输入

read -p "please input your last name" lastname

echo -e "\nyour full name is : $firstname$lastname"

1.

#简单的运算演示

echo -e "请输入2个需要计算的数字,

我将输出他们的乘积\n"

read -p "第一个数字:" firstnu

read -p secnu

total=$(($firstnu * $secnu))

echo -e "\n结果是¥firstnu X ¥secnu

是==>$total"



2.


s=0

i=0

while ["$i" != "100"]

do

   i=$(($i+1))

   s=$(($s+$i))

done

echo “The result of '1+2+3+....+100'

is ==> $s"


注意:空格


3. #!/bin/bash

#program:

# 这个脚本演示/dev/null的应用

#History:

#2013/09/12 tianbin 第一次发布

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

#读取/tmp/b.txt 文件,但是将内容输出到/dev/null

cat /tmp/b.txt > /dev/null

#检索/etc下所有包含prince字符串的文件行,但是如果有错误信息,则输出到/dev/null

grep "prince" /etc/* 2> /dev/null

#下面的命令不会产生输出:

#如果b.txt文件存在,则读取的内容输出到/dev/null

#如果b.txt文件不存在,则错误信息输出到/dev/null

cat /tmp/b.txt > /dev/null 2> /dev/null

#这个命令和上一条是等效的

cat /tmp/b.txt &> /dev/null

#清空日志文件中的内容,但是文件依然存在并且不改变权限

cat /dev/null > /var/log/messages

cat /dev/null > /var/log/wtmp





4.


先在虚拟机里面安装VMtools,然后关掉虚拟机在设置里面设置共享文件夹,最后在虚拟机里面,新建一个文件夹作为挂载的文件夹,如:在/home/user下面建一个shares文件夹。最后在命令行里面输入:

mount -t vmhgfs .host:/ /home/user/shares


都看看帮助文档有帮助。




1.启动此虚拟机

2.用超级用户root登录

3.登录成功后,Ctrl+Alt ,取出鼠标,点选菜单栏,虚拟机 → 

安装VMware工具 → Install

4.待虚拟系统挂载了光盘后,弹出cdrom文件夹或者点击进入/mnt/cdrom中,

在文件夹/mnt/cdrom中有两个文件VMwareTools-5.0.0-13124.i386.rpm和

VMwareTools-5.0.0-13124.i386.tar(一般TAR软件包兼容性更好,我们就

用它了)双击VMwareTools-5.0.0-13124.i386.tar弹出文件打包器,内有文

件夹vmware-tools-distrib,按上面解压缩按钮,浏览到需要解压到的目录

这里选在/root/ 文件夹中(也就是你桌面上那个叫做“root的主目录”),

开始解压

5.右击桌面选择输入"新建终端",在里面键入cd /root/vmware-tools-distrib,

回车。再输入./vmware-install.pl ,即可按装VMware Tools,以后一路回车即可,

以下大家都懂,重启即可。

6.这下鼠标可以自由的出入宿主机和虚拟机了,显示屏幕的尺寸也变为可调,

刷新速度也变快了,安装成功




JAVA_HOME = /home/jdk1.6.0_07

PATH = $PATH:/home/jdk1.6.0_07

CLASSPATH=.:/home/jdk1.6.0_07/jre/lib/rt.jar

Export JAVA_HOME PATH CLASSPATH




export JAVA_HOME=/usr/jdk1.6.0_30

  export PATH=$PATH:$JAVA_HOME/bin

  export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar 



1.在linu虚拟机上部署jdk(red hat)

在vm下的setting中选择option新建shares folder

打开终端,新建一个文件夹作为挂载的文件夹

执行挂载指令 mount -t vmhgfs .host:/ /mnt/shares

挂载成功后将想要共享的文件放入windows下的共享文件夹后,

查看shares文件夹



2.rpm -ivh MySQL-server-4.0.23-0.i386.rpm

rpm -ivh MySQL-client-4.0.23-0.i386.rpm

/etc/init.d/mysql start


你可能感兴趣的:(Linux,linux)