Если у вас есть права администратора по маршрутизатору, я бы предложил вам изменить шифрование из смешанного режима WPA и WPA2 только в один режим WPA2-AES. Я бы также экспериментировал с отключенным 802.11N; используйте только B и G. Я также включил «автоматический канал» и выберет фиксированный канал, такой как 1 или 11.
Вы также можете попробовать параметр драйвера:
sudo modprobe -r rtl8188ee
sudo modprobe rtl8188ee swenc=1
Если это помогает, мы можем написать файл .conf и сделать его постоянным.
В вашем syslog мы видим, что устройство перемещается из одной полосы в точке доступа в другую:
(wlan0): roamed из BSSID C8: CB: B8: F0: 76: F0 (HUB) - C8: CB: B8: F0: 76: 70 (HUB)Мы можем попробовать другой параметр. Это очень сложно временно загрузить, поэтому мы напишем файл conf, перезагрузимся и попробуем его. Если это не поможет, мы просто удалим наш файл conf:
sudo -i
echo "options cfg80211 cfg80211_disable_40mhz_24ghz=Y" > /etc/modprobe.d/cfg80211.conf
exit
Перезагрузите и сообщите нам, есть ли какие-либо улучшения.
Поскольку это не сработало, давайте попробуем другой параметр:
sudo -i
rm /etc/modprobe.d/cfg80211.conf
echo "options mac80211 probe_wait_ms=3000" > /etc/modprobe.d/mac80211.conf
exit
Перезагрузите
В дополнение к очень хорошим ответам, уже предоставленным, вот несколько советов по эффективному использованию cd.
cd - вернет вас в последний каталог, в котором вы были. cd ../../.. возьмите 3 уровня одновременно, вы можете использовать ноту .., соединенную вместе, чтобы «переместить» столько каталогов, сколько захотите. Если вы не знаете, сколько раз вы хотите двигаться вверх, используйте cd .., а затем используйте историю bash, нажав на клавишу со стрелкой, чтобы снова использовать команду. Используйте ~ для входа в домашний каталог текущих пользователей, если вы вошли в систему как пользователь thina, cd ~/teams, вы перейдете к /home/thina/teams. Используйте автоматическое завершение Bash для путей, клавиша табуляции завершает раздел пути в команде cd, если вы наберете часть сегмента пути, за которой следует Tab, этот сегмент будет завершен, если другого допустимого выбора нет. Например, если вы набрали cd /home/thina/teams/td/t, а затем нажали Tab, слово tech будет заполнено для вас, если в каталоге td не было других файлов или каталогов, которые начинались с буквы t.Используя эти советы, вы можете сделать каталоги перемещения с cd гораздо менее болезненными.
Чтобы подняться в дереве на несколько уровней за раз, вы можете использовать следующую функцию (спасибо muru для расширенной версии):
up ()
{
local old="$PWD"
for i in $(seq "${1:-1}"); do
cd ..
done
OLDPWD="$old"
}
Тогда вы можете сделать:
$ pwd
/home/thina/teams/td/tech/app/release/apks
$ up 5
cd'ing into /home/thina/teams
Дополнительно:
вызов up без аргумента эквивалентен cd .. из-за ${1:-1}, который заменяет $1 при установке и 1 в противном случае устанавливает OLDPWD после последнего cd .. направлена на сохранение обычного поведения cd -.Для длинных имен каталогов используйте переменные с полным путем. Например,
APKS="/home/thina/teams/td/tech/app/release/apks"
Тогда вы можете сделать только cd "$APKS"
Что касается перехода на х число каталогов, то я имею эту функцию, определенную в моем .bashrc [!d2 ]
goup() # go up x number of dirs
{
num=$1
while [ $num -ne 0 ];do
cd ..
num=$( expr $num - 1 )
done
}
Чтобы вернуться к /home/thina/teams из apks, вы бы сделали
goup 6
Вот пример использования:
$> pwd
/sys/class/backlight/intel_backlight
$> goup 3
$> pwd
/sys
$>
Еще одна небольшая функция, которая я придумал, но никогда не использовал такую функцию bookmark.
Вот как это работает: он сохраняет вашу текущую папку в каком-то файле, а затем вы можете записать cd в определенный каталог на основе номера строки в этом файле. Пример:
$> cd /etc/lightdm
$> bookmark
$> cat ~/.dirsbookmarks
/home/xieerqi
/sys/class/backlight
/etc/lightdm
$> cd $( awk 'NR==2' ~/.dirsbookmarks )
$> pwd
/sys/class/backlight
И вот сама функция:
bookmark()
{ # bookmarks current dir
pwd >> $HOME/.dirsbookmarks
}
У меня есть список часто используемых каталогов, напрямую доступных через псевдоним. Это также включает ярлыки для каталогов вверх по иерархии.
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias cdwork=/home/knub/Repositories/work
alias cduni=/home/knub/University
Теперь, когда я хочу идти на три уровня, я просто набираю ....<Enter>, и вот я!
Включите опцию autocd (shopt -s autocd), так что вам не нужно набирать cd. Например, вам нужна двухсимвольная команда .., чтобы перейти в родительский каталог.
Если вы перемещаетесь между двумя каталогами, вы можете переключаться между ними с помощью cd -, который идет на предыдущий рабочий каталог. Опция autocd не делает - run cd -, но вы можете определить псевдоним или функцию для этого.
Вы можете запомнить каталоги в стеке со встроенными autocd вариант и popd.
Если вы часто меняете подкаталоги определенного каталога, и эти подкаталоги имеют довольно уникальное имя, добавьте их в папку popd . Однако следует предупредить, что я никогда не находил ситуации, когда CDPATH был действительно удобен.
Вы можете установить переменную в имя каталога, а затем изменить ее с помощью $foo.
Zsh dirs имеет несколько приятных функций, которых у bash нет. Некоторые из них могут быть эмулированы путем написания функций, выполняющих ту же работу. В частности, форма с двумя аргументами cd позволяет удобно переключиться на другой каталог с похожим именем, например. из /home/thina/teams/td/tech/app/release/apks/com.acme/v1, запуск cd release beta переходит к /home/thina/teams/td/tech/app/beta/apks/com.acme/v1.
Как я уже ответил на соответствующий вопрос в UnixSE, для этого я использую скрипт z [github].
Он запоминает каталоги, к которым вы подключились, оценивает их по частоте (частота + регент) и позволяет вам перейти на один из запоминаемых путей, используя некоторую часть его имени.
После того, как cd'ed в каталог, по крайней мере, один раз вы можете сделать, а не:
$ cd ~user/very/long/path/with/many/subfolders/
Просто выполните:
$ z sub
, который будет работать с использованием частичного совпадения имени (если у вас нет другого каталога, содержащего на своем пути термин sub и который имеет более высокую частоту).
Я также определил такую функцию, которая сначала пробует нормальный cd, и если это не работает, используется z:
function cd() {
builtin cd "$1" 2> /dev/null || z "$1" || (echo "cd: File or Directory not found: $1" >&2 && exit 1)
}
. Это дает вам лучшее из того и другого. Если папка находится в текущем каталоге или задан действительный полный путь, она будет просто cd, но если нет, она попытается найти совпадение в базе данных и cd. Это отнимает (небольшую) боль, иногда вынуждая использовать cd (для обучения базы данных, перехода в папку, в которой вы никогда не были), и иногда вспоминая использовать z, когда это применимо.
UPDATE: есть еще более мощный инструмент, чем autojump: fasd, но я не знаком с ним.
Я удивлен, что никто не упомянул fasd , но
работает, поддерживая базу данных каталогов, которые вы используете больше всего из командной строки (каталоги должны быть посещены первыми, прежде чем их можно будет перескочить на.)Это в основном то, что построил @graipher, с несколькими дополнительными опциями.
Как я уже упомянул по другому вопросу:
После того, как вы несколько раз подключились к каталогу (даже один раз):
cd /home/thina/teams/td/tech/app/release/apks
вы можете использовать ярлык j, чтобы быстро перемещаться туда, независимо от того, в каком каталоге вы находитесь:
j apks
Обратите внимание, что использование любой части пути работает, если оно является самым большим в списке: j app также приведет вас к .../apks, если вы пошли туда больше раз чем .../app.
Я бы рекомендовал его вместо того, чтобы иметь собственный скрипт, так как он хорошо поддерживается, распространяется для Ubuntu и имеет другие опрятные f например, UPDATE: :
.../td/tech $ jc apk
.../release/apks $
Переместил вас в apks в td, а не какой-либо другой apks под другим деревом.
Еще три варианта, которые я нахожу для работы (хотя в будущем я могу использовать pushd больше, я только что узнал об этом):
Расположите свои пути, чтобы вам не нужно было cd во глубоко вложенные каталоги, в первую очередь, а точнее: поэтому места, которые вам нужно часто посещать, прямо у вас под рукой. Способ достижения этого - с символическими ссылками: сохранить явные иерархически упорядоченные каталоги, как они есть, но сделать ссылку быстрого доступа для вашего удобства.ln -s ~/teams/td/tech/app/release/apks ~/apks
Затем вместо того, чтобы вводить длинный путь к cd, просто используйте cd ~/apks и cd ../teams (или в этом примере предпочтительнее ~/teams), чтобы вернуться. Не используйте одну оболочку и компакт-диск назад и вперед между путями, но держите одну оболочку для каждого из путей, в которых вы должны работать. Для достижения этой многозадачности существует несколько уровней: Используйте несколько окон терминала. Работает лучше всего, если окна живут на разных рабочих площадках. Используйте несколько вкладок в одном окне. Это полезно для всего лишь нескольких команд в некоторых каталогах: чтобы вернуться, просто закройте вкладку терминала! (Не очень разумный IMO, но для полноты :) используйте терминальный мультиплексор, такой как tmux. Просто запустите действие в одноцелевой команде, которая cd спустится в папку, сделает там одну вещь и сразу же вернет управление исходной папке: вместо $ cd /home/thina/teams/td/tech/app/release/apks
$ some_command this_file_here
$ cd ../../../../..
просто выполните однострочный (f3) или эквивалентный $ sh -c 'cd ~/teams/td/tech/app/release/apks
> some_command this_file_here'
Не выполняйте cd, но просто выполните команду прямо из своего домашнего каталога. Расширения скобок могут помочь здесь много: вместо $ cd /home/thina/teams/td/tech/app/release/apks
$ some_command this_file_here other_file_also_apks
$ cd ../../../../..
вы можете сделать $ some_command ~/teams/td/tech/app/release/apks/{this_file_here,other_file_also_apks}
Команды pushd и popd являются моими избранными. Команда pushd будет помнить каталоги, которые вы посетили, просматривать с помощью команды dirs, а когда вы готовы вернуться назад, используйте popd для возврата.
Вот пример использования bash функции и псевдонимы:
sd ()
{
pushd "$1" > /dev/null
}
po ()
{
popd
}
alias d='dirs'
Я постоянно использую сочетание этих команд различными способами.
Другим вариантом для часто используемых каталогов является просто псевдоним команд cd или pushd. Итак, используя примеры из вашего поста:
alias cdapks='cd /home/thina/teams/td/tech/app/release/apks'
alias cdteams='cd /home/thina/teams'
Объедините две идеи, и вы даже можете это сделать:
alias sdapks='sd /home/thina/teams/td/tech/app/release/apks'
alias sdteams='sd /home/thina/teams'
Что тогда дает вам большую гибкость в перемещении каталогов. Я сохраняю псевдонимы cd*** и sd*** для таких вещей, как Desktop, Documents, Music, Downloads и т. Д., И это очень удобно!
у рыбы есть несколько приятных возможностей для быстрого передвижения.
Если вы наберете c d right-arrow enter, он повторит самый последний cd. Используя c d стрелка вправо-стрелка вверх, он повторяет второй самый последний cd. И т. Д. Предшествующий и следующий, которые часто проще в использовании, чем pushd и popd.Кроме того, я сохраняю свои любимые каталоги, символически привязанные к ~ / f, поэтому я могу cd ~ / f / x добраться до ~ / foo / bar / baz / экспериментальных данных.