标签归档:ubuntu

Ubuntu 16.04中VirtualBox 5.1使用U盘/USB设备的方法

环境:

Ubuntu 16.04 LTS

VirtualBox 5.1.26 r118224

虚拟机系统:Windows 7 SP1 64

安装扩展:

在这里下载:

http://download.virtualbox.org/virtualbox/5.1.26/Oracle_VM_VirtualBox_Extension_Pack-5.1.26-117224.vbox-extpack

http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html#extpack

安装:

【管理】->【全局设定】->【扩展】

安装期间会提示说输入管理员密码。

添加用户权限:

1、添加usbfs用户组(装完成后会有vboxusers和vboxsf 两个用户组)

sudo groupadd usbfs

2、将你的Linux常用用户添加到vboxusers、usbfs这个两个组中

sudo adduser Jim vboxusers
sudo adduser Jim usbfs

设置虚拟机硬件:

注意:这里根据个人的硬件情况进行设置,我这里采用ICH9+USB3.0。如果参照这个设置不能正常识别,那么可以轮流切换来尝试。

此时启动虚拟机,会提示安装硬件,如果选择USB2.0的应该不用额外安装驱动,如果是3.0的需要下载驱动,这里推荐360驱动大师来快捷安装。

装好驱动重启虚拟机。然后关机。

物理机Ubuntu也重启。

再次打开VirtualBox,启动虚拟机,插入U盘。会发现右下角的USB设置已经可以正常识别,勾选U盘的设备。或者在菜单栏选择【设备】
选择后即可正常识别。

ubuntu下创建软连接

一、具体用法

ln -s 源文件 目标文件

当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间,只生成目标文件的一个镜像。

例如:ln -s /tmp/less /usr/local/bin/less

二、注意:

(1)ln命令会保持你每一处连接文件的同步性,不论更改源文件还是目标文件,另一处文件也会有相 同的改动。

(2)ln命令分为软连接和硬链接(无参数-s)。与软连接不同的是,硬链接会在你选定的位置上生成一个与原来文件大小相同的文件。无论是软连接还是硬链接都具有文件的同步性。

(3)当一个存储空间,具有几个硬链接时,删除其中的一个,并不会对存储空间进行操作,所以其它的硬链接不会受到影响。

(4)ln默认时间里硬链接(无参数-s)。

ubuntu grub启动参数

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
GRUB_DEFAULT=0 ->设置默认启动项,按menuentry顺序。比如要默认从第四个菜单项启动,数字改为3,若改为 saved,则默认为上次启动项。
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true ->隐藏菜单,grub2不再使用,不管
GRUB_TIMEOUT="3" ->设置进入默认启动项的等候时间,默认值10秒,按自己需要修改
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" ->添加内核启动参数,这个为默认

设置开机启动进入文本模式:

修改这一行GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 为:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash text"
GRUB_CMDLINE_LINUX="noresume" ->手动添加内核启动参数,比如 acpi=off noapic等可在这里添加
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console ->设置是否使用图形介面。去除前面#,仅使用控制台终端,不使用图形介面
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480 设定图形介面分辨率,如不使用默认,把前面#去掉,把分辨率改为800x600或1024x768
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true ->设置grub命令是否使用UUID,去掉#,使用root=/dev/sdax而不用root=UUDI=xxx
# Uncomment to disable generation of recovery mode menu entrys
#GRUB_DISABLE_LINUX_RECOVERY="true" ->设定是否创建修复模式菜单项


https://www.linuxidc.com/Linux/2015-04/116075.htm

ubuntu 16.04 安装无线网卡驱动


    sudo apt-get install linux-headers-generic build-essential dkms    
    sudo apt-get update(optional maybe)    
    sudp apt-get install linux-source    
    sudo apt-get install --reinstall bcmwl-kernel-source (有可能只需要执行该步骤即可成功)  
    sudo modprobe wl
    sudo dpkg -i wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb  

修改 apache 上传文件大小限制 – ubuntu

第一步: Apache环境中的档案上传

修改位于Apahce目录下的apache2.conf
添加下面内容
LimitRequestBody 10485760
即10M=10*1024*1024

第二步:修改在php下POST文件大小的限制
修改etc/php.ini
找到 File Uploadsh区域修改以下几个参数: file_uploads = on ;是否允许通过HTTP上传文件的开关。
默认为ON即是开 upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹(moodle可以不改)
upload_max_filesize = 8m ;允许上传文件大小的最大值.
找到 Data Handling区域,修改 post_max_size = 8m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。
默认为8M
设上述四个参数后,上传小于8M的文件一般不成问题。但如果上传大于8M的文件,只还得设置以下参数:
在Resource Limits 区域: max_execution_time = 600 ;
每个PHP页面运行的最大时间值(秒),默认30秒 max_input_time = 600 ;
每个PHP页面接收数据所需的最大时间,默认60秒 memory_limit = 8m ;
每个PHP页面所吃掉的最大内存,默认8M

hosts.deny 和 hosts.allow文件

vi /etc/hosts.allow 

允许内容

书写格式(改成自自需要的IP或IP段)

ssh允许单个ip

sshd:192.168.220.1

ssh允许ip段

sshd:192.168.220.

telnet允许单个ip

in.telnetd:192.168.220.1

telnet允许ip段

in.telnetd:192.168.221.

编辑 /etc/hosts.deny文件,加入

sshd:ALL
in.telnetd:ALL

这样就安全了。

ubuntu arp绑定

arp 命令,标志如果是C,是缓存,如果是M就是静态的,现在我们就是要绑定静态的。

创建文件 /etc/ip-mac

写入ip-mac文件,例如 ip地址 + 空格 + mac地址的格式。

开机自动绑定

root@ubuntu:~# echo 'sudo arp -f /etc/ip-mac' >> /etc/rc.local

注意,/etc/rc.local文件中如果有exit 0,sudo arp -f /etc/ip-mac这一行应该在 exit 0之前

root@ubuntu:~# echo /etc/rc.local >> /etc/profile && source /etc/profile

root@ubuntu:~# vi /etc/sudoers
加一行

llcc2012 ALL = NOPASSWD: ALL

vim-gtk配置

set guifont=Ubuntu\ Mono\ 12             " 字体 && 字号
set tabstop=4                            " 设置tab键的宽度
set shiftwidth=4                         " 换行时行间交错使用4个空格
set autoindent                           " 自动对齐
set cindent shiftwidth=4                 " 自动缩进4空格
set guioptions-=m                        " 隐藏菜单栏
set guioptions-=T                        " 隐藏工具栏
set guioptions-=r                        " 隐藏右侧滚动条
winpos 359 199                           " 窗口位置
set lines=25 columns=128                 " 窗口大小
colo peachpuff   

linux下的登录相关

https://www.cnblogs.com/sparkdev/p/7694202.html
http://blog.sina.com.cn/s/blog_6c5082f40100vc7w.html

/var/log/auth.log

sudo vim /etc/passwd

/var/run/utmp
这是一个二进制文件,所以不能直接通过文本编辑器查看其内容。
它记录当前登录的每个用户的信息。因此这个文件会随着用户登录和注销系统而不断变化,它只保留当时联机的用户记录,不会为用户保留永久的记录。系统中需要查询当前用户状态的程序,如 who、w、users 等就需要访问这个文件。
/var/log/wtmp

这是一个二进制文件,所以不能直接通过文本编辑器查看其内容。
该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件。因此随着系统正常运行时间的增加,该文件的大小也会越来越大,增加的速度取决于系统用户登录的次数。该日志文件可以用来查看用户的登录记录,last 命令就通过访问这个文件获得这些信息。
/var/log/btmp

这是一个二进制文件,所以不能直接通过文本编辑器查看其内容。
这个文件记录的是所有失败的登录尝试,使用 last 命令及其 -f 选项可以查看这个文件的内容:
sudo last -f /var/log/btmp

/var/log/lastlog

这是一个二进制文件,所以不能直接通过文本编辑器查看其内容。
它会记录系统中所有用户最近一次登陆的信息。比如我们通过 ssh 登录时提示的此用户最后一次的登录时间,就是从这个文件中取出的:

其实这个文件的主要使用者是 lastlog 命令。

特别是 /var/run/utmp、/var/log/wtmp 和 /var/log/lastlog 这三个文件,它们都是日志系统中的关键文件,并且具有如下的逻辑联系:
当一个用户登录系统时,login 程序在 lastlog 文件中查看用户的 UID。如果该用户存在,就把该用户上次登录、注销的时间以及从哪个主机登录的信息写到标准输出中。然后 login 程序在 lastlog 中记录新的登录时间,并打开 utmp 文件添加用户本次的登录记录。接下来,login 程序打开 wtmp 文件并添加用户在 utmp 文件中的记录。当用户退出时会把更新的 utmp 文件中的记录添加到 wtmp 文件中,并从 utmp 文件中删除用户的记录。

我们可以看到除了 auth.log 文件,其它几个文件都是二进制文件,因而不能使用 less 之类的命令直接查看。下面我们来介绍和登录相关的一些命令,其实它们几乎都是通过查询这些日志文件来提供信息的。
lastlog 命令

lastlog 命令用来显示系统中所有用户最近一次登陆的信息:

图中显示的只是完整列表的一部分,**Never logged in** 表示该用户从来没有登陆过。如果要查看某个用户的最后登陆信息,可使用 -u 选项:

其实 lastlog 命令就是从 /var/log/lastlog 文件中取出的内容。
last 命令

last 命令用来显示用户最近登录的信息。执行 last 命令,它会读取 /var/log/wtmp 文件的内容。并把该文件记录的用户登录历史全部显示出来:

$ last

信息记录了谁在什么时间从哪里登录了服务器,登录了多长时间。需要注意的是系统中的 wtmp 日志文件经常会被轮转,所以有时你需要显式的指定 last 命令从哪个文件中读取信息:

$ last -f /var/log/wtmp.1

如果我们想快速知道系统最后一次的重启时间,可以使用下面的命令:

$ last reboot

who 命令

who 命令通过查询 /var/run/utmp 文件来显式系统中当前登录的每个用户。默认的输出包括用户名、终端类型、登录日期及远程主机:

w 命令

如果能够查询到当前登录系统的用户都在干什么是不是一件令人很兴奋的事情呢!使用 w 命令就可以做到:

$ w

我们可以看到用户 nick 同时登录了两个终端,在其中一个终端中执行了 w 命令,而在另一个终端中正通过 vim 编辑 /etc/passwd 文件!
其实 w 命令是先通过查询 utmp 文件获得当前登录的用户,然后显示每个用户和它所运行的进程信息。
users 命令

users 命令用单独的一行打印出当前登录的用户,每个显示的用户名对应一个登录会话。如果一个用户有不止一个登录会话,那他的用户名将显示多次:

因为 nick 通过三个终端登录了主机,所以在同一行中名字出现了三次。
总结

本文整理了 Ubuntu 系统中常见的一些与登录相关的文件和命令。通过它们可以快速的查看当前用户的登录情况和所有用户登录登出的历史记录,并且可以查询到用户使用 root 权限执行的操作。这对我们维护系统的安全和用户的管理都非常有帮助。