📄 linuxlearningrecord.txt
字号:
/opt 大型程序安装目录
useradd 用户名
添加用户 会在/home 目录下添加一个用户
添加用户如果没有制定组 他就创建一个和他相同名字的组
usermod -g 新组名 用户明
修改用户所属的组
userdel 用户名
然后在 rm -rf 文件夹
从root用户切换到其他用户下的命令为:
su 其他用户名
exit 就又换回去了
内核外层为shell
cshell
平常用的bash 古老的为bsh
kshell
最原始的为sh
bash “Bourne Again Shell” 继承sh
bash--? Linux kernel --?硬件
unix以前分为两派:一派为sys v (sh)一派为BSD(free BSD)(csh)
csh演变为ksh,tchsh,zsh
现在bash由上面两派改良而来
DNS 服务器
DNS 服务器 在中国有.cn域名顶级解析器一台 日本两台 东南亚1台
配置网卡:
/etc/sysconfig/network-scripts目录下的
ifcfg-eth0里设置网卡的信息
------------------------------------------ifcfg-eth0的文件内容----------
----------------------------
IPV6INIT=no
ONBOOT=yes //启动时是否激活该卡
USERCTL=no
PEERDNS=yes
GATEWAY=192.168.1.1
TYPE=Ethernet
DEVICE=eth0 //物理设备的名字
HWADDR=00:03:ff:42:da:a0
BOOTPROTO=none
NETMASK=255.255.255.0 //网络掩码
IPADDR=192.168.1.111 //IP地址
------------------------------------------------------------------------
查看配置DNS的内容
/etc
more /etc/resolv.conf
----------------------------resolv.conf的文件内容-----------------------
nameserver 192.168.1.1
-------------------------------------------------------------------
在没有出现DNS时的一个主要文件
/etc/hosts
---------------------------------内容---------------
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 xuyunfeng localhost.localdomain localhost
---------------------------------------------------------
用命令行来手工配置/TCP/IP网络
ifconfig -a
route add default gw 202.164.186.1 //增加一个默认的网关
netstat -t 所有TCP连接
netstat -vat 所有活动于被监听的连
网络服务数据库文件/etc/services
more /etc/services
可以查看记录各种不同网络服务的数据文件,在此文件中的每一条记录都表示一种
Internet 服务,它的格式如下:
服务名称 可用端口范围(0~65535) 专供服务器使用
连接端口0~1023 专供服务器使用
在Internet上登陆的端口号码1024~49151
动态的和私人的连接端口好用49152~65535
内核的源代码:
/usr/src/linux
/usr/src/redhat
/usr/src/kernel
获取最新内核www.kernel.org
用bind来DNS
etc下
rpm -qa bind 查看bind的版本号
ntsysv 来启动
选中named选项后OK
然后service named start
netstat -a
如果有 用户名:domain 后面的状态有list
表示启动正常了
ls -l named.conf
查看结果 named.conf为连接文件
真正目录为 /var/named/chroot/etc/named.conf
// 表示注释一行
然后vi 那个真正的文件
/var/named/chroot/var/named
查看里面的配置文件
权限:
ls -l 看到的一种10位
第一位代表的是文件或文件目录
2-4 -代表没权限 r读权限 w写权限 x执行权限 所有者
5-7 所属组
8-10 其他人
改变权限的方法:
chmod +x 文件名 给文件添加执行的权限
chmod -x 文件名 去掉执行权限
chmod u+x 文件名 给当前用户加执行权限
chmod g+x 文件名 给用户组加执行的权利
chmod 777 文件名 所有权限都有了
000 001 010 011 100 101 110 111
所有者:chown 文件名 所有者名字
所属组:chgrp 文件名 新组
wc 统计指定文本文件的行数,字数,字符数
grep 要查的字符 文件名
whatis command 查看命令的用法
date 显示和设置时间 date -s设置时间 date +%x以格式化的方式显示数据 %后有
很多选项查看--help
date +%D%T
stat 显示指定文件的相关信息
who,w 显示在线登陆用户
whoami 显示用户身份
id 显示当前用户自己的身份
hostname 显示主机名称
uname 显示Linux的版本号
dmesg 显示系统启动信息
du显示指定文件(目录)已使用的磁盘空间的总量 显示当前目录
du –h
df 显示文件系统磁盘空间的使用情况
df –h 这样显示更好理解
free 当前内存和交换空间的使用情况
fdisk 显示磁盘信息
locale 显示当前语言环境
管道:将一个命令的输出传送给另一个命令,作为另一个命令的输入
使用方法:
more有分页的功能
ls -l | more有把输出的结果分页的功能 空格有分页的功能
cat /etc/passwd | wc
cat /etc/passwd | grep lrj
dmesg | grep eth0
man bash |col -b >bash.txt col 过滤乱码
ls -l | grep "^d" 列目录
ls -l * | grep "^-" | wc -l 列文件 看看有多少行
命令替换:
wall fjslfjkasldadfl
想所有用户发消息 fasjdlkja
wall `date`
`为大键盘上1左边的那个键
例如:echo “Hostname:`hostname`”
或者 echo “Hostname is $(hostname)”
$[] 可以运算数学
重定向:
ls > cmd.txt
把内容重定向到某个文件
>> 在末尾追加
lssss 2> Hello.txt
把错误信息重定向
\ 可以去除特殊符号的意思。
echo “ this pen is \$3.00”或者
echo “ this pen is `$3.00”
wall < hello.txt 把hello.txt的内容读出来后分发给其他人
修改系统的默认启动级别默认启动到命令行界面
/etc/inittab
修改其中的id:5:initdefault:
5改为3即可
ftp:
启动ftp服务:service -vsftpd start
netstat -vat查看服务是否启动成功
或者 ftp localhost 出现登陆页面表示启动成功
退出ftp用bye
/etc/vsftpd
下的vsftpd.conf文件中有ftp的内容
上传的对应的目录为
/var/ftp/pub
用户名:anonymous
密码:
密码为空
把/etc/vsftpd.ftpusers和/etc/vsftpd.user_list两个文档中的root删除或者注释 掉就可以用root用户上传了
一开机就启动ftp服务
在/etc/rc.loca里加入/usr/local/bin/vsftpd &即可
或者chkconfig vsftpd on在各个级别都一启动
防火墙:
启用防火墙:service iptables start
关闭防火墙:service iptables stop
chkconfig --list查看
goole技巧
用“”
例如“root上传"
telnet 传递都是明文 没有加过密
ssh 加过密的
启动ssh的服务:
service sshd start
chkconfig sshd on //一启动系统就启动该服务
源码安装
make makeinstall
bin文件安装
./filename 如果没有权限增加它的权限
gzip -d filename.gz解压文件
tar -xvf filename.tar
修改文件名
mv filename1 filename2 在没有filename的情况下改为了filename2
tar文件命令
-c 建立一个新的档案文件
-v 操作过程中显示流程信息
-f 定义文件的名字
-z 假设文件已经(或者将要)使用gzip进行压缩
例如:
tar –cvfz test.tar.gz *把当前目录下的东西压缩
tar –xvfz fielname.gz 解压某个文件
ps –aux 用的最多
分别显示 占用CPU,内存的多少 vsz(虚拟内存占用了多少)rss 占真实内存的总量
state
s进程休眠中即所有准备运行的进程
r cpu正在处理的进程
d 不可中断休眠状态
T正在被纠错程序跟踪或者已经被终止的进程
Z昏迷的进程
top命令
摁K就可以杀掉你想要的那个进程
ps -ef | grep tomact
ps -ef 显示当前所ls有进程
强制杀死某个进程 kill -9 进程id
linuxconf管理工具
------------------------------------------------------
www.solucorp.qc.ca/linuxconf管理工具
下载linuxconf-1.31r3-l.i386.rpm
gnome-linuxconf-0.65-l.i386.rpm
安装 rpm -Uvh linuxconf-1.31r3-l.i386.rpm
rpm -Uvh gnome-linuxconf-0.65-l.i386.rpm
启动:
linuxconf
或者userconf
----------------------------------------------------------
tar xzvf webmin.tar
cd webmin
./setup.sh
选择linux的版本
http://localhost:10000管理
---------------------------------
Samba服务器
用rpm -qa samba来检测是否安装了samba服务器
如果没有安装则
mount /dev/cdrom /mnt/cdrom/
cd /mnt/cdrom/RedHat/RPMS/
rpm -Uvh samba-comman.XXX.rpm
rpm -Uvh samba_client.XXX.rpm
rpm -Uvh samba.XXX.rpm
启动samba服务器
service smb start
配置
/etc/samba
下的smb.conf
关机命令 shutdown now
/usr/share/doc
文件系统
absolute pathname
relative pathname 相对路径
hierarchy 等级
usr文件夹相当于windows下的Program文件夹
/var存放email等本地文件
/srv所有跟server有关的服务
/proc 内存中的进程信息
文件命名规则
不能超过256个字符
除了/以外都可以作为文件或文件目录的名称 但是特殊字符要用’引起来
绝对路径以/开头
相对路径不以/开头常常以..开头或.开头
cd ~ 进入当前用户的home目录
cd ~xuyunfeng 进入用户xuyunfeng的home目录
cd ~/xu
cd ..进入上一级目录
cd - 进入上一次工作的目录
白色表示文件 蓝色的表示目录
/ 读作 fleish - 读作dash
以点开头为隐藏的
一些重要的目录:
fdisk /dev/had
m 显示帮助
p 显示分区表
l 显示知道的分区类型
t 修改分区id来修改分区格式
mkfs 建立文件系统 相当于格式化
mkfs本省并不执行建立文件系统的工作,而是调用相关的程序来执行。
参数:
-t <文件系统类型> 指定要建立何种文件系统
-V 显示简要的使用方法
mkfs -t ext3 /dev/hda2
mkfs-v msdos -c /dev/hda5
fsck 超级使用者
检查msdos档案系统的 /dev/hda5是否正常,如果有异常便自动修复
fsck -t msdos -a /dev/hda5
-a 如果检查有错误则自动修复
将内存格式化后挂载在系统上
ls /dev/ ram*
列出内存块 基本上每一块代表4M内存
mkfs -t ext3 ram15
把ram15这块内存格式化为ext3格式
然后在/mnt下建立一个文件夹把它挂载在上面
cd /mnt
mkdir mem1
mount /dev/ram15 /mnt/mem1
再查看系统的使用情况
df
进入mem1下查看下面多了lost+find目录
启动vi命令模式 set –o vi
关闭vi命令模式set +o vi +的意思就是disabled的意思
查看各种状态 set -o
在终端下:
ctrl +shift +T可以产生多个终端
ctrl + pageup 或pagedown 来切换各个终端
alt +1 切换到第一个窗口
alt +2 切换到第二个窗口
alt +3 切换到第三个窗口
ctrl + shift +C 复制
ctrl+shift +v 粘贴
ctrl +shift +W 关闭窗口
防火墙:
iptables -F 删除所有规则
iptables -L 列出所有的规则
iptables -D 删除一条规则
iptables -R 替换一条规则
iptables -t nat -A POSTROUTING -s 192.168.1.15 -o eth0 -j SNAT --to-source 202.101.10.100
防火墙是表的容器 nat 地址转换用的 -A POSTROUTING包发送前处理 -s 表示从什么地方处理 -o 信息的输出 -j 表示动作 --to-source表示 包的原位置
语句作用就是把内网数据包转发到外网上,简单的做个代理
iptables -t filter -A INPUT -p tcp --dport 23 -j REJECT 反弹任何针对本机的23端口的访问 限制任何人使用本机的23端口 在接受的时候就过滤掉了
iptables -t filter -A OUTPUT -p tcp --sport 23 -j REJECT 服务器能收到telnet的信息,但是没有返回任何信息
iptables -A INPUT -p icmp -m limit --limit 1/s --limit-burst 5 -j ACCEPT
允许每秒接受一个 ping包但是从第5个有效
iptables -A INPUT -p icmp -j DROP
iptables -A OUTPUT -p icmp -j DROP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -