Архив

2017 год

Всего: 73 записи

linux: изменить кодировку всех php файлов в папке

Для пакетного изменения кодировки из windows-1251 в uft-8.
Изменить кодировку всех *.php файлов в папке:

find . -name "*.php" -exec iconv -f WINDOWS-1251 -t UTF-8 {} -o tmp \; -exec mv tmp {} \;

Изменить кодировку просто всех файлов в папке:

find . -type f -exec iconv -f WINDOWS-1251 -t UTF-8 {} -o tmp \; -exec mv tmp {} \;

ssh долгий вход (долгая проверка пароля)

1. В /etc/ssh/sshd_config

UseDNS no
GSSAPIAuthentication no

затем service sshd restart

2. (Установлено случайно) очистить файл /var/log/btmp:

cat /dev/null > /var/log/btmp

/var/log/btmp — это лог неудачных попыток авторизации
/var/log/wtmp — удачных
смотреть что в нем:
last -f /var/log/btmp
или
utmpdump /var/log/btmp

Для ротации этого лога:
mcedit /etc/logrotate.d/btmp

/var/log/btmp {
    monthly
    minsize 1M
    create 0600 root utmp
    rotate 1
}

unpack zip archive linux (без unzip)

Решение на python чтобы распаковать zip архив, не имея установленной unzip (и не имея возможности или желания установить):

touch pyunzip
#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for zip_file in sys.argv[1:]:
	pzf = PyZipFile(zip_file)
	pzf.extractall()
chmod +x pyunzip
./pyunzip archive.zip

Еще возможен вариант на perl, (но без unzip он работать не стал):

#!/usr/bin/env perl
use Archive::Extract;
foreach my $filepath (@ARGV){
	my $archive = Archive::Extract->new( archive => $filepath );
	$archive->extract;
}
touch perlunzip
chmod +x perlunzip
./perlunzip archive.zip
You do not have 'Archive::Zip' installed - Please install it as soon as possible. at ./perlunzip line 5.
No '/bin/unzip' program found at ./perlunzip line 5.
Extract failed; no extractors available at ./perlunzip line 5.