用户空间访问、监控内核的方式:
/proc、/sys
伪文件系统
/proc/sys:此目录中的文件很多是可读写的
/sys/:某些文件可写
设定内核参数值的方法:
# echo VALUE > /proc/sys/TO/SOMEFILE
# sysctl -w kernel.hostname="###" (内核参数的设置,/proc/sys文件下)
能立即生效,但无法永久生效
# sysctl -p (修改配置文件后执行此命令使其立即生效)
# sysctl -a (显示所有内核参数及其值)
内核模块管理:
# lsmod (查看模块信息)
# modprobe MOD_NAME (装载某模块)
# modprobe -r MOD_NAME (卸载某模块)
# modinfo MOD_NAME (查看模块的具体信息)
# insmod /PATH/TO/MOUDLE_FILE (装载模块)
# rmmod MOD_NAME (移除模块)
# depmod /PATH/TO/MODILES_DIR (生成模块依赖关系表)
内核中的功能除了核心功能之外,在编译时,大多功能都有三种选择:
不使用此功能
编译成内核模块
编译进内核
如何手动编译内核
make gconfig:Gnone桌面环境使用,需要安装图形开发库组:GNONE Software Development
make kconfig:KDE桌面环境使用,需要安装图形开发库
make menuconfig
make
make modules_install
make install
模块安装位置:/lib/modules/KERNEL_VERSION/
如何实现部分编译:
只编译某子目录下的相关代码:
# make DIR/
只编译部分模块:
# make M=DIR/
只编译某一模块:
# make /PATH/TO/MODULE_PATH.ko
将编译完成的结果放置于别的目录中:
# make O=/TMP/KERNEL
交叉编译:
# make ARCH=
screen命令:
# screen -ls (显示已经建立的屏幕)
# screen (直接打开一个新的屏幕)
Ctrl+a,d:拆除屏幕
# screen -r ID (还原某屏幕)
# exit (退出)
二次编译时清理,清理前,如有需要,备份配置文件
# make clean (清理此前编译好的二进制模块)
# make mrproper (清理此前编译所残留的任意操作)
查看本机硬件设备信息:
# cat /proc/cpuinfo
# lsusb
# lspci
telnet:远程登录协议,23/tcp
C/S:Client+Server
ssh:Secure SHell,应用层协议,22/tcp
Linux:openSSH
C/S:
服务器端:sshd,配置文件/etc/ssh/sshd_config
客户端:ssh,配置文件/etc/ssh/ssh_config
ssh-keygen:密钥生成器
ssh-copy-id:将公钥传输至远程服务器
scp:跨主机安全复制工具
ssh:
# ssh USERNAME@HOST
# ssh -l USERNAME HOST
# ssh USERNAME@HOST 'COMMAND' (以该用户的身份执行COMMAND命令)
第一次登录时需要同意ECDSA key fingerprint,同意后会生成文件
.ssh{id_rsa,id_rsa.pub,known_hosts}
保存相关信息,knowb_hosts文件里保存的密钥使此后的登录无需再确认(可删除其内容恢复初始状态)
scp:
# scp SRC DEST
-r:传送文件夹时加此参数
-a
# scp USERNAME@HOST:/PATH/TO/SOMEFILE /PATH/TO/LOCAL
# scp /PATH/TO/LOCALFILE USERNAME@HOST:/PATH/TO/SOMEWHERE
ssh-keygen:
# ssh-keygen -t rsa (用RSA方式生成密钥)
-t {rsa|dsa}
-f /PATH/TO/KEY_FILE
-P '':指定加密私钥的密码
/root/.ssh/id_rsa:保存私钥
/root/.ssh/id_rsa.pub:保存公钥
公钥追加保存到远程主机某用户家目录下的.ssh/authorized_keys文件或.ssh/authorized_keys2文件中
ssh-copy-id (此命令可直接复制公钥至远程家目录下的.ssh/authorized_keys文件中,无此目录时自动创建)
# ssh-copy-id -i ~/.ssh/id_rsa.pub USERNAME@HOST
sftp:基于SSH的ftp
# sftp USERNAME@HOST (只要远程主机支持sftp,可直接连sftp接进行远程文件的获取和使用)
dropbear:嵌入式系统专用的ssh服务器和客户端工具
服务器端:dropbear
dropbearkey
客户端:dbclient
dropbear默认使用nsswitch实现名称解析
/etc/nsswitch.conf
dropbear会在用户登录检查其默认shell是否当前系统的安全shell
/etc/shells
主机密钥默认位置:
/etc/dropbear/
RSA:dropbear_rsa_host_key
长度可变,只要是8的整数倍,默认为1024
DSS:dropbear_dss_host_key
长度固定,默认为1024
# dropbear
-t rsa|dss
-f /PATH/TO/KEY_FILE
-s SIZE
转载于:https://blog.51cto.com/zjing1027/2048128