Archives de catégorie : Linux

Linux

J’ai construit PhantomJS 2.1.1 pour Raspberry Pi

J’ai construit PhantomJS 2.1.1 pour Raspberry Pi. Il peut également fonctionner sur toutes les machines d’architecture armhf.

J’ai utilisé Debian sur ARM VPS sur https://www.scaleway.com/ et suivez cette page pour le construire.

S’il vous plaît télécharger à partir de https://github.com/mecrazy/phantomjs-binaries.
( Après ma demande de traction a permis, je vais modifier le lien sur ce blog à “https://github.com/avaynshtok/phantomjs-binaries”. )

J’utilise Raspberry Pi comme une machine de test pour les applications serveur comme web raclage. Mais il n’y avait pas de binaires PhantomJS pour l’architecture de armhf sur le web. Donc, je l’ai construit. S’il vous plaît utiliser ce binaire, si vous voulez. Mais je ne peux pas prendre soin des problèmes et des bugs lorsque vous l’utilisez.

< Qu'est-ce que "PhantomJS"? >
PhantomJS est un outil Web de grattage avec l’API JavaScript. Il peut capturer des pages Web au format PDF, PNG ou une sorte de fichier image. Si vous voulez en savoir plus sur PhantomJS, s’il vous plaît vérifier http://phantomjs.org/.

Recommandations de Webmin pour les utilisateurs de Debian

< Quelle est « Webmin »? >
« Webmin » est un outil de configuration basé sur le Web avec l’interface utilisateur écrite en Perl. Il peut fonctionner sur Linux / UNIX / Windows / OSX. Lorsque j’installe Debian sur mon ordinateur, j’installe « Webmin ». Fondamentalement, je l’utilise pour modifier les fichiers de configuration, parce que je n’ai pas besoin de rappeler où est fichiers de configuration. « Webmin » peut commander le démarrage et l’arrêt de tous les services. « Webmin » a tellement de fonctions pratiques. Mais il est trop lourd pour moi d’expliquer tout à ce sujet. Si vous voulez savoir sur “Webmin” plus, s’il vous plaît vérifier Webmin – Wikipedia et http://www.webmin.com/.

< Installation sur Debian >
S’il vous plaît vérifier dernière version de Webmin sur http://www.webmin.com/. S’il vous plaît remplacer l’URL rouge à la nouvelle un lorsque vous vérifiez le site web officiel. Exécutez les commandes suivantes en tant que root pour installer webmin.

root@myhost:~# cd /tmp
root@myhost:/tmp# wget http://prdownloads.sourceforge.net/webadmin/webmin_1.690_all.deb
root@myhost:/tmp# dpkg -i webmin_1.690_all.deb
root@myhost:/tmp# apt-get -f install

Après la commande « dpkg -i webmin_1.690_all.deb », montrent apt-vous des avertissements. Après cela, s’il vous plaît exécuter « apt-get -f install » pour installer le logiciel requis pour webmin.

< pour plus de sécurité >
En configuration par défaut, webmin est uniquement accessible à partir du réseau local. Je n’ai jamais changé, à cause de la sécurité. J’utilise toujours le transfert de port SSH ou tout type de VPN à utiliser webmin à partir d’Internet. Vous n’avez pas besoin d’autoriser webmin pour être accessible directement à partir de l’Internet.

< Transfert de port SSH >
Si votre nom d’utilisateur est « abcd » et le domaine est « example.com », connexion SSH avec le transfert de port pour Webmin est une ligne de commande ci-dessous.

$ ssh -L 10000:localhost:10000 abcd@example.com

Cette ligne de commande est pour Linux / UNIX / OSX. Vous pouvez également utiliser l’adresse IP au lieu du nom de domaine.

< Connectez-vous pour Webmin >
Utilisez un navigateur pour accéder à « https://localhost:10000/ ». Vous verrez le message non fiable comme ci-dessous.
untrusted_001_fr
Il s’agit d’un exemple de Firefox. S’il vous plaît appuyez sur « Ajouter une exception » si vous utilisez Firefox.
untrusted_002_fr
Première fois, vous devez vous connecter en tant que root. Si vous ne souhaitez pas utiliser root de se connecter à Webmin, vous pouvez ajouter n’importe quel utilisateur pour webmin.
webmin_login

< Quelle langue utilisez-vous? >
La langue par défaut est l’anglais pour webmin. Si vous voulez changer le réglage global de la langue, s’il vous plaît vérifier la navigation et de l’image ci-dessous.
[ Webmin ] – [ Webmin Configuration ] – [ Language ] ( anglais )
webmin_change_language_001
[ Webmin ] – [ Configuration de Webmin ] – [ Langue ] ( français )
webmin_change_language_001_fr
Vous pouvez sélectionner la langue par défaut et le code de caractère pour l’interface utilisateur Webmin par la fonction ci-dessus. Si vous voulez changer la langue personnelle ou d’un thème, s’il vous plaît vérifier la navigation et de l’image ci-dessous.
[ Webmin ] – [ Change Language and Theme ] ( anglais )
webmin_change_language_002
[ Webmin ] – [ Modification de la langue et du thème ] ( français )
webmin_change_language_002_fr

< Webmin thème >
Je veux expliquer comment ajouter des utilisateurs webmin, mais avant l’ajout d’utilisateurs webmin, je dois expliquer à propos de mon thème de Webmin.
[ Webmin ] – [ Configuration de Webmin ] – [ Thèmes de Webmin ]
Vous pouvez choisir des thèmes pour l’interface utilisateur Webmin. J’utilise toujours « MSC.Linux Theme ». S’il vous plaît choisir un thème que vous souhaitez utiliser. Mais au cours de la suite de ma procédure sur ce post, il est facile de suivre l’aide « MSC.Linux Theme ».
webmin_theme_fr

< Ajouter un utilisateur du système >
J’ajoute toujours utilisateur du système avant d’ajouter l’utilisateur Webmin. Parce que je l’utilise UNIX connexion pour webmin. Vous pouvez ajouter des utilisateurs à votre système d’exploitation à la navigation ci-dessous. J’utilise cette fonction au lieu de la commande « adduser ».
[ Système ] – [ Utilisateurs et groupes ] – [ Créer un nouvel utilisateur. ]
J’utilise essentiellement paramètres par défaut pour les nouveaux utilisateurs. Je ne change le mot de passe.
webmin_users_fr

< Ajouter un utilisateur Webmin >
Vous pouvez ajouter des utilisateurs pour webmin à la navigation ci-dessous. Vous devez sélectionner les fonctions de webmin pour permettre à l’utilisateur peut contrôler. J’utilise toujours l’authentification UNIX mot de passe.
[ Webmin ] – [ Utilisateurs Webmin ] – [ Créer un nouvel utilisateur Webmin ]
Après j’ajoute utilisateur Webmin, j’ai toujours re-connexion Webmin sur le nouvel utilisateur.
webmin_add_webminuser_fr
Vous pouvez trouver la liste des modules comme ci-dessous.
webmin_select_modules_fr
Si vous voulez tout contrôler comme un administrateur, s’il vous plaît cliquer sur « Tout sélectionner » pour sélectionner toutes les fonctions.

< Système de commande et de service >
[ Système ] – [ Actions de démarrage et d’arrêt ]
Cette image montre les fonctions sur le bas de la page.
webmin_control_services_fr

< Sur les modules Webmin >
Quand j’ai du temps libre, je mettrai à jour ce post ou écrire un nouveau billet sur certains modules pour Webmin.

Proxy inverse sur nginx sur Raspberry Pi

< Prêt à installer >
Vous devez poussif Debian à suivre ma procédure. Non seulement pour Raspberry Pi.

< Pourquoi j’utilise Raspberry Pi >
Reverse proxy est simple fonction. Fondamentalement, c’est la tâche trop facile pour les ordinateurs personnels généraux ou les serveurs. Raspberry Pi n’est pas si puissant, mais il est l’ordinateur d’économie d’énergie. Ce n’est pas cher. N’importe qui peut acheter partout dans le monde. Il suffit de proxy inverse sur nginx. C’est pourquoi j’ai choisi Raspberry Pi pour le serveur proxy inverse et écrit ce post.

< Installation nginx >
Exécutez la commande ci-dessous en tant que root.

apt-get install nginx

Voilà tout.

< Modifiez le fichier de configuration >
Modifiez le fichier de configuration par défaut.

nano /etc/nginx/sites-available/default

Mon “/etc/nginx/sites-available/default” est comme ci-dessous.

server {
listen 80;
server_name mydomain.net;

location / {
proxy_pass http://127.0.0.1:8080;
}
}

Ce transfert de configuration accède “mydomain.net” à 8080 port de serveur Apache local sur Raspberry Pi.

< Ajouter le fichier de configuration de proxy >
Ajouter un fichier pour les paramètres de proxy.

nano /etc/nginx/conf.d/proxy.conf

Mon “/etc/nginx/conf.d/proxy.conf” est comme coup.

# Header
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

# Timeout
proxy_connect_timeout 60;
proxy_read_timeout 90;
proxy_send_timeout 60;

# Buffer
proxy_buffering on;
proxy_buffer_size 8k;
proxy_buffers 100 8k;

# Cache
proxy_cache_path /var/cache/nginx/mydomain.net levels=1:2 keys_zone=cache_$
proxy_temp_path /var/cache/nginx/temp;

proxy_cache_valid 200 2h;
proxy_cache_valid 302 2h;
proxy_cache_valid 301 4h;
proxy_cache_valid any 1m;

Aussi, vous devez vous cache dir en tant que root.

mkdir /var/cache/nginx

< Lancer nginx >

service nginx start

Comment vous pensez de cette procédure? Si facile?

bochs sur Raspberry Pi

< x86 sur ARM >
J’essaie de lancer DOS sur Debian wheezy sur Raspberry Pi.
( Windows 95 est également possible, mais il est trop lent )

< Installez « bochs » >
Installation « bochs » est très facile.
La ligne de commande est comme ci-dessous.

root@myhost:~# apt-get install bochs bochs-x bochs-sdl bochs-svga

< Image de disque dur générer >
Exécuter « bximage » sur votre Raspberry Pi.
Je recommande d’exécuter « bximage » en tant qu’utilisateur non root.
Vous devez exécuter « bximage » comme un utilisateur qui utilise « bochs ».
C’est 2GB l’image échantillon.

$ bximage
========================================================================
                                bximage
                  Disk Image Creation Tool for Bochs
        $Id: bximage.c,v 1.34 2009/04/14 09:45:22 sshwarts Exp $
========================================================================
Do you want to create a floppy disk image or a hard disk image?
Please type hd or fd. [hd]
What kind of image should I create?
Please type flat, sparse or growing. [flat]
Enter the hard disk size in megabytes, between 1 and 129023
[10] 
2048
I will create a ‘flat’ hard disk image with
  cyl=4161
  heads=16
  sectors per track=63
  total sectors=4194288
  total size=2047.99 megabytes
What should I name the image?
[c.img] 
msdoshdd.img
Writing: [] Done.
I wrote 2147475456 bytes to msdoshdd.img.
The following line should appear in your bochsrc:
  
ata0-master: type=disk, path=”msdoshdd.img”, mode=flat, cylinders=4161, heads=16, spt=63

« bximage », a déclaré à ajouter la ligne « 
ata0-master: type=disk, path= »msdoshdd.img », mode=flat, cylinders=4161, heads=16, spt=63 » à « .bochsrc ».

< Générer « .bochsrc » pour MS-DOS >
Accédez à votre répertoire personnel.
J’utilise « nano » pour éditer des fichiers texte.

$ cd /home/username
$ nano .bochsrc

Mon « .bochsrc » est comme ci-dessous.

megs: 64
romimage: file=$BXSHARE/BIOS-bochs-latest
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
display_library: sdl
ata0-master: type=disk, path=/home/username/msdoshdd.img, mode=flat, cylinders=4161, heads=16, spt=63
ata0-slave: type=cdrom, path=/home/username/MS-DOS-6.22.iso, status=inserted
boot: cdrom, disk
#keyboard_mapping: enabled=1, map=/usr/share/bochs/keymaps/x11-pc-us.map
log: bochsout.txt
clock: sync=realtime, time0=local

« MS-DOS 6.22.iso » est mon fichier MS-DOS amorçable. S’il vous plaît remplacer à n’importe quel fichier bootable iso que vous avez. Dans ma « .bochsrc », la souris n’est pas disponible. Si vous souhaitez utiliser la souris, s’il vous plaît google sur « Comment faire pour modifier bochsrc à utiliser la souris ».

< installer VNC >
Si vous utilisez l’affichage HDMI, vous n’avez pas besoin de cette étape.
Si vous n’utilisez pas l’affichage, vous devez installer le serveur VNC à distance sur X Raspberry Pi.
Exécutez cette ligne de commande en tant que root.

root@myhost:~# apt-get install tightvncserver

Exécutez la ligne de commande en tant qu’utilisateur qui utilisent « bochs ».

$ vncserver :1 -geometry 1024×768 -depth 24
You will require a password to access your desktops.
Password:
Verify:
Would you like to enter a view-only password (y/n)? 
n
New ‘X’ desktop is myhost:1

« :1″ signifie le port « 5901″.
« -geometry 1024×768″ désigne résolution.
« -depth 24″ signifie des couleurs en bits.

< exécuter bochs >
S’il vous plaît se connecter à votre serveur de VNC sur Raspberry Pi. (Ou utiliser « startx » avec affichage HDMI)
Et exécuter terminal. ( Ex. LXTerminal )
Exécuter bochs sur la borne.

$ bochs

Parfois bochs vous demander comme cette syntaxe.

A PANIC has occurred.  Do you want to:
  cont       – continue execution
  alwayscont – continue execution, and don’t ask again.
               This affects only PANIC events from device [MEM0 ]
  die        – stop execution now
  abort      – dump core
  debug      – hand control to gdb

Je réponds toujours « alwayscont ».

< Pour être honnête >
J’ai essayé d’installer Windows 95.
Mais il a besoin d’images FD de DOS et Windows 3.1. ( Mon Windows95 est une version mise à jour )
C’était gênant pour moi.
J’ai donc changé mon objectif.

Installer Debian wheezy à LS-XHL

< Avertissement >
Je ne peux rien garantir vos soucis qui se produisent à votre matériel ou de données en suivant ma procédure sur cette page. S’il vous plaît suivez la procédure à votre propre risque.

< Qu’est-ce que «LS-XHL»? >
Il est une sorte de NAS(Network Attached Storage – Wikipedia) faite par Buffalo (société japonaise).
Vous pouvez trouver NAS similaires sur Amazon en cherchant « linkstation ».
Nous pouvons installer Debian sur elle.
( Peut-être que « LS-XHL » est trop vieux pour acheter un nouveau, vous pouvez acheter uniquement d’occasion. )

< J’ai installé Debian wheezy pour «LS-XHL» >
J’ai écrit au sujet de la procédure pour installer Debian Wheezy pour «LS-XHL».
Fondamentalement, je suis «http://www.zorac.org/wp/?p=447»( Page japonais ) et «Buffalo NAS-Central Forums • View topic – LS-CHLv2 – LS-XHL – Debian Wheezy Rootfs – Update 2013.05.15»( Page en anglais ).
Si vous voulez comprendre ou en savoir plus, s’il vous plaît lire ces pages ou google les mots clés sur eux.

< Choses que vous devez >
1. LS-XHL ( LS-VL est similaire à LS-XHL, peut-être seulement mise en réseau est différente. )
2. Debian Wheezy Rootfs ( http://neboola.de/fjen/lschlv2/debian/wheezy/ )
3. Debian ou Ubuntu Machine ( Je recommande ARM machine de CPU. Mais peut-être non-ARM est possible. )
4. USB cas disque dur ( Vous en avez besoin pour connecter temporairement à la machine Linux. Si c’est possible, SATA interne ou tout autre type de connexions sont OK. )

J’ai écrit les procédures de ARM et non ARM comme même que possible, mais certaines procédures sont différentes. J’ai vérifié que la machine ARM. S’il vous plaît soyez prudent.

< Quelque chose comme des pièges >
1. Lorsque j’utilise «Gparted» pour le partitionnement, LS-XHL n’a pas démarré. ( «parted» est OK. )
2. « chroot » pour ce système de fichiers racine est uniquement disponible sur la machine ARM.

< L’étape 1 – Démonter LS-XHL >
J’ai trouvé la bonne vidéo sur Youtube. S’il vous plaît suivre cette.

( Peut-être que le démontage LS-VL est la même. )
La partie en plastique est vraiment facile à briser, s’il vous plaît soyez prudent de ne pas casser lorsque vous l’ouvrez.
Même si vous cassez une partie, peut-être il peut travailler. Ne vous inquiétez pas tellement.
Parce que je casse beaucoup partie en plastique de mon LS-XHL haha …

< L’étape 2 – Partitionnement et le formatage du disque dur >
Démarrez votre machine Linux. ( J’ai utilisé poussif Debian sur Raspberry Pi. )
Connectez la machine Linux en tant que root.
Si votre machine ne dispose pas de «parted», s’il vous plaît installer «parted».
Si votre Linux Debian ou Ubuntu est, exécuter la ligne de commande.

apt-get install parted

Ensuite, connectez votre nouveau disque dur (pour LS-XHL) à cette machine Linux par USB ou tout autre type de connexions.
Et vérifier les informations d’un disque dur. Si votre disque dur est sur ​​ »/dev/sda », exécutez la ligne de commande.

parted /dev/sda print

Dans mon cas, il a montré ce genre.

Model: ATA Hitachi HDS72202 (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/512B

Mot important est «2000GB» en ligne «Disk /dev/sda: 2000GB». S’il vous plaît rappelez la même partie de votre disque dur.
Créer des partitions.

parted /dev/sda mklabel gpt
parted -a cylinder /dev/sda mkpart primary 0 511
parted -a cylinder /dev/sda mkpart primary 511 8191
parted -a cylinder /dev/sda mkpart primary 8191 9215
parted -a cylinder /dev/sda mkpart primary 9215 2000G
parted /dev/sda set 1 boot on

C’est mon échantillon.
Je pensais à utiliser
«/dev/sda1» pour «/boot»,
«/dev/sda2» pour «/»,
«/dev/sda3» pour swap,
«/dev/sda4» pour «/home».
Vous avez besoin de changer «2000G» de la ligne «parted -a cylinder /dev/sda mkpart primary 9215 2000G».
Vous pouvez également modifier la taille de chaque partition.
Partitions de définition.

mke2fs -I 128 -j /dev/sda1
mke2fs -j -t ext4 /dev/sda2
mkswap /dev/sda3
mke2fs -j -t ext4 /dev/sda4

Monter des partitions d’élargir Rootfs.

mount /dev/sda2 /mnt
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot

< L’étape 3 – Développer Rootfs >
Allez dans le dossier temporaire comme « /tmp ».
Et obtenir «debian_wheezy_rootfs_lschlv2-lsxhl_20130515.tar.xz» de http://neboola.de/fjen/lschlv2/debian/wheezy/.

cd /tmp
wget http://neboola.de/fjen/lschlv2/debian/wheezy/debian_wheezy_rootfs_lschlv2-lsxhl_20130515.tar.xz

Étendre à «/mnt».

tar Jxvf debian_wheezy_rootfs_lschlv2-lsxhl_20130515.tar.xz -C /mnt

Télécharger «uImage.buffalo.3.9.2-fjen-1.lsxhl» à «/mnt/boot».

cd /mnt/boot
wget http://neboola.de/fjen/lschlv2/debian/wheezy/lsxhl-kernel-for-20130515/uImage.buffalo.3.9.2-fjen-1.lsxhl

< L’étape 4 – Paramètres de mise à jour >
S’il vous plaît mettre à jour ces cinq dossiers.
/mnt/etc/fstab
/mnt/etc/network/interfaces
/mnt/etc/resolv.conf
/mnt/etc/hostname
/mnt/etc/hosts

C’est mon «/mnt/etc/fstab».

/dev/sda1       /boot         ext3     noauto,noatime         1 2
/dev/sda2       /             ext4     noatime                0 1
/dev/sda3       none          swap     sw                     0 0
/dev/sda4       /home         ext4     noatime                0 0
proc            /proc         proc     defaults               0 0
shm             /dev/shm      tmpfs    nodev,nosuid,noexec    0 0
devpts          /dev/pts      devpts   gid=4,mode=620         0 0
#tmpfs           /tmp          tmpfs    defaults               0 0
sysfs           /sys          sysfs    defaults               0 0

C’est mon «/mnt/etc/network/interfaces».

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
  address 192.168.1.101
  netmask 255.255.255.0
  network 192.168.1.0
  broadcast 192.168.1.255
  gateway 192.168.1.1

Si vous utilisez «LS-VL», il n’a pas «eth1».
Peut-être que «/mnt/etc/network/interfaces» est comme ça.

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
  address 192.168.1.101
  netmask 255.255.255.0
  network 192.168.1.0
  broadcast 192.168.1.255
  gateway 192.168.1.1

( Ce ne sont que des exemples. S’il vous plaît définir les valeurs correctes pour votre propre réseau. )
C’est mon «/mnt/etc/resolv.conf».

domain linkstation
search linkstation
nameserver 8.8.8.8
nameserver 8.8.4.4

Lignes «domain linkstation» et «search linkstation» ne sont pas nécessaires.
Mon «/mnt/etc/hostname» est «linkstation».
Je n’ai pas mis à jour «/mnt/etc/hosts».
Mais vous pouvez les modifier, si vous le souhaitez.

< L’étape 5 – chroot >
Utilisant chroot, mais ce n’est disponible que sur la même architecture. ( Dans ce cas, c’est l’architecture ARM. )

chroot /mnt

Si vous n’avez pas de machine ARM ou ne parviennent pas à «chroot», passez à l’étape 6.
Si votre « chroot » est réussi, suivre cette voie.

cd /boot
mv uImage.buffalo uImage.buffalo.bk
ln -s uImage.buffalo.3.9.2-fjen-1.lsxhl uImage.buffalo

< L’étape 6 – Si vous ne pouvez pas «chroot» >

( Je n’ai pas testé cette étape de la procédure, être prudent. Et je recommande à Google des informations à ce sujet. )

cd /mnt/boot
mv uImage.buffalo uImage.buffalo.bk
mv uImage.buffalo.3.9.2-fjen-1.lsxhl uImage.buffalo

< L’étape 7 – Réglages de base >
Insérez le disque dur de LS-XHL et démarrer. Lorsque vous faites cela, je vous recommande de ne pas conduire une vis et de ne pas fermer le couvercle. Prêt à ré-installer Debian, si vous ne l’installez.
Connectez «192.168.1.101»(c’est mon exemple) par SSH.
Mot de passe par défaut de root est «toor».

ssh root@192.168.1.101

( C’est par exemple Linux / UNIX. )
Suivez ces commandes après connecté.

passwd
dpkg-reconfigure locales
dpkg-reconfigure tzdata
rm /etc/ssh/ssh_host_* && dpkg-reconfigure openssh-server

Ces lignes signifient
Une. Réinitialiser mot de passe root
2. Mettre à jour votre région
3. Mettez à jour votre fuseau horaire
4. Mettre à jour clé SSH
Vous devez SSH déconnexion de mettre à jour la clé SSH client SSH.
Si vous utilisez SSH sur Linux / UNIX, suivez cette commande pour mettre à jour le client clé SSH.

ssh-keygen -R 192.168.1.101

Après cela, re-connecter en tant que root et exécuter «apt-get».

apt-get update
apt-get upgrade

Il est maintenant complète.
S’il vous plaît conduire une vis et fermer le couvercle.
Bonne chance!

< Merci >
Merci beaucoup pour une personne qui a compilé «Debian Wheezy Rootfs», les gens sur le http://forum.buffalo.nas-central.org/viewtopic.php?f=71&t=26291 et une personne qui a écrit http://www.zorac.org/wp/?p=447.
Vous avez fait mon installation beaucoup plus facile! Merci!